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

When packing netmail (stored messages), don't discard non-zero zones

As reported by Ragnarok (DOCKSUD) via DOVE-Net, when packing (packetizing) netmail messages, the source and destination zones from the netmail header were discarded (since they are defined as "optional" in FTS-1) and the zone values were replaced with the system's primary/default zone number. If the netmail message included an INTL kludge, the source and destination zone values would be parsed from that kludge line and this issue would not be noticed. 

So the fix is: Only if the netmail message header contains a source or destination zone number of 0, replace that zone with the system's primary/default zone number. As before, the INTL kludge zone information can override the header fields.

Also, there's no reason to force the point numbers from the header to zero, since if they were not valid (e.g. "fill" in the original FTS-1 specification), they would be already zero. So use the source and destination point numbers, as is, from the netmail header too (with the FMPT and TOPT kludge override support left in-tact).
parent 363fc29a
No related branches found
No related tags found
No related merge requests found
......@@ -5377,8 +5377,10 @@ void pack_netmail(void)
lprintf(LOG_ERR,"ERROR line %d reading fido msghdr from %s",__LINE__,path);
continue;
}
hdr.destzone=hdr.origzone=sys_faddr.zone;
hdr.destpoint=hdr.origpoint=0;
if(hdr.destzone == 0)
hdr.destzone = sys_faddr.zone;
if(hdr.origzone == 0)
hdr.origzone = sys_faddr.zone;
getzpt(fidomsg,&hdr); /* use kludge if found */
addr.zone = hdr.destzone;
addr.net = hdr.destnet;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment