>From tcp-group-relay@UCSD.EDU Thu Sep 10 14:15:31 1992 Received: by computronics.com (UUL1.3#5091) from uu3 with UUCP; Sun, 13 Sep 92 02:10:52 EDT Received: from ucsd.edu by uu3.psi.com (5.65b/4.0.071791-PSI/PSINet) id AA03182; Thu, 10 Sep 92 14:15:31 -0400 Received: by ucsd.edu; id AA04262 sendmail 5.67/UCSD-2.2-sun Thu, 10 Sep 92 07:49:50 -0700 for uswnvg!rkolsen Errors-To: tcp-group-relay@ucsd.edu Sender: tcp-group-relay@ucsd.edu Precedence: junk Received: from bds.bds.com by ucsd.edu; id AA04248 sendmail 5.67/UCSD-2.2-sun via SMTP Thu, 10 Sep 92 07:49:44 -0700 for /usr/mail/listhandler tcp-group Received: by bds.bds.com (5.61/1.34) id AA05124; Thu, 10 Sep 92 10:49:43 -0400 Date: Thu, 10 Sep 92 10:49:42 EDT From: Mike Gallaher To: tcp.@bds.bds.com;, wg7j@wg7j.ampr.org Subject: JNOS bug fixes Message-Id: While de-linting JNOS 104, I found one obviously ruinous bug, and some potentially troublesome (but probably not lethal) mismatches. They are suspicious enough that I wanted to post them now even though I'm not through de-linting it. I also turned up lots of other innocuous things, like unused variables, and such. Strangely enough, almost all of those appeared in newer modules like convers and mbox. I'll post the whole list once I finish this first phase. Mike Gallaher WA2HEE mg@bds.com ---------------------------------------------------------------------- Here's the nasty one: convers.c send_invite_msg incremented a structure member through a pointer that hadn't been initialized. This caused it to increment some innocent word somewhere in memory. I will leave it to your imagination to consider what effects this may have had. In the #ifdef MAILBOX code near the top of the function: p->xmitted += usprintf(m->user,mbinvitetext, ... ); Remove that lvalue and cast to void: (void) usprintf(m->user,mbinvitetext, ... ); These are not as obviously dangerous, but they should still be fixed: ax25.c extern CT4init was misdeclared as int16, should be int32 as in ax25cmd.c, where it is defined. nr3.c Changed extern for Nralias from char[ALEN] to char[ALEN+1] to match definition in ax25.c and extern in nrcmd.c. tcpcmd.c dotcpretries, line 115, had set Tcp_retries by calling setshort, but it's really an int. Now it uses setint instead. bootpcmd.c Changed extern declaration hosts[MHOSTS] to host[MHOSTS+1] to match its definition in bootpd.c. mailbox.c Line 151: changed declaration of Mbtdiscinit from unsigned long to int32 to match its definition in mboxcmd.c. dosend, line 1104: The code was char origdate[ODLEN] =""; char origbbs[OBLEN] = ""; I'm not sure what C compiler thinks that's legal, but CodeCenter doesn't. Removed the initializers and put origdate[0] = '\0'; origbbs[0] = '\0';