• src/smblib/smbfile.c

    From Rob Swindell@VERT to Git commit to main/sbbs/master on Wed May 12 21:07:14 2021
    https://gitlab.synchro.net/main/sbbs/-/commit/cfee914fed60488a51a62dc5
    Modified Files:
    src/smblib/smbfile.c
    Log Message:
    Fix crash in smb_addfile_withlist() when passed a non-NULL empty list

    Don't allocate and memset a buffer of -1:
    #1 0x0000559222bc167f in strListCombine (list=0x559224220720, buf=0x559224226550 "", maxlen=18446744073709551615,
    delimit=0x559222bcce0a "\r\n") at str_list.c:447
    447 memset(buf, 0, maxlen);
    (gdb) print maxlen
    $1 = 18446744073709551615
    (gdb) up
    #2 0x0000559222ba3841 in smb_addfile_withlist (smb=0x7ffce63a7e90, file=0x7ffce63a5bc0, storage=1, extdesc=0x0,
    list=0x559224220720, path=0x7ffce63a6e80 "/xfer/loons/manhater.mp3") at smbfile.c:365
    365 strListCombine(list, content, size - 1, "\r\n");
    (gdb) print list
    $2 = (str_list_t) 0x559224220720
    (gdb) print list[0]
    $3 = 0x0

    Found/reported by plt via irc. Thanks!

    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Thu May 13 18:57:59 2021
    https://gitlab.synchro.net/main/sbbs/-/commit/34aeeb6d4b688a168058707a
    Modified Files:
    src/smblib/smbfile.c
    Log Message:
    smb_removefile() failed if filename length was > 64 chars

    And the "name not found" error text was wrong.

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