• src/sbbs3/bulkmail.cpp email.cpp execfunc.cpp fido.cpp js_bbs.cpp js_msgbase.c mailsrvr.c netmail.cpp newuser.cpp postmsg.cpp r

    From rswindell@VERT to CVS commit on Tuesday, February 19, 2019 19:43:19
    src/sbbs3 bulkmail.cpp 1.40 1.41 email.cpp 1.72 1.73 execfunc.cpp 1.44 1.45 fido.cpp 1.66 1.67 js_bbs.cpp 1.176 1.177 js_msgbase.c 1.228 1.229 mailsrvr.c 1.681 1.682 netmail.cpp 1.54 1.55 newuser.cpp 1.77 1.78 postmsg.cpp 1.120 1.121 readmail.cpp 1.87 1.88 readmsgs.cpp 1.115 1.116 sbbs.h 1.504 1.505 sbbsdefs.h 1.231 1.232 writemsg.cpp 1.141 1.142
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv6411

    Modified Files:
    bulkmail.cpp email.cpp execfunc.cpp fido.cpp js_bbs.cpp
    js_msgbase.c mailsrvr.c netmail.cpp newuser.cpp postmsg.cpp
    readmail.cpp readmsgs.cpp sbbs.h sbbsdefs.h writemsg.cpp
    Log Message:
    Reversed course on the WM_QUOTE mode handling in sbbs_t::postmsg()
    (JS bbs.post_msg()): If the WM_QUOTE mode flag is *not* set, then it will auto- create the quote file (quotes.txt) and add the WM_QUOTE mode bit before calling sbbs_t::writemsg(). So if existing JS scripts call bbs.post_msg(..., WM_QUOTE) with a custom-created quote file (e.g. with msg tails), that'll still work as before (e.g. DDMsgReader.js).

    bbs.email() and bbs.netmail() now support an optional reply_header_object argument which works like bbs.post_msg(). These methods (and the underlying
    C++ methods: sbbs_t::email(), netmail(), inetmail(), all auto-create the
    quote file now, when the WM_QUOTE mode flag is *not* set.

    The auto-created quotes.txt now includes the plain-text version of MIME-encoded messages.

    the bbs.post_msg(), email(), and netmail() methods now all support reply
    header objects that came directly from bbs.get_msg_header() *or* copies of
    such header objects (but the auto-quoting feature won't work when supplied
    this type of header object). So if passed a header object returned from bbs.get_msg_header(), we can now use the message base (for auto-quoting) and the underlying msg storage directly (no JS parsing necessary). This is what
    the new js_GetMsgHeaderObjectPrivates() function is used for.

    js_ParseMsgHeaderObject() (and the underlying parse_header_object() function) now supports either an actual internally-generated msg header object (e.g. returned from bbs.get_msg_header()) or one that is a copy or hand-constructed.

    quotemsg() no longer tries to get a copy of the msg index/header. It shouldn't have to since we can now get to underlying msg storage in the js_msgbase.c
    via js_GetMsgHeaderObjectPrivates().

    quotemsg() now reads only the plain-text portion of MIME-encoded messages.

    As part of this effort, I modernized the method prototypes using default argument values (e.g. WM_NONE for wm_mode arguments) and removed some extraneous WM_EMAIL and WM_NETMAIL specifications (these wm_mode flags are automatically added by the sbbs_t::email() and *netmail() functions).

    savemsg() now *does* support reply-IDs/thread-linkage via the additional 'remsg' argument (when non-NULL).

    Replaced some use of nulstr with NULL.

    Replaced more boilerplate SMB open code with calls to smb_open_sub().


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