New upstream version 2.13
This commit is contained in:
parent
5f0010158a
commit
28d452f5b0
30
CHANGES.3
30
CHANGES.3
|
@ -435,6 +435,36 @@ screens. I did this after noticing some other node softwares go to the
|
||||||
extreme in showing stats that most end users would never understand nor
|
extreme in showing stats that most end users would never understand nor
|
||||||
even care about. This also saves a lot of bandwidth!
|
even care about. This also saves a lot of bandwidth!
|
||||||
|
|
||||||
|
17/01/2020 v2.13
|
||||||
|
|
||||||
|
Changed the external command text to inform the end user that the escape
|
||||||
|
sequence (CTRL-T typically) is disabled while an external command is run.
|
||||||
|
I've been wanting to do this for a while to preserve integrity for the
|
||||||
|
user. This required an edit in cmdparse.c
|
||||||
|
|
||||||
|
Edited node.h to reflect this version.
|
||||||
|
|
||||||
|
Cleaned up the status command. Prior *any* single character would print the
|
||||||
|
long status report. Now either "l" OR "L" will be accepted. If another
|
||||||
|
character is pressed an error will display:
|
||||||
|
n1uro-15@n1uro.ampr.org:/uronode6: st s
|
||||||
|
Usage: status l OR status L
|
||||||
|
|
||||||
|
** IMPORTANT **
|
||||||
|
-= IF YOU DO NOT READ THIS YOU WILL APPEAR BROKEN =-
|
||||||
|
To be more compliant with downstreams I moved the files in /var/ax25/
|
||||||
|
to now be looked for in /var/lib/ax25 which appears to be the new file
|
||||||
|
system ruleset by the linux gods. I did NOT make this up. I would *strongly*
|
||||||
|
urge you to copy over your current /var/ax25/node/* files after running
|
||||||
|
"make upgrade" unless you wish to start with a fresh system of sorts.
|
||||||
|
Your config files in etc/ax25 won't be moved or touched and the man
|
||||||
|
pages will remain where they are. Your help files, perhaps your ROSE
|
||||||
|
directory (if you use rose.hlp like I do), and user logs will be reset.
|
||||||
|
Users will be all considered new again so to prevent this from occurring
|
||||||
|
I would move those files over.
|
||||||
|
|
||||||
|
73 - Enjoy.
|
||||||
|
|
||||||
----------- Note on SystemD --------
|
----------- Note on SystemD --------
|
||||||
In uronode.socket, you'll notice the line:
|
In uronode.socket, you'll notice the line:
|
||||||
ListenStream=0.0.0.0:3694
|
ListenStream=0.0.0.0:3694
|
||||||
|
|
|
@ -68,7 +68,7 @@ installman:
|
||||||
install -m 644 -p man/axdigi.8 $(MAN_DIR)/man8
|
install -m 644 -p man/axdigi.8 $(MAN_DIR)/man8
|
||||||
install -m 644 -p man/flexd.8 $(MAN_DIR)/man8
|
install -m 644 -p man/flexd.8 $(MAN_DIR)/man8
|
||||||
|
|
||||||
upgrade: installman installhelp
|
upgrade: installbin installman installhelp
|
||||||
install -b -m 600 -p etc/uronode.announce $(ETC_DIR)
|
install -b -m 600 -p etc/uronode.announce $(ETC_DIR)
|
||||||
install -m 755 -p uronode $(SBIN_DIR)
|
install -m 755 -p uronode $(SBIN_DIR)
|
||||||
install -m 755 -p nodeusers $(SBIN_DIR)
|
install -m 755 -p nodeusers $(SBIN_DIR)
|
||||||
|
|
|
@ -244,9 +244,9 @@ int cmdparse(struct cmd *list, char *cmdline)
|
||||||
axio_printf(NodeIo, "%s} ", NodeId);
|
axio_printf(NodeIo, "%s} ", NodeId);
|
||||||
}
|
}
|
||||||
if (check_perms(PERM_ANSI, 0L) != -1) {
|
if (check_perms(PERM_ANSI, 0L) != -1) {
|
||||||
axio_printf(NodeIo,"\e[01;32mExecuting command...\e[0m\n");
|
axio_printf(NodeIo,"\e[01;32mExecuting command. Escape is disabled until command is done.\e[0m\n");
|
||||||
} else {
|
} else {
|
||||||
axio_puts("Executing command... \n", NodeIo);
|
axio_puts("Executing command. Escape is disabled until command is done. \n", NodeIo);
|
||||||
}
|
}
|
||||||
return extcmd(cmdp, argv);
|
return extcmd(cmdp, argv);
|
||||||
}
|
}
|
||||||
|
|
17
command.c
17
command.c
|
@ -801,7 +801,7 @@ int do_status(int argc, char **argv)
|
||||||
if (check_perms(PERM_ANSI, 0L) != -1) {
|
if (check_perms(PERM_ANSI, 0L) != -1) {
|
||||||
axio_printf(NodeIo, "\e[01;37m");
|
axio_printf(NodeIo, "\e[01;37m");
|
||||||
}
|
}
|
||||||
node_msg("Status report:");
|
node_msg("Short Status report:");
|
||||||
if (check_perms(PERM_ANSI, 0L) != -1) {
|
if (check_perms(PERM_ANSI, 0L) != -1) {
|
||||||
axio_printf(NodeIo, "\e[0;m");
|
axio_printf(NodeIo, "\e[0;m");
|
||||||
}
|
}
|
||||||
|
@ -829,7 +829,7 @@ int do_status(int argc, char **argv)
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
/* "Status L" */
|
/* "Status L" */
|
||||||
if (argc == 2) {
|
if ((*argv[1] == 'L') || (*argv[1] == 'l')) {
|
||||||
if (User.ul_type == AF_NETROM) {
|
if (User.ul_type == AF_NETROM) {
|
||||||
axio_printf(NodeIo,"%s} ", NodeId);
|
axio_printf(NodeIo,"%s} ", NodeId);
|
||||||
}
|
}
|
||||||
|
@ -939,12 +939,21 @@ int do_status(int argc, char **argv)
|
||||||
axio_printf(NodeIo,"NET/ROM: %-10d %-10d %-10d",nn,n,r);
|
axio_printf(NodeIo,"NET/ROM: %-10d %-10d %-10d",nn,n,r);
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
if (User.ul_type == AF_NETROM) {
|
||||||
|
axio_printf(NodeIo, "%s} ", NodeId);
|
||||||
|
}
|
||||||
|
if (check_perms(PERM_ANSI, 0L) != -1) {
|
||||||
|
axio_printf(NodeIo, "\e[01;37m");
|
||||||
|
}
|
||||||
|
axio_printf(NodeIo, "Usage: status l OR status L");
|
||||||
|
}
|
||||||
if (User.ul_type == AF_NETROM) {
|
if (User.ul_type == AF_NETROM) {
|
||||||
node_msg("");
|
node_msg("");
|
||||||
}
|
}
|
||||||
}
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
int do_version(int argc, char **argv)
|
int do_version(int argc, char **argv)
|
||||||
{
|
{
|
||||||
|
|
|
@ -26,7 +26,7 @@ make distclean > make.debug
|
||||||
[ "$LIB_DIR" ] || LIB_DIR=/usr/local/lib
|
[ "$LIB_DIR" ] || LIB_DIR=/usr/local/lib
|
||||||
[ "$DATA_DIR" ] || DATA_DIR=/usr/local/share
|
[ "$DATA_DIR" ] || DATA_DIR=/usr/local/share
|
||||||
[ "$MAN_DIR" ] || MAN_DIR=/usr/local/share/man
|
[ "$MAN_DIR" ] || MAN_DIR=/usr/local/share/man
|
||||||
[ "$VAR_DIR" ] || VAR_DIR=/usr/local/var/ax25
|
[ "$VAR_DIR" ] || VAR_DIR=/usr/local/var/lib/ax25
|
||||||
|
|
||||||
echo "Welcome to the configuration utility for URONode. This configure script"
|
echo "Welcome to the configuration utility for URONode. This configure script"
|
||||||
echo "will very simply and easily guide you into installling URONode with as"
|
echo "will very simply and easily guide you into installling URONode with as"
|
||||||
|
@ -62,7 +62,7 @@ if [ -e "$MAKE" ]
|
||||||
then
|
then
|
||||||
echo -n "saw $MAKE... "
|
echo -n "saw $MAKE... "
|
||||||
_sleep 1
|
_sleep 1
|
||||||
echo "MAKE found! Congratulations!!"
|
echo "MAKE found!"
|
||||||
else
|
else
|
||||||
echo "make not found!"
|
echo "make not found!"
|
||||||
echo " "
|
echo " "
|
||||||
|
|
130
jnos20k.diff
130
jnos20k.diff
|
@ -1,130 +0,0 @@
|
||||||
Common subdirectories: jnos/backup and jnos2/backup
|
|
||||||
Common subdirectories: jnos/installerv2.1 and jnos2/installerv2.1
|
|
||||||
Common subdirectories: jnos/j2pwmgr and jnos2/j2pwmgr
|
|
||||||
Common subdirectories: jnos/k6fsh and jnos2/k6fsh
|
|
||||||
diff -u jnos/mailbox.c jnos2/mailbox.c
|
|
||||||
--- jnos/mailbox.c 2016-07-03 10:04:21.000000000 -0400
|
|
||||||
+++ jnos2/mailbox.c 2016-09-13 22:45:14.293150509 -0400
|
|
||||||
@@ -1646,7 +1646,7 @@
|
|
||||||
|
|
||||||
/* Now say goodbye */
|
|
||||||
if(!(m->privs & IS_EXPERT))
|
|
||||||
- tprintf("\nThank you %s, for calling %s JNOS.\n",
|
|
||||||
+ tprintf("%s, thank you for calling %s. Come back soon.\nRemember to keep packet alive!\n",
|
|
||||||
#ifdef USERLOG
|
|
||||||
m->username ? m->username : m->name,
|
|
||||||
#else
|
|
||||||
diff -u jnos/makefile jnos2/makefile
|
|
||||||
--- jnos/makefile 2015-12-08 12:37:21.000000000 -0500
|
|
||||||
+++ jnos2/makefile 2016-09-14 18:18:30.268383703 -0400
|
|
||||||
@@ -198,7 +198,8 @@
|
|
||||||
echo "YOU MUST EDIT scanjmsg.c TO SPECIFY WHERE scanjmsg.dat IS LOCATED"
|
|
||||||
|
|
||||||
clean:
|
|
||||||
- $(RM) *.[oa]
|
|
||||||
+# Oops, forgot to remove possible existing binaries too! - N1URO
|
|
||||||
+ $(RM) *.[oa] jnos jnospwmgr jnosinstaller j2pwmgr/j2pwrtns.o
|
|
||||||
|
|
||||||
clients.a: $(CLIENTS)
|
|
||||||
$(RM) clients.a
|
|
||||||
diff -u jnos/mboxcmd.c jnos2/mboxcmd.c
|
|
||||||
--- jnos/mboxcmd.c 2016-07-03 10:04:26.000000000 -0400
|
|
||||||
+++ jnos2/mboxcmd.c 2016-09-13 22:45:14.293150509 -0400
|
|
||||||
@@ -478,7 +478,7 @@
|
|
||||||
#ifdef NETROM
|
|
||||||
if(Nr_iface != NULLIF) { /* Use netrom call, and alias (if exists) */
|
|
||||||
if(*Myalias != '\0')
|
|
||||||
- sprintf(Mbnrid,"%s:%s ",pax25(tmp,Myalias),
|
|
||||||
+ sprintf(Mbnrid,"%s:%s} ",pax25(tmp,Myalias),
|
|
||||||
pax25(tmp2,Nr_iface->hwaddr));
|
|
||||||
else
|
|
||||||
sprintf(Mbnrid,"%s ",pax25(tmp,Nr_iface->hwaddr));
|
|
||||||
@@ -486,7 +486,7 @@
|
|
||||||
}
|
|
||||||
/* Use Mycall, and alias (if exists) */
|
|
||||||
if(*Myalias != '\0')
|
|
||||||
- sprintf(Mbnrid,"%s:%s ",pax25(tmp,Myalias),pax25(tmp2,Mycall));
|
|
||||||
+ sprintf(Mbnrid,"%s:%s} ",pax25(tmp,Myalias),pax25(tmp2,Mycall));
|
|
||||||
else
|
|
||||||
#endif
|
|
||||||
#ifdef AX25
|
|
||||||
diff -u jnos/misc.c jnos2/misc.c
|
|
||||||
--- jnos/misc.c 2007-04-12 14:08:19.000000000 -0400
|
|
||||||
+++ jnos2/misc.c 2016-09-13 22:45:14.293150509 -0400
|
|
||||||
@@ -14,6 +14,8 @@
|
|
||||||
n = strlen(s);
|
|
||||||
if(!strncmp(s,"convers",n))
|
|
||||||
p = IPPORT_CONVERS;
|
|
||||||
+ else if(!strncmp(s,"node",n))
|
|
||||||
+ p = IPPORT_NODE; /* URONode port - N1URO */
|
|
||||||
else if(!strncmp(s,"telnet",n))
|
|
||||||
p = IPPORT_TELNET;
|
|
||||||
else if(!strncmp(s,"ttylink",n))
|
|
||||||
diff -u jnos/netuser.c jnos2/netuser.c
|
|
||||||
--- jnos/netuser.c 2007-04-12 14:08:19.000000000 -0400
|
|
||||||
+++ jnos2/netuser.c 2016-09-13 22:45:14.293150509 -0400
|
|
||||||
@@ -164,9 +164,12 @@
|
|
||||||
case 1234: /* Pulled out of the air */
|
|
||||||
sprintf(port,"remote");
|
|
||||||
break;
|
|
||||||
- case 3600:
|
|
||||||
+ case 3600: /* Convers server port */
|
|
||||||
sprintf(port,"convers");
|
|
||||||
break;
|
|
||||||
+ case 3694: /* URONode inbound tcp port - N1URO*/
|
|
||||||
+ sprintf(port,"node");
|
|
||||||
+ break;
|
|
||||||
default:
|
|
||||||
sprintf(port,"%u",s->port);
|
|
||||||
break;
|
|
||||||
diff -u jnos/nrcmd.c jnos2/nrcmd.c
|
|
||||||
--- jnos/nrcmd.c 2012-03-20 12:30:29.000000000 -0400
|
|
||||||
+++ jnos2/nrcmd.c 2016-09-13 22:45:14.293150509 -0400
|
|
||||||
@@ -498,7 +498,7 @@
|
|
||||||
* ALSO change the size of the STRSIZE define above !!!
|
|
||||||
*/
|
|
||||||
sprintf(&temp[k],"%-16s %s %3d %3d %-8s %-9s %c %-5u",buf,
|
|
||||||
- rp->flags & G8BPQ_NODEMASK ? "(BPQ)" : " ",
|
|
||||||
+ rp->flags & G8BPQ_NODEMASK ? " " : " ",
|
|
||||||
bp->quality,bp->obsocnt,
|
|
||||||
np->iface->name,
|
|
||||||
pax25(neighbor,np->call),
|
|
||||||
@@ -631,7 +631,7 @@
|
|
||||||
#endif
|
|
||||||
,buf,pax25(destbuf,rp->call)
|
|
||||||
#ifdef G8BPQ
|
|
||||||
- ,rp->flags & G8BPQ_NODEMASK ? "(BPQ)" : " "
|
|
||||||
+ ,rp->flags & G8BPQ_NODEMASK ? " " : " "
|
|
||||||
#endif
|
|
||||||
);
|
|
||||||
} else
|
|
||||||
@@ -648,7 +648,7 @@
|
|
||||||
#endif
|
|
||||||
#ifdef G8BPQ
|
|
||||||
if (npp && (npp->flags & G8BPQ_NODEMASK))
|
|
||||||
- tprintf ("(BPQ)");
|
|
||||||
+ tprintf (" ");
|
|
||||||
else
|
|
||||||
#endif
|
|
||||||
|
|
||||||
@@ -793,7 +793,7 @@
|
|
||||||
#endif
|
|
||||||
#ifdef G8BPQ
|
|
||||||
if (rp && (rp->flags & G8BPQ_NODEMASK))
|
|
||||||
- tprintf ("(BPQ)");
|
|
||||||
+ tprintf (" ");
|
|
||||||
else
|
|
||||||
#endif
|
|
||||||
|
|
||||||
Common subdirectories: jnos/old_inp_code and jnos2/old_inp_code
|
|
||||||
diff -u jnos/socket.h jnos2/socket.h
|
|
||||||
--- jnos/socket.h 2016-06-26 13:27:07.000000000 -0400
|
|
||||||
+++ jnos2/socket.h 2016-09-14 10:20:04.532733148 -0400
|
|
||||||
@@ -56,6 +56,7 @@
|
|
||||||
#define IPPORT_RSYSOP 1513 /* Remote sysop login (totally arbitrary #) */
|
|
||||||
#define IPPORT_CONVERS 3600 /* Converse */
|
|
||||||
#define IPPORT_XCONVERS 3601 /* LZW Convers */
|
|
||||||
+#define IPPORT_NODE 3694 /* URONode telnet port - N1URO*/
|
|
||||||
#define IPPORT_CALLDB 1235 /* Pulled out of the air GRACILIS */
|
|
||||||
#define IPPORT_TRACE 1236 /* Pulled out of the air - WG7J */
|
|
||||||
#define IPPORT_TERM 5000 /* Serial interface server port */
|
|
|
@ -37,6 +37,10 @@ PollInterval <time/mins>. Be sure you do NOT configure it to connect to
|
||||||
a service linked within the flexnet neighbor such as a BBS! You will NOT
|
a service linked within the flexnet neighbor such as a BBS! You will NOT
|
||||||
receive any destinations to your system that way and the BBS will think
|
receive any destinations to your system that way and the BBS will think
|
||||||
you're attempting a feed.
|
you're attempting a feed.
|
||||||
|
|
||||||
|
Also note: your FlexNet destination host *must* reside in your uronode.route
|
||||||
|
file or else flexd will *not* know the path where to connect and the robot
|
||||||
|
will exit.
|
||||||
.TP 14
|
.TP 14
|
||||||
|
|
||||||
|
|
||||||
|
@ -44,6 +48,7 @@ you're attempting a feed.
|
||||||
.SH FILES
|
.SH FILES
|
||||||
.LP
|
.LP
|
||||||
/usr/local/etc/ax25/flexd.conf
|
/usr/local/etc/ax25/flexd.conf
|
||||||
|
/usr/local/etc/ax25/uronode.routes
|
||||||
.SH "SEE ALSO"
|
.SH "SEE ALSO"
|
||||||
.BR uronode (8),
|
.BR uronode (8),
|
||||||
.BR uronode.perms (5),
|
.BR uronode.perms (5),
|
||||||
|
|
4
node.h
4
node.h
|
@ -1,5 +1,5 @@
|
||||||
#define VERSION "URONode v2.12"
|
#define VERSION "URONode v2.13"
|
||||||
#define COMPILING "30 June, 2020"
|
#define COMPILING "17 January, 2021"
|
||||||
|
|
||||||
#define STATE_IDLE 0
|
#define STATE_IDLE 0
|
||||||
#define STATE_TRYING 1
|
#define STATE_TRYING 1
|
||||||
|
|
10
system.c
10
system.c
|
@ -73,8 +73,9 @@ int cusgets(char *buf, int buflen, ax25io *iop)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*---------------------------------------------------------------------------*/
|
/*---------------------------------------------------------------------------*/
|
||||||
|
#define _XOPEN_SOURCE
|
||||||
|
|
||||||
int find_pty(char *ptyname)
|
int find_pty(char **ptyname)
|
||||||
{
|
{
|
||||||
char master[80];
|
char master[80];
|
||||||
int fd;
|
int fd;
|
||||||
|
@ -83,10 +84,11 @@ int find_pty(char *ptyname)
|
||||||
|
|
||||||
for(num = lastnum + 1; ; num++) {
|
for(num = lastnum + 1; ; num++) {
|
||||||
if (num >= NUMPTY) num = 0;
|
if (num >= NUMPTY) num = 0;
|
||||||
sprintf(master, "/dev/pty%c%x", 'p' + (num >> 4), num & 0xf);
|
// sprintf(master, "/dev/ptmx%c%x", 'p' + (num >> 4), num & 0xf);
|
||||||
|
sprintf(master, "/dev/ptmx", O_RDWR);
|
||||||
/* sprintf(master, "/dev/pts/%x", num & 0xf); */
|
/* sprintf(master, "/dev/pts/%x", num & 0xf); */
|
||||||
if ((fd = open(master, O_RDWR | O_NONBLOCK, 0600)) >= 0) {
|
if ((fd = open(master, O_RDWR | O_NONBLOCK, 0600)) >= 0) {
|
||||||
sprintf(ptyname, "/dev/tty%c%x", 'p' + (num >> 4), num & 0xf);
|
sprintf(ptyname, "/dev/ptmx", 'p' + (num >> 4), num & 0xf);
|
||||||
/* sprintf(ptyname, "/dev/pts/%x", num & 0xf); */
|
/* sprintf(ptyname, "/dev/pts/%x", num & 0xf); */
|
||||||
lastnum = num;
|
lastnum = num;
|
||||||
return fd;
|
return fd;
|
||||||
|
@ -496,7 +498,7 @@ void lastlog(void)
|
||||||
break;
|
break;
|
||||||
#endif
|
#endif
|
||||||
case AF_INET: strcpy(hostname, User.call);
|
case AF_INET: strcpy(hostname, User.call);
|
||||||
strcat(hostname, " on IPv4 ");
|
strcat(hostname, " from ip ");
|
||||||
strcat(hostname, User.ul_name);
|
strcat(hostname, User.ul_name);
|
||||||
break;
|
break;
|
||||||
case AF_INET6: strcpy(hostname6, User.ul_name);
|
case AF_INET6: strcpy(hostname6, User.ul_name);
|
||||||
|
|
Loading…
Reference in New Issue