Fixed IP port override if there is a port added to a protocol
This commit is contained in:
parent
0afef11716
commit
4a1d20986b
@ -12,6 +12,9 @@ v0.61.3 25-Jul-2004
|
|||||||
Removed the fdn parameter from the attach and un_attach
|
Removed the fdn parameter from the attach and un_attach
|
||||||
functions, not needed anymore.
|
functions, not needed anymore.
|
||||||
|
|
||||||
|
libnodelist.a:
|
||||||
|
Fixed IP port override if there is a port added to a protocol.
|
||||||
|
|
||||||
mbfido:
|
mbfido:
|
||||||
Changed netmail counters in the .msg import function.
|
Changed netmail counters in the .msg import function.
|
||||||
Fixed logging of 0 articles in scannews.
|
Fixed logging of 0 articles in scannews.
|
||||||
|
@ -236,7 +236,7 @@ static int getsrv(char **dest)
|
|||||||
(*tmpm)->flag = xstrcpy(v);
|
(*tmpm)->flag = xstrcpy(v);
|
||||||
(*tmpm)->service = xstrcpy(p);
|
(*tmpm)->service = xstrcpy(p);
|
||||||
tmp = strtoul(q, NULL, 0);
|
tmp = strtoul(q, NULL, 0);
|
||||||
(*tmpm)->port = tmp;
|
(*tmpm)->defport = (*tmpm)->tmpport = tmp;
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -816,6 +816,12 @@ node *getnlent(faddr *addr)
|
|||||||
*q++ = '\0';
|
*q++ = '\0';
|
||||||
nodebuf.speed = atoi(p);
|
nodebuf.speed = atoi(p);
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Reset all possible overridden portnumbers to the default from nodelist.conf
|
||||||
|
*/
|
||||||
|
for (tmps = &nl_service; *tmps; tmps=&((*tmps)->next))
|
||||||
|
(*tmps)->tmpport = (*tmps)->defport;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Process the nodelist flags.
|
* Process the nodelist flags.
|
||||||
*/
|
*/
|
||||||
@ -844,8 +850,23 @@ node *getnlent(faddr *addr)
|
|||||||
if (strcasecmp(p, (*tmpm)->name) == 0)
|
if (strcasecmp(p, (*tmpm)->name) == 0)
|
||||||
nodebuf.dflags |= (*tmpm)->value;
|
nodebuf.dflags |= (*tmpm)->value;
|
||||||
for (tmpm = &nl_tcpip; *tmpm; tmpm=&((*tmpm)->next))
|
for (tmpm = &nl_tcpip; *tmpm; tmpm=&((*tmpm)->next))
|
||||||
if (strncasecmp(p, (*tmpm)->name, strlen((*tmpm)->name)) == 0)
|
if (strncasecmp(p, (*tmpm)->name, strlen((*tmpm)->name)) == 0) {
|
||||||
nodebuf.iflags |= (*tmpm)->value;
|
nodebuf.iflags |= (*tmpm)->value;
|
||||||
|
/*
|
||||||
|
* Parse the IP flag for a optional port number.
|
||||||
|
*/
|
||||||
|
if ((r = strrchr(p, ':'))) {
|
||||||
|
*r++;
|
||||||
|
for (tmps = &nl_service; *tmps; tmps=&((*tmps)->next)) {
|
||||||
|
if (strncmp(p, (*tmps)->flag, 3) == 0) {
|
||||||
|
if (atoi(r)) {
|
||||||
|
(*tmps)->tmpport = atoi(r);
|
||||||
|
Syslog('n', "getnlent: port override %s %s to %d", (*tmpm)->name, p, (*tmps)->tmpport);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
for (tmpf = &nl_request; *tmpf; tmpf=&((*tmpf)->next))
|
for (tmpf = &nl_request; *tmpf; tmpf=&((*tmpf)->next))
|
||||||
if (strcasecmp(p, (*tmpf)->name) == 0)
|
if (strcasecmp(p, (*tmpf)->name) == 0)
|
||||||
nodebuf.xflags = (*tmpf)->value;
|
nodebuf.xflags = (*tmpf)->value;
|
||||||
@ -900,8 +921,8 @@ node *getnlent(faddr *addr)
|
|||||||
for (tmps = &nl_service; *tmps; tmps=&((*tmps)->next)) {
|
for (tmps = &nl_service; *tmps; tmps=&((*tmps)->next)) {
|
||||||
if (strcmp((*tmps)->flag, (*tmpm)->name) == 0) {
|
if (strcmp((*tmps)->flag, (*tmpm)->name) == 0) {
|
||||||
sprintf(tbuf, "%s", (*tmps)->service);
|
sprintf(tbuf, "%s", (*tmps)->service);
|
||||||
tport = (*tmps)->port;
|
tport = (*tmps)->tmpport;
|
||||||
Syslog('n', "getnlent: protocol %s at port %d", (*tmps)->service, (*tmps)->port);
|
Syslog('n', "getnlent: protocol %s at port %d", (*tmps)->service, (*tmps)->tmpport);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1062,7 +1083,7 @@ node *getnlent(faddr *addr)
|
|||||||
* for this protocol.
|
* for this protocol.
|
||||||
*/
|
*/
|
||||||
sprintf(tbuf, ":%lu", tport);
|
sprintf(tbuf, ":%lu", tport);
|
||||||
Syslog('n', "getnlent: adding default port %s", tbuf);
|
Syslog('n', "getnlent: adding port %s", tbuf);
|
||||||
nodebuf.url = xstrcat(nodebuf.url, tbuf);
|
nodebuf.url = xstrcat(nodebuf.url, tbuf);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -76,7 +76,8 @@ typedef struct _nodelist_service {
|
|||||||
struct _nodelist_service *next;
|
struct _nodelist_service *next;
|
||||||
char *flag;
|
char *flag;
|
||||||
char *service;
|
char *service;
|
||||||
unsigned long port;
|
unsigned long defport; /* Configured default port */
|
||||||
|
unsigned long tmpport; /* Override port for call */
|
||||||
} nodelist_service;
|
} nodelist_service;
|
||||||
|
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user