• src/sbbs3/mailsrvr.c

    From rswindell@VERT to CVS commit on Sunday, April 01, 2018 07:22:00
    src/sbbs3 mailsrvr.c 1.662 1.663
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv11916

    Modified Files:
    mailsrvr.c
    Log Message:
    Added a debug-level log msg ever 100 lines of received SMTP message text.



    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From rswindell@VERT to CVS commit on Friday, April 06, 2018 00:14:00
    src/sbbs3 mailsrvr.c 1.664 1.665
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv10424

    Modified Files:
    mailsrvr.c
    Log Message:
    Fix a couple of issues with external mail processors:
    - Since rev 1.556, mailproc_to_match[] would only ever contain one mail
    processor (index) value, even if the RCPT TO address matched multiple
    mail processor "To" keys in mailproc.ini, so only the first-matching
    mail processor (with a "To" key) would be executed for the msg.
    - mailproc_match, meaning the destination was a non-passthrough
    external mail processor, in which case the destination (RCPT TO) address
    may *not* match a valid local user account, would be set for *passthru*
    mail processors potentially resulting in the following error (and an
    undelivered mail message): !SMTP can't deliver mail to user #0
    only set mailproc_match to a valid mail proc index if the recipient matches a
    non-passthru mail processor.


    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From rswindell@VERT to CVS commit on Friday, April 06, 2018 01:02:00
    src/sbbs3 mailsrvr.c 1.665 1.666
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv23480

    Modified Files:
    mailsrvr.c
    Log Message:
    Fix get_ssl_cert() failure log message (wrong number of arguments).
    Was this pasted from somewhere else?


    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From rswindell@VERT to CVS commit on Friday, April 06, 2018 01:58:00
    src/sbbs3 mailsrvr.c 1.666 1.667
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/home/rswindell/sbbs/src/sbbs3

    Modified Files:
    mailsrvr.c
    Log Message:
    Enable GCC-assisted printf-style format/arg checking for lprintf() and
    resolve the resulting warnings.



    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From rswindell@VERT to CVS commit on Friday, April 06, 2018 17:51:00
    src/sbbs3 mailsrvr.c 1.668 1.669
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv1272

    Modified Files:
    mailsrvr.c
    Log Message:
    Attempt to address GCC v7 warnings raised by Nelgin:
    warning: format not a string literal and no format arguments [-Wformat-security]
    sockprintf(sock,sess,(char*)resp);
    sockprintf(socket,session,sys_error);



    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From rswindell@VERT to CVS commit on Saturday, April 07, 2018 06:01:00
    src/sbbs3 mailsrvr.c 1.669 1.670
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv4150

    Modified Files:
    mailsrvr.c
    Log Message:
    Resolve gcc version 5.4.0 warning:
    format not a string literal and no format arguments [-Wformat-security]


    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From rswindell@VERT to CVS commit on Wednesday, April 18, 2018 06:00:00
    src/sbbs3 mailsrvr.c 1.670 1.671
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv31889

    Modified Files:
    mailsrvr.c
    Log Message:
    Use a different source for the message number in smb_getmsghdr() failure
    error log message as the header is zeroed in this function and thus the
    message number previously read from the index, lost (zeroed) and useless.



    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From rswindell@VERT to CVS commit on Wednesday, April 18, 2018 06:06:00
    src/sbbs3 mailsrvr.c 1.671 1.672
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv32536

    Modified Files:
    mailsrvr.c
    Log Message:
    Use the msg.idx.number as the message number in smb_getmsghdr() failure
    error messages (in the POP3 server) as the msg.hdr.number is zeroed by smb_getmsghdr() and potentially invalid when returning an error.



    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From rswindell@VERT to CVS commit on Monday, June 11, 2018 20:00:00
    src/sbbs3 mailsrvr.c 1.672 1.673
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv27806

    Modified Files:
    mailsrvr.c
    Log Message:
    Added log output for a couple of instances where get_ssl_cert() could (previuosly) silently fail - in the sendmail_negotiate() and pop3_thread().
    If get_ssl_cert() can return -1 withOUT setting the estr argument to a
    non-NULL value, then we could still have silent failures (TBD).



    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From rswindell@VERT to CVS commit on Thursday, July 19, 2018 23:18:00
    src/sbbs3 mailsrvr.c 1.673 1.674
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/home/rswindell/sbbs/src/sbbs3

    Modified Files:
    mailsrvr.c
    Log Message:
    Fix SMTP-sending mail bug when SMTP/TLS was successfully negotiated:
    The "max lines" parameter value passed to sockmsgtxt was using the cryptlib session number - this would truncate sent email bodies to some seemingly
    random number of lines. Introduced in rev 1.622.
    Also added a couple of helpful log lines to let the log-reader know if/when
    TLS was successfully negotiated for sendmail sessions.



    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From rswindell@VERT to CVS commit on Friday, July 20, 2018 02:50:00
    src/sbbs3 mailsrvr.c 1.675 1.676
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv22084

    Modified Files:
    mailsrvr.c
    Log Message:
    Remove redundant calls to remove_mgs_instransit() from sendmail_open_socket()



    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From rswindell@VERT to CVS commit on Monday, July 30, 2018 20:29:00
    src/sbbs3 mailsrvr.c 1.676 1.677
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/home/rswindell/sbbs/src/sbbs3

    Modified Files:
    mailsrvr.c
    Log Message:
    Fix chk_email_addr() for strings which begin with a name, specifically for
    mail "To" and "From" header fields of the form: user name <user@addr> or
    "user name" <user@addr> - the email.can filtering would not work



    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From rswindell@VERT to CVS commit on Wednesday, October 17, 2018 19:20:00
    src/sbbs3 mailsrvr.c 1.677 1.678
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/home/rswindell/sbbs/src/sbbs3

    Modified Files:
    mailsrvr.c
    Log Message:
    More GCC printf warning fixes.



    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From rswindell@VERT to CVS commit on Monday, October 22, 2018 07:29:00
    src/sbbs3 mailsrvr.c 1.678 1.679
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv18387

    Modified Files:
    mailsrvr.c
    Log Message:
    Lower the "MAIL BASE LOCKED" SMTP log message severity from critical
    to warning - this is normal/expected (e.g. when mail base is being
    backed-up).



    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From rswindell@VERT to CVS commit on Friday, January 04, 2019 22:08:00
    src/sbbs3 mailsrvr.c 1.680 1.681
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv18110

    Modified Files:
    mailsrvr.c
    Log Message:
    Return a 250 "ok" response to mail received-and-forwarded rather than the
    251 response which was made optional in RFC2821 - to address privacy
    concerns.



    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From rswindell@VERT to CVS commit on Monday, April 29, 2019 04:02:00
    src/sbbs3 mailsrvr.c 1.689 1.690
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv8474

    Modified Files:
    mailsrvr.c
    Log Message:
    Actually store the SMTP forward-path of received mail messages in the message headers



    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From rswindell@VERT to CVS commit on Monday, April 29, 2019 04:45:00
    src/sbbs3 mailsrvr.c 1.690 1.691
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/home/rswindell/sbbs/src/sbbs3

    Modified Files:
    mailsrvr.c
    Log Message:
    Fix GCC warning: pointer targets in assignment differ in signedness



    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From rswindell@VERT to CVS commit on Wednesday, May 01, 2019 07:36:00
    src/sbbs3 mailsrvr.c 1.691 1.692
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv1989

    Modified Files:
    mailsrvr.c
    Log Message:
    Bug-fix: if the forward-path is in "<address>" notation, don't include the angle brackets in the "RCPT TO" command sent to the SMTP server. This is an old bug but now appears because we are now (recently) actually storing the SMTP forward-path in the message header.




    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From rswindell@VERT to CVS commit on Wednesday, May 01, 2019 07:44:00
    src/sbbs3 mailsrvr.c 1.692 1.693
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv4314

    Modified Files:
    mailsrvr.c
    Log Message:
    Don't auto-exempt "<<address>>", just "<address>"



    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From rswindell@VERT to CVS commit on Friday, May 03, 2019 03:00:00
    src/sbbs3 mailsrvr.c 1.694 1.695
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv27392

    Modified Files:
    mailsrvr.c
    Log Message:
    Set the MSG_SENT netattr attribute flag after sending an email via SMTP but after sending via POP3 (the MSG_READ attribute flag is already indicating that).


    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From rswindell@VERT to CVS commit on Saturday, May 11, 2019 08:23:00
    src/sbbs3 mailsrvr.c 1.695 1.696
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv5274

    Modified Files:
    mailsrvr.c
    Log Message:
    Fix most likely cause of new crashes seen in mailsrvr, calls to smb_freemsgmem():
    bounce() is using a strange method of copying a message header in memory
    (not using smb_copymsgmem) and when it frees the message, ends up with a double-free of the 2 new smbmsg_t members (not header fields): text_subtype
    and text_charset.



    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From rswindell@VERT to CVS commit on Friday, May 24, 2019 02:02:00
    src/sbbs3 mailsrvr.c 1.696 1.697
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv8254

    Modified Files:
    mailsrvr.c
    Log Message:
    Don't read the spamblock.cfg unnecessarily:
    We don't store (findable) hostnames in the file, so don't search for them. Don't search file if the host is listed in the spamblock_exempt.cfg file.
    If you have a really large spamblock.cfg file, this could result in the unnecessary reading of potential many megabytes of data for each inbound
    SMTP connection. We might want to read this file even less frequently and
    store the list in a searchable str_list_t or something.



    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From rswindell@VERT to CVS commit on Saturday, June 22, 2019 07:19:41
    src/sbbs3 mailsrvr.c 1.698 1.699
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv14834

    Modified Files:
    mailsrvr.c
    Log Message:
    MIME-encoded headers (header field values with RFC 2047 "encoded-words") are getting kind of crazy common now and being employed even when totally unnecessary (e.g. encoding strings that contain just plain ASCII):
    - normalize message header fields, when possible
    - normalize UTF-8 encoded characters, when possible (e.g. special punctuation
    chars)

    This allows text filters (e.g. subject.can, name.can) to work on MIME-encoded header fields and notifications about received e-mails are legible to humans.

    Encoded-words that contain actual non-ASCII/CP437 chars (e.g. foreign symbols, emojis) are left as encoded-words to be dealt with by whatever displays the message header.

    Special handling of folded normalized field values was necessary because
    "White space between adjacent 'encoded-word's is not displayed." (per RFC 2047)


    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From rswindell@VERT to CVS commit on Saturday, June 22, 2019 07:50:57
    src/sbbs3 mailsrvr.c 1.699 1.700
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/home/rswindell/sbbs/src/sbbs3

    Modified Files:
    mailsrvr.c
    Log Message:
    Fix warnings from GCC.



    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From rswindell@VERT to CVS commit on Friday, June 28, 2019 23:05:39
    src/sbbs3 mailsrvr.c 1.700 1.701
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/home/rswindell/sbbs/src/sbbs3

    Modified Files:
    mailsrvr.c
    Log Message:
    Translate UTF-8 "horizontal ellipsis" to 3 ASCII '.'s when normalizing MIME-encoded headers.



    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From rswindell@VERT to CVS commit on Saturday, July 06, 2019 07:43:03
    src/sbbs3 mailsrvr.c 1.701 1.702
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv26117

    Modified Files:
    mailsrvr.c
    Log Message:
    Moved normalize_utf8() to src/enocde/utf8.c: utf8_normalize_str().



    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From rswindell@VERT to CVS commit on Saturday, July 06, 2019 08:04:41
    src/sbbs3 mailsrvr.c 1.702 1.703
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/home/rswindell/sbbs/src/sbbs3

    Modified Files:
    mailsrvr.c
    Log Message:
    Fix GCC warning about signedness.



    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From rswindell@VERT to CVS commit on Saturday, July 06, 2019 22:10:43
    src/sbbs3 mailsrvr.c 1.703 1.704
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv5185

    Modified Files:
    mailsrvr.c
    Log Message:
    Double the size of the tmp buffer in parse_mail_address() (from 128 to 256 chars) so that massize MIME encoded header fields can be parsed successfull. :-|



    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From rswindell@VERT to CVS commit on Thursday, July 25, 2019 02:19:04
    src/sbbs3 mailsrvr.c 1.705 1.706
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv28008

    Modified Files:
    mailsrvr.c
    Log Message:
    Use new smb_msg_is_utf8() to set default MIME content-type charset to UTF-8 (e.g. for UTF-8 Fido or QWK netmail messages sent over SMTP or POP3).



    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From rswindell@VERT to CVS commit on Friday, August 02, 2019 08:17:29
    src/sbbs3 mailsrvr.c 1.706 1.707
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv17512

    Modified Files:
    mailsrvr.c
    Log Message:
    Use the RFC822* header fields, only when the actual header fields are MIME-encoded.
    If any RFC822* header field is a MIME-encoded UTF-8 string, then set the
    (new) auxattr MSG_HFIELDS_UTF8 flag. This will be used (soon, hopefully) to display UTF-8 encoded header fields to users. There's a gotchas here:
    - MIME-encoded header fields with other non-ASCII/8-bit charsets (e.g. CP437,
    ISO-8859) are still stored "as decoded", though the MSG_HFIELDS_UTF8 flag
    may be set *later* (which would be weird), resulting in a mixture of valid
    and invalid UTF-8 header fields. One solution would be to UTF-8-transcode all
    the non-UTF-8 header fields if *any* of them are UTF-8, but we wouldn't
    know which charset to translate *from*. Assuming CP437 isn't going to be
    correct 100% of the time - so punt for now and deal with it at display
    time. e.g. if the MSG_HFIELD_UTF8 auxattr flag is set, but an hfield contains
    invalid UTF-8 data, don't display as UTF-8 (e.g. treat as CP437). We don't
    have translations for other charsets (e.g. ISO-8859) setup yet anyway.



    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From rswindell@VERT to CVS commit on Friday, August 02, 2019 14:02:34
    src/sbbs3 mailsrvr.c 1.707 1.708
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/home/rswindell/sbbs/src/sbbs3

    Modified Files:
    mailsrvr.c
    Log Message:
    Resolve GCC warnings:
    pointer type mismatch in conditional expression
    format '%s' expects argument of type 'char *', but argument 5 has type 'void *'




    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From rswindell@VERT to CVS commit on Saturday, August 03, 2019 04:30:50
    src/sbbs3 mailsrvr.c 1.708 1.709
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv8081

    Modified Files:
    mailsrvr.c
    Log Message:
    Fix bug reported by PSI-Jack:
    Advertise STARTTLS support (in EHLO response) when *not* already using a TLS connection.



    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From rswindell@VERT to CVS commit on Saturday, August 03, 2019 09:35:55
    src/sbbs3 mailsrvr.c 1.709 1.710
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv15234

    Modified Files:
    mailsrvr.c
    Log Message:
    Don't retain linear-white-space between MIME encoded-words in header fields when decoding. Linear-white-space between regular atoms or between atoms
    and encoded words is retained (as a single space character, Yoda).



    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From rswindell@VERT to CVS commit on Friday, August 09, 2019 09:44:22
    src/sbbs3 mailsrvr.c 1.710 1.711
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv24768

    Modified Files:
    mailsrvr.c
    Log Message:
    Don't store the original RCPT TO argument (forward-path) when the message
    is being forwarded to an external email address. Introduced in rev 1.690, user-forwarded emails wouldn't work because sending envelope would contain
    the original forward-path. Thanks again to Alterego (ALTERANT) for testing
    this stuff and reporting issues with detail!



    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From rswindell@VERT to CVS commit on Sunday, September 01, 2019 06:25:38
    src/sbbs3 mailsrvr.c 1.712 1.713
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv21038

    Modified Files:
    mailsrvr.c
    Log Message:
    Bug-fix: wasn't actually using the MIME-decoded "From" header field. <sigh>



    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From rswindell@VERT to CVS commit on Wednesday, September 04, 2019 07:16:48
    src/sbbs3 mailsrvr.c 1.713 1.714
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv4776

    Modified Files:
    mailsrvr.c
    Log Message:
    Don't put UTF-8 chars in the new e-mail user notification message/telegram.
    We don't yet support UTF-8 in node/user messages.


    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From rswindell@VERT to CVS commit on Monday, September 09, 2019 06:41:52
    src/sbbs3 mailsrvr.c 1.714 1.715
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv5433

    Modified Files:
    mailsrvr.c
    Log Message:
    Must parse the "name" from '"name" <user@addr>' before MIME-decoding the
    name. This is a fix for "From", but "To" and "CC" header fields would need
    a similar fix (not included in this commit).



    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From rswindell@VERT to CVS commit on Tuesday, September 24, 2019 08:35:47
    src/sbbs3 mailsrvr.c 1.715 1.716
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv6320

    Modified Files:
    mailsrvr.c
    Log Message:
    Remove the redundant /TLS's from the cryptlib error strings.


    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From rswindell@VERT to CVS commit on Monday, July 20, 2020 04:11:17
    src/sbbs3 mailsrvr.c 1.732 1.733
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv13436

    Modified Files:
    mailsrvr.c
    Log Message:
    Add FTN message-ID to SMTP->FTN gated email/netmail messages.
    FTN Reply-IDs are not added here (yet).


    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to sbbs/master on Saturday, August 29, 2020 20:41:29
    https://gitlab.synchro.net/sbbs/sbbs/-/commit/cdf1b613a690c62c3d8d538f
    Modified Files:
    src/sbbs3/mailsrvr.c
    Log Message:
    Add one (lower severity) of cryptlib log messages in the mail server
    (e.g. errors become warnings) - I'm tired of seeing this in my
    error.log every day:
    SEND/TLS ... ERROR 'Received TLS alert message: Handshake failure' (-15) setting session active

    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to sbbs/master on Sunday, August 30, 2020 20:32:39
    https://gitlab.synchro.net/sbbs/sbbs/-/commit/203935575588938fecb97bf7
    Modified Files:
    src/sbbs3/mailsrvr.c
    Log Message:
    Only over-ride (lower the severity) of the cryptlib log msg for a single case

    Add another "get cryptlib error string" (at least, that's what I assume GCES stands for) that allows the log level to be specified, rather than derived
    from Cryptlib thinks the log level should be. Do this rather than adding one (lowering the severity) of every cryptlib log message as I did in the previous commit to this file.

    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From Rob@VERT to Git commit to sbbs/master on Wednesday, October 21, 2020 03:24:09
    https://gitlab.synchro.net/sbbs/sbbs/-/commit/1161e2cfd91d12b76f2d7267
    Modified Files:
    src/sbbs3/mailsrvr.c
    Log Message:
    Reject control chars in base64-decoded auth credentials (name/password)

    Also, if getuserdat() fails, don't count that as a failed login attempt.
    Also, track username and password of failed-login attempts of deleted or inactive user accounts.

    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to sbbs/master on Wednesday, October 21, 2020 04:02:58
    https://gitlab.synchro.net/sbbs/sbbs/-/commit/f4c8a61b08aaa0e073df48cf
    Modified Files:
    src/sbbs3/mailsrvr.c
    Log Message:
    Resolve GCC warning: passing argument 5 of `xpms_accept' from incompatible pointer type

    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to sbbs/master on Thursday, October 22, 2020 08:36:21
    https://gitlab.synchro.net/sbbs/sbbs/-/commit/68770a4ef6e4826c8c77a1bf
    Modified Files:
    src/sbbs3/mailsrvr.c
    Log Message:
    Address inconsistencies in log message formats.

    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to sbbs/master on Friday, October 23, 2020 00:35:37
    https://gitlab.synchro.net/sbbs/sbbs/-/commit/6750004aab59e7902c5e2acc
    Modified Files:
    src/sbbs3/mailsrvr.c
    Log Message:
    RFC[2]821 does not allow a space between MAIL FROM:/RCPT TO: and the <addr>

    Weird that no mail server has ever complained; I guess they're all prettty "liberal in what they accept".

    Also, eliminated an unnecessary strcpy() call.

    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to sbbs/master on Friday, October 23, 2020 04:46:09
    https://gitlab.synchro.net/sbbs/sbbs/-/commit/6851910b53701135226934b4
    Modified Files:
    src/sbbs3/mailsrvr.c
    Log Message:
    Add IP address or authenticated user name to SMTP server log messages.

    This might not be so great for IPv6 connections (let me know).

    Also, use macro for the maximum received SMTP bad command magic number.

    Fix-up the sender and recipient info included in log messages in the sendmail thread too.

    Bumped rev to 1.735.

    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to sbbs/master on Friday, October 23, 2020 08:51:57
    https://gitlab.synchro.net/sbbs/sbbs/-/commit/fd4692eade59d264c901fa40
    Modified Files:
    src/sbbs3/mailsrvr.c
    Log Message:
    Exclude authenticated connections from MaxConcurrentConnections limit

    Like the Terminal Server, don't count authenticated connections against the MaxConcurrentConnections limit.

    Only authenticated users with passwords (not Guest) count as authenticated connections.

    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to sbbs/master on Friday, October 23, 2020 08:53:14
    https://gitlab.synchro.net/sbbs/sbbs/-/commit/a1aec694f1d420510239a516
    Modified Files:
    src/sbbs3/mailsrvr.c
    Log Message:
    Fix printf format typo.

    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to sbbs/master on Saturday, October 24, 2020 07:11:29
    https://gitlab.synchro.net/sbbs/sbbs/-/commit/816ea9edb2677124f76bcb19
    Modified Files:
    src/sbbs3/mailsrvr.c
    Log Message:
    More log message overhaul. POP3 CAPA cmd support in transaction state.

    Log the IP address first in most log messages.
    Condense white-space in log messages to a single space.
    Log the server IP address of incoming connections.
    (more) Intelligent email address enclosure in angle-brackets.
    Better duplicate address comparison (just for log message).
    Fix wrong order of lprintf arguments in !UNKNOWN USER log message (new bug).

    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to sbbs/master on Sunday, October 25, 2020 05:06:02
    https://gitlab.synchro.net/sbbs/sbbs/-/commit/26638e25ade85142b42221b9
    Modified Files:
    src/sbbs3/mailsrvr.c
    Log Message:
    More log message updates.

    Putting IP addresses first.

    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to sbbs/master on Monday, October 26, 2020 06:22:23
    https://gitlab.synchro.net/sbbs/sbbs/-/commit/8cea25da893d72b9c13bf1ca
    Modified Files:
    src/sbbs3/mailsrvr.c
    Log Message:
    Use a mutex to serial message saving among multiple clients/threads

    This work-around shouldn't be necessary, but at least on my Linux/Samba setup, when GitLab sends out notification emails to subscribers and creates 4+ simultaneous SMTP connections and sends email messages, sometimes (often) it ends up with a lock-timeout on the mail base. The file locking should handle the contention fine, but somehow I end up in scenarios where savemsg() takes 30 seconds to complete (the configured SMB lock-timeout is 30 seconds, likely not a coincidence) - and this causes other clients to timeout trying to lock the base. Just use a sharead-mutex here instead as a work-around. The wait time is indefinite, might want to consider using a timed-wait instead.

    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to sbbs/master on Monday, October 26, 2020 06:27:49
    https://gitlab.synchro.net/sbbs/sbbs/-/commit/d0faa35d1132891d0652eb2d
    Modified Files:
    src/sbbs3/mailsrvr.c
    Log Message:
    Address warning: type defaults to `int' in declaration

    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to sbbs/master on Thursday, November 05, 2020 03:47:52
    https://gitlab.synchro.net/sbbs/sbbs/-/commit/ba8d544c7f1a3340dd967fd1
    Modified Files:
    src/sbbs3/mailsrvr.c
    Log Message:
    Detect and reject forged "from" fields in submitted msg headers

    For non-authenticated SMTP clients, if the "From:" header field contains a "name" which appears to be an email address (i.e. it has an '@' in it), and that address does not match the *actual* address in the "From:" field, reject the mail with an error message about the forged/mismatched address.

    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to sbbs/master on Saturday, November 07, 2020 03:54:42
    https://gitlab.synchro.net/sbbs/sbbs/-/commit/3aacaa64b56053c89bdc9c2b
    Modified Files:
    src/sbbs3/mailsrvr.c
    Log Message:
    Fix sendmail bug introduced in 6851910.

    The "MAIL FROM" command argument must always be enclosed in angle-brackets. Some mail servers (e.g. gmail, aol) would reject messages not delivered in this manner, e.g.:
    mx-aol.mail.gm0.yahoodns.net replied with:
    "501 Syntax error in parameters or arguments tnmpmscs"
    instead of the expected reply:
    "250 ..."
    gmail-smtp-in.l.google.com replied with:
    "555 5.5.2 Syntax error. o6si11103060plk.317 - gsmtp"
    instead of the expected reply:
    "250 ..."

    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to sbbs/master on Friday, November 20, 2020 21:57:28
    https://gitlab.synchro.net/sbbs/sbbs/-/commit/d6ec78eb57aad4118cd67879
    Modified Files:
    src/sbbs3/mailsrvr.c
    Log Message:
    MS Outlook can place names of to/from users in single-quotes

    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.

    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to sbbs/master on Saturday, November 21, 2020 23:00:52
    https://gitlab.synchro.net/sbbs/sbbs/-/commit/24021e05aa64a7c4c84c787a
    Modified Files:
    src/sbbs3/mailsrvr.c
    Log Message:
    The Received/trace header should contain the forward-path for "for"

    instead of the potentially-alias'd delivery address. The angle-brackets
    (now included) appear to be standards-compliant.

    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to sbbs/master on Saturday, November 21, 2020 23:44:43
    https://gitlab.synchro.net/sbbs/sbbs/-/commit/22faceeef77fe05b98d707f9
    Modified Files:
    src/sbbs3/mailsrvr.c
    Log Message:
    Better FTN netmail gating support

    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.

    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Wednesday, December 30, 2020 07:10:06
    https://gitlab.synchro.net/main/sbbs/-/commit/b5d19603092a4f4c978e7313
    Modified Files:
    src/sbbs3/mailsrvr.c
    Log Message:
    Connection and logon linked lists need re-init for every recycle

    Each list mutex is destroyed in the call to listFree() in cleanup(). Without a call to listInit(), the mutex is not recreated and thus the lists are no longer mutex-protected after a recycle. No negative consequences were observed from this issue, but a potential issue it is (was).

    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Saturday, January 23, 2021 02:22:42
    https://gitlab.synchro.net/main/sbbs/-/commit/dd121bcf7f0a690659ba5858
    Modified Files:
    src/sbbs3/mailsrvr.c
    Log Message:
    Fix bug introduced in c90ba307 - line endings stripped from rx'd mail

    An unrelated optimization (elimination of an unnecessary use of fprintf) resulted in a new bug that combined all lines from SMTP-received mail messages into a single long line, thus breaking all decoding ability of multi-part MIME messages (where blank lines are significant).

    Went ahead and replaced some other unnecessary uses of fprintf(), replaces with fputs() while at it.

    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Saturday, January 23, 2021 02:30:28
    https://gitlab.synchro.net/main/sbbs/-/commit/acede36f01fcda7c4384c776
    Modified Files:
    src/sbbs3/mailsrvr.c
    Log Message:
    Don't support yields per x lines on SMTP receive

    Consume the SMTP lines as fast as possible since the sender may be on the
    local network (or even local/loopback interface!) and could get way ahead and timeout otherwise, resulting in the "premature evacuation" error (and dumping of the received message) on the receive side. This resolves an observed issue with sending large attachments to the mail server at very high rates and the sending client timing and disconnecting waiting for a response from the server (which was throttling the receive using YIELD).

    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From Dream Master@VERT/CIAD to Rob Swindell on Saturday, January 23, 2021 06:55:42
    Re: src/sbbs3/mailsrvr.c
    By: Rob Swindell to Git commit to main/sbbs/master on Fri Jan 22 2021 06:22 pm

    An unrelated optimization (elimination of an unnecessary use of fprintf) resulted in a new bug that combined all lines from SMTP-received mail messages into a single long line, thus breaking all decoding ability of multi-part MIME messages (where blank lines are significant).

    Well, that makes perfectly good sense now. I got a couple messages this morning and they were one really long line. Thank you for fixing this. I'll update tonight.

    Brian Klauss <-> Dream Master
    Caught in a Dream | caughtinadream.com a Synchronet BBS

    ---
    Synchronet Caught in a Dream - caughtinadream.com
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Saturday, January 23, 2021 09:18:32
    https://gitlab.synchro.net/main/sbbs/-/commit/84009d35bf2f1295a0407699
    Modified Files:
    src/sbbs3/mailsrvr.c
    Log Message:
    Close the mime part even when error opening file

    If there was an error opening a file for attachment, the MIME part would be left unterminated.

    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Friday, February 05, 2021 05:15:16
    https://gitlab.synchro.net/main/sbbs/-/commit/93208aa960574b21dd2c5ceb
    Modified Files:
    src/sbbs3/mailsrvr.c
    Log Message:
    Support quoted filenames in message subjects

    "Old style" (e.g. FTN netmail) attachments put the filename(s) in the message subject. Supported quoted-filenames in the message subject (i.e. to support filenames with spaces in them) in addition to the traditional space-delimited filenames. Mixing quoted and space-delimited filenames (for multiple attached files) in a single message subject is supported.

    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Saturday, July 31, 2021 20:00:34
    https://gitlab.synchro.net/main/sbbs/-/commit/02448be248a5393ec95d4eaa
    Modified Files:
    src/sbbs3/mailsrvr.c
    Log Message:
    When logging sender address forgeries, log the address being forged

    Helpful for debugging issues with this forgery detection logic (if there are any).

    ---
    Synchronet Vertrauen Home of Synchronet [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Saturday, July 31, 2021 20:00:34
    https://gitlab.synchro.net/main/sbbs/-/commit/56bc209648a1a198b6973384
    Modified Files:
    src/sbbs3/mailsrvr.c
    Log Message:
    Don't allow unauthenticated DNS-blacklisted clients to post on subs

    Eliminate some of the infrequent SPAM posts to the SYNCPROG conference. Maybe make this behavior configurable?

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