• src/sbbs3/answer.cpp atcodes.cpp bat_xfer.cpp chat.cpp chk_ar.cpp data

    From Rob Swindell (on Windows 11)@VERT to Git commit to main/sbbs/master on Monday, May 19, 2025 17:56:06
    https://gitlab.synchro.net/main/sbbs/-/commit/4eadc17a3f4efb089c9bb0c7
    Modified Files:
    src/sbbs3/answer.cpp atcodes.cpp bat_xfer.cpp chat.cpp chk_ar.cpp data.cpp email.cpp file.cpp ftpsrvr.c getkey.cpp getmsg.cpp getnode.cpp login.cpp logon.cpp logout.cpp main.cpp msgtoqwk.cpp netmail.cpp postmsg.cpp prntfile.cpp putmsg.cpp readmail.cpp readmsgs.cpp sbbs.h sbbsdefs.h str.cpp upload.cpp writemsg.cpp xtrn_sec.cpp
    Log Message:
    Abstract sysop user status using userdat.c function and new sbbs_t method

    ... instead of C macros: SYSOP and REALSYSOP

    REALSYSOP -> user_is_sysop(&useron)
    SYSOP -> sbbs_t::useron_is_sysop()

    This change also also includes a bug fix in chk_ar.cpp:
    sbbs_t::chk_ar() would evalulate the ARS keyword "SYSOP" as being true when temporary sysop status was set (e.g. after CHUSERing to another user) even
    when the user being checked was not the current user online (useron). The only obvious impact of this bug (that I found) would be when using the bulkmail feature and wanting to send to only SYSOPs *after* having CHUSER'd to another user, it would actually send bulk mail to *all* users. Listing users with access to a particular message or file area that had an access restriction
    of "SYSOP" (using sbbs_t::userlist()) would also have this issue (it would
    list *all* users). ARS searches in the online user editor for "SYSOP" would also do weird stuff in this case.

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