Skip to content
Snippets Groups Projects
Commit 97ac3bbf authored by Rob Swindell's avatar Rob Swindell :speech_balloon:
Browse files

Parse/separate forward-to-netmail name from address

Only do the local user notification when appropriate.
Signal the FTN netmail semaphore when appropriate.
parent 6e8fea2c
Branches
Tags
1 merge request!463MRC mods by Codefenix (2024-10-20)
Pipeline #973 passed
...@@ -1389,7 +1389,15 @@ bool sbbs_t::forwardmail(smbmsg_t* msg, const char* to) ...@@ -1389,7 +1389,15 @@ bool sbbs_t::forwardmail(smbmsg_t* msg, const char* to)
msg->idx.to=usernumber; msg->idx.to=usernumber;
} else { } else {
SAFECOPY(touser, to); SAFECOPY(touser, to);
smb_hfield_netaddr(msg, RECIPIENTNETADDR, to, NULL); char* addr = touser;
char* p = strchr(addr, '@');
if(net_type != NET_INTERNET && p != NULL)
addr = p + 1;
smb_hfield_netaddr(msg, RECIPIENTNETADDR, addr, NULL);
if(p != NULL)
*p = '\0';
smb_hfield_str(msg, RECIPIENT, touser);
SAFECOPY(touser, to);
msg->idx.to=0; msg->idx.to=0;
} }
...@@ -1431,6 +1439,7 @@ bool sbbs_t::forwardmail(smbmsg_t* msg, const char* to) ...@@ -1431,6 +1439,7 @@ bool sbbs_t::forwardmail(smbmsg_t* msg, const char* to)
useron.etoday++; useron.etoday++;
putuserrec(&cfg,useron.number,U_ETODAY,5,ultoa(useron.etoday,tmp,10)); putuserrec(&cfg,useron.number,U_ETODAY,5,ultoa(useron.etoday,tmp,10));
if(usernumber > 0) {
for(i=1;i<=cfg.sys_nodes;i++) { /* Tell user, if online */ for(i=1;i<=cfg.sys_nodes;i++) { /* Tell user, if online */
getnodedat(i,&node,0); getnodedat(i,&node,0);
if(node.useron==usernumber && !(node.misc&NODE_POFF) if(node.useron==usernumber && !(node.misc&NODE_POFF)
...@@ -1444,6 +1453,10 @@ bool sbbs_t::forwardmail(smbmsg_t* msg, const char* to) ...@@ -1444,6 +1453,10 @@ bool sbbs_t::forwardmail(smbmsg_t* msg, const char* to)
SAFEPRINTF(str,text[UserSentYouMail],useron.alias); SAFEPRINTF(str,text[UserSentYouMail],useron.alias);
putsmsg(&cfg,usernumber,str); putsmsg(&cfg,usernumber,str);
} }
} else {
if(net_type == NET_FIDO && cfg.netmail_sem[0])
ftouch(cmdstr(cfg.netmail_sem, nulstr, nulstr, NULL));
}
return true; return true;
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment