1. 17 Oct, 2019 1 commit
    • Harald Sitter's avatar
      fix password error condition handling of smb mount · 45b1327a
      Harald Sitter authored
      this was previously wrong in two ways:
      1. errors from the password check would previously be ignored but
         still end in early termination of the mount command despite that command
         not having finished (successfully)
      2. since the password check is always run we may not actually require
         auth data in which case it is perfectly reasonable for the user to
         cancel the auth request (the user experience sucks, but there's not
         much we can do within the special command I think)
      to solve both issues special now exists in error when there was an error
      forwarded out of checkpassword (e.g. kiod is broken) BUT NOT when that
      error is that the user canceled the auth query.
      no auth info being provided is already supported later on in the actual
      mount code.
      testing code for posterity
      #define KIO_ARGS QByteArray packedArgs; QDataStream stream( &packedArgs, QIODevice::WriteOnly ); stream
          KIO_ARGS << int(1)
                   << QString("\\\\HOST/PATH/") // remotepath
                   << QString("/LOCAL/MNT") // mountpoint
          auto job = KIO::special(QUrl("smb://HOST/PATH/"), packedArgs);
      Test Plan:
      # broken kiod
      - run job
      - get error about broken kiod
      # cancel with working kiod
      - run job
      - get error about smbmount not being installed (bc it hasn't been a thing since the 2000's ;))
      Reviewers: dfaure
      Reviewed By: dfaure
      Subscribers: kde-frameworks-devel, kfm-devel
      Tags: #dolphin, #frameworks
      Differential Revision: https://phabricator.kde.org/D24487
  2. 08 Oct, 2019 1 commit
    • Harald Sitter's avatar
      improve error reporting for when kpasswdserver is unreachable · 5a870554
      Harald Sitter authored
      previously we'd not forward the errors coming out of the password dialog
      helper and instead eventually end up on generic access denied errors.
      seeing as the access denied is likely because we couldn't query auth info
      that is fairly misleading.
      checkPassword is now returning an error code instead of a bool. when we
      actually consider checkPassword an error we'll now raise this error
      instead of the generic access denied errors. when the user canceled
      the query we'll continue to raise the more topical error from smb (e.g.
      "access denied")
      primarily these errors appear when kiod/kpasswdserver is defunct
      or not installed meaning query functionality will not work at all.
      Test Plan:
      # broken kiod
      - remove dbus service file
      - kill
      - dolphin smb://host
      - no auth query
      - error about broken dialog
      # cancel
      - repair kiod
      - dolphin smb://host
      - auth query
      - cancel
      - auth query
      - cancel
      - error about access denied (because refused to authenticate)
      Reviewers: #frameworks, dfaure
      Reviewed By: dfaure
      Subscribers: ngraham, kde-frameworks-devel, kfm-devel
      Tags: #dolphin, #frameworks
      Differential Revision: https://phabricator.kde.org/D24387
  3. 06 Oct, 2019 1 commit
  4. 01 Sep, 2019 1 commit
  5. 30 Aug, 2019 2 commits
  6. 26 Aug, 2019 1 commit
    • Alexander Saoutkin's avatar
      Fixing bug where MTP slave does not return error in stat()/mimetype() · 8c42ec63
      Alexander Saoutkin authored and Fabian Vogt's avatar Fabian Vogt committed
      This patch fixes two cases where invalid KTMPFile objects would be treated as
      valid. In particular, this would manifest in KIO::stat() and KIO::mimetype()
      returning without error when they, in fact, should do. One would note that in
      the rest of the code, KMTPFile objects that are received via
      KMTPStorageInterface::getFileMetaData() always have a isValid() check applied
      before use. The two previously mentioned functions, incorrectly, do not have
      this check applied. This patch simply adds these necessary checks.
      Test Plan:
      KIOFuse uses KIO::stat() to complete a lookup. Before this patch lookup would
      always succeed and this was determined to be because stat would always succeed.
      This bug could be easily found as tab completion would never work correctly.
      Trying to tab complete would seem to add what was already typed in to the
      directory. With this patch applied, lookup no longer always succeeds and tab
      completion now works.
      Reviewers: chinmoyr, akrutzler, elvisangelaccio, dfaure
      Reviewed By: dfaure
      Subscribers: kde-frameworks-devel, kfm-devel, fvogt
      Tags: #dolphin, #frameworks
      Differential Revision: https://phabricator.kde.org/D23454
  7. 09 Aug, 2019 1 commit
  8. 08 Aug, 2019 1 commit
    • Nate Graham's avatar
      [Text thumbnailer] Don't show text preview for .directory and .flatpakref files · df85d47c
      Nate Graham authored
      The text thumbnailer currently excludes .directory files from receiving text file
      thumbnails, but does not do the same for .directory and .flatpakref files which are
      the same things (actually text files that don't look, feel, or behave like text files).
      This patch extends the same logic to those types of files as well, making them not
      receive text previews and instead show their base mimetype or icon (if defined in the
      BUG: 410561
      BUG: 400201
      FIXED-IN: 19.08.0
      Test Plan: {F7161776, size=full}
      Reviewers: #vdg, #frameworks, broulik
      Reviewed By: broulik
      Subscribers: kde-frameworks-devel, kfm-devel
      Tags: #dolphin, #frameworks
      Differential Revision: https://phabricator.kde.org/D22936
  9. 04 Aug, 2019 1 commit
  10. 31 Jul, 2019 1 commit
  11. 29 Jul, 2019 1 commit
  12. 22 Jul, 2019 1 commit
  13. 21 Jul, 2019 1 commit
  14. 20 Jul, 2019 1 commit
  15. 18 Jul, 2019 1 commit
    • Jonathan Marten's avatar
      man ioslave: asserts trying to display pam(8) · 87215e7e
      Jonathan Marten authored and Luigi Toscano's avatar Luigi Toscano committed
      That page, and many others, links to another page with just a plain name:
        .so PAM.8
      This is read by man2html and passed to MANProtocol::readManPage() with a filename of "../PAM.8".  This is then resolved against the containing directory "/usr/share/man/man8", becoming "/usr/share/man/PAM.8".  No such file exists and the mandir.entryList().first() asserts because the list is empty.
      The relative filename is correct in the case of other pages. e.g. telinit(8) which uses:
        .so man8/init.8
      So it is not enough to simply ignore the "..".  The change to man2html here attempts to correct the reference by detecting whether it is of the form "../page.sect" and is not "../manN/page.sect", and removing the ".." component only in the first case.
      While investigating this I found it useful to have a better diagnostic if the .so page could not be found.  The change here to kio_man.cpp detects that case and displays an error page instead of asserting.  This should only happen if there is a bug in the man page, but it is useful to have a pointer so that the upstream man page can be fixed.
      Test Plan:
      Built kio_extras with this change.  Verified correct display of the man pages:
        man:/pam(8) - simple page name
        man:/telinit(8) - relative page name with section
        man:/mq_open(2) - relative page name to another section
      Reviewers: #plasma, kfm-devel, mkoller
      Reviewed By: mkoller
      Subscribers: ltoscano, kde-frameworks-devel, apol, plasma-devel
      Tags: #plasma, #documentation, #dolphin, #frameworks
      Differential Revision: https://phabricator.kde.org/D9033
  16. 15 Jul, 2019 1 commit
  17. 14 Jul, 2019 1 commit
  18. 02 Jul, 2019 2 commits
  19. 01 Jul, 2019 2 commits
  20. 27 Jun, 2019 1 commit
  21. 26 Jun, 2019 1 commit
  22. 22 Jun, 2019 1 commit
  23. 13 Jun, 2019 1 commit
  24. 03 Jun, 2019 1 commit
  25. 29 May, 2019 1 commit
  26. 20 May, 2019 1 commit
  27. 19 May, 2019 1 commit
  28. 05 May, 2019 1 commit
  29. 04 May, 2019 1 commit
  30. 29 Apr, 2019 1 commit
  31. 28 Apr, 2019 1 commit
  32. 26 Apr, 2019 1 commit
  33. 24 Apr, 2019 1 commit
  34. 23 Apr, 2019 1 commit
  35. 22 Apr, 2019 1 commit
  36. 21 Apr, 2019 1 commit
  37. 12 Apr, 2019 1 commit