- Nov 23, 2020
-
-
Rob Swindell authored
The goal of this commit is that: only modules that either are part-of sbbs.dll/libsbbs.so or need to link with/use that library, will #include "sbbs.h" and thus be dependent on its subsequent includes (e.g. cryptlib.h, jsapi.h). This should mean extdeps.mk can be trimmed way down. I also removed CVS keyword/comments and trimmed up the boilerplate copyright notice in modified and added source/header files in this commit. There is no functional change in behavior in this comment.
-
Rob Swindell authored
and I blew it. Here's to learning new tricks.
-
- Nov 22, 2020
-
-
Rob Swindell authored
The recipient net-addr/type was always being over-ridden a bit further down in the code. Don't do that. Also, log a message (sbbsecho.log) indicating that a message was forwarded ("Forwarding message ..."). For geneb.
-
Rob Swindell authored
-
Rob Swindell authored
-
Rob Swindell authored
If text/menu is a symlink (on *nix), then the path above would actually point to a filename in the parent of the symlink target, which is not what we want (we want the filename in the text dir). Fixed by using FULLPATH.
-
- Nov 21, 2020
-
-
Rob Swindell authored
Revert the previous change to the mailsrvr (don't try to parse the MS Outlook singled-quoted names in to/from header fields). Instead, use the new matchusername() to perform a liberal name match against the name portion of the destination email address and if it matches, go ahead and use the quoted-name field. Otherwise, use the name portion of the destination address as the TO field for the FTN netmail message.
-
Rob Swindell authored
- Ignore all non-trailing non-alphanumeric characters when comparing a string against a user's name. Previously, spaces and dots and underscores were mostly-treated as equivalent and white-space was sometimes compressed for comparison purposes (if the user name contained both spaces and dots). This updated algo helps to insure that deliberate or accidental name collisions cannot be created but also aids usability (e.g. users can make some minor cosmetic adjustments to their user name and still be considered the "same user" for most comparison purposes). - Terminate the comparison string at an '@' (ignore everything after). This resolves the FAQ of why users can't login with "username@domain" and aides some other username/address matching algorithms (e.g. in the mailserver). '@'s are illegal characters for usernames already. Expose the new algorithm via new function matchusername(). Use the algorithm in matchuser() and lookup_user(). Unrelated: don't lower-case the 'localuser' part of email addresses in usermailaddr() - cosmetic only.
-
Rob Swindell authored
instead of the potentially-alias'd delivery address. The angle-brackets (now included) appear to be standards-compliant.
-
Rob Swindell authored
This reverts commit d4ceeba3.
-
Rob Swindell authored
is_supported_netmail_addr() actually takes the system configuration and QWK routing table into account. No sense forwarding to a non-deliverable address.
-
Rob Swindell authored
Replace use-of/linking-with wsock32.lib with ws2_32.lib to fix issues such as this one coming-up with the HAProxy feature merge: unresolved external symbol __imp__inet_pton@12 referenced in function _xpms_accept
-
Deucе authored
-
Rob Swindell authored
There's no new opt-in option for this new feature - maybe there should be. For geneb.
-
- Nov 20, 2020
-
-
Deucе authored
This requires anything that includes sbbs.h to have cryptlib and mozjs already built/isntalled... to track this, I've added the new extdeps.mk file. This is pretty terrible though... not sure how important that dependency really is.
-
Rob Swindell authored
Parse single-quoted "name" portion of email-addr header fields. I don't think this is going to fully solve the issue with FTN netmail gated to SMTP and replied via Outlook, but it's a start. Try that Nelgin.
-
Deon George authored
-
Deucе authored
This is because it includes js_version.h if JAVASCRIPT is defined, and JAVASCRIPT is defined for everything using CFLAGS. It may be worth re-working the JAVASCRIPT define, but that's a bunch of extra work. This is the first (and easiest) step in getting parallel builds working.
-
- Nov 19, 2020
-
-
Deucе authored
-
Stephen Hurd authored
-
Stephen Hurd authored
-
Deucе authored
Then, add JSDOC support to crypto class constant objects. Also, since crypto stuff is almost half of all the docs, move all the crypto classes and objects to the end. It would be nice if these massive lists were hidden by default line the menu tree at the start.
-
- Nov 18, 2020
-
-
Stephen Hurd authored
Previously, properties were only supported via the TinyID mechanism in the JS API. This limited the properties to have a unique signed 8-bit integer ID, which prevented more than 256 properties from existing in a built-in object. The id value can be a name however, a TinyID is not required. For property descriptions with an ID outside the range of 8 bits, define them using just the name. When this is done, the getter and setter functions will need to convert the names to an ID themself. This isn't ideal... ideally, each would have a unique getter and setter, but doing it this way puts of requiring an internal JS API refactor and allows the CryptCert class to have all the defined properties. As implied... CryptCert now supports all properties, and JS Docs will be created for them. This section is yuge!
-
Deon George authored
-
Deucе authored
-
Deucе authored
Copy/paste without the update required a single character to have seven different values... which is unlikely to actually happen.
-
Deon George authored
-
Deon George authored
-
Deon George authored
-
Rob Swindell authored
This behavior was cut/pasted from xtrn_sec.js but doesn't play well with logon events (e.g. SBBSIMSG list) that should pause before a following CLS. As reported by altere on the I, the R, and the C.
-
Rob Swindell authored
-
Rob Swindell authored
Count the read mail-waiting and compare to the total mail-waiting and if they're the same, then default to "No" for the "Read Your Mail Now" prompt during logon. Also, pass the difference (the unread mail) to the LiMailWaiting logon-info line. As requested by altere via I.R.C.
-
- Nov 17, 2020
-
-
Deon George authored
-
Deucе authored
QUERY_STRING is defined (even if blank). Always define it.
-
- Nov 14, 2020
-
-
Rob Swindell authored
Previously, the console would be left in "raw" mode after invoking 'jsexec -d <module>'.
-
Rob Swindell authored
Added options -A[filename] and -S[filename] to allow more control over which output streams go where (for mlong and his troubles with running ircd via systemd). -A controls "all messages" either sending all to stdout or the specified filename. This override the automatic suppression of the console output stream when run without a controlling TTY. -S controls "status message" (includes non-error level log messages), either sending the status messages to stdout or the specified filename. This also overrides the automatic suppression of the console output stream when run without a controlling TTY.
-
- Nov 13, 2020
-
-
Rob Swindell authored
If an .ini file is read by either the iniGetObject() or iniGetAllObjects() methods and contains a key with a blank value, that property would be created with an "undefined" value. Both the iniGetObject() and iniGetAllObjects() methods now accept an additional Boolean argument (which defaults to false), to specify that "blanks" are acceptable. When the "blanks" argument is true, then keys with empty values in the .ini file are created as properties with empty string values (length of 0). This is going to be useful for modopts.js to read potentially-blank strings from modopts.ini and differentiate between a blank string key and a missing key.
-
Rob Swindell authored
When a preexisting node.log file is found, a terminal server crash is suspected. Include the timestamp of the node.log in the message appended to the system log (data/logs/*.log) to help identify the likely time of the crash.
-
- Nov 12, 2020
-
-
Rob Swindell authored
when there is no "template directory" selected/configured.
-