1. 27 Aug, 2011 1 commit
  2. 21 Jul, 2011 1 commit
    • rswindell's avatar
      Complete QWKE support (using MultiMail for testing): · c9f6aaa5
      rswindell authored
      Create and include in packet TOREADER.EXT if QWKEsupport is enabled
      (MultiMail keys of this file for QWKE support, so without, no QWKE features are
      enabled in MultiMail).
      Parse TODOOR.EXT if included in REP packets (for adding/dropping subs or
      setting/resetting pointers).
      Parse To:, From:, and Subject: QWKE kludge lines and use if/when appropriate
      (e.g. to defeat QWK 25-char header field limits).
      Create To:, From:, and Subject: QWKE kludge lines in QWK/REP packets when
      QWKE support is enabled and those fields exceed QWK limits (25 chars).
      Also, legacy SyncQNET kludge lines (@VIA, @TZ, etc.) may now exist in the
      top of the message body in any order.
      Note: current versions of MultiMail do not support "To" fields > 25 chars, even
      in QWKE mode (though I have a patch pending) and do not (yet) support
      Synchronet HEADERS.DAT file (rendering QWKE kludges unnecessary).
      These are major changes in the QWK/REP creation/parsing code, so testing
      (especially with QWKE-compliant offline readers) and bug reports are welcome!
      c9f6aaa5
  3. 27 Apr, 2011 1 commit
    • rswindell's avatar
      Judicious (even excessive?) use of the volatile keyword on variables that are · 4c54a03d
      rswindell authored
      commonly modified by multiple threads, potentially simultaneously, resulting in
      bad values (e.g. active_clients = -1).
      Updated copyright date to 2011.
      Fixed Win32 compile bug in main.cpp introduced in last commit.
      Eliminated some unused variables and updated some times (e.g. ulong in place
      fo uint32_t).
      4c54a03d
  4. 01 Mar, 2011 2 commits
  5. 13 Mar, 2010 2 commits
  6. 10 Mar, 2010 1 commit
  7. 11 Nov, 2009 1 commit
  8. 09 Nov, 2009 1 commit
  9. 25 Oct, 2009 1 commit
  10. 24 Oct, 2009 1 commit
    • rswindell's avatar
      Added current host name to errorlog() output, this helps determine on which · 4151445d
      rswindell authored
      system (in a multi-computer BBS) the error occurred.
      For the mail server:
      - keep track of the number of times each mailproc handled a message
      - display counters when blocking/filtering messages in log output
      - advertise 8BITMIME in the ESMTP EHLO response
      - do not route mail to mailproc when the execution requirements are not met
        (e.g. ARS, DNSBL, SPAM, etc.)
      4151445d
  11. 18 Sep, 2009 1 commit
  12. 17 Aug, 2009 1 commit
  13. 14 Aug, 2009 2 commits
    • rswindell's avatar
      When executing (not loading) a script from a file, 3 new properties are · 71d44c8f
      rswindell authored
      created:
      js.exec_path - full path and filename of file executed
      js.exec_dir - directory of executed file
      js.exec_file - filename executed (with no path)
      71d44c8f
    • rswindell's avatar
      Added JS load() search path extensibility: · f45e2156
      rswindell authored
      Configurable via ctrl/sbbs.ini file JavaScriptLoadPath key value
      (comma-separate listed of search directories), default value is "load".
      This list is exposed in the JS object model via the js.load_path_list array
      (may be modified by scripts).
      For JSexec, the default load path list may be over-ridden with the '-i' option.
      For relative load paths (e.g. not beginning with '/' or '\'), the path is
      assumed to be a sub-directory of the (configurable) mods or exec directories
      and is searched accordingly.
      So, by default, load("somefile.js") will search in this order:
      mods/load/somefile.js
      exec/load/somefile.js
      mods/somefile.js
      exec/somefile.js
      f45e2156
  14. 22 Apr, 2009 1 commit
  15. 21 Mar, 2009 1 commit
  16. 20 Mar, 2009 1 commit
    • rswindell's avatar
      ARS improvements: · 1cdf2c10
      rswindell authored
      Added HOST and IP keywords to allow restricted access/privileges to/for
      specific remote hostnames or IP addresses (wildcards allowed).
      All string-argument type ARS keywords (e.g. SHELL, PROT, etc.) now support .can
      style wildcards.
      The current remote client is now used for protocol, host, and IP ARS checking,
      when available, so this requires passing the client pointer around (which
      explains why so many files are touched by this change) and takes care of a
      long standing to-do item (the user's 'modem' value was used for the PROT
      value checking, which was not always correct).
      1cdf2c10
  17. 21 Feb, 2009 3 commits
    • rswindell's avatar
      Another to-do list item: when exiting the reading mail menu, if there is any · 0366cec5
      rswindell authored
      (non-deleted) mail in the mailbox, prompt the user to delete all the mail
      waiting.
      0366cec5
    • rswindell's avatar
      sbbs_t::bputs() now checks online value in while() loop. · d13fc8f6
      rswindell authored
      sbbs_t::rputs() now:
      * Can accept an optional length argument which allows it to output strings
      with embedded NULs if desired.
      * If a call to outcom() fails, terminates and returns the sent number of chars.
      * Performs Telnet IAC escaping when appropriate.
      * Checks online value in while() loop.
      * No longer output to log if "on local" - event scripts aren't expected to use
      this function.
      JS console.write() and writeln() now use rputs() instead of putcom() so that
      Telnet IAC chars are escaped when necessary and saveline/restoreline will work.
      sbbs_t::putcom() now returns the number of chars sent successfully.
      d13fc8f6
    • rswindell's avatar
      Create and use a variant of sbbs_t::ansi() which accepts a "current attribute" · d0f49f9a
      rswindell authored
      argument and buffer and retruns an optimized ANSI sequence to generate
      the desired attribute.
      console.ansi() method now support this usage as well, so msgutils.js's
      attr_to_ansi() should no longer be needed.
      d0f49f9a
  18. 18 Feb, 2009 2 commits
  19. 16 Feb, 2009 2 commits
    • rswindell's avatar
      Renamed validattr() to valid_ctrl_a_attr(). · f1e13988
      rswindell authored
      Created valid_ctrl_a_code() which returns TRUE if the passed ctrl-a code is
      valid (safe) for message networking, user input.
      Only QWK-export valid ctrl-a codes.
      f1e13988
    • rswindell's avatar
      Major over-haul of smb_util.c and most everything that uses it: · 17ab641b
      rswindell authored
      Constified the arguments.
      Created exascii_to_ascii_char().
      Created ctrl_a_to_ascii_char().
      strip_ctrl() and prep_file_desc() now takes 2 args.
      strip_ctrl(), strip_exascii() and prep_file_desc() now strdup() the input
      string and if the dest arg is NULL, returns the allocated and modified copy.
      sbbs_t::bputs() now handles ^AZ.
      Change Ctrl-A code message network exporting:
      1. ^AL, ^A<, ^A[, and ^A] are always translated to ASCII equivalents.
      2. ^AZ will terminate the message body prematurely if found.
      3. Ex-ASCII (CP437) chars will be translated to ASCII equivalents (rather than
      '*') for "ASCII Only" subs.
      For import, don't allow Ctrl-AP or Ctrl-AL.
      For SBBSecho:
      Added support for specifying a link's address on the command-line (e.g. for
      use with -h).
      Mail server now strips Ctrl-A codes from message bodies for sending via POP3
      or SMTP.
      17ab641b
  20. 10 Feb, 2009 1 commit
  21. 01 Feb, 2009 1 commit
  22. 23 Jan, 2009 1 commit
  23. 16 Jan, 2009 1 commit
  24. 20 Dec, 2008 1 commit
  25. 30 Nov, 2008 1 commit
  26. 30 Aug, 2008 1 commit
  27. 04 Jun, 2008 1 commit
  28. 19 Mar, 2008 1 commit
  29. 26 Feb, 2008 1 commit
  30. 25 Feb, 2008 1 commit
    • rswindell's avatar
      The Big Commit: · 73134a2c
      rswindell authored
      * Parses/consumes QWK headers.dat files
        - No more to/from/subj length limits
        - Extensive header details transferred for each message
        - IP/hostname filters (.can files) are applied to appropriate header fields
        - Code cleanup in the QWK functions
      * New functions to read/parse/search filter (.can) files as string lists
        - Performance boost - no need to open/read/close .can file for each message
      * More thread-safe Message-ID retrieval/generation (ftn_msgid and get_msgid)
      * Better Message-ID generation for misconfigured systems (e.g. no hostname)
      ! These changes require the latest smblib and xpdev libraries !
      73134a2c
  31. 23 Feb, 2008 1 commit
  32. 16 Feb, 2008 1 commit
  33. 11 Jan, 2008 1 commit