diff --git a/src/sbbs3/logon.cpp b/src/sbbs3/logon.cpp index 1724129032cc3750bb52d3e03ab17dc36f8693a3..9de17c5ce2f291296073faef17eb616a84f82321 100644 --- a/src/sbbs3/logon.cpp +++ b/src/sbbs3/logon.cpp @@ -197,9 +197,6 @@ bool sbbs_t::logon() useron.logontime=(time32_t)logontime; last_ns_time=ns_time=useron.ns_time; // ns_time-=(useron.tlast*60); /* file newscan time == last logon time */ - delfiles(cfg.temp_dir,ALLFILES); - safe_snprintf(str, sizeof(str), "%smsgs/n%3.3u.msg",cfg.data_dir,cfg.node_num); - remove(str); /* remove any pending node messages */ if(!SYSOP && online==ON_REMOTE && !(sys_status&SS_QWKLOGON)) { rioctl(IOCM|ABORT); /* users can't abort anything */ diff --git a/src/sbbs3/main.cpp b/src/sbbs3/main.cpp index 019810d02a5e80f53d85324cbee7cf0745b5c206..d96b92a73438f45742daf31cbe202394d8d25477 100644 --- a/src/sbbs3/main.cpp +++ b/src/sbbs3/main.cpp @@ -3564,6 +3564,16 @@ bool sbbs_t::init() thisnode.misc&=(NODE_EVENT|NODE_LOCK|NODE_RRUN); criterrs=thisnode.errors; putnodedat(cfg.node_num,&thisnode); + + // remove any pending node messages + safe_snprintf(str, sizeof(str), "%smsgs/n%3.3u.msg",cfg.data_dir,cfg.node_num); + remove(str); + // Delete any stale temporary files (with potentially sensitive content) + delfiles(cfg.temp_dir,ALLFILES); + safe_snprintf(str, sizeof(str), "%sMSGTMP", cfg.node_dir); + removecase(str); + safe_snprintf(str, sizeof(str), "%sQUOTES.TXT", cfg.node_dir); + removecase(str); } /* Reset COMMAND SHELL */ diff --git a/src/sbbs3/netmail.cpp b/src/sbbs3/netmail.cpp index 8a524f84bd11941eeab524ed9e7584d57ef424c6..8021520ccaf0309c13d68f9c263a25688d92f340 100644 --- a/src/sbbs3/netmail.cpp +++ b/src/sbbs3/netmail.cpp @@ -1035,7 +1035,7 @@ bool sbbs_t::inetmail(const char *into, const char *subj, int mode, smb_t* resmb mode |= WM_QUOTE; } - SAFEPRINTF(msgpath,"%snetmail.msg",cfg.node_dir); + msg_tmp_fname(useron.xedit, msgpath, sizeof(msgpath)); if(!writemsg(msgpath,nulstr,title,WM_NETMAIL|mode,INVALID_SUB, to_list, /* from: */your_addr, &editor, &charset)) { strListFree(&rcpt_list); bputs(text[Aborted]); @@ -1313,7 +1313,7 @@ bool sbbs_t::qnetmail(const char *into, const char *subj, int mode, smb_t* resmb mode |= WM_QUOTE; } - SAFEPRINTF(msgpath,"%snetmail.msg",cfg.node_dir); + msg_tmp_fname(useron.xedit, msgpath, sizeof(msgpath)); if(!writemsg(msgpath,nulstr,title, (mode|WM_QWKNET|WM_NETMAIL) ,INVALID_SUB,to,/* from: */useron.alias, &editor, &charset)) { bputs(text[Aborted]); return(false);