1. 24 Jul, 2020 1 commit
    • Tobias Berner's avatar
      Add missing <array> include · 16ebb781
      Tobias Berner authored
      smb/transfer.h:70:62: error: implicit instantiation of undefined template 'std::__1::array<std::__1::unique_ptr<TransferSegment, std::__1::default_delete<TransferSegment> >, 4>'
          std::array<std::unique_ptr<TransferSegment>, m_capacity> m_buffer;
      /usr/include/c++/v1/__tuple:219:64: note: template is declared here
      template <class _Tp, size_t _Size> struct _LIBCPP_TEMPLATE_VIS array;
      1 error generated.
  2. 22 Jul, 2020 1 commit
  3. 21 Jul, 2020 1 commit
  4. 11 Jul, 2020 1 commit
  5. 08 Jul, 2020 1 commit
  6. 01 Jul, 2020 1 commit
  7. 19 Jun, 2020 1 commit
  8. 18 Jun, 2020 1 commit
  9. 17 Jun, 2020 2 commits
  10. 08 Jun, 2020 3 commits
  11. 06 Jun, 2020 1 commit
  12. 04 Jun, 2020 2 commits
    • Harald Sitter's avatar
    • Harald Sitter's avatar
      smb: refactor smbc discovery · c65aa7ef
      Harald Sitter authored
      this now too is based on the discovery design used for WSD and DNSSD.
      advantage being that we can then de-duplicate ALL discovieries through
      a single code path.
      since smbc technically is meant to be used in a dirent while(){} way I am
      pulling some tricks here to get this nicer balanced via the event loop.
      ideally smbc would be thread safe or at least allow for multiple contexts,
      but currently both scenarios aren't working due to upstream bugs :(
      so instead of actually blocking while looping each loop cycle is posted
      through the event loop. this gives the other discoverers a chance to
      get their signal events in and not get stuck waiting for smbc to do its
      specifically also dnssd/wsd are started before smbc (if applicable anyway)
      so they get a head start speed things up quite a bit as previously
      they had to wait for smbc to do a full listing.
      the discoverer discovers a new smbcdiscovery which isn't terribly
      interesting but allows for a much more readable loop logic. furthermore
      the readdirplus2 ifdefs have been shuffled a bit, also with the goal
      of easing readability.
  13. 02 Jun, 2020 2 commits
  14. 01 Jun, 2020 1 commit
  15. 30 May, 2020 1 commit
  16. 29 May, 2020 1 commit
  17. 27 May, 2020 1 commit
  18. 25 May, 2020 1 commit
  19. 19 May, 2020 3 commits
    • Harald Sitter's avatar
      smb: reshuffle discovery systems · 4e41727c
      Harald Sitter authored
      the modern discoveries were conditional on smbc_opendir succeeding but
      that is rather silly since smbc can fail on ENOENT if (for example)
      netbios is disabled. since top level server discovery may happen through
      all or none of NB/DNSSD/WSD that made no sense as even when NB fails
      we may be able to produce service listing through one of the other two
      discovery services.
      this piece of code would actually benefit from major refactoring because
      all three discovery systems should actually run at the same time while
      currently NB holds up the entire show. alas, too invasive for 20.04...
      so, reshuffling it is:
      smbc_opendir still runs initially. after that, if the url is browsing
      smb:// we'll jump into modern discovery. any errors produced by opendir
      will be ignored! authentication errors and the like cannot happen for
      smb:// because we aren't yet talking to any one server, which leaves
      actual browsing errors which are not fatal considering we have other
      for non-top-level urls we'll otherwise jump into error handling (e.g.
      server requires auth or something)
      at the end if we haven't returned early with an error we'll inject our
      `.` entries as per usual
      test plan:
      - add `disable netbios = yes` to smb.conf
      - browse network
      - discovers dnssd/wsd servers
      - also works with the option removed again
      BUG: 421624
      FIXED-IN: 20.04.2
    • Harald Sitter's avatar
      Merge branch 'release/20.04' · d00b268c
      Harald Sitter authored
    • Harald Sitter's avatar
      GIT_SILENT throw out outdated howto · 12622509
      Harald Sitter authored
  20. 15 May, 2020 2 commits
    • Harald Sitter's avatar
      Merge branch 'release/20.04' · 139cc496
      Harald Sitter authored
    • Harald Sitter's avatar
      sftp: map sftp_open error to kio error · 07e44cb1
      Harald Sitter authored
      sftp gives out more relevant errors such as SSH_FX_PERMISSION_DENIED,
      let's forward them as KIO errors instead of using the general cannot open
      Test Plan: hoping for the best! bad permissions on the remote now actually raise suitable kio errors, functionally that seems to make little difference unfortunately
      Reviewers: feverfew
      Reviewed By: feverfew
      Subscribers: kde-frameworks-devel, kfm-devel
      Tags: #dolphin, #frameworks
      Differential Revision: https://phabricator.kde.org/D29743
  21. 14 May, 2020 2 commits
    • Harald Sitter's avatar
      Merge branch 'release/20.04' · 10cf68d9
      Harald Sitter authored
      # Conflicts:
      #	CMakeLists.txt
    • Harald Sitter's avatar
      sftp: break large writes into multiple requests · 1df61748
      Harald Sitter authored
      servers have arbitrary limits that we should stay below. to ensure this
      happens use MAX_XFER_BUF_SIZE as maximum size per request. if we read
      data large than that, break it apart into multiple requests
      (I am mostly guessing here, the rfc doesn't seem to impose any size
       constraint on the write requests themselves, so probably packet
       constraints apply by default)
      BUG: 404890
      FIXED-IN: 20.04.2
      Test Plan:
      - fallocate -l 128M file
      - sftp to localhost
      - copy file from one dir to another
      - compare checksums match
      - open xls file (via kio-fuse)
      - change
      - save
      - close
      - open again
      - changes are still there
      Reviewers: ngraham, meven, feverfew
      Reviewed By: ngraham, meven, feverfew
      Subscribers: meven, feverfew, kde-frameworks-devel, kfm-devel
      Tags: #dolphin, #frameworks
      Differential Revision: https://phabricator.kde.org/D29634
  22. 11 May, 2020 1 commit
  23. 09 May, 2020 3 commits
  24. 06 May, 2020 2 commits
    • Harald Sitter's avatar
      Merge branch 'release/20.04' · a14da6cf
      Harald Sitter authored
    • Harald Sitter's avatar
      smb: resolve potential dnssd names via kdnssd · a042130e
      Harald Sitter authored
      as it turns out this is vastly more efficient for our purposes. we already
      know that this address should only be a dnssd address, so we can ask our
      dnssd daemon directly instead of taking on the entire weight of qhostinfo
      and proper DNS resolution.
      asking avahi directly reduces successful resolution time down from ~4 s
      to ~4 ms (yes, ms!). on resolution failure the timing remains about
      the same it seems
  25. 04 May, 2020 1 commit
    • Méven Car's avatar
      filenamesearch: Implement stat to display metainfo · 951e2f2d
      Méven Car authored
      filenamesearch ioslave needed a stat implementation to be rendered properly in dolphin information panel.
      BUG: 420354
      FIXED-IN: 20.08
      Test Plan: Open filenamsearch:/ in dolphin and search something
      Reviewers: #dolphin, #frameworks, ngraham, elvisangelaccio
      Reviewed By: #dolphin, elvisangelaccio
      Subscribers: kde-frameworks-devel, kfm-devel
      Tags: #dolphin, #frameworks
      Differential Revision: https://phabricator.kde.org/D29197
  26. 29 Apr, 2020 2 commits
    • Harald Sitter's avatar
      Merge branch 'release/20.04' · 7c7590a2
      Harald Sitter authored
    • Harald Sitter's avatar
      sftp: successfully write files to proftpd servers · effb511c
      Harald Sitter authored
      proftpd doesn't like zero size writes and returns with an error leading us
      to assume that the write failed, when in fact it was fine eitherway because
      we didn't write anything one way or the other.
      so, instead just break out of the loop early. there's nothing lost by
      us not doing that final EOF write since we don't need it from a protocol
      the break occurs just before writing because preceding it is "spin-up" tech
      opening the file and so forth. we need to have that run even when putting
      a 0b file.
      this successfully writes 0B, 1B, and 128M files both with partial markers
      enabled and disabled to proftpd 1.3.6c
      BUG: 419999
      FIXED-IN: 20.04.1
  27. 27 Apr, 2020 1 commit
    • Harald Sitter's avatar
      smb: refine internal error string · afc32611
      Harald Sitter authored
      in master we can break the string so it's slightly less rubbish. give it
      context for the arguments. throw out the reference to stat since
      this may occur from a number of calls. flatten the nested composition of
      errno + strerr