New upstream version 2.10

This commit is contained in:
hibby 2019-08-17 22:35:50 +01:00
parent b29219f467
commit d2b74b1d3f
4 changed files with 29 additions and 4 deletions

View File

@ -373,6 +373,26 @@ it now will show ...:/uronode6 instead.
Fixed the "Sockets:" line in the Status command display. The word "Sessions"
was off by one space throwing all the following column headers off by 1 space.
17/10/2018 v2.10
Edited node.h to reflect this version.
Edited CHANGES.3 to include new changes to the node.
Thanks to Marius YO2LOJ for a patch in do_ports within command.c where there
is a possibility that the interface count may return NULL and the function
will generate an exception in libc for the routine causing the node to
segment fault out and disconnect the user from the node. Good to see Marius
digging into the code again.
While at it Marius also discovered the possibility of the interface showing
as "null" in the do_sessions routine, possibly due to some changes in
libax25 perhaps? Under some conditions ax25_config_get_name(dev) could return
a null pointer - Marius YO2LOJ
Changed a call that was in axdigi.c which had a lib call hardcoded and could
break compiles under different archs. Patch supplied by Helmut Grohne, thanks
to KI6ZHD for relaying the mail that included the patch.
----------- Note on SystemD --------
In uronode.socket, you'll notice the line:
ListenStream=0.0.0.0:3694

View File

@ -21,7 +21,7 @@
* 12th June 1997.
*/
#include </usr/include/net/if.h>
#include <net/if.h>
#include <linux/if_ether.h>
#include <netinet/in.h>
#include <sys/ioctl.h>

View File

@ -395,7 +395,9 @@ int do_ports(int argc, char **argv)
n=0;
if (ax_list) for (ax=ax_list;ax!=NULL;ax=ax->next) {
// if (strcmp(ax25_config_get_name(ax->dev), cp)==0 && strcmp(ax->dest_addr, "*")!=0) n++;
if (strcmp(ax->dest_addr, "*")!=0 && strcmp(ax25_config_get_name(ax->dev), cp)==0) n++;
/* Fixed a possible exception error if the port count returns NULL
in libc for strcmp - Marius YO2LOJ */
if (strcmp(ax->dest_addr, "*")!=0 && ax25_config_get_name(ax->dev) && strcmp(ax25_config_get_name(ax->dev), cp)==0) n++;
}
tx=0; rx=0;
if (dev_list) for (dev=dev_list;dev!=NULL;dev=dev->next) {
@ -448,6 +450,9 @@ int do_sessions(int argc, char **argv)
if ((argc < 2) && !strcmp(ax_p->dest_addr, "*"))
continue;
cp = ax25_config_get_name(ax_p->dev);
/* under some conditions ax25_config_get_name(dev) could return a null
pointer - Marius YO2LOJ */
if(!cp) continue;
axio_printf(NodeIo,"%-7s %-9s %-9s ", cp, ax_p->dest_addr, ax_p->src_addr);
if (!strcmp(ax_p->dest_addr, "*")) {
axio_printf(NodeIo,"Listening\n");

4
node.h
View File

@ -1,5 +1,5 @@
#define VERSION "URONode v2.9"
#define COMPILING "May 27, 2018"
#define VERSION "URONode v2.10"
#define COMPILING "December, 2018"
#define STATE_IDLE 0
#define STATE_TRYING 1