- Jun 11, 2021
-
-
Rob Swindell authored
Thanks Coverity! (CID 332340)
-
- Jun 10, 2021
-
-
Rob Swindell authored
It's anticipated that this will be used for JS-populated file metadata in JSON format in the future (and not just "archive contents" in .ini format). Also, fix the double-free issue that was occurring when moving files with extended file descriptions (sbbs_t::movefile()). This was actually the primary problem I was fixing here, but noticed the metadata issue: metadata would not have been moved along with the other file info between bases.
-
Rob Swindell authored
Constified function arguments. Source path is still case-insensitive, but destination is case-sensitive (hopefully that's not an issue). When a "move" (!copy) is requested, a rename() is always attempted first and if successful, job done. Otherwise, we continue on with the file-copy (and then remove). This should resolve CID 332219 (DEADCODE).
-
Rob Swindell authored
Not that it really matters, but perhaps it'll matter in the future. And the code reads better.
-
- Jun 09, 2021
-
-
Rob Swindell authored
Hopefully this helps get to the bottom of Ragnarok's reported problem creating ZIP QWK files with libarchive.
-
Rob Swindell authored
If libarchive creates a 0-byte file or no file at all, then fall-through to the "temp file command-line" (if there is at least one Compressible File Type configured). If libarchive fails, there will still be a (hopefully helpful) error message logged, but at least the QWK packet may still get created.
-
Rob Swindell authored
Not supported by default on Windows and perhaps not on all *nix systems. You can still support creation of tbz files if you like, but you'll need to setup an external "Compressible File Type" in SCFG to do it.
-
Rob Swindell authored
Reported by AL@TRMB.
-
Rob Swindell authored
This should fix issue #272 reported by Ragnarok. Not the libarchive error part, but the second (mv) CopyFile error part.
-
Rob Swindell authored
-
- Jun 08, 2021
-
-
Rob Swindell authored
Reported by DaiTengu via eye are sea.
-
Rob Swindell authored
Resolves this errors appearing on Vertrauen where the sub=<code> value appears to be from some *other* Synchronet BBS: Unrecognized msgbase code: dove-firearms, Request: /msgs/msgs.ssjs?msg_sub=dove-firearms
-
Rob Swindell authored
The -hdr option no longer implies -ext (extended descriptions). Truncate white-space off end of extended descriptions.
-
Rob Swindell authored
-
Rob Swindell authored
-
Rob Swindell authored
-
Rob Swindell authored
Update the description of the GET and PUT commands too.
-
Rob Swindell authored
Sometimes the progress meter (e.g. during file text searches) appears at a column offset > 0 and doesn't look good. Fix that.
-
Rob Swindell authored
This resolve long delays (while searching for files) without any indication of progress. Keep new-scan progress interval at 10 dirs however (they're fast).
-
Rob Swindell authored
We can't (apparently) only rely on the return value of start_tls(), we have to check the value of the crypt session too. This fix the possibility of this happening: Jun 7 18:07:26 sbbs synchronet: ftp 0058 TLS ERROR 'No permiss.to perform this operation' (-21) opening keyset Jun 7 18:07:26 sbbs synchronet: ftp 0058 <192.168.1.25> initialized TLS successfully Instead, we'll detect the failure and disable FTPS support, logging "failed to initialize TLS successfully".
-
- Jun 07, 2021
-
-
Rob Swindell authored
Skip any prepended white-space in the passed name to find. Use better variable names (and length) for the character strings. Use matchusername() instead of strcmp(); matchusername() follows the liberal user-id/alias/name matching algorithm. Use strcasestr() instead of strstr(), so no copy/modification (upper-casing) of passed name is now required. When 'Q'uitting the search, set the SS_ABORT flag.
-
Rob Swindell authored
-
- Jun 06, 2021
-
-
Rob Swindell authored
Don't need no stinking pre/appended white-space in our filenames!
-
Rob Swindell authored
-
Rob Swindell authored
-
Rob Swindell authored
For info, see: https://docs.microsoft.com/en-us/windows/win32/fileio/naming-a-file
-
Rob Swindell authored
5 options: - Safest Subset - Most ASCII, Excluding Spaces (the default) - Most ASCII, Including Spaces - Most CP437, Excluding Spaces - Most CP437, Including Spaces
-
Rob Swindell authored
-
Rob Swindell authored
-
Rob Swindell authored
Fix FreeBSD build error: dirwrap.c:760:13: error: use of undeclared identifier 'GLOB_PERIOD' Not sure how glob() on FreeBSD treats "dot files" or how to control that.
-
Rob Swindell authored
-
Rob Swindell authored
-
Rob Swindell authored
-
Rob Swindell authored
sbbs_t::checkfname() now checks the file.can too. new filedat.c functions: - safest_filename() - not currently used - illegal_filename() - returns true for a highly-suspicious (e.g. hack attempt) filename - allowed_filename() - returns true if the filename is good for upload (assumed to be already checked to be legal as well). Importantly, filenames beginning or ending in a '.' are now unallowed: - 'dot files' are hidden (by default) on *nix - files ending in a '.' are problematic on Windows
-
Rob Swindell authored
-
Rob Swindell authored
(prints the bad filename) - also, checkfname() is going to do the file.can (trashcan) checking, so no need here
-
Rob Swindell authored
The BadFilename text.dat is now a format string (prints the bad filename). Use the nice progress() display status while searching for duplicate filenames.
-
Rob Swindell authored
glob() by default, doesn't include 'dot files', so include the GLOB_PERIOD flag so that when deleting all files in a directory (e.g. node1/temp/*), any files starting with a dot will be deleted too.
-
Deucе authored
This fixes an issue in TypeClass lookups (such as used by reverse())
-
- Jun 05, 2021
-
-
Rob Swindell authored
The command to delete and remove all messages is changed from 'd' to 'D'. This operation is not reversable. New commands are 'd' (flag all msgs for deletion) and 'u' (undelete all msgs).
-