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
|
||||
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 --------
|
||||
In uronode.socket, you'll notice the line:
|
||||
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/flexd.8 $(MAN_DIR)/man8
|
||||
|
||||
upgrade: installman installhelp
|
||||
upgrade: installbin installman installhelp
|
||||
install -b -m 600 -p etc/uronode.announce $(ETC_DIR)
|
||||
install -m 755 -p uronode $(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);
|
||||
}
|
||||
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 {
|
||||
axio_puts("Executing command... \n", NodeIo);
|
||||
axio_puts("Executing command. Escape is disabled until command is done. \n", NodeIo);
|
||||
}
|
||||
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) {
|
||||
axio_printf(NodeIo, "\e[01;37m");
|
||||
}
|
||||
node_msg("Status report:");
|
||||
node_msg("Short Status report:");
|
||||
if (check_perms(PERM_ANSI, 0L) != -1) {
|
||||
axio_printf(NodeIo, "\e[0;m");
|
||||
}
|
||||
|
@ -829,7 +829,7 @@ int do_status(int argc, char **argv)
|
|||
return 0;
|
||||
}
|
||||
/* "Status L" */
|
||||
if (argc == 2) {
|
||||
if ((*argv[1] == 'L') || (*argv[1] == 'l')) {
|
||||
if (User.ul_type == AF_NETROM) {
|
||||
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);
|
||||
#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) {
|
||||
node_msg("");
|
||||
}
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
int do_version(int argc, char **argv)
|
||||
{
|
||||
|
|
|
@ -26,7 +26,7 @@ make distclean > make.debug
|
|||
[ "$LIB_DIR" ] || LIB_DIR=/usr/local/lib
|
||||
[ "$DATA_DIR" ] || DATA_DIR=/usr/local/share
|
||||
[ "$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 "will very simply and easily guide you into installling URONode with as"
|
||||
|
@ -62,7 +62,7 @@ if [ -e "$MAKE" ]
|
|||
then
|
||||
echo -n "saw $MAKE... "
|
||||
_sleep 1
|
||||
echo "MAKE found! Congratulations!!"
|
||||
echo "MAKE found!"
|
||||
else
|
||||
echo "make not found!"
|
||||
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
|
||||
receive any destinations to your system that way and the BBS will think
|
||||
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
|
||||
|
||||
|
||||
|
@ -44,6 +48,7 @@ you're attempting a feed.
|
|||
.SH FILES
|
||||
.LP
|
||||
/usr/local/etc/ax25/flexd.conf
|
||||
/usr/local/etc/ax25/uronode.routes
|
||||
.SH "SEE ALSO"
|
||||
.BR uronode (8),
|
||||
.BR uronode.perms (5),
|
||||
|
|
4
node.h
4
node.h
|
@ -1,5 +1,5 @@
|
|||
#define VERSION "URONode v2.12"
|
||||
#define COMPILING "30 June, 2020"
|
||||
#define VERSION "URONode v2.13"
|
||||
#define COMPILING "17 January, 2021"
|
||||
|
||||
#define STATE_IDLE 0
|
||||
#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];
|
||||
int fd;
|
||||
|
@ -83,10 +84,11 @@ int find_pty(char *ptyname)
|
|||
|
||||
for(num = lastnum + 1; ; num++) {
|
||||
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); */
|
||||
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); */
|
||||
lastnum = num;
|
||||
return fd;
|
||||
|
@ -496,7 +498,7 @@ void lastlog(void)
|
|||
break;
|
||||
#endif
|
||||
case AF_INET: strcpy(hostname, User.call);
|
||||
strcat(hostname, " on IPv4 ");
|
||||
strcat(hostname, " from ip ");
|
||||
strcat(hostname, User.ul_name);
|
||||
break;
|
||||
case AF_INET6: strcpy(hostname6, User.ul_name);
|
||||
|
|
Loading…
Reference in New Issue