From 30ce7d007c31198fccb855a013da99b37b5ec0b2 Mon Sep 17 00:00:00 2001 From: ache Date: Mon, 21 Aug 1995 11:28:26 +0000 Subject: Upgrade 1.06 -> 1.06.1 --- gnu/libexec/uucp/ChangeLog | 30 ++++++++++++++++++++++++++++++ gnu/libexec/uucp/Makefile.inc | 2 +- gnu/libexec/uucp/VERSION | 2 +- gnu/libexec/uucp/common_sources/config.h | 1 + gnu/libexec/uucp/common_sources/policy.h | 16 ++++++++-------- gnu/libexec/uucp/common_sources/uuconf.h | 2 +- gnu/libexec/uucp/doc/uucp.texi | 5 +++-- gnu/libexec/uucp/libunix/uid.c | 7 +++++++ gnu/libexec/uucp/uucico/trans.c | 3 ++- gnu/libexec/uucp/uucico/uucico.c | 18 +++++++++++------- gnu/libexec/uucp/uucp/uucp.c | 7 +++++-- gnu/libexec/uucp/uux/uux.c | 7 +++++-- 12 files changed, 75 insertions(+), 25 deletions(-) (limited to 'gnu') diff --git a/gnu/libexec/uucp/ChangeLog b/gnu/libexec/uucp/ChangeLog index 8ce87f0..9f948fb 100644 --- a/gnu/libexec/uucp/ChangeLog +++ b/gnu/libexec/uucp/ChangeLog @@ -1,3 +1,33 @@ +Sun Aug 20 15:12:36 1995 Ian Lance Taylor + + * Released version 1.06.1. + + * uux.c (main): Make sure that the grade is between '0' and '9', + or 'a' and 'z', or 'A' and 'Z', in case isalnum accepts other + characters. + * uucp.c (main): Likewise. + +Sat Aug 19 23:15:21 1995 Ian Lance Taylor + + * configure.in: Check for seteuid. + * configure: Rebuild. + * config.h.in (HAVE_SETEUID): Define. + * unix/uid.c: If HAVE_SETEUID is defined, use seteuid rather than + setuid. + * policy.h: Change HAVE_BROKEN_SETREUID comment to mention that it + does not work on 4.4BSD-Lite and NetBSD. + + * Andrey A. Chernov: uuconf.h (UUCONF_GRADE_LEGAL): Use BUCHAR. + +Wed Aug 16 21:23:39 1995 Ian Lance Taylor + + * uucico.c (flogin_prompt): Add pzsystem parameter, and pass it to + faccept_call. Change all callers. + + * trans.c (qtransalc): Clear zlog field. + + * Makefile.in (VERSION): Change to 1.06.1. + Thu Aug 10 22:42:53 1995 Ian Lance Taylor * Released version 1.06. diff --git a/gnu/libexec/uucp/Makefile.inc b/gnu/libexec/uucp/Makefile.inc index e804c12..ab88f3e 100644 --- a/gnu/libexec/uucp/Makefile.inc +++ b/gnu/libexec/uucp/Makefile.inc @@ -16,7 +16,7 @@ LIBUUCP= $(.CURDIR)/../libuucp/obj/libuucp.a LIBUUCP= $(.CURDIR)/../libuucp/libuucp.a .endif -VERSION= 1.06 +VERSION= 1.06.1 owner= uucp group= uucp bindir= /usr/bin diff --git a/gnu/libexec/uucp/VERSION b/gnu/libexec/uucp/VERSION index 0e41fb5..6e1a45b 100644 --- a/gnu/libexec/uucp/VERSION +++ b/gnu/libexec/uucp/VERSION @@ -1,4 +1,4 @@ -Version 1.06 +Version 1.06.1 a complete, unmodified version of this program is available from prep.ai.mit.edu. diff --git a/gnu/libexec/uucp/common_sources/config.h b/gnu/libexec/uucp/common_sources/config.h index f17b97c..fdd90125 100644 --- a/gnu/libexec/uucp/common_sources/config.h +++ b/gnu/libexec/uucp/common_sources/config.h @@ -231,6 +231,7 @@ #define HAVE_WAIT4 1 #define HAVE_GLOB 1 #define HAVE_SETREUID 1 +#define HAVE_SETEUID 1 /* There are several functions which are replaced in the subdirectory lib. If they are missing, the configure script will automatically diff --git a/gnu/libexec/uucp/common_sources/policy.h b/gnu/libexec/uucp/common_sources/policy.h index 171197e..c74106c 100644 --- a/gnu/libexec/uucp/common_sources/policy.h +++ b/gnu/libexec/uucp/common_sources/policy.h @@ -205,14 +205,14 @@ other than the uucp user uses it. */ #define HAVE_SAVED_SETUID 1 -/* On some systems, such as the DG Aviion and, possibly, the RS/6000, - the setreuid function is broken. It should be possible to use - setreuid to swap the real and effective user ID's, but on some - systems it will not change the real user ID (I believe this is due - to a misreading of the POSIX standard). On such a system you must - set HAVE_BROKEN_SETREUID to 1; if you do not, you will get error - messages from setreuid. Systems on which setreuid exists but is - broken pretty much always have saved setuid. */ +/* On some systems, such as 4.4BSD-Lite, NetBSD, the DG Aviion and, + possibly, the RS/6000, the setreuid function is broken. It should + be possible to use setreuid to swap the real and effective user + ID's, but on some systems it will not change the real user ID (I + believe this is due to a misreading of the POSIX standard). On + such a system you must set HAVE_BROKEN_SETREUID to 1; if you do + not, you will get error messages from setreuid. Systems on which + setreuid exists but is broken pretty much always have saved setuid. */ #define HAVE_BROKEN_SETREUID 0 /* On a few systems, such as NextStep 3.3, the POSIX macro F_SETLKW is diff --git a/gnu/libexec/uucp/common_sources/uuconf.h b/gnu/libexec/uucp/common_sources/uuconf.h index a19e01c..3909888 100644 --- a/gnu/libexec/uucp/common_sources/uuconf.h +++ b/gnu/libexec/uucp/common_sources/uuconf.h @@ -563,7 +563,7 @@ struct uuconf_dialer #define UUCONF_GRADE_LOW ('z') /* Whether a character is a legal grade (requires ). */ -#define UUCONF_GRADE_LEGAL(b) (isascii (BUCHAR (b)) && isalnum (BUCHAR (b))) +#define UUCONF_GRADE_LEGAL(b) (isalnum (BUCHAR (b))) /* Return < 0 if the first grade should be done before the second grade, == 0 if they are the same, or > 0 if the first grade should diff --git a/gnu/libexec/uucp/doc/uucp.texi b/gnu/libexec/uucp/doc/uucp.texi index 28d6e53..50ff556 100644 --- a/gnu/libexec/uucp/doc/uucp.texi +++ b/gnu/libexec/uucp/doc/uucp.texi @@ -5649,8 +5649,8 @@ Keywords: UUCP, protocol, FAQ Approved: news-answers-request@@MIT.Edu Archive-name: uucp-internals -Version: $Revision: 1.108 $ -Last-modified: $Date: 1995/08/02 01:35:25 $ +Version: $Revision: 1.2 $ +Last-modified: $Date: 1995/08/19 21:24:55 $ @end format @end ifset @@ -8288,6 +8288,7 @@ Aleksey P. Rudnev @code{} @code{tbr@@tfic.bc.ca} (Tom Rushworth) @code{jsacco@@ssl.com} (Joseph E. Sacco) @code{rsalz@@bbn.com} (Rich Salz) +Curt Sampson @code{} @code{sojurn!mike@@hobbes.cert.sei.cmu.edu} (Mike Sangrey) Nickolay Saukh @code{} @code{heiko@@lotte.sax.de} (Heiko Schlittermann) diff --git a/gnu/libexec/uucp/libunix/uid.c b/gnu/libexec/uucp/libunix/uid.c index b93e2a9..66b8fc7 100644 --- a/gnu/libexec/uucp/libunix/uid.c +++ b/gnu/libexec/uucp/libunix/uid.c @@ -29,6 +29,13 @@ #include "sysdep.h" #include + +/* NetBSD apparently does not support setuid as required by POSIX when + using saved setuid, so use seteuid instead. */ + +#if HAVE_SETEUID +#define setuid seteuid +#endif /* Switch to permissions of the invoking user. */ diff --git a/gnu/libexec/uucp/uucico/trans.c b/gnu/libexec/uucp/uucico/trans.c index b2babd6..b62b908 100644 --- a/gnu/libexec/uucp/uucico/trans.c +++ b/gnu/libexec/uucp/uucico/trans.c @@ -26,7 +26,7 @@ #include "uucp.h" #if USE_RCS_ID -const char trans_rcsid[] = "$Id: trans.c,v 1.40 1995/08/11 02:43:32 ian Rel $"; +const char trans_rcsid[] = "$Id: trans.c,v 1.4 1995/08/19 21:29:55 ache Exp $"; #endif #include @@ -381,6 +381,7 @@ qtransalc (qcmd) q->s.znotify = NULL; q->s.zcmd = NULL; } + q->zlog = NULL; q->isecs = 0; q->imicros = 0; q->cbytes = 0; diff --git a/gnu/libexec/uucp/uucico/uucico.c b/gnu/libexec/uucp/uucico/uucico.c index 4044a31..d268e42 100644 --- a/gnu/libexec/uucp/uucico/uucico.c +++ b/gnu/libexec/uucp/uucico/uucico.c @@ -26,7 +26,7 @@ #include "uucp.h" #if USE_RCS_ID -const char uucico_rcsid[] = "$Id: uucico.c,v 1.190 1995/06/29 19:35:59 ian Rel $"; +const char uucico_rcsid[] = "$Id: uucico.c,v 1.5 1995/08/19 21:29:59 ache Exp $"; #endif #include @@ -147,7 +147,7 @@ static boolean fdo_call P((struct sdaemon *qdaemon, static int iuport_lock P((struct uuconf_port *qport, pointer pinfo)); static boolean flogin_prompt P((pointer puuconf, const char *zconfig, boolean fuuxqt, struct sconnection *qconn, - const char *zlogin)); + const char *zlogin, const char **pzsystem)); static int icallin_cmp P((int iwhich, pointer pinfo, const char *zfile)); static boolean faccept_call P((pointer puuconf, const char *zconfig, boolean fuuxqt, const char *zlogin, @@ -693,7 +693,8 @@ main (argc, argv) { while (! FGOT_SIGNAL () && flogin_prompt (puuconf, zconfig, fuuxqt, &sconn, - (const char *) NULL)) + (const char *) NULL, + (const char **) NULL)) { /* Close and reopen the port in between calls. */ if (! fconn_close (&sconn, puuconf, @@ -708,7 +709,7 @@ main (argc, argv) { if (flogin) fret = flogin_prompt (puuconf, zconfig, fuuxqt, &sconn, - zlogin); + zlogin, &zsystem); else { #if DEBUG > 1 @@ -1708,12 +1709,13 @@ struct scallin_info /* Prompt for a login name and a password, and run as the slave. */ static boolean -flogin_prompt (puuconf, zconfig, fuuxqt, qconn, zlogin) +flogin_prompt (puuconf, zconfig, fuuxqt, qconn, zlogin, pzsystem) pointer puuconf; const char *zconfig; boolean fuuxqt; struct sconnection *qconn; const char *zlogin; + const char **pzsystem; { int iuuconf; int istrip; @@ -1722,6 +1724,9 @@ flogin_prompt (puuconf, zconfig, fuuxqt, qconn, zlogin) boolean fret; struct scallin_info s; + if (pzsystem != NULL) + *pzsystem = NULL; + DEBUG_MESSAGE0 (DEBUG_HANDSHAKE, "flogin_prompt: Waiting for login"); iuuconf = uuconf_strip (puuconf, &istrip); @@ -1790,8 +1795,7 @@ flogin_prompt (puuconf, zconfig, fuuxqt, qconn, zlogin) #if DEBUG > 1 iholddebug = iDebug; #endif - (void) faccept_call (puuconf, zconfig, fuuxqt, zlogin, qconn, - (const char **) NULL); + (void) faccept_call (puuconf, zconfig, fuuxqt, zlogin, qconn, pzsystem); #if DEBUG > 1 iDebug = iholddebug; #endif diff --git a/gnu/libexec/uucp/uucp/uucp.c b/gnu/libexec/uucp/uucp/uucp.c index 91240f0..bf2aa20 100644 --- a/gnu/libexec/uucp/uucp/uucp.c +++ b/gnu/libexec/uucp/uucp/uucp.c @@ -26,7 +26,7 @@ #include "uucp.h" #if USE_RCS_ID -const char uucp_rcsid[] = "$Id: uucp.c,v 1.63 1995/08/02 01:22:53 ian Rel $"; +const char uucp_rcsid[] = "$Id: uucp.c,v 1.3 1995/08/19 21:30:10 ache Exp $"; #endif #include @@ -277,7 +277,10 @@ main (argc, argv) } } - if (! UUCONF_GRADE_LEGAL (bCgrade)) + if (! UUCONF_GRADE_LEGAL (bCgrade) + || ((bCgrade < '0' || bCgrade > '9') + && (bCgrade < 'a' || bCgrade > 'z') + && (bCgrade < 'A' || bCgrade > 'Z'))) { ulog (LOG_ERROR, "Ignoring illegal grade"); bCgrade = BDEFAULT_UUCP_GRADE; diff --git a/gnu/libexec/uucp/uux/uux.c b/gnu/libexec/uucp/uux/uux.c index 4990585..966ded2 100644 --- a/gnu/libexec/uucp/uux/uux.c +++ b/gnu/libexec/uucp/uux/uux.c @@ -26,7 +26,7 @@ #include "uucp.h" #if USE_RCS_ID -const char uux_rcsid[] = "$Id: uux.c,v 1.81 1995/08/02 01:25:17 ian Rel $"; +const char uux_rcsid[] = "$Id: uux.c,v 1.7 1995/08/19 21:30:27 ache Exp $"; #endif #include "uudefs.h" @@ -336,7 +336,10 @@ main (argc, argv) } } - if (! UUCONF_GRADE_LEGAL (bXgrade)) + if (! UUCONF_GRADE_LEGAL (bXgrade) + || ((bXgrade < '0' || bXgrade > '9') + && (bXgrade < 'a' || bXgrade > 'z') + && (bXgrade < 'A' || bXgrade > 'Z'))) { ulog (LOG_ERROR, "Ignoring illegal grade"); bXgrade = BDEFAULT_UUX_GRADE; -- cgit v1.1