Synchronet now requires the libarchive development package (e.g. libarchive-dev on Debian-based Linux distros, libarchive.org for more info) to build successfully.

Commit 45ced2a3 authored by Rob Swindell's avatar Rob Swindell 💬

Automatically route in-transit mail to points to boss nodes

If the destination point node is not a linked node (does not exist in sbbsecho.ini), but the boss node is linked, automatically route to the boss node. The log entries look like this when this happens:
"Routing packet (%s) to boss-node %s"
"Routing NetMail (%s) to boss-node %s"

For poindexter FORTRAN (REALITY) - test results appreciated.

Incremented SBBSecho version to 3.13.
parent 27079b33
Pipeline #1366 passed with stage
in 11 minutes and 9 seconds
......@@ -2624,6 +2624,14 @@ bool pack_bundle(const char *tmp_pkt, fidoaddr_t orig, fidoaddr_t dest)
dest=nodecfg->route;
lprintf(LOG_NOTICE,"Routing packet (%s) to %s",tmp_pkt, smb_faddrtoa(&dest,NULL));
}
if(nodecfg == NULL && dest.point != 0) {
fidoaddr_t boss = dest;
boss.point = 0;
if((nodecfg = findnodecfg(&cfg, boss, /* exact: */true)) != NULL) {
dest = boss;
lprintf(LOG_INFO, "Routing packet (%s) to boss-node %s", tmp_pkt, smb_faddrtoa(&dest, NULL));
}
}
}
outbound = get_current_outbound(dest, cfg.use_outboxes);
if(outbound == NULL)
......@@ -5526,6 +5534,15 @@ void pack_netmail(void)
lprintf(LOG_INFO, "Routing NetMail (%s) to %s",getfname(path),smb_faddrtoa(&addr,NULL));
nodecfg=findnodecfg(&cfg, addr,0);
}
if(nodecfg == NULL && addr.point != 0) {
fidoaddr_t boss = addr;
boss.point = 0;
if((nodecfg = findnodecfg(&cfg, boss, /* exact: */true)) != NULL) {
addr = boss;
lprintf(LOG_INFO, "Routing NetMail (%s) to boss-node %s"
,getfname(path), smb_faddrtoa(&addr, NULL));
}
}
}
if(!bso_lock_node(addr))
continue;
......
......@@ -29,7 +29,7 @@
#include "ini_file.h"
#define SBBSECHO_VERSION_MAJOR 3
#define SBBSECHO_VERSION_MINOR 12
#define SBBSECHO_VERSION_MINOR 13
#define SBBSECHO_PRODUCT_CODE 0x12FF /* from http://ftsc.org/docs/ftscprod.013 */
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment