• src/sbbs3/sftp.cpp

    From Deucе@VERT to Git commit to main/sbbs/master on Wed Feb 28 20:56:00 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/4df9c658f5de39fb13372e83
    Modified Files:
    src/sbbs3/sftp.cpp
    Log Message:
    Not all snprintf()s terminate.

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Deucе@VERT to Git commit to main/sbbs/master on Wed Feb 28 20:56:00 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/217700a6976281ff90afa199
    Modified Files:
    src/sbbs3/sftp.cpp
    Log Message:
    Heh, fix /files/ check.

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Deucе@VERT to Git commit to main/sbbs/master on Thu Feb 29 09:53:11 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/d07ece63c19f607fdbaedf9b
    Modified Files:
    src/sbbs3/sftp.cpp
    Log Message:
    Allow init_sftp() to safely be called twice.

    This prevents the case where input_thread() accepts the sftp
    connection and calls init_sftp(), then answer() does the same thing,
    clobbering the previous state.

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Deucе@VERT to Git commit to main/sbbs/master on Thu Feb 29 12:27:11 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/c5c005dfc3cf289502e1339b
    Modified Files:
    src/sbbs3/sftp.cpp
    Log Message:
    Use Big Solidus instead of Division Slash to replace Solidus

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Deucе@VERT to Git commit to main/sbbs/master on Thu Feb 29 15:22:07 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/8047d7bd84ce21d21e2ea15d
    Modified Files:
    src/sbbs3/sftp.cpp
    Log Message:
    When responding to an sftp readdir command, send up to 25 files

    This should speed up directory listings over higher latency links
    by approximately 25×.

    You're welcome nelgin.

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Deucе@VERT to Git commit to main/sbbs/master on Thu Feb 29 18:53:39 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/95ae0137d0b93239bed651c1
    Modified Files:
    src/sbbs3/sftp.cpp
    Log Message:
    Whopps, need <stdexcept> to throw that...

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Deucе@VERT to Git commit to main/sbbs/master on Fri Mar 1 09:03:31 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/cc67c1b6804158c7cbfe3958
    Modified Files:
    src/sbbs3/sftp.cpp
    Log Message:
    Use dir.sname instead of code in the (disabled) /fls tree.

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Deucе@VERT to Git commit to main/sbbs/master on Fri Mar 1 13:22:47 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/01a94bdc10bab22c50637f03
    Modified Files:
    src/sbbs3/sftp.cpp
    Log Message:
    Remove /vfiles and use a dash instead of a big solidus.

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Deucе@VERT to Git commit to main/sbbs/master on Fri Mar 1 16:38:40 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/b7c8342d8aacc3252878ccce
    Modified Files:
    src/sbbs3/sftp.cpp
    Log Message:
    Fix bug found by Coverity.

    If a filename failed to be added for a readdir response, it would
    have just skipped that file and continued with the files around it
    rather than reporting an error.

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Deucе@VERT to Git commit to main/sbbs/master on Fri Mar 1 20:58:48 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/4a6d6672e9efb913cbbebabd
    Modified Files:
    src/sbbs3/sftp.cpp
    Log Message:
    Don't use _fullpath() to resolve paths...

    This Win32 function behaves differently on Win32 than *nix, and
    does not do what we want.

    Instead, copy the important bits from xpdev, and resolve a TODO.

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Deucе@VERT to Git commit to main/sbbs/master on Fri Mar 1 22:42:56 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/bdbf637032d1d033ec8e4be0
    Modified Files:
    src/sbbs3/sftp.cpp
    Log Message:
    Fix array overrun and asprintf() usage, with other warnings.

    The array overrun crashed Win32, the asprintf() usage imacts glibc
    and the other warnings are impossible (an exception would have been
    thrown).

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Deucе@VERT to Git commit to main/sbbs/master on Sat Mar 2 13:16:13 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/e562dbf456e460366ff3fd37
    Modified Files:
    src/sbbs3/sftp.cpp
    Log Message:
    Fix memory leak in sftp_opendir()

    Found by Coverity.

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Windows 11)@VERT to Git commit to main/sbbs/master on Sat Mar 2 16:28:40 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/e4b8217f1797c7b1ca5820e7
    Modified Files:
    src/sbbs3/sftp.cpp
    Log Message:
    Resolve some MSVC and GCC warnings with static casts

    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From Deucе@VERT to Git commit to main/sbbs/master on Sat Mar 2 17:00:48 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/c6d96aa6b3e4b8c0c1b3f237
    Modified Files:
    src/sbbs3/sftp.cpp
    Log Message:
    Fix static casts.

    These functions take a uint32_t, not a time32_t (which is an int32_t).

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Deucе@VERT to Git commit to main/sbbs/master on Sat Mar 2 17:04:44 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/ee8a4a4f73420a54bea71fe4
    Modified Files:
    src/sbbs3/sftp.cpp
    Log Message:
    Make the implied cast explicit rather than change the behaviour.

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Windows 11)@VERT to Git commit to main/sbbs/master on Sat Mar 2 21:13:02 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/b48ed10822725c2a5ec1ca60
    Modified Files:
    src/sbbs3/sftp.cpp
    Log Message:
    Include "up/downloaded" in log message for non-filebase-file transfers

    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Windows 11)@VERT to Git commit to main/sbbs/master on Sat Mar 2 21:20:48 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/b89b22e25bd26f15660a217e
    Modified Files:
    src/sbbs3/sftp.cpp
    Log Message:
    Open files in binary mode

    This explains the extra calls to record_transfer() on Windows SFTP server

    I do wonder if we should be usign sopen() or nopen() here instead though.

    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From Deucе@VERT to Git commit to main/sbbs/master on Sat Mar 2 23:08:00 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/4238632b237acb42bd251994
    Modified Files:
    src/sbbs3/sftp.cpp
    Log Message:
    Add a function to convert file attributes to a string.

    And use it in the open() args log.

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Deucе@VERT to Git commit to main/sbbs/master on Sun Mar 3 19:08:19 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/e4764fdb62380d5c23faf77b
    Modified Files:
    src/sbbs3/sftp.cpp
    Log Message:
    "Fix" impossible warning.

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Deucе@VERT to Git commit to main/sbbs/master on Tue Mar 5 12:00:30 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/20a1f829a5bf16a27f7fc63f
    Modified Files:
    src/sbbs3/sftp.cpp
    Log Message:
    Don't return an error when reading /..

    POSIX requires a .. directory in the root of a filesystem, and
    some SFTP clients (at least Filezilla and WinSCP) assume it's there
    even if the remote doesn't list it. Per POSIX, /. and /.. are the
    same directory.

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Deucе@VERT to Git commit to main/sbbs/master on Wed Mar 6 10:07:34 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/46111601237388215858e55b
    Modified Files:
    src/sbbs3/sftp.cpp
    Log Message:
    Remove (now) unused variable.

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net