diff options
| author | Andrey A. Chernov <ache@FreeBSD.org> | 1994-05-07 18:14:43 +0000 |
|---|---|---|
| committer | Andrey A. Chernov <ache@FreeBSD.org> | 1994-05-07 18:14:43 +0000 |
| commit | 8d29233fea7a22a18c2998c2eb07dec0f26c4101 (patch) | |
| tree | ae7a62b3e6b9d3c5b40e295b8b73feb61e4b04ce /gnu/libexec/uucp/libuuconf | |
| parent | dbdb1f56bb2d2ff97b05ccbc31ca474727b5d2d7 (diff) | |
Notes
Diffstat (limited to 'gnu/libexec/uucp/libuuconf')
92 files changed, 743 insertions, 328 deletions
diff --git a/gnu/libexec/uucp/libuuconf/MANIFEST b/gnu/libexec/uucp/libuuconf/MANIFEST index 8d1eb3646632..98787b59489a 100644 --- a/gnu/libexec/uucp/libuuconf/MANIFEST +++ b/gnu/libexec/uucp/libuuconf/MANIFEST @@ -61,6 +61,7 @@ rdlocs.c rdperm.c reliab.c remunk.c +runuxq.c sinfo.c snams.c split.c diff --git a/gnu/libexec/uucp/libuuconf/Makefile b/gnu/libexec/uucp/libuuconf/Makefile index 066e928aaf37..7b7f3ece4149 100644 --- a/gnu/libexec/uucp/libuuconf/Makefile +++ b/gnu/libexec/uucp/libuuconf/Makefile @@ -1,19 +1,19 @@ # This is the Makefile for the Taylor UUCP uuconf library -# $Id: Makefile,v 1.2 1993/08/05 16:14:55 jtc Exp $ +# $Id: Makefile,v 1.1 1993/08/05 18:24:52 conklin Exp $ LIB= uuconf -SRCS= addblk.c addstr.c allblk.c alloc.c base.c bool.c callin.c \ - calout.c chatc.c cmdarg.c cmdfil.c cmdlin.c debfil.c deblev.c \ - diacod.c dial.c diasub.c dnams.c errno.c errstr.c filnam.c \ - freblk.c fredia.c free.c freprt.c fresys.c grdcmp.c hdial.c \ - hdnams.c hinit.c hlocnm.c hport.c hrmunk.c hsinfo.c hsnams.c \ - hsys.c hunk.c iniglb.c init.c int.c lckdir.c lineno.c llocnm.c \ - local.c locnm.c logfil.c maxuxq.c mrgblk.c paramc.c port.c \ - prtsub.c pubdir.c rdlocs.c rdperm.c reliab.c remunk.c sinfo.c \ - snams.c split.c spool.c stafil.c syssub.c tcalou.c tdial.c \ - tdialc.c tdnams.c tgcmp.c thread.c time.c tinit.c tlocnm.c \ - tport.c tportc.c tsinfo.c tsnams.c tsys.c tval.c ugtlin.c \ - unk.c val.c vinit.c vport.c vsinfo.c vsnams.c vsys.c +SRCS = addblk.c addstr.c allblk.c alloc.c base.c bool.c callin.c \ + calout.c chatc.c cmdarg.c cmdfil.c cmdlin.c debfil.c deblev.c \ + diacod.c dial.c diasub.c dnams.c errno.c errstr.c filnam.c \ + freblk.c fredia.c free.c freprt.c fresys.c grdcmp.c hdial.c \ + hdnams.c hinit.c hlocnm.c hport.c hrmunk.c hsinfo.c hsnams.c \ + hsys.c hunk.c iniglb.c init.c int.c lckdir.c lineno.c llocnm.c \ + local.c locnm.c logfil.c maxuxq.c mrgblk.c paramc.c port.c \ + prtsub.c pubdir.c rdlocs.c rdperm.c reliab.c remunk.c runuxq.c \ + sinfo.c snams.c split.c spool.c stafil.c syssub.c tcalou.c \ + tdial.c tdialc.c tdnams.c tgcmp.c thread.c time.c tinit.c \ + tlocnm.c tport.c tportc.c tsinfo.c tsnams.c tsys.c tval.c \ + ugtlin.c unk.c val.c vinit.c vport.c vsinfo.c vsnams.c vsys.c CFLAGS+= -I$(.CURDIR)/../common_sources \ -DNEWCONFIGLIB=\"$(newconfigdir)\"\ -DOLDCONFIGLIB=\"$(oldconfigdir)\" diff --git a/gnu/libexec/uucp/libuuconf/README b/gnu/libexec/uucp/libuuconf/README index 64a5eecf03a5..b9a2156c86dc 100644 --- a/gnu/libexec/uucp/libuuconf/README +++ b/gnu/libexec/uucp/libuuconf/README @@ -1,8 +1,8 @@ This is the README file for the beta release of the uuconf library. It was written by Ian Lance Taylor. I can be reached at ian@airs.com, -or, equivalently, uunet!airs!ian, or c/o Infinity Development Systems, -P.O. Box 520, Waltham MA, 02254. +or, equivalently, uunet!cygint!airs!ian, or c/o Cygnus Support, 4th +Floor, Building 200, 1 Kendall Square, Cambridge MA, 02139, USA. This package is covered by the Gnu Library General Public License. See the file COPYING.LIB for details. If you would like to do diff --git a/gnu/libexec/uucp/libuuconf/addblk.c b/gnu/libexec/uucp/libuuconf/addblk.c index 6244dad875e4..66ed0956a1ca 100644 --- a/gnu/libexec/uucp/libuuconf/addblk.c +++ b/gnu/libexec/uucp/libuuconf/addblk.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_addblk_rcsid[] = "$Id: addblk.c,v 1.1 1993/08/04 19:33:31 jtc Exp $"; +const char _uuconf_addblk_rcsid[] = "$Id: addblk.c,v 1.3 1994/01/30 21:14:29 ian Rel $"; #endif #include "alloc.h" diff --git a/gnu/libexec/uucp/libuuconf/addstr.c b/gnu/libexec/uucp/libuuconf/addstr.c index 8498d502c9c0..be372b24bd89 100644 --- a/gnu/libexec/uucp/libuuconf/addstr.c +++ b/gnu/libexec/uucp/libuuconf/addstr.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_addstr_rcsid[] = "$Id: addstr.c,v 1.1 1993/08/04 19:33:32 jtc Exp $"; +const char _uuconf_addstr_rcsid[] = "$Id: addstr.c,v 1.5 1994/01/30 21:14:29 ian Rel $"; #endif #include <errno.h> diff --git a/gnu/libexec/uucp/libuuconf/allblk.c b/gnu/libexec/uucp/libuuconf/allblk.c index b3dd7e0a762f..54d80b02e4fd 100644 --- a/gnu/libexec/uucp/libuuconf/allblk.c +++ b/gnu/libexec/uucp/libuuconf/allblk.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_allblk_rcsid[] = "$Id: allblk.c,v 1.1 1993/08/04 19:33:33 jtc Exp $"; +const char _uuconf_allblk_rcsid[] = "$Id: allblk.c,v 1.3 1994/01/30 21:14:29 ian Rel $"; #endif #include "alloc.h" diff --git a/gnu/libexec/uucp/libuuconf/alloc.c b/gnu/libexec/uucp/libuuconf/alloc.c index 2808c62088ff..8bd86dc20b0a 100644 --- a/gnu/libexec/uucp/libuuconf/alloc.c +++ b/gnu/libexec/uucp/libuuconf/alloc.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_alloc_rcsid[] = "$Id: alloc.c,v 1.1 1993/08/04 19:33:34 jtc Exp $"; +const char _uuconf_alloc_rcsid[] = "$Id: alloc.c,v 1.3 1994/01/30 21:14:29 ian Rel $"; #endif #include "alloc.h" diff --git a/gnu/libexec/uucp/libuuconf/alloc.h b/gnu/libexec/uucp/libuuconf/alloc.h index c5c9cad8e32b..d6949ab5005a 100644 --- a/gnu/libexec/uucp/libuuconf/alloc.h +++ b/gnu/libexec/uucp/libuuconf/alloc.h @@ -20,7 +20,7 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ /* This header file is private to the uuconf memory allocation diff --git a/gnu/libexec/uucp/libuuconf/base.c b/gnu/libexec/uucp/libuuconf/base.c index c40f660523af..e48e5553cdb3 100644 --- a/gnu/libexec/uucp/libuuconf/base.c +++ b/gnu/libexec/uucp/libuuconf/base.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_base_rcsid[] = "$Id: base.c,v 1.1 1993/08/04 19:33:38 jtc Exp $"; +const char _uuconf_base_rcsid[] = "$Id: base.c,v 1.3 1994/01/30 21:14:29 ian Rel $"; #endif /* This turns a cmdtab_offset table into a uuconf_cmdtab table. Each diff --git a/gnu/libexec/uucp/libuuconf/bool.c b/gnu/libexec/uucp/libuuconf/bool.c index c1bbde132692..73072a3e6c6f 100644 --- a/gnu/libexec/uucp/libuuconf/bool.c +++ b/gnu/libexec/uucp/libuuconf/bool.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_bool_rcsid[] = "$Id: bool.c,v 1.1 1993/08/04 19:33:40 jtc Exp $"; +const char _uuconf_bool_rcsid[] = "$Id: bool.c,v 1.3 1994/01/30 21:14:29 ian Rel $"; #endif /* Parse a boolean string into a variable. This is called by diff --git a/gnu/libexec/uucp/libuuconf/callin.c b/gnu/libexec/uucp/libuuconf/callin.c index 4df26ddfddd3..fd58b18f98ff 100644 --- a/gnu/libexec/uucp/libuuconf/callin.c +++ b/gnu/libexec/uucp/libuuconf/callin.c @@ -1,7 +1,7 @@ /* callin.c Check a login name and password against the UUCP password file. - Copyright (C) 1992 Ian Lance Taylor + Copyright (C) 1992, 1993 Ian Lance Taylor This file is part of the Taylor UUCP uuconf library. @@ -20,35 +20,46 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_callin_rcsid[] = "$Id: callin.c,v 1.1 1993/08/04 19:33:42 jtc Exp $"; +const char _uuconf_callin_rcsid[] = "$Id: callin.c,v 1.8 1994/03/29 01:18:20 ian Rel $"; #endif #include <errno.h> -static int iplogin P((pointer pglobal, int argc, char **argv, +static int ipcheck P((pointer pglobal, int argc, char **argv, pointer pvar, pointer pinfo)); + +struct sinfo +{ + int (*pcmpfn) P((int, pointer, const char *)); + pointer pinfo; + boolean ffound; + boolean fmatched; +}; /* Check a login name and password against the UUCP password file. This looks at the Taylor UUCP password file, but will work even if - uuconf_taylor_init was not called. */ + uuconf_taylor_init was not called. It accepts either spaces or + colons as field delimiters. */ int -uuconf_callin (pglobal, zlogin, zpassword) +uuconf_callin (pglobal, pcmpfn, pinfo) pointer pglobal; - const char *zlogin; - const char *zpassword; + int (*pcmpfn) P((int, pointer, const char *)); + pointer pinfo; { struct sglobal *qglobal = (struct sglobal *) pglobal; int iret; char **pz; - struct uuconf_cmdtab as[2]; - char *zfilepass; + struct uuconf_cmdtab as[1]; + struct sinfo s; + char *zline; + size_t cline; /* If we have no password file names, fill in the default name. */ if (qglobal->qprocess->pzpwdfiles == NULL) @@ -66,14 +77,15 @@ uuconf_callin (pglobal, zlogin, zpassword) return iret; } - as[0].uuconf_zcmd = zlogin; - as[0].uuconf_itype = UUCONF_CMDTABTYPE_FN | 2; - as[0].uuconf_pvar = (pointer) &zfilepass; - as[0].uuconf_pifn = iplogin; + as[0].uuconf_zcmd = NULL; - as[1].uuconf_zcmd = NULL; + s.pcmpfn = pcmpfn; + s.pinfo = pinfo; + s.ffound = FALSE; + s.fmatched = FALSE; - zfilepass = NULL; + zline = NULL; + cline = 0; iret = UUCONF_SUCCESS; @@ -91,52 +103,82 @@ uuconf_callin (pglobal, zlogin, zpassword) break; } - iret = uuconf_cmd_file (pglobal, e, as, (pointer) NULL, - (uuconf_cmdtabfn) NULL, - UUCONF_CMDTABFLAG_CASE, (pointer) NULL); + qglobal->ilineno = 0; + + iret = UUCONF_SUCCESS; + + while (getline (&zline, &cline, e) > 0) + { + char *zcolon; + + ++qglobal->ilineno; + + /* Turn the first two colon characters into spaces. This is + a hack to make Unix style passwd files work. */ + zcolon = strchr (zline, ':'); + if (zcolon != NULL) + { + *zcolon = ' '; + zcolon = strchr (zcolon, ':'); + if (zcolon != NULL) + *zcolon = ' '; + } + iret = uuconf_cmd_line (pglobal, zline, as, (pointer) &s, + ipcheck, 0, (pointer) NULL); + if ((iret & UUCONF_CMDTABRET_EXIT) != 0) + { + iret &=~ UUCONF_CMDTABRET_EXIT; + if (iret != UUCONF_SUCCESS) + iret |= UUCONF_ERROR_LINENO; + break; + } + + iret = UUCONF_SUCCESS; + } + (void) fclose (e); - if (iret != UUCONF_SUCCESS || zfilepass != NULL) + if (iret != UUCONF_SUCCESS || s.ffound) break; } + if (zline != NULL) + free ((pointer) zline); + if (iret != UUCONF_SUCCESS) { qglobal->zfilename = *pz; iret |= UUCONF_ERROR_FILENAME; } - else if (zfilepass == NULL - || strcmp (zfilepass, zpassword) != 0) + else if (! s.ffound || ! s.fmatched) iret = UUCONF_NOT_FOUND; - if (zfilepass != NULL) - free ((pointer) zfilepass); - return iret; } -/* This is called if it is the name we are looking for. The pvar - argument points to zfilepass, and we set it to the password. */ +/* This is called on each line of the file. It checks to see if the + login name from the file is the one we are looking for. If it is, + it sets ffound, and then sets fmatched according to whether the + password matches or not. */ static int -iplogin (pglobal, argc, argv, pvar, pinfo) +ipcheck (pglobal, argc, argv, pvar, pinfo) pointer pglobal; int argc; char **argv; pointer pvar; pointer pinfo; { - struct sglobal *qglobal = (struct sglobal *) pglobal; - char **pzpass = (char **) pvar; + struct sinfo *q = (struct sinfo *) pinfo; - *pzpass = strdup (argv[1]); - if (*pzpass == NULL) - { - qglobal->ierrno = errno; - return (UUCONF_MALLOC_FAILED - | UUCONF_ERROR_ERRNO - | UUCONF_CMDTABRET_EXIT); - } + if (argc != 2) + return UUCONF_SYNTAX_ERROR | UUCONF_CMDTABRET_EXIT; + + if (! (*q->pcmpfn) (0, q->pinfo, argv[0])) + return UUCONF_CMDTABRET_CONTINUE; + + q->ffound = TRUE; + q->fmatched = (*q->pcmpfn) (1, q->pinfo, argv[1]) != 0; return UUCONF_CMDTABRET_EXIT; } diff --git a/gnu/libexec/uucp/libuuconf/calout.c b/gnu/libexec/uucp/libuuconf/calout.c index 957833ebc31f..4f893946f336 100644 --- a/gnu/libexec/uucp/libuuconf/calout.c +++ b/gnu/libexec/uucp/libuuconf/calout.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_calout_rcsid[] = "$Id: calout.c,v 1.1 1993/08/04 19:33:45 jtc Exp $"; +const char _uuconf_calout_rcsid[] = "$Id: calout.c,v 1.4 1994/01/30 21:14:29 ian Rel $"; #endif #include <errno.h> diff --git a/gnu/libexec/uucp/libuuconf/chatc.c b/gnu/libexec/uucp/libuuconf/chatc.c index f29481b59a92..6b5faeda5a5a 100644 --- a/gnu/libexec/uucp/libuuconf/chatc.c +++ b/gnu/libexec/uucp/libuuconf/chatc.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_chatc_rcsid[] = "$Id: chatc.c,v 1.1 1993/08/04 19:33:48 jtc Exp $"; +const char _uuconf_chatc_rcsid[] = "$Id: chatc.c,v 1.4 1994/01/30 21:14:29 ian Rel $"; #endif #include <ctype.h> diff --git a/gnu/libexec/uucp/libuuconf/cmdarg.c b/gnu/libexec/uucp/libuuconf/cmdarg.c index 2020ea91a9f4..e08c499c73fa 100644 --- a/gnu/libexec/uucp/libuuconf/cmdarg.c +++ b/gnu/libexec/uucp/libuuconf/cmdarg.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_cmdarg_rcsid[] = "$Id: cmdarg.c,v 1.1 1993/08/04 19:33:50 jtc Exp $"; +const char _uuconf_cmdarg_rcsid[] = "$Id: cmdarg.c,v 1.4 1994/01/30 21:14:29 ian Rel $"; #endif #include <ctype.h> diff --git a/gnu/libexec/uucp/libuuconf/cmdfil.c b/gnu/libexec/uucp/libuuconf/cmdfil.c index 333a4bf37645..6d6dd72f6b58 100644 --- a/gnu/libexec/uucp/libuuconf/cmdfil.c +++ b/gnu/libexec/uucp/libuuconf/cmdfil.c @@ -1,7 +1,7 @@ /* cmdfil.c Read and parse commands from a file. - Copyright (C) 1992 Ian Lance Taylor + Copyright (C) 1992, 1993 Ian Lance Taylor This file is part of the Taylor UUCP uuconf library. @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_cmdfil_rcsid[] = "$Id: cmdfil.c,v 1.1 1993/08/04 19:33:51 jtc Exp $"; +const char _uuconf_cmdfil_rcsid[] = "$Id: cmdfil.c,v 1.4 1994/01/30 21:14:29 ian Rel $"; #endif #include <errno.h> @@ -99,5 +99,8 @@ uuconf_cmd_file (pglobal, e, qtab, pinfo, pfiunknown, iflags, pblock) iret = UUCONF_SUCCESS; } + if (zline != NULL) + free ((pointer) zline); + return iret; } diff --git a/gnu/libexec/uucp/libuuconf/cmdlin.c b/gnu/libexec/uucp/libuuconf/cmdlin.c index 63e956467311..6a7406fe0c1a 100644 --- a/gnu/libexec/uucp/libuuconf/cmdlin.c +++ b/gnu/libexec/uucp/libuuconf/cmdlin.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_cmdlin_rcsid[] = "$Id: cmdlin.c,v 1.1 1993/08/04 19:33:52 jtc Exp $"; +const char _uuconf_cmdlin_rcsid[] = "$Id: cmdlin.c,v 1.3 1994/01/30 21:14:29 ian Rel $"; #endif #include <errno.h> diff --git a/gnu/libexec/uucp/libuuconf/debfil.c b/gnu/libexec/uucp/libuuconf/debfil.c index 3be5381e5dfa..b4fd46cb7e4e 100644 --- a/gnu/libexec/uucp/libuuconf/debfil.c +++ b/gnu/libexec/uucp/libuuconf/debfil.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_debfil_rcsid[] = "$Id: debfil.c,v 1.1 1993/08/04 19:33:53 jtc Exp $"; +const char _uuconf_debfil_rcsid[] = "$Id: debfil.c,v 1.4 1994/01/30 21:14:29 ian Rel $"; #endif /* Get the name of the UUCP debugging file. */ diff --git a/gnu/libexec/uucp/libuuconf/deblev.c b/gnu/libexec/uucp/libuuconf/deblev.c index 40cf763b100f..926ab52652e2 100644 --- a/gnu/libexec/uucp/libuuconf/deblev.c +++ b/gnu/libexec/uucp/libuuconf/deblev.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_deblev_rcsid[] = "$Id: deblev.c,v 1.1 1993/08/04 19:33:54 jtc Exp $"; +const char _uuconf_deblev_rcsid[] = "$Id: deblev.c,v 1.3 1994/01/30 21:14:29 ian Rel $"; #endif /* Get the UUCP debugging level. */ diff --git a/gnu/libexec/uucp/libuuconf/diacod.c b/gnu/libexec/uucp/libuuconf/diacod.c index 823239d953b1..f90568c2c903 100644 --- a/gnu/libexec/uucp/libuuconf/diacod.c +++ b/gnu/libexec/uucp/libuuconf/diacod.c @@ -1,7 +1,7 @@ /* diacod.c Translate a dialcode. - Copyright (C) 1992 Ian Lance Taylor + Copyright (C) 1992, 1993 Ian Lance Taylor This file is part of the Taylor UUCP uuconf library. @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_diacod_rcsid[] = "$Id: diacod.c,v 1.1 1993/08/04 19:33:55 jtc Exp $"; +const char _uuconf_diacod_rcsid[] = "$Id: diacod.c,v 1.7 1994/01/30 21:14:29 ian Rel $"; #endif #include <errno.h> diff --git a/gnu/libexec/uucp/libuuconf/dial.c b/gnu/libexec/uucp/libuuconf/dial.c index efdef538c32b..0709d123944e 100644 --- a/gnu/libexec/uucp/libuuconf/dial.c +++ b/gnu/libexec/uucp/libuuconf/dial.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_dial_rcsid[] = "$Id: dial.c,v 1.1 1993/08/04 19:33:57 jtc Exp $"; +const char _uuconf_dial_rcsid[] = "$Id: dial.c,v 1.4 1994/01/30 21:14:29 ian Rel $"; #endif /* Find a dialer by name. */ diff --git a/gnu/libexec/uucp/libuuconf/diasub.c b/gnu/libexec/uucp/libuuconf/diasub.c index 7979d0ebd21b..b87bde59620c 100644 --- a/gnu/libexec/uucp/libuuconf/diasub.c +++ b/gnu/libexec/uucp/libuuconf/diasub.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_diasub_rcsid[] = "$Id: diasub.c,v 1.1 1993/08/04 19:33:58 jtc Exp $"; +const char _uuconf_diasub_rcsid[] = "$Id: diasub.c,v 1.4 1994/01/30 21:14:29 ian Rel $"; #endif /* Clear the information in a dialer. */ diff --git a/gnu/libexec/uucp/libuuconf/dnams.c b/gnu/libexec/uucp/libuuconf/dnams.c index 6a10ada811a3..a4985343a474 100644 --- a/gnu/libexec/uucp/libuuconf/dnams.c +++ b/gnu/libexec/uucp/libuuconf/dnams.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_dnams_rcsid[] = "$Id: dnams.c,v 1.1 1993/08/04 19:33:59 jtc Exp $"; +const char _uuconf_dnams_rcsid[] = "$Id: dnams.c,v 1.3 1994/01/30 21:14:29 ian Rel $"; #endif /* Get all known dialer names. */ diff --git a/gnu/libexec/uucp/libuuconf/errno.c b/gnu/libexec/uucp/libuuconf/errno.c index d1def82ca3c6..d0e1cac68da1 100644 --- a/gnu/libexec/uucp/libuuconf/errno.c +++ b/gnu/libexec/uucp/libuuconf/errno.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_errno_rcsid[] = "$Id: errno.c,v 1.1 1993/08/04 19:34:01 jtc Exp $"; +const char _uuconf_errno_rcsid[] = "$Id: errno.c,v 1.3 1994/01/30 21:14:29 ian Rel $"; #endif #include <errno.h> diff --git a/gnu/libexec/uucp/libuuconf/errstr.c b/gnu/libexec/uucp/libuuconf/errstr.c index 2bed403f258a..40c97e81b95b 100644 --- a/gnu/libexec/uucp/libuuconf/errstr.c +++ b/gnu/libexec/uucp/libuuconf/errstr.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_errstr_rcsid[] = "$Id: errstr.c,v 1.1 1993/08/04 19:34:02 jtc Exp $"; +const char _uuconf_errstr_rcsid[] = "$Id: errstr.c,v 1.3 1994/01/30 21:14:29 ian Rel $"; #endif static char *zeprint_num P((char *zbuf, size_t cbuf, int ival)); diff --git a/gnu/libexec/uucp/libuuconf/filnam.c b/gnu/libexec/uucp/libuuconf/filnam.c index ab1b76a51d2e..4e126b4bce03 100644 --- a/gnu/libexec/uucp/libuuconf/filnam.c +++ b/gnu/libexec/uucp/libuuconf/filnam.c @@ -20,18 +20,18 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_filnam_rcsid[] = "$Id: filnam.c,v 1.1 1993/08/04 19:34:03 jtc Exp $"; +const char _uuconf_filnam_rcsid[] = "$Id: filnam.c,v 1.4 1994/03/30 04:00:35 ian Rel $"; #endif /* Return the saved file name. */ -const char * +UUCONF_CONST char * uuconf_error_filename (pglobal) pointer pglobal; { diff --git a/gnu/libexec/uucp/libuuconf/freblk.c b/gnu/libexec/uucp/libuuconf/freblk.c index cb27d115c054..894c26a9f0a6 100644 --- a/gnu/libexec/uucp/libuuconf/freblk.c +++ b/gnu/libexec/uucp/libuuconf/freblk.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_freblk_rcsid[] = "$Id: freblk.c,v 1.1 1993/08/04 19:34:05 jtc Exp $"; +const char _uuconf_freblk_rcsid[] = "$Id: freblk.c,v 1.5 1994/01/30 21:14:29 ian Rel $"; #endif #include "alloc.h" diff --git a/gnu/libexec/uucp/libuuconf/fredia.c b/gnu/libexec/uucp/libuuconf/fredia.c index 60b00b7cf88f..a2bf8a461633 100644 --- a/gnu/libexec/uucp/libuuconf/fredia.c +++ b/gnu/libexec/uucp/libuuconf/fredia.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_fredia_rcsid[] = "$Id: fredia.c,v 1.1 1993/08/04 19:34:08 jtc Exp $"; +const char _uuconf_fredia_rcsid[] = "$Id: fredia.c,v 1.3 1994/01/30 21:14:29 ian Rel $"; #endif /* Free the memory allocated for a dialer. */ diff --git a/gnu/libexec/uucp/libuuconf/free.c b/gnu/libexec/uucp/libuuconf/free.c index 91916f1d3cad..b8204fce50bb 100644 --- a/gnu/libexec/uucp/libuuconf/free.c +++ b/gnu/libexec/uucp/libuuconf/free.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_free_rcsid[] = "$Id: free.c,v 1.1 1993/08/04 19:34:10 jtc Exp $"; +const char _uuconf_free_rcsid[] = "$Id: free.c,v 1.4 1994/01/30 21:14:29 ian Rel $"; #endif #include "alloc.h" diff --git a/gnu/libexec/uucp/libuuconf/freprt.c b/gnu/libexec/uucp/libuuconf/freprt.c index 2906b9dc8364..d7e58ae9515c 100644 --- a/gnu/libexec/uucp/libuuconf/freprt.c +++ b/gnu/libexec/uucp/libuuconf/freprt.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_freprt_rcsid[] = "$Id: freprt.c,v 1.1 1993/08/04 19:34:12 jtc Exp $"; +const char _uuconf_freprt_rcsid[] = "$Id: freprt.c,v 1.3 1994/01/30 21:14:29 ian Rel $"; #endif /* Free the memory allocated for a port. */ diff --git a/gnu/libexec/uucp/libuuconf/fresys.c b/gnu/libexec/uucp/libuuconf/fresys.c index a73f4c1bc8c4..135703159a7b 100644 --- a/gnu/libexec/uucp/libuuconf/fresys.c +++ b/gnu/libexec/uucp/libuuconf/fresys.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_fresys_rcsid[] = "$Id: fresys.c,v 1.1 1993/08/04 19:34:13 jtc Exp $"; +const char _uuconf_fresys_rcsid[] = "$Id: fresys.c,v 1.3 1994/01/30 21:14:29 ian Rel $"; #endif /* Free the memory allocated for a system. */ diff --git a/gnu/libexec/uucp/libuuconf/grdcmp.c b/gnu/libexec/uucp/libuuconf/grdcmp.c index 8b02ff9963a5..af5f26acc9a1 100644 --- a/gnu/libexec/uucp/libuuconf/grdcmp.c +++ b/gnu/libexec/uucp/libuuconf/grdcmp.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_grdcmp_rcsid[] = "$Id: grdcmp.c,v 1.1 1993/08/04 19:34:14 jtc Exp $"; +const char _uuconf_grdcmp_rcsid[] = "$Id: grdcmp.c,v 1.3 1994/01/30 21:14:29 ian Rel $"; #endif #include <ctype.h> diff --git a/gnu/libexec/uucp/libuuconf/hdial.c b/gnu/libexec/uucp/libuuconf/hdial.c index 666cc7f62ee3..909bdb222219 100644 --- a/gnu/libexec/uucp/libuuconf/hdial.c +++ b/gnu/libexec/uucp/libuuconf/hdial.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_hdial_rcsid[] = "$Id: hdial.c,v 1.1 1993/08/04 19:34:15 jtc Exp $"; +const char _uuconf_hdial_rcsid[] = "$Id: hdial.c,v 1.4 1994/01/30 21:14:29 ian Rel $"; #endif #include <errno.h> diff --git a/gnu/libexec/uucp/libuuconf/hdnams.c b/gnu/libexec/uucp/libuuconf/hdnams.c index 0806059214e6..5051a7fbe9c8 100644 --- a/gnu/libexec/uucp/libuuconf/hdnams.c +++ b/gnu/libexec/uucp/libuuconf/hdnams.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_hdnams_rcsid[] = "$Id: hdnams.c,v 1.1 1993/08/04 19:34:16 jtc Exp $"; +const char _uuconf_hdnams_rcsid[] = "$Id: hdnams.c,v 1.4 1994/01/30 21:14:29 ian Rel $"; #endif #include <errno.h> diff --git a/gnu/libexec/uucp/libuuconf/hinit.c b/gnu/libexec/uucp/libuuconf/hinit.c index 2b1c1cc6fa37..06155d9c5d67 100644 --- a/gnu/libexec/uucp/libuuconf/hinit.c +++ b/gnu/libexec/uucp/libuuconf/hinit.c @@ -1,7 +1,7 @@ /* hinit.c Initialize for reading HDB configuration files. - Copyright (C) 1992 Ian Lance Taylor + Copyright (C) 1992, 1994 Ian Lance Taylor This file is part of the Taylor UUCP uuconf library. @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_hinit_rcsid[] = "$Id: hinit.c,v 1.1 1993/08/04 19:34:17 jtc Exp $"; +const char _uuconf_hinit_rcsid[] = "$Id: hinit.c,v 1.6 1994/01/30 21:14:29 ian Rel $"; #endif #include <errno.h> @@ -125,7 +125,7 @@ uuconf_hdb_init (ppglobal, zprogram) --cchars; if (zline[cchars] == '\n') zline[cchars] = '\0'; - if (isspace (BUCHAR (zline[0])) || zline[0] == '#') + if (zline[0] == '#') continue; ctypes = _uuconf_istrsplit (zline, '\0', &pzargs, &cargs); diff --git a/gnu/libexec/uucp/libuuconf/hlocnm.c b/gnu/libexec/uucp/libuuconf/hlocnm.c index 9af4d7e7a512..d94ce778c23a 100644 --- a/gnu/libexec/uucp/libuuconf/hlocnm.c +++ b/gnu/libexec/uucp/libuuconf/hlocnm.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_hlocnm_rcsid[] = "$Id: hlocnm.c,v 1.1 1993/08/04 19:34:18 jtc Exp $"; +const char _uuconf_hlocnm_rcsid[] = "$Id: hlocnm.c,v 1.5 1994/01/30 21:14:29 ian Rel $"; #endif #include <errno.h> diff --git a/gnu/libexec/uucp/libuuconf/hport.c b/gnu/libexec/uucp/libuuconf/hport.c index 690de91fc24f..fb0cd9564673 100644 --- a/gnu/libexec/uucp/libuuconf/hport.c +++ b/gnu/libexec/uucp/libuuconf/hport.c @@ -1,7 +1,7 @@ /* hport.c Find a port in the HDB configuration files. - Copyright (C) 1992 Ian Lance Taylor + Copyright (C) 1992, 1993 Ian Lance Taylor This file is part of the Taylor UUCP uuconf library. @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_hport_rcsid[] = "$Id: hport.c,v 1.1 1993/08/04 19:34:20 jtc Exp $"; +const char _uuconf_hport_rcsid[] = "$Id: hport.c,v 1.11 1994/01/30 21:14:29 ian Rel $"; #endif #include <errno.h> @@ -85,6 +85,7 @@ uuconf_hdb_find_port (pglobal, zname, ibaud, ihighbaud, pifn, pinfo, qport) char *z, *zprotos, *zport; long ilow, ihigh; pointer pblock; + char ***ppzdialer; ++qglobal->ilineno; @@ -202,6 +203,9 @@ uuconf_hdb_find_port (pglobal, zname, ibaud, ihighbaud, pifn, pinfo, qport) qport->uuconf_ttype = UUCONF_PORTTYPE_DIRECT; qport->uuconf_u.uuconf_sdirect.uuconf_zdevice = pzsplit[1]; qport->uuconf_u.uuconf_sdirect.uuconf_ibaud = ilow; + qport->uuconf_u.uuconf_sdirect.uuconf_fcarrier = FALSE; + qport->uuconf_u.uuconf_sdirect.uuconf_fhardflow = TRUE; + ppzdialer = NULL; } else if (strcmp (pzsplit[0], "TCP") == 0) { @@ -213,43 +217,23 @@ uuconf_hdb_find_port (pglobal, zname, ibaud, ihighbaud, pifn, pinfo, qport) | UUCONF_RELIABLE_EIGHT | UUCONF_RELIABLE_FULLDUPLEX | UUCONF_RELIABLE_SPECIFIED); qport->uuconf_u.uuconf_stcp.uuconf_zport = pzsplit[1]; + ppzdialer = &qport->uuconf_u.uuconf_stcp.uuconf_pzdialer; } else if (ctoks >= 5 && (strcmp (pzsplit[4], "TLI") == 0 || strcmp (pzsplit[4], "TLIS") == 0)) { - size_t c; - char **pzd; - qport->uuconf_ttype = UUCONF_PORTTYPE_TLI; qport->uuconf_u.uuconf_stli.uuconf_zdevice = pzsplit[1]; qport->uuconf_u.uuconf_stli.uuconf_fstream = strcmp (pzsplit[4], "TLIS") == 0; qport->uuconf_u.uuconf_stli.uuconf_pzpush = NULL; - pblock = uuconf_malloc_block (); - if (pblock == NULL) - { - qglobal->ierrno = errno; - iret = UUCONF_MALLOC_FAILED | UUCONF_ERROR_ERRNO; - break; - } - c = (ctoks - 4) * sizeof (char *); - pzd = (char **) uuconf_malloc (pblock, c + sizeof (char *)); - if (pzd == NULL) - { - qglobal->ierrno = errno; - uuconf_free_block (pblock); - iret = UUCONF_MALLOC_FAILED | UUCONF_ERROR_ERRNO; - break; - } - memcpy ((pointer) pzd, (pointer) (pzsplit + 4), c); - pzd[ctoks - 4] = NULL; - qport->uuconf_u.uuconf_stli.uuconf_pzdialer = pzd; qport->uuconf_u.uuconf_stli.uuconf_zservaddr = NULL; qport->uuconf_ireliable = (UUCONF_RELIABLE_ENDTOEND | UUCONF_RELIABLE_RELIABLE | UUCONF_RELIABLE_EIGHT | UUCONF_RELIABLE_FULLDUPLEX | UUCONF_RELIABLE_SPECIFIED); + ppzdialer = &qport->uuconf_u.uuconf_stli.uuconf_pzdialer; } else { @@ -273,8 +257,15 @@ uuconf_hdb_find_port (pglobal, zname, ibaud, ihighbaud, pifn, pinfo, qport) qport->uuconf_u.uuconf_smodem.uuconf_ihighbaud = ihigh; } qport->uuconf_u.uuconf_smodem.uuconf_fcarrier = TRUE; + qport->uuconf_u.uuconf_smodem.uuconf_fhardflow = TRUE; + qport->uuconf_u.uuconf_smodem.uuconf_qdialer = NULL; + ppzdialer = &qport->uuconf_u.uuconf_smodem.uuconf_pzdialer; + } + + if (ppzdialer != NULL) + { if (ctoks < 5) - qport->uuconf_u.uuconf_smodem.uuconf_pzdialer = NULL; + *ppzdialer = NULL; else { size_t c; @@ -299,9 +290,8 @@ uuconf_hdb_find_port (pglobal, zname, ibaud, ihighbaud, pifn, pinfo, qport) memcpy ((pointer) pzd, (pointer) (pzsplit + 4), c); pzd[ctoks - 4] = NULL; - qport->uuconf_u.uuconf_smodem.uuconf_pzdialer = pzd; + *ppzdialer = pzd; } - qport->uuconf_u.uuconf_smodem.uuconf_qdialer = NULL; } if (pifn != NULL) diff --git a/gnu/libexec/uucp/libuuconf/hrmunk.c b/gnu/libexec/uucp/libuuconf/hrmunk.c index e7516f7e784a..1e39b8c4a585 100644 --- a/gnu/libexec/uucp/libuuconf/hrmunk.c +++ b/gnu/libexec/uucp/libuuconf/hrmunk.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_hrmunk_rcsid[] = "$Id: hrmunk.c,v 1.1 1993/08/04 19:34:22 jtc Exp $"; +const char _uuconf_hrmunk_rcsid[] = "$Id: hrmunk.c,v 1.2 1994/01/30 21:14:29 ian Rel $"; #endif #include <errno.h> diff --git a/gnu/libexec/uucp/libuuconf/hsinfo.c b/gnu/libexec/uucp/libuuconf/hsinfo.c index 83129a3e706b..6c92b3b8317a 100644 --- a/gnu/libexec/uucp/libuuconf/hsinfo.c +++ b/gnu/libexec/uucp/libuuconf/hsinfo.c @@ -1,7 +1,7 @@ /* hsinfo.c Get information about a system from the HDB configuration files. - Copyright (C) 1992 Ian Lance Taylor + Copyright (C) 1992, 1993 Ian Lance Taylor This file is part of the Taylor UUCP uuconf library. @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_hsinfo_rcsid[] = "$Id: hsinfo.c,v 1.1 1993/08/04 19:34:24 jtc Exp $"; +const char _uuconf_hsinfo_rcsid[] = "$Id: hsinfo.c,v 1.10 1994/01/30 21:14:29 ian Rel $"; #endif #include <errno.h> @@ -112,6 +112,8 @@ _uuconf_ihdb_system_internal (qglobal, zsystem, qsys) FILE *e; int cchars; + qglobal->ilineno = 0; + e = fopen (*pz, "r"); if (e == NULL) { @@ -122,8 +124,6 @@ _uuconf_ihdb_system_internal (qglobal, zsystem, qsys) break; } - qglobal->ilineno = 0; - while ((cchars = _uuconf_getline (qglobal, &zline, &cline, e)) > 0) { int ctoks, ctimes, i; @@ -258,6 +258,11 @@ _uuconf_ihdb_system_internal (qglobal, zsystem, qsys) pblock); if (iret != UUCONF_SUCCESS) break; + + /* Treat any time/grade setting as both a timegrade and + a call-timegrade. */ + if (bgrade != UUCONF_GRADE_LOW) + qset->uuconf_qcalltimegrade = qset->uuconf_qtimegrade; } if (iret != UUCONF_SUCCESS) @@ -355,7 +360,7 @@ _uuconf_ihdb_system_internal (qglobal, zsystem, qsys) if (iret != UUCONF_SUCCESS) { qglobal->zfilename = *pz; - return iret | UUCONF_ERROR_FILENAME; + return iret | UUCONF_ERROR_FILENAME | UUCONF_ERROR_LINENO; } if (pblock == NULL) diff --git a/gnu/libexec/uucp/libuuconf/hsnams.c b/gnu/libexec/uucp/libuuconf/hsnams.c index de003a3ec5e2..73f3dbb2ab27 100644 --- a/gnu/libexec/uucp/libuuconf/hsnams.c +++ b/gnu/libexec/uucp/libuuconf/hsnams.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_hsnams_rcsid[] = "$Id: hsnams.c,v 1.1 1993/08/04 19:34:26 jtc Exp $"; +const char _uuconf_hsnams_rcsid[] = "$Id: hsnams.c,v 1.4 1994/01/30 21:14:29 ian Rel $"; #endif #include <errno.h> diff --git a/gnu/libexec/uucp/libuuconf/hsys.c b/gnu/libexec/uucp/libuuconf/hsys.c index 676c20ff0e3b..16be3b9b977f 100644 --- a/gnu/libexec/uucp/libuuconf/hsys.c +++ b/gnu/libexec/uucp/libuuconf/hsys.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_hsys_rcsid[] = "$Id: hsys.c,v 1.1 1993/08/04 19:34:29 jtc Exp $"; +const char _uuconf_hsys_rcsid[] = "$Id: hsys.c,v 1.3 1994/01/30 21:14:29 ian Rel $"; #endif /* Get system information from the HDB configuration files. This is a diff --git a/gnu/libexec/uucp/libuuconf/hunk.c b/gnu/libexec/uucp/libuuconf/hunk.c index 8e997d0b7104..cfc79bb0cacf 100644 --- a/gnu/libexec/uucp/libuuconf/hunk.c +++ b/gnu/libexec/uucp/libuuconf/hunk.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_hunk_rcsid[] = "$Id: hunk.c,v 1.1 1993/08/04 19:34:31 jtc Exp $"; +const char _uuconf_hunk_rcsid[] = "$Id: hunk.c,v 1.4 1994/01/30 21:14:29 ian Rel $"; #endif #include <errno.h> diff --git a/gnu/libexec/uucp/libuuconf/iniglb.c b/gnu/libexec/uucp/libuuconf/iniglb.c index 2422656efc44..fa8e79624b20 100644 --- a/gnu/libexec/uucp/libuuconf/iniglb.c +++ b/gnu/libexec/uucp/libuuconf/iniglb.c @@ -1,7 +1,7 @@ /* iniglb.c Initialize the global information structure. - Copyright (C) 1992 Ian Lance Taylor + Copyright (C) 1992, 1994 Ian Lance Taylor This file is part of the Taylor UUCP uuconf library. @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_iniglb_rcsid[] = "$Id: iniglb.c,v 1.1 1993/08/04 19:34:33 jtc Exp $"; +const char _uuconf_iniglb_rcsid[] = "$Id: iniglb.c,v 1.8 1994/01/30 21:14:29 ian Rel $"; #endif #include <errno.h> @@ -84,6 +84,7 @@ _uuconf_iinit_global (pqglobal) qprocess->zdebugfile = DEBUGFILE; qprocess->zdebug = ""; qprocess->cmaxuuxqts = 0; + qprocess->zrunuuxqt = NULL; qprocess->fv2 = TRUE; qprocess->fhdb = TRUE; qprocess->pzdialcodefiles = NULL; diff --git a/gnu/libexec/uucp/libuuconf/init.c b/gnu/libexec/uucp/libuuconf/init.c index ef252a78245d..4c4ef84aacf2 100644 --- a/gnu/libexec/uucp/libuuconf/init.c +++ b/gnu/libexec/uucp/libuuconf/init.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_init_rcsid[] = "$Id: init.c,v 1.1 1993/08/04 19:34:35 jtc Exp $"; +const char _uuconf_init_rcsid[] = "$Id: init.c,v 1.5 1994/01/30 21:14:29 ian Rel $"; #endif /* Initialize the UUCP configuration file reading routines. This is diff --git a/gnu/libexec/uucp/libuuconf/int.c b/gnu/libexec/uucp/libuuconf/int.c index b0047ee6c090..1639006849db 100644 --- a/gnu/libexec/uucp/libuuconf/int.c +++ b/gnu/libexec/uucp/libuuconf/int.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_int_rcsid[] = "$Id: int.c,v 1.1 1993/08/04 19:34:37 jtc Exp $"; +const char _uuconf_int_rcsid[] = "$Id: int.c,v 1.4 1994/01/30 21:14:29 ian Rel $"; #endif /* Parse a string into a variable. This is called by uuconf_cmd_args, diff --git a/gnu/libexec/uucp/libuuconf/lckdir.c b/gnu/libexec/uucp/libuuconf/lckdir.c index 52d1a9fc7335..d0be913dcbeb 100644 --- a/gnu/libexec/uucp/libuuconf/lckdir.c +++ b/gnu/libexec/uucp/libuuconf/lckdir.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_lckdir_rcsid[] = "$Id: lckdir.c,v 1.1 1993/08/04 19:34:39 jtc Exp $"; +const char _uuconf_lckdir_rcsid[] = "$Id: lckdir.c,v 1.3 1994/01/30 21:14:29 ian Rel $"; #endif /* Get the name of the UUCP lock directory. */ diff --git a/gnu/libexec/uucp/libuuconf/lineno.c b/gnu/libexec/uucp/libuuconf/lineno.c index 77839f6ede48..e95981446195 100644 --- a/gnu/libexec/uucp/libuuconf/lineno.c +++ b/gnu/libexec/uucp/libuuconf/lineno.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_lineno_rcsid[] = "$Id: lineno.c,v 1.1 1993/08/04 19:34:41 jtc Exp $"; +const char _uuconf_lineno_rcsid[] = "$Id: lineno.c,v 1.3 1994/01/30 21:14:29 ian Rel $"; #endif /* Return the saved line number. */ diff --git a/gnu/libexec/uucp/libuuconf/llocnm.c b/gnu/libexec/uucp/libuuconf/llocnm.c index 272d6237e974..96ae75e1a208 100644 --- a/gnu/libexec/uucp/libuuconf/llocnm.c +++ b/gnu/libexec/uucp/libuuconf/llocnm.c @@ -1,7 +1,7 @@ /* llocnm.c Get the local name to use, given a login name. - Copyright (C) 1992 Ian Lance Taylor + Copyright (C) 1992, 1993 Ian Lance Taylor This file is part of the Taylor UUCP uuconf library. @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_llocnm_rcsid[] = "$Id: llocnm.c,v 1.1 1993/08/04 19:34:43 jtc Exp $"; +const char _uuconf_llocnm_rcsid[] = "$Id: llocnm.c,v 1.6 1994/01/30 21:14:29 ian Rel $"; #endif #include <errno.h> @@ -49,9 +49,12 @@ uuconf_login_localname (pglobal, zlogin, pzname) #endif #if HAVE_HDB_CONFIG - iret = uuconf_hdb_login_localname (pglobal, zlogin, pzname); - if (iret != UUCONF_NOT_FOUND) - return iret; + if (qglobal->qprocess->fhdb) + { + iret = uuconf_hdb_login_localname (pglobal, zlogin, pzname); + if (iret != UUCONF_NOT_FOUND) + return iret; + } #endif if (qglobal->qprocess->zlocalname != NULL) diff --git a/gnu/libexec/uucp/libuuconf/local.c b/gnu/libexec/uucp/libuuconf/local.c index 33adda40b0c1..64593ca96dd5 100644 --- a/gnu/libexec/uucp/libuuconf/local.c +++ b/gnu/libexec/uucp/libuuconf/local.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_local_rcsid[] = "$Id: local.c,v 1.1 1993/08/04 19:34:45 jtc Exp $"; +const char _uuconf_local_rcsid[] = "$Id: local.c,v 1.4 1994/01/30 21:14:29 ian Rel $"; #endif #include <errno.h> diff --git a/gnu/libexec/uucp/libuuconf/locnm.c b/gnu/libexec/uucp/libuuconf/locnm.c index 1bc165b73f94..4309387e2ad3 100644 --- a/gnu/libexec/uucp/libuuconf/locnm.c +++ b/gnu/libexec/uucp/libuuconf/locnm.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_locnm_rcsid[] = "$Id: locnm.c,v 1.1 1993/08/04 19:34:47 jtc Exp $"; +const char _uuconf_locnm_rcsid[] = "$Id: locnm.c,v 1.4 1994/01/30 21:14:29 ian Rel $"; #endif /* Get the local node name. */ diff --git a/gnu/libexec/uucp/libuuconf/logfil.c b/gnu/libexec/uucp/libuuconf/logfil.c index 6d76764faa92..f2f2695d497c 100644 --- a/gnu/libexec/uucp/libuuconf/logfil.c +++ b/gnu/libexec/uucp/libuuconf/logfil.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_logfil_rcsid[] = "$Id: logfil.c,v 1.1 1993/08/04 19:34:48 jtc Exp $"; +const char _uuconf_logfil_rcsid[] = "$Id: logfil.c,v 1.3 1994/01/30 21:14:29 ian Rel $"; #endif /* Get the name of the UUCP log file. */ diff --git a/gnu/libexec/uucp/libuuconf/maxuxq.c b/gnu/libexec/uucp/libuuconf/maxuxq.c index 8b5e9e7064bf..852f7e393bde 100644 --- a/gnu/libexec/uucp/libuuconf/maxuxq.c +++ b/gnu/libexec/uucp/libuuconf/maxuxq.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_maxuxq_rcsid[] = "$Id: maxuxq.c,v 1.1 1993/08/04 19:34:49 jtc Exp $"; +const char _uuconf_maxuxq_rcsid[] = "$Id: maxuxq.c,v 1.4 1994/01/30 21:14:29 ian Rel $"; #endif /* Get the maximum number of simultaneous uuxqt executions. When diff --git a/gnu/libexec/uucp/libuuconf/mrgblk.c b/gnu/libexec/uucp/libuuconf/mrgblk.c index 4b2ea1c5744d..713e24099650 100644 --- a/gnu/libexec/uucp/libuuconf/mrgblk.c +++ b/gnu/libexec/uucp/libuuconf/mrgblk.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_mrgblk_rcsid[] = "$Id: mrgblk.c,v 1.1 1993/08/04 19:34:50 jtc Exp $"; +const char _uuconf_mrgblk_rcsid[] = "$Id: mrgblk.c,v 1.3 1994/01/30 21:14:29 ian Rel $"; #endif #include "alloc.h" diff --git a/gnu/libexec/uucp/libuuconf/paramc.c b/gnu/libexec/uucp/libuuconf/paramc.c index bcc9a0be7b2a..caa76c3f35e4 100644 --- a/gnu/libexec/uucp/libuuconf/paramc.c +++ b/gnu/libexec/uucp/libuuconf/paramc.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_paramc_rcsid[] = "$Id: paramc.c,v 1.1 1993/08/04 19:34:51 jtc Exp $"; +const char _uuconf_paramc_rcsid[] = "$Id: paramc.c,v 1.3 1994/01/30 21:14:29 ian Rel $"; #endif #include <errno.h> diff --git a/gnu/libexec/uucp/libuuconf/port.c b/gnu/libexec/uucp/libuuconf/port.c index 586c2269442c..63a0550908b2 100644 --- a/gnu/libexec/uucp/libuuconf/port.c +++ b/gnu/libexec/uucp/libuuconf/port.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_port_rcsid[] = "$Id: port.c,v 1.1 1993/08/04 19:34:52 jtc Exp $"; +const char _uuconf_port_rcsid[] = "$Id: port.c,v 1.4 1994/01/30 21:14:29 ian Rel $"; #endif /* Find a port by name, baud rate, and special purpose function. */ diff --git a/gnu/libexec/uucp/libuuconf/prtsub.c b/gnu/libexec/uucp/libuuconf/prtsub.c index 682f38e68737..8e6dde314f6e 100644 --- a/gnu/libexec/uucp/libuuconf/prtsub.c +++ b/gnu/libexec/uucp/libuuconf/prtsub.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_prtsub_rcsid[] = "$Id: prtsub.c,v 1.1 1993/08/04 19:34:53 jtc Exp $"; +const char _uuconf_prtsub_rcsid[] = "$Id: prtsub.c,v 1.5 1994/01/30 21:14:29 ian Rel $"; #endif /* Clear the information in a port. This can only clear the type diff --git a/gnu/libexec/uucp/libuuconf/pubdir.c b/gnu/libexec/uucp/libuuconf/pubdir.c index 0c4714d466f3..0d6f5f1d9ae0 100644 --- a/gnu/libexec/uucp/libuuconf/pubdir.c +++ b/gnu/libexec/uucp/libuuconf/pubdir.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_pubdir_rcsid[] = "$Id: pubdir.c,v 1.1 1993/08/04 19:34:54 jtc Exp $"; +const char _uuconf_pubdir_rcsid[] = "$Id: pubdir.c,v 1.5 1994/01/30 21:14:29 ian Rel $"; #endif /* Get the name of the UUCP public directory. */ diff --git a/gnu/libexec/uucp/libuuconf/rdlocs.c b/gnu/libexec/uucp/libuuconf/rdlocs.c index ba8365fd7bf7..4393cc8c6f61 100644 --- a/gnu/libexec/uucp/libuuconf/rdlocs.c +++ b/gnu/libexec/uucp/libuuconf/rdlocs.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_rdlocs_rcsid[] = "$Id: rdlocs.c,v 1.1 1993/08/04 19:34:55 jtc Exp $"; +const char _uuconf_rdlocs_rcsid[] = "$Id: rdlocs.c,v 1.5 1994/01/30 21:14:29 ian Rel $"; #endif #include <errno.h> diff --git a/gnu/libexec/uucp/libuuconf/rdperm.c b/gnu/libexec/uucp/libuuconf/rdperm.c index dd481c1a8e59..1d365864a0e4 100644 --- a/gnu/libexec/uucp/libuuconf/rdperm.c +++ b/gnu/libexec/uucp/libuuconf/rdperm.c @@ -1,7 +1,7 @@ /* rdperm.c Read the HDB Permissions file. - Copyright (C) 1992 Ian Lance Taylor + Copyright (C) 1992, 1993 Ian Lance Taylor This file is part of the Taylor UUCP uuconf library. @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_rdperm_rcsid[] = "$Id: rdperm.c,v 1.1 1993/08/04 19:34:57 jtc Exp $"; +const char _uuconf_rdperm_rcsid[] = "$Id: rdperm.c,v 1.7 1994/01/30 21:14:29 ian Rel $"; #endif #include <errno.h> @@ -165,7 +165,7 @@ _uuconf_ihread_permissions (qglobal) --cchars; if (zline[cchars] == '\n') zline[cchars] = '\0'; - if (isspace (BUCHAR (zline[0])) || zline[0] == '#') + if (zline[0] == '#') continue; centries = _uuconf_istrsplit (zline, '\0', &pzsplit, &csplit); @@ -427,19 +427,25 @@ ihadd_norw (qglobal, ppz, pzno) char *znew; int iret; - csize = strlen (*pz) + 1; - znew = (char *) uuconf_malloc (qglobal->pblock, csize + 1); - if (znew == NULL) + /* Ignore an attempt to say NOREAD or NOWRITE with an empty + string, since it will be interpreted as an attempt to deny + everything. */ + if (**pz != '\0') { - qglobal->ierrno = errno; - return UUCONF_MALLOC_FAILED | UUCONF_ERROR_ERRNO; + csize = strlen (*pz) + 1; + znew = (char *) uuconf_malloc (qglobal->pblock, csize + 1); + if (znew == NULL) + { + qglobal->ierrno = errno; + return UUCONF_MALLOC_FAILED | UUCONF_ERROR_ERRNO; + } + znew[0] = '!'; + memcpy ((pointer) (znew + 1), (pointer) *pz, csize); + iret = _uuconf_iadd_string (qglobal, znew, FALSE, FALSE, ppz, + qglobal->pblock); + if (iret != UUCONF_SUCCESS) + return iret; } - znew[0] = '!'; - memcpy ((pointer) (znew + 1), (pointer) *pz, csize); - iret = _uuconf_iadd_string (qglobal, znew, FALSE, FALSE, ppz, - qglobal->pblock); - if (iret != UUCONF_SUCCESS) - return iret; } return UUCONF_SUCCESS; diff --git a/gnu/libexec/uucp/libuuconf/reliab.c b/gnu/libexec/uucp/libuuconf/reliab.c index 13517d49f344..57d238b0b4ab 100644 --- a/gnu/libexec/uucp/libuuconf/reliab.c +++ b/gnu/libexec/uucp/libuuconf/reliab.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_reliab_rcsid[] = "$Id: reliab.c,v 1.1 1993/08/04 19:34:58 jtc Exp $"; +const char _uuconf_reliab_rcsid[] = "$Id: reliab.c,v 1.4 1994/01/30 21:14:29 ian Rel $"; #endif /* Handle the "seven-bit" command for a port or a dialer. The pvar diff --git a/gnu/libexec/uucp/libuuconf/remunk.c b/gnu/libexec/uucp/libuuconf/remunk.c index 85297b0212f6..be947b73c955 100644 --- a/gnu/libexec/uucp/libuuconf/remunk.c +++ b/gnu/libexec/uucp/libuuconf/remunk.c @@ -1,7 +1,7 @@ /* remunk.c Get the name of the remote.unknown shell script. - Copyright (C) 1992 Ian Lance Taylor + Copyright (C) 1992, 1993 Ian Lance Taylor This file is part of the Taylor UUCP uuconf library. @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_remunk_rcsid[] = "$Id: remunk.c,v 1.1 1993/08/04 19:34:59 jtc Exp $"; +const char _uuconf_remunk_rcsid[] = "$Id: remunk.c,v 1.3 1994/01/30 21:14:29 ian Rel $"; #endif /* Get the name of the remote.unknown shell script. */ @@ -37,9 +37,18 @@ uuconf_remote_unknown (pglobal, pzname) pointer pglobal; char **pzname; { -#if HAVE_TAYLOR_CONFIG || ! HAVE_HDB_CONFIG +#if ! HAVE_HDB_CONFIG return UUCONF_NOT_FOUND; #else +#if HAVE_TAYLOR_CONFIG + struct sglobal *qglobal = (struct sglobal *) pglobal; + + /* If ``unknown'' commands were used in the config file, then ignore + any remote.unknown script. */ + if (qglobal->qprocess->qunknown != NULL) + return UUCONF_NOT_FOUND; +#endif /* HAVE_TAYLOR_CONFIG */ + return uuconf_hdb_remote_unknown (pglobal, pzname); -#endif +#endif /* HAVE_HDB_CONFIG */ } diff --git a/gnu/libexec/uucp/libuuconf/runuxq.c b/gnu/libexec/uucp/libuuconf/runuxq.c new file mode 100644 index 000000000000..013cca3cdefa --- /dev/null +++ b/gnu/libexec/uucp/libuuconf/runuxq.c @@ -0,0 +1,77 @@ +/* maxuxq.c + Return how often to spawn a uuxqt process. + + Copyright (C) 1994 Ian Lance Taylor + + This file is part of the Taylor UUCP uuconf library. + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Library General Public License + as published by the Free Software Foundation; either version 2 of + the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Library General Public License for more details. + + You should have received a copy of the GNU Library General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + + The author of the program may be contacted at ian@airs.com or + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. + */ + +#include "uucnfi.h" + +#if USE_RCS_ID +const char _uuconf_runuxq_rcsid[] = "$Id: runuxq.c,v 1.3 1994/03/25 04:39:39 ian Rel $"; +#endif + +/* Return how often to spawn a uuxqt process. This is either a + positive number representing the number of execution files to be + received between spawns, or a special code. When using + TAYLOR_CONFIG, this is from the ``run-uuxqt'' command in config + (the default is UUCONF_RUNUUXQT_ONCE, for compatibility). + Otherwise, we return UUCONF_RUNUUXQT_PERCALL for HDB_CONFIG and 10 + for V2_CONFIG, to emulate traditional HDB and V2 emulations. */ + +int +uuconf_runuuxqt (pglobal, pirunuuxqt) + pointer pglobal; + int *pirunuuxqt; +{ +#if HAVE_TAYLOR_CONFIG + { + struct sglobal *qglobal = (struct sglobal *) pglobal; + const char *zrun; + + zrun = qglobal->qprocess->zrunuuxqt; + if (zrun == NULL + || strcasecmp (zrun, "once") == 0) + *pirunuuxqt = UUCONF_RUNUUXQT_ONCE; + else if (strcasecmp (zrun, "never") == 0) + *pirunuuxqt = UUCONF_RUNUUXQT_NEVER; + else if (strcasecmp (zrun, "percall") == 0) + *pirunuuxqt = UUCONF_RUNUUXQT_PERCALL; + else + { + char *zend; + + *pirunuuxqt = strtol ((char *) qglobal->qprocess->zrunuuxqt, + &zend, 10); + if (*zend != '\0' || *pirunuuxqt <= 0) + *pirunuuxqt = UUCONF_RUNUUXQT_ONCE; + } + } +#else /* ! HAVE_TAYLOR_CONFIG */ +#if HAVE_HDB_CONFIG + *pirunuuxqt = UUCONF_RUNUUXQT_PERCALL; +#else /* ! HAVE_HDB_CONFIG */ + *pirunuuxqt = 10; +#endif /* ! HAVE_HDB_CONFIG */ +#endif /* ! HAVE_TAYLOR_CONFIG */ + + return UUCONF_SUCCESS; +} diff --git a/gnu/libexec/uucp/libuuconf/sinfo.c b/gnu/libexec/uucp/libuuconf/sinfo.c index f73851f84aba..60282a201feb 100644 --- a/gnu/libexec/uucp/libuuconf/sinfo.c +++ b/gnu/libexec/uucp/libuuconf/sinfo.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_sinfo_rcsid[] = "$Id: sinfo.c,v 1.1 1993/08/04 19:35:00 jtc Exp $"; +const char _uuconf_sinfo_rcsid[] = "$Id: sinfo.c,v 1.3 1994/01/30 21:14:29 ian Rel $"; #endif /* Get information about a particular system. We combine the diff --git a/gnu/libexec/uucp/libuuconf/snams.c b/gnu/libexec/uucp/libuuconf/snams.c index d239b10e083e..8b24f0445940 100644 --- a/gnu/libexec/uucp/libuuconf/snams.c +++ b/gnu/libexec/uucp/libuuconf/snams.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_snams_rcsid[] = "$Id: snams.c,v 1.1 1993/08/04 19:35:01 jtc Exp $"; +const char _uuconf_snams_rcsid[] = "$Id: snams.c,v 1.3 1994/01/30 21:14:29 ian Rel $"; #endif /* Get all known system names. */ diff --git a/gnu/libexec/uucp/libuuconf/split.c b/gnu/libexec/uucp/libuuconf/split.c index 76cc5e8d3607..96c1d897126e 100644 --- a/gnu/libexec/uucp/libuuconf/split.c +++ b/gnu/libexec/uucp/libuuconf/split.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_split_rcsid[] = "$Id: split.c,v 1.1 1993/08/04 19:35:02 jtc Exp $"; +const char _uuconf_split_rcsid[] = "$Id: split.c,v 1.3 1994/01/30 21:14:29 ian Rel $"; #endif #include <ctype.h> diff --git a/gnu/libexec/uucp/libuuconf/spool.c b/gnu/libexec/uucp/libuuconf/spool.c index e9c13f072cb0..f56f0d5c9315 100644 --- a/gnu/libexec/uucp/libuuconf/spool.c +++ b/gnu/libexec/uucp/libuuconf/spool.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_spool_rcsid[] = "$Id: spool.c,v 1.1 1993/08/04 19:35:03 jtc Exp $"; +const char _uuconf_spool_rcsid[] = "$Id: spool.c,v 1.4 1994/01/30 21:14:29 ian Rel $"; #endif /* Get the name of the UUCP spool directory. */ diff --git a/gnu/libexec/uucp/libuuconf/stafil.c b/gnu/libexec/uucp/libuuconf/stafil.c index bcea0bffd6c6..e02e838d331b 100644 --- a/gnu/libexec/uucp/libuuconf/stafil.c +++ b/gnu/libexec/uucp/libuuconf/stafil.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_stafil_rcsid[] = "$Id: stafil.c,v 1.1 1993/08/04 19:35:04 jtc Exp $"; +const char _uuconf_stafil_rcsid[] = "$Id: stafil.c,v 1.3 1994/01/30 21:14:29 ian Rel $"; #endif /* Get the name of the UUCP statistics file. */ diff --git a/gnu/libexec/uucp/libuuconf/syshdr.h b/gnu/libexec/uucp/libuuconf/syshdr.h index 8ff18a6ca49e..b5a759fd1a6c 100644 --- a/gnu/libexec/uucp/libuuconf/syshdr.h +++ b/gnu/libexec/uucp/libuuconf/syshdr.h @@ -1,7 +1,7 @@ /* syshdr.unx -*- C -*- Unix system header for the uuconf library. - Copyright (C) 1992 Ian Lance Taylor + Copyright (C) 1992, 1993 Ian Lance Taylor This file is part of the Taylor UUCP uuconf library. @@ -20,7 +20,7 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ /* The root directory (used when setting local-send and local-receive @@ -82,6 +82,40 @@ extern char *sys_errlist[]; #endif /* ! HAVE_STRERROR */ +/* This macro is used to make a filename found in a configuration file + into an absolute path. The zdir argument is the directory to put it + in. The zset argument is set to the new string. The fallocated + argument is set to TRUE if the new string was allocated. */ +#define MAKE_ABSOLUTE(zset, fallocated, zfile, zdir, pblock) \ + do \ + { \ + if (*(zfile) == '/') \ + { \ + (zset) = (zfile); \ + (fallocated) = FALSE; \ + } \ + else \ + { \ + size_t abs_cdir, abs_cfile; \ + char *abs_zret; \ +\ + abs_cdir = strlen (zdir); \ + abs_cfile = strlen (zfile); \ + abs_zret = (char *) uuconf_malloc ((pblock), \ + abs_cdir + abs_cfile + 2); \ + (zset) = abs_zret; \ + (fallocated) = TRUE; \ + if (abs_zret != NULL) \ + { \ + memcpy ((pointer) abs_zret, (pointer) (zdir), abs_cdir); \ + abs_zret[abs_cdir] = '/'; \ + memcpy ((pointer) (abs_zret + abs_cdir + 1), \ + (pointer) (zfile), abs_cfile + 1); \ + } \ + } \ + } \ + while (0) + /* We want to be able to mark the Taylor UUCP system files as close on exec. */ #if HAVE_FCNTL_H diff --git a/gnu/libexec/uucp/libuuconf/syssub.c b/gnu/libexec/uucp/libuuconf/syssub.c index f9b52c13fed7..4a209d8fc72c 100644 --- a/gnu/libexec/uucp/libuuconf/syssub.c +++ b/gnu/libexec/uucp/libuuconf/syssub.c @@ -1,7 +1,7 @@ /* syssub.c System information subroutines. - Copyright (C) 1992 Ian Lance Taylor + Copyright (C) 1992, 1993 Ian Lance Taylor This file is part of the Taylor UUCP uuconf library. @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_syssub_rcsid[] = "$Id: syssub.c,v 1.1 1993/08/04 19:35:06 jtc Exp $"; +const char _uuconf_syssub_rcsid[] = "$Id: syssub.c,v 1.11 1994/01/30 21:14:29 ian Rel $"; #endif #include <errno.h> @@ -231,6 +231,71 @@ _uuconf_isystem_default (qglobal, qset, qdefault, faddalternates) if (qalt->uuconf_qproto_params == (struct uuconf_proto_param *) &_uuconf_unset) qalt->uuconf_qproto_params = qdefault->uuconf_qproto_params; + else if (qdefault->uuconf_qproto_params != NULL) + { + int cnew, ca; + struct uuconf_proto_param *qd, *qa; + + /* Merge in the default protocol parameters, so that a + system with 'g' protocol parameters won't lose the + default 'i' protocol parameters. */ + ca = 0; + cnew = 0; + for (qd = qdefault->uuconf_qproto_params; + qd->uuconf_bproto != '\0'; + qd++) + { + int c; + + c = 0; + for (qa = qalt->uuconf_qproto_params; + (qa->uuconf_bproto != '\0' + && qa->uuconf_bproto != qd->uuconf_bproto); + qa++) + ++c; + if (qa->uuconf_bproto == '\0') + { + ++cnew; + ca = c; + } + } + + if (cnew > 0) + { + struct uuconf_proto_param *qnew; + + qnew = ((struct uuconf_proto_param *) + uuconf_malloc (qset->uuconf_palloc, + ((ca + cnew + 1) + * sizeof (struct uuconf_proto_param)))); + if (qnew == NULL) + { + qglobal->ierrno = errno; + return UUCONF_MALLOC_FAILED | UUCONF_ERROR_ERRNO; + } + memcpy ((pointer) qnew, (pointer) qalt->uuconf_qproto_params, + ca * sizeof (struct uuconf_proto_param)); + cnew = 0; + for (qd = qdefault->uuconf_qproto_params; + qd->uuconf_bproto != '\0'; + qd++) + { + for (qa = qalt->uuconf_qproto_params; + (qa->uuconf_bproto != '\0' + && qa->uuconf_bproto != qd->uuconf_bproto); + qa++) + ; + if (qa->uuconf_bproto == '\0') + { + qnew[ca + cnew] = *qd; + ++cnew; + } + } + qnew[ca + cnew].uuconf_bproto = '\0'; + uuconf_free (qset->uuconf_palloc, qalt->uuconf_qproto_params); + qalt->uuconf_qproto_params = qnew; + } + } if (qdefault->uuconf_qalternate != NULL) qdefault = qdefault->uuconf_qalternate; diff --git a/gnu/libexec/uucp/libuuconf/tcalou.c b/gnu/libexec/uucp/libuuconf/tcalou.c index 8eb627eb3347..bc13a6039ae3 100644 --- a/gnu/libexec/uucp/libuuconf/tcalou.c +++ b/gnu/libexec/uucp/libuuconf/tcalou.c @@ -1,7 +1,7 @@ /* tcalou.c Find callout login name and password from Taylor UUCP configuration files. - Copyright (C) 1992 Ian Lance Taylor + Copyright (C) 1992, 1993 Ian Lance Taylor This file is part of the Taylor UUCP uuconf library. @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_tcalou_rcsid[] = "$Id: tcalou.c,v 1.1 1993/08/04 19:35:07 jtc Exp $"; +const char _uuconf_tcalou_rcsid[] = "$Id: tcalou.c,v 1.6 1994/01/30 21:14:29 ian Rel $"; #endif #include <errno.h> @@ -99,7 +99,7 @@ uuconf_taylor_callout (pglobal, qsys, pzlog, pzpass) } as[0].uuconf_zcmd = qsys->uuconf_zname; - as[0].uuconf_itype = UUCONF_CMDTABTYPE_FN | 3; + as[0].uuconf_itype = UUCONF_CMDTABTYPE_FN | 0; if (*pzlog == NULL) as[0].uuconf_pvar = (pointer) pzlog; else @@ -168,6 +168,9 @@ icsys (pglobal, argc, argv, pvar, pinfo) char **pzlog = (char **) pvar; char **pzpass = (char **) pinfo; + if (argc < 2 || argc > 3) + return UUCONF_SYNTAX_ERROR | UUCONF_CMDTABRET_EXIT; + if (pzlog != NULL) { *pzlog = strdup (argv[1]); @@ -182,7 +185,10 @@ icsys (pglobal, argc, argv, pvar, pinfo) if (pzpass != NULL) { - *pzpass = strdup (argv[2]); + if (argc < 3) + *pzpass = strdup (""); + else + *pzpass = strdup (argv[2]); if (*pzpass == NULL) { qglobal->ierrno = errno; diff --git a/gnu/libexec/uucp/libuuconf/tdial.c b/gnu/libexec/uucp/libuuconf/tdial.c index f13c92998abd..61f913419bac 100644 --- a/gnu/libexec/uucp/libuuconf/tdial.c +++ b/gnu/libexec/uucp/libuuconf/tdial.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_tdial_rcsid[] = "$Id: tdial.c,v 1.1 1993/08/04 19:35:08 jtc Exp $"; +const char _uuconf_tdial_rcsid[] = "$Id: tdial.c,v 1.4 1994/01/30 21:14:29 ian Rel $"; #endif #include <errno.h> diff --git a/gnu/libexec/uucp/libuuconf/tdialc.c b/gnu/libexec/uucp/libuuconf/tdialc.c index e70090f3bb06..02063b2180d3 100644 --- a/gnu/libexec/uucp/libuuconf/tdialc.c +++ b/gnu/libexec/uucp/libuuconf/tdialc.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_tdialc_rcsid[] = "$Id: tdialc.c,v 1.1 1993/08/04 19:35:09 jtc Exp $"; +const char _uuconf_tdialc_rcsid[] = "$Id: tdialc.c,v 1.4 1994/01/30 21:14:29 ian Rel $"; #endif static int idchat P((pointer pglobal, int argc, char **argv, pointer pvar, diff --git a/gnu/libexec/uucp/libuuconf/tdnams.c b/gnu/libexec/uucp/libuuconf/tdnams.c index d9e4b0d7e384..fa55a1f121e6 100644 --- a/gnu/libexec/uucp/libuuconf/tdnams.c +++ b/gnu/libexec/uucp/libuuconf/tdnams.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_tdnams_rcsid[] = "$Id: tdnams.c,v 1.1 1993/08/04 19:35:10 jtc Exp $"; +const char _uuconf_tdnams_rcsid[] = "$Id: tdnams.c,v 1.4 1994/01/30 21:14:29 ian Rel $"; #endif #include <errno.h> diff --git a/gnu/libexec/uucp/libuuconf/tgcmp.c b/gnu/libexec/uucp/libuuconf/tgcmp.c index 9bc8de2b5f48..3e54a449e044 100644 --- a/gnu/libexec/uucp/libuuconf/tgcmp.c +++ b/gnu/libexec/uucp/libuuconf/tgcmp.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_tgcmp_rcsid[] = "$Id: tgcmp.c,v 1.1 1993/08/04 19:35:11 jtc Exp $"; +const char _uuconf_tgcmp_rcsid[] = "$Id: tgcmp.c,v 1.3 1994/01/30 21:14:29 ian Rel $"; #endif /* A comparison function to pass to _uuconf_itime_parse. This diff --git a/gnu/libexec/uucp/libuuconf/thread.c b/gnu/libexec/uucp/libuuconf/thread.c index 92f100bba204..5a7bc7c262ad 100644 --- a/gnu/libexec/uucp/libuuconf/thread.c +++ b/gnu/libexec/uucp/libuuconf/thread.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_thread_rcsid[] = "$Id: thread.c,v 1.1 1993/08/04 19:35:11 jtc Exp $"; +const char _uuconf_thread_rcsid[] = "$Id: thread.c,v 1.3 1994/01/30 21:14:29 ian Rel $"; #endif #include <errno.h> diff --git a/gnu/libexec/uucp/libuuconf/time.c b/gnu/libexec/uucp/libuuconf/time.c index 6f316828a384..4aaafe5b21db 100644 --- a/gnu/libexec/uucp/libuuconf/time.c +++ b/gnu/libexec/uucp/libuuconf/time.c @@ -1,7 +1,7 @@ /* time.c Parse a time string into a uuconf_timespan structure. - Copyright (C) 1992 Ian Lance Taylor + Copyright (C) 1992, 1993 Ian Lance Taylor This file is part of the Taylor UUCP uuconf library. @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_time_rcsid[] = "$Id: time.c,v 1.1 1993/08/04 19:35:12 jtc Exp $"; +const char _uuconf_time_rcsid[] = "$Id: time.c,v 1.11 1994/01/30 21:14:29 ian Rel $"; #endif #include <ctype.h> @@ -61,6 +61,7 @@ static const struct { "fr", 5, 5 }, { "sa", 6, 6 }, { "never", -1, -2 }, + { "none", -1, -2 }, { NULL, 0, 0 } }; @@ -106,7 +107,7 @@ _uuconf_itime_parse (qglobal, ztime, ival, cretry, picmp, pqspan, pblock) { if ((bfirst == (*pz)[0] || (isupper (BUCHAR ((*pz)[0])) - && bfirst == tolower (BUCHAR ((*pz)[0])))) + && (int) bfirst == (int) tolower (BUCHAR ((*pz)[0])))) && strcasecmp (ztime, *pz) == 0) zfound = pz[1]; pz += 2; diff --git a/gnu/libexec/uucp/libuuconf/tinit.c b/gnu/libexec/uucp/libuuconf/tinit.c index 829fd12285e3..69767aa6375f 100644 --- a/gnu/libexec/uucp/libuuconf/tinit.c +++ b/gnu/libexec/uucp/libuuconf/tinit.c @@ -1,7 +1,7 @@ /* tinit.c Initialize for reading Taylor UUCP configuration files. - Copyright (C) 1992 Ian Lance Taylor + Copyright (C) 1992, 1993, 1994 Ian Lance Taylor This file is part of the Taylor UUCP uuconf library. @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_tinit_rcsid[] = "$Id: tinit.c,v 1.1 1993/08/04 19:35:14 jtc Exp $"; +const char _uuconf_tinit_rcsid[] = "$Id: tinit.c,v 1.10 1994/01/30 21:14:29 ian Rel $"; #endif #include <errno.h> @@ -35,8 +35,10 @@ const char _uuconf_tinit_rcsid[] = "$Id: tinit.c,v 1.1 1993/08/04 19:35:14 jtc E static int itset_default P((struct sglobal *qglobal, char ***ppzvar, const char *zfile)); -static int itadd P((pointer pglobal, int argc, char **argv, pointer pvar, - pointer pinfo)); +static int itdebug P((pointer pglobal, int argc, char **argv, pointer pvar, + pointer pinfo)); +static int itaddfile P((pointer pglobal, int argc, char **argv, pointer pvar, + pointer pinfo)); static int itunknown P((pointer pglobal, int argc, char **argv, pointer pvar, pointer pinfo)); static int itprogram P((pointer pglobal, int argc, char **argv, pointer pvar, @@ -62,22 +64,24 @@ static const struct cmdtab_offset asCmds[] = offsetof (struct sprocess, zstatsfile), NULL }, { "debugfile", UUCONF_CMDTABTYPE_STRING, offsetof (struct sprocess, zdebugfile), NULL }, - { "debug", UUCONF_CMDTABTYPE_STRING, - offsetof (struct sprocess, zdebug), NULL }, + { "debug", UUCONF_CMDTABTYPE_FN | 0, + offsetof (struct sprocess, zdebug), itdebug }, { "max-uuxqts", UUCONF_CMDTABTYPE_INT, offsetof (struct sprocess, cmaxuuxqts), NULL }, + { "run-uuxqt", UUCONF_CMDTABTYPE_STRING, + offsetof (struct sprocess, zrunuuxqt), NULL }, { "sysfile", UUCONF_CMDTABTYPE_FN | 0, - offsetof (struct sprocess, pzsysfiles), itadd }, + offsetof (struct sprocess, pzsysfiles), itaddfile }, { "portfile", UUCONF_CMDTABTYPE_FN | 0, - offsetof (struct sprocess, pzportfiles), itadd }, + offsetof (struct sprocess, pzportfiles), itaddfile }, { "dialfile", UUCONF_CMDTABTYPE_FN | 0, - offsetof (struct sprocess, pzdialfiles), itadd }, + offsetof (struct sprocess, pzdialfiles), itaddfile }, { "dialcodefile", UUCONF_CMDTABTYPE_FN | 0, - offsetof (struct sprocess, pzdialcodefiles), itadd }, + offsetof (struct sprocess, pzdialcodefiles), itaddfile }, { "callfile", UUCONF_CMDTABTYPE_FN | 0, - offsetof (struct sprocess, pzcallfiles), itadd }, + offsetof (struct sprocess, pzcallfiles), itaddfile }, { "passwdfile", UUCONF_CMDTABTYPE_FN | 0, - offsetof (struct sprocess, pzpwdfiles), itadd }, + offsetof (struct sprocess, pzpwdfiles), itaddfile }, { "unknown", UUCONF_CMDTABTYPE_FN, offsetof (struct sprocess, qunknown), itunknown }, { "v2-files", UUCONF_CMDTABTYPE_BOOLEAN, @@ -227,11 +231,29 @@ uuconf_taylor_init (ppglobal, zprogram, zname) return UUCONF_SUCCESS; } -/* Add new strings to a variable. */ +/* Local interface to the _uuconf_idebug_cmd function, which handles + the "debug" command. */ + +static int +itdebug (pglobal, argc, argv, pvar, pinfo) + pointer pglobal; + int argc; + char **argv; + pointer pvar; + pointer pinfo; +{ + struct sglobal *qglobal = (struct sglobal *) pglobal; + char **pzdebug = (char **) pvar; + + return _uuconf_idebug_cmd (qglobal, pzdebug, argc, argv, + qglobal->pblock); +} + +/* Add new filenames to a list of files. */ /*ARGSUSED*/ static int -itadd (pglobal, argc, argv, pvar, pinfo) +itaddfile (pglobal, argc, argv, pvar, pinfo) pointer pglobal; int argc; char **argv; @@ -254,7 +276,19 @@ itadd (pglobal, argc, argv, pvar, pinfo) { for (i = 1; i < argc; i++) { - iret = _uuconf_iadd_string (qglobal, argv[i], TRUE, FALSE, ppz, + char *z; + boolean fallocated; + + MAKE_ABSOLUTE (z, fallocated, argv[i], NEWCONFIGLIB, + qglobal->pblock); + if (z == NULL) + { + qglobal->ierrno = errno; + return (UUCONF_MALLOC_FAILED + | UUCONF_ERROR_ERRNO + | UUCONF_CMDTABRET_EXIT); + } + iret = _uuconf_iadd_string (qglobal, z, ! fallocated, FALSE, ppz, qglobal->pblock); if (iret != UUCONF_SUCCESS) return iret; @@ -368,3 +402,60 @@ itset_default (qglobal, ppzvar, zfile) return _uuconf_iadd_string (qglobal, zadd, FALSE, FALSE, ppzvar, qglobal->pblock); } + +/* Handle the "debug" command which is documented to take multiple + arguments. This is also called by the ``debug'' command in a sys + file. It returns a CMDTABRET code. This should probably be in its + own file, but the only other place it is called is from tsinfo.c, + and any user of tsinfo.c it sure to link in this file as well. */ + +int +_uuconf_idebug_cmd (qglobal, pzdebug, argc, argv, pblock) + struct sglobal *qglobal; + char **pzdebug; + int argc; + char **argv; + pointer pblock; +{ + if (argc == 1) + { + *pzdebug = NULL; + return UUCONF_CMDTABRET_CONTINUE; + } + else if (argc == 2) + { + *pzdebug = argv[1]; + return UUCONF_CMDTABRET_KEEP; + } + else + { + size_t cdebug; + int i; + char *zdebug; + + cdebug = 0; + for (i = 1; i < argc; i++) + cdebug += strlen (argv[i]) + 1; + zdebug = (char *) uuconf_malloc (pblock, cdebug); + if (zdebug == NULL) + { + qglobal->ierrno = errno; + return (UUCONF_MALLOC_FAILED + | UUCONF_ERROR_ERRNO + | UUCONF_CMDTABRET_EXIT); + } + cdebug = 0; + for (i = 1; i < argc; i++) + { + size_t clen; + + clen = strlen (argv[i]); + memcpy (zdebug + cdebug, argv[i], clen); + zdebug[cdebug + clen] = ' '; + cdebug += clen + 1; + } + zdebug[cdebug - 1] = '\0'; + *pzdebug = zdebug; + return UUCONF_CMDTABRET_CONTINUE; + } +} diff --git a/gnu/libexec/uucp/libuuconf/tlocnm.c b/gnu/libexec/uucp/libuuconf/tlocnm.c index bf09446e8f6e..8bb834b956b5 100644 --- a/gnu/libexec/uucp/libuuconf/tlocnm.c +++ b/gnu/libexec/uucp/libuuconf/tlocnm.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_tlocnm_rcsid[] = "$Id: tlocnm.c,v 1.1 1993/08/04 19:35:14 jtc Exp $"; +const char _uuconf_tlocnm_rcsid[] = "$Id: tlocnm.c,v 1.4 1994/01/30 21:14:29 ian Rel $"; #endif #include <errno.h> diff --git a/gnu/libexec/uucp/libuuconf/tport.c b/gnu/libexec/uucp/libuuconf/tport.c index 0a94a81c1123..6e46f48b720f 100644 --- a/gnu/libexec/uucp/libuuconf/tport.c +++ b/gnu/libexec/uucp/libuuconf/tport.c @@ -1,7 +1,7 @@ /* tport.c Find a port in the Taylor UUCP configuration files. - Copyright (C) 1992 Ian Lance Taylor + Copyright (C) 1992, 1993 Ian Lance Taylor This file is part of the Taylor UUCP uuconf library. @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_tport_rcsid[] = "$Id: tport.c,v 1.1 1993/08/04 19:35:15 jtc Exp $"; +const char _uuconf_tport_rcsid[] = "$Id: tport.c,v 1.7 1994/01/30 21:14:29 ian Rel $"; #endif #include <errno.h> @@ -290,6 +290,10 @@ ipunknown (pglobal, argc, argv, pvar, pinfo) { struct sglobal *qglobal = (struct sglobal *) pglobal; struct uuconf_port *qport = (struct uuconf_port *) pinfo; + int iret; - return _uuconf_iport_cmd (qglobal, argc, argv, qport); + iret = _uuconf_iport_cmd (qglobal, argc, argv, qport); + if (UUCONF_ERROR_VALUE (iret) != UUCONF_SUCCESS) + iret |= UUCONF_CMDTABRET_EXIT; + return iret; } diff --git a/gnu/libexec/uucp/libuuconf/tportc.c b/gnu/libexec/uucp/libuuconf/tportc.c index 7b796eacb097..ec15cdfc9a6d 100644 --- a/gnu/libexec/uucp/libuuconf/tportc.c +++ b/gnu/libexec/uucp/libuuconf/tportc.c @@ -1,7 +1,7 @@ /* tportc.c Handle a Taylor UUCP port command. - Copyright (C) 1992 Ian Lance Taylor + Copyright (C) 1992, 1993 Ian Lance Taylor This file is part of the Taylor UUCP uuconf library. @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_tportc_rcsid[] = "$Id: tportc.c,v 1.1 1993/08/04 19:35:16 jtc Exp $"; +const char _uuconf_tportc_rcsid[] = "$Id: tportc.c,v 1.12 1994/01/30 21:14:29 ian Rel $"; #endif #include <errno.h> @@ -50,7 +50,8 @@ static const char * const azPtype_names[] = "modem", "direct", "tcp", - "tli" + "tli", + "pipe" }; #define CPORT_TYPES (sizeof azPtype_names / sizeof azPtype_names[0]) @@ -104,6 +105,9 @@ static const struct cmdtab_offset asPmodem_cmds[] = { "carrier", UUCONF_CMDTABTYPE_BOOLEAN, offsetof (struct uuconf_port, uuconf_u.uuconf_smodem.uuconf_fcarrier), NULL }, + { "hardflow", UUCONF_CMDTABTYPE_BOOLEAN, + offsetof (struct uuconf_port, uuconf_u.uuconf_smodem.uuconf_fhardflow), + NULL }, { "dial-device", UUCONF_CMDTABTYPE_STRING, offsetof (struct uuconf_port, uuconf_u.uuconf_smodem.uuconf_zdial_device), @@ -130,6 +134,12 @@ static const struct cmdtab_offset asPdirect_cmds[] = { "speed", UUCONF_CMDTABTYPE_LONG, offsetof (struct uuconf_port, uuconf_u.uuconf_sdirect.uuconf_ibaud), NULL }, + { "carrier", UUCONF_CMDTABTYPE_BOOLEAN, + offsetof (struct uuconf_port, uuconf_u.uuconf_sdirect.uuconf_fcarrier), + NULL }, + { "hardflow", UUCONF_CMDTABTYPE_BOOLEAN, + offsetof (struct uuconf_port, uuconf_u.uuconf_sdirect.uuconf_fhardflow), + NULL }, { NULL, 0, 0, NULL } }; @@ -141,6 +151,9 @@ static const struct cmdtab_offset asPtcp_cmds[] = { "service", UUCONF_CMDTABTYPE_STRING, offsetof (struct uuconf_port, uuconf_u.uuconf_stcp.uuconf_zport), NULL }, + { "dialer-sequence", UUCONF_CMDTABTYPE_FULLSTRING, + offsetof (struct uuconf_port, uuconf_u.uuconf_stcp.uuconf_pzdialer), + NULL }, { NULL, 0, 0, NULL } }; @@ -169,11 +182,22 @@ static const struct cmdtab_offset asPtli_cmds[] = #define CTLI_CMDS (sizeof asPtli_cmds / sizeof asPtli_cmds[0]) +/* The pipe port command table. */ +static const struct cmdtab_offset asPpipe_cmds[] = +{ + { "command", UUCONF_CMDTABTYPE_FULLSTRING, + offsetof (struct uuconf_port, uuconf_u.uuconf_spipe.uuconf_pzcmd), + NULL }, + { NULL, 0, 0, NULL} +}; + +#define CPIPE_CMDS (sizeof asPpipe_cmds / sizeof asPpipe_cmds[0]) + #undef max #define max(i1, i2) ((i1) > (i2) ? (i1) : (i2)) #define CCMDS \ max (max (max (CPORT_CMDS, CSTDIN_CMDS), CMODEM_CMDS), \ - max (max (CDIRECT_CMDS, CTCP_CMDS), CTLI_CMDS)) + max (max (CDIRECT_CMDS, CTCP_CMDS), max (CTLI_CMDS, CPIPE_CMDS))) /* Handle a command passed to a port from a Taylor UUCP configuration file. This can be called when reading either the port file or the @@ -243,15 +267,19 @@ _uuconf_iport_cmd (qglobal, argc, argv, qport) qport->uuconf_u.uuconf_smodem.uuconf_ilowbaud = 0L; qport->uuconf_u.uuconf_smodem.uuconf_ihighbaud = 0L; qport->uuconf_u.uuconf_smodem.uuconf_fcarrier = TRUE; + qport->uuconf_u.uuconf_smodem.uuconf_fhardflow = TRUE; qport->uuconf_u.uuconf_smodem.uuconf_pzdialer = NULL; qport->uuconf_u.uuconf_smodem.uuconf_qdialer = NULL; break; case UUCONF_PORTTYPE_DIRECT: qport->uuconf_u.uuconf_sdirect.uuconf_zdevice = NULL; qport->uuconf_u.uuconf_sdirect.uuconf_ibaud = -1; + qport->uuconf_u.uuconf_sdirect.uuconf_fcarrier = FALSE; + qport->uuconf_u.uuconf_sdirect.uuconf_fhardflow = TRUE; break; case UUCONF_PORTTYPE_TCP: qport->uuconf_u.uuconf_stcp.uuconf_zport = (char *) "uucp"; + qport->uuconf_u.uuconf_stcp.uuconf_pzdialer = NULL; qport->uuconf_ireliable = (UUCONF_RELIABLE_SPECIFIED | UUCONF_RELIABLE_ENDTOEND | UUCONF_RELIABLE_RELIABLE @@ -270,6 +298,9 @@ _uuconf_iport_cmd (qglobal, argc, argv, qport) | UUCONF_RELIABLE_EIGHT | UUCONF_RELIABLE_FULLDUPLEX); break; + case UUCONF_PORTTYPE_PIPE: + qport->uuconf_u.uuconf_spipe.uuconf_pzcmd = NULL; + break; } if (fgottype) @@ -310,6 +341,10 @@ _uuconf_iport_cmd (qglobal, argc, argv, qport) qcmds = asPtli_cmds; ccmds = CTLI_CMDS; break; + case UUCONF_PORTTYPE_PIPE: + qcmds = asPpipe_cmds; + ccmds = CPIPE_CMDS; + break; default: return UUCONF_SYNTAX_ERROR; } @@ -410,22 +445,27 @@ ipdialer (pglobal, argc, argv, pvar, pinfo) _uuconf_uclear_dialer (qnew); - clen = strlen (qport->uuconf_zname); - qnew->uuconf_zname = (char *) uuconf_malloc (qport->uuconf_palloc, - (clen - + sizeof " dialer")); - if (qnew->uuconf_zname == NULL) + if (qport->uuconf_zname == NULL) + qnew->uuconf_zname = (char *) "default port file dialer"; + else { - qglobal->ierrno = errno; - return (UUCONF_MALLOC_FAILED - | UUCONF_ERROR_ERRNO - | UUCONF_CMDTABRET_EXIT); - } + clen = strlen (qport->uuconf_zname); + qnew->uuconf_zname = + (char *) uuconf_malloc (qport->uuconf_palloc, + clen + sizeof " dialer"); + if (qnew->uuconf_zname == NULL) + { + qglobal->ierrno = errno; + return (UUCONF_MALLOC_FAILED + | UUCONF_ERROR_ERRNO + | UUCONF_CMDTABRET_EXIT); + } - memcpy ((pointer) qnew->uuconf_zname, - (pointer) qport->uuconf_zname, clen); - memcpy ((pointer) (qnew->uuconf_zname + clen), (pointer) " dialer", - sizeof " dialer"); + memcpy ((pointer) qnew->uuconf_zname, + (pointer) qport->uuconf_zname, clen); + memcpy ((pointer) (qnew->uuconf_zname + clen), + (pointer) " dialer", sizeof " dialer"); + } qnew->uuconf_palloc = qport->uuconf_palloc; diff --git a/gnu/libexec/uucp/libuuconf/tsinfo.c b/gnu/libexec/uucp/libuuconf/tsinfo.c index 5e31ca2c2d36..473e3ffc1b3b 100644 --- a/gnu/libexec/uucp/libuuconf/tsinfo.c +++ b/gnu/libexec/uucp/libuuconf/tsinfo.c @@ -1,7 +1,7 @@ /* tsinfo.c Get information about a system from the Taylor UUCP configuration files. - Copyright (C) 1992 Ian Lance Taylor + Copyright (C) 1992, 1993 Ian Lance Taylor This file is part of the Taylor UUCP uuconf library. @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_tsinfo_rcsid[] = "$Id: tsinfo.c,v 1.1 1993/08/04 19:35:18 jtc Exp $"; +const char _uuconf_tsinfo_rcsid[] = "$Id: tsinfo.c,v 1.11 1994/01/30 21:14:29 ian Rel $"; #endif #include <errno.h> @@ -54,6 +54,7 @@ CMDTABFN (iisize); CMDTABFN (iibaud_range); CMDTABFN (iiport); CMDTABFN (iichat); +CMDTABFN (iidebug); CMDTABFN (iicalled_login); CMDTABFN (iiproto_param); CMDTABFN (iirequest); @@ -136,8 +137,8 @@ static const struct cmdtab_offset asIcmds[] = offsetof (struct uuconf_system, uuconf_qproto_params), iiproto_param }, { "called-chat", UUCONF_CMDTABTYPE_PREFIX | 0, offsetof (struct uuconf_system, uuconf_scalled_chat), iichat }, - { "debug", UUCONF_CMDTABTYPE_STRING, - offsetof (struct uuconf_system, uuconf_zdebug), NULL }, + { "debug", UUCONF_CMDTABTYPE_FN | 0, + offsetof (struct uuconf_system, uuconf_zdebug), iidebug }, { "max-remote-debug", UUCONF_CMDTABTYPE_STRING, offsetof (struct uuconf_system, uuconf_zmax_remote_debug), NULL }, { "send-request", UUCONF_CMDTABTYPE_BOOLEAN, @@ -708,6 +709,25 @@ iichat (pglobal, argc, argv, pvar, pinfo) return iret; } +/* Local interface to the _uuconf_idebug_cmd function, which handles + the "debug" command. */ + +static int +iidebug (pglobal, argc, argv, pvar, pinfo) + pointer pglobal; + int argc; + char **argv; + pointer pvar; + pointer pinfo; +{ + struct sglobal *qglobal = (struct sglobal *) pglobal; + struct sinfo *qinfo = (struct sinfo *) pinfo; + char **pzdebug = (char **) pvar; + + return _uuconf_idebug_cmd (qglobal, pzdebug, argc, argv, + qinfo->qsys->uuconf_palloc); +} + /* Handle the "called-login" command. This only needs to be in a function because there can be additional arguments listing the remote systems which are permitted to use this login name. The diff --git a/gnu/libexec/uucp/libuuconf/tsnams.c b/gnu/libexec/uucp/libuuconf/tsnams.c index c0f96e53f611..70da76fea8bc 100644 --- a/gnu/libexec/uucp/libuuconf/tsnams.c +++ b/gnu/libexec/uucp/libuuconf/tsnams.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_tsnams_rcsid[] = "$Id: tsnams.c,v 1.1 1993/08/04 19:35:19 jtc Exp $"; +const char _uuconf_tsnams_rcsid[] = "$Id: tsnams.c,v 1.3 1994/01/30 21:14:29 ian Rel $"; #endif /* Get all the system names from the Taylor UUCP configuration files. diff --git a/gnu/libexec/uucp/libuuconf/tsys.c b/gnu/libexec/uucp/libuuconf/tsys.c index 6a1f66210927..86f8203a5e89 100644 --- a/gnu/libexec/uucp/libuuconf/tsys.c +++ b/gnu/libexec/uucp/libuuconf/tsys.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_tsys_rcsid[] = "$Id: tsys.c,v 1.1 1993/08/04 19:35:20 jtc Exp $"; +const char _uuconf_tsys_rcsid[] = "$Id: tsys.c,v 1.3 1994/01/30 21:14:29 ian Rel $"; #endif /* Get system information from the Taylor UUCP configuration files. diff --git a/gnu/libexec/uucp/libuuconf/tval.c b/gnu/libexec/uucp/libuuconf/tval.c index be8769612dd3..ba3be13909d4 100644 --- a/gnu/libexec/uucp/libuuconf/tval.c +++ b/gnu/libexec/uucp/libuuconf/tval.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_tval_rcsid[] = "$Id: tval.c,v 1.1 1993/08/04 19:35:21 jtc Exp $"; +const char _uuconf_tval_rcsid[] = "$Id: tval.c,v 1.3 1994/01/30 21:14:29 ian Rel $"; #endif /* Validate a login name for a system using Taylor UUCP configuration diff --git a/gnu/libexec/uucp/libuuconf/ugtlin.c b/gnu/libexec/uucp/libuuconf/ugtlin.c index 88ca3507384e..36a52ebe0d60 100644 --- a/gnu/libexec/uucp/libuuconf/ugtlin.c +++ b/gnu/libexec/uucp/libuuconf/ugtlin.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_ugtlin_rcsid[] = "$Id: ugtlin.c,v 1.1 1993/08/04 19:35:22 jtc Exp $"; +const char _uuconf_ugtlin_rcsid[] = "$Id: ugtlin.c,v 1.4 1994/01/30 21:14:29 ian Rel $"; #endif /* Read a line from a file with backslash continuations. This updates diff --git a/gnu/libexec/uucp/libuuconf/unk.c b/gnu/libexec/uucp/libuuconf/unk.c index 565dd270f254..2df924ecc5ee 100644 --- a/gnu/libexec/uucp/libuuconf/unk.c +++ b/gnu/libexec/uucp/libuuconf/unk.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_unk_rcsid[] = "$Id: unk.c,v 1.1 1993/08/04 19:35:22 jtc Exp $"; +const char _uuconf_unk_rcsid[] = "$Id: unk.c,v 1.3 1994/01/30 21:14:29 ian Rel $"; #endif #include <errno.h> diff --git a/gnu/libexec/uucp/libuuconf/uucnfi.h b/gnu/libexec/uucp/libuuconf/uucnfi.h index 9ce6a62dc763..98122794f104 100644 --- a/gnu/libexec/uucp/libuuconf/uucnfi.h +++ b/gnu/libexec/uucp/libuuconf/uucnfi.h @@ -1,7 +1,7 @@ /* uucnfi.h Internal header file for the uuconf package. - Copyright (C) 1992 Ian Lance Taylor + Copyright (C) 1992, 1993, 1994 Ian Lance Taylor This file is part of the Taylor UUCP uuconf library. @@ -20,7 +20,7 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ /* This is the internal header file for the uuconf package. It should @@ -80,6 +80,8 @@ struct sprocess const char *zdebug; /* The maximum number of simultaneously executing uuxqts. */ int cmaxuuxqts; + /* How often to spawn a uuxqt process. */ + const char *zrunuuxqt; /* Whether we are reading the V2 configuration files. */ boolean fv2; /* Whether we are reading the HDB configuration files. */ @@ -334,6 +336,12 @@ extern int _uuconf_itime_parse P((struct sglobal *qglobal, char *ztime, /* A grade comparison function to pass to _uuconf_itime_parse. */ extern int _uuconf_itime_grade_cmp P((long, long)); +/* Parse a debugging string. */ + +extern int _uuconf_idebug_cmd P((struct sglobal *qglobal, + char **pzdebug, int argc, + char **argv, pointer pblock)); + /* Add a string to a NULL terminated list of strings. */ extern int _uuconf_iadd_string P((struct sglobal *qglobal, char *zadd, boolean fcopy, diff --git a/gnu/libexec/uucp/libuuconf/val.c b/gnu/libexec/uucp/libuuconf/val.c index a4eb30fb67bd..76dfab3514c8 100644 --- a/gnu/libexec/uucp/libuuconf/val.c +++ b/gnu/libexec/uucp/libuuconf/val.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_val_rcsid[] = "$Id: val.c,v 1.1 1993/08/04 19:35:25 jtc Exp $"; +const char _uuconf_val_rcsid[] = "$Id: val.c,v 1.3 1994/01/30 21:14:29 ian Rel $"; #endif /* Validate a login name for a system. */ diff --git a/gnu/libexec/uucp/libuuconf/vinit.c b/gnu/libexec/uucp/libuuconf/vinit.c index 20ff5bcb1b71..3e2d507d90a8 100644 --- a/gnu/libexec/uucp/libuuconf/vinit.c +++ b/gnu/libexec/uucp/libuuconf/vinit.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_vinit_rcsid[] = "$Id: vinit.c,v 1.1 1993/08/04 19:35:25 jtc Exp $"; +const char _uuconf_vinit_rcsid[] = "$Id: vinit.c,v 1.3 1994/01/30 21:14:29 ian Rel $"; #endif #include <errno.h> diff --git a/gnu/libexec/uucp/libuuconf/vport.c b/gnu/libexec/uucp/libuuconf/vport.c index b9382a38614b..5ce283903f00 100644 --- a/gnu/libexec/uucp/libuuconf/vport.c +++ b/gnu/libexec/uucp/libuuconf/vport.c @@ -1,7 +1,7 @@ /* vport.c Find a port in the V2 configuration files. - Copyright (C) 1992 Ian Lance Taylor + Copyright (C) 1992, 1993 Ian Lance Taylor This file is part of the Taylor UUCP uuconf library. @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_vport_rcsid[] = "$Id: vport.c,v 1.1 1993/08/04 19:35:27 jtc Exp $"; +const char _uuconf_vport_rcsid[] = "$Id: vport.c,v 1.7 1994/01/30 21:14:29 ian Rel $"; #endif #include <errno.h> @@ -140,6 +140,8 @@ uuconf_v2_find_port (pglobal, zname, ibaud, ihighbaud, pifn, pinfo, qport) qport->uuconf_ttype = UUCONF_PORTTYPE_DIRECT; qport->uuconf_u.uuconf_sdirect.uuconf_zdevice = pzsplit[1]; qport->uuconf_u.uuconf_sdirect.uuconf_ibaud = ilow; + qport->uuconf_u.uuconf_sdirect.uuconf_fcarrier = FALSE; + qport->uuconf_u.uuconf_sdirect.uuconf_fhardflow = TRUE; } else { @@ -162,6 +164,7 @@ uuconf_v2_find_port (pglobal, zname, ibaud, ihighbaud, pifn, pinfo, qport) qport->uuconf_u.uuconf_smodem.uuconf_ihighbaud = ihigh; } qport->uuconf_u.uuconf_smodem.uuconf_fcarrier = TRUE; + qport->uuconf_u.uuconf_smodem.uuconf_fhardflow = TRUE; if (ctoks < 5) qport->uuconf_u.uuconf_smodem.uuconf_pzdialer = NULL; else diff --git a/gnu/libexec/uucp/libuuconf/vsinfo.c b/gnu/libexec/uucp/libuuconf/vsinfo.c index c528ce350126..ac6d3f253768 100644 --- a/gnu/libexec/uucp/libuuconf/vsinfo.c +++ b/gnu/libexec/uucp/libuuconf/vsinfo.c @@ -1,7 +1,7 @@ /* vsinfo.c Get information about a system from the V2 configuration files. - Copyright (C) 1992 Ian Lance Taylor + Copyright (C) 1992, 1993 Ian Lance Taylor This file is part of the Taylor UUCP uuconf library. @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_vsinfo_rcsid[] = "$Id: vsinfo.c,v 1.1 1993/08/04 19:35:28 jtc Exp $"; +const char _uuconf_vsinfo_rcsid[] = "$Id: vsinfo.c,v 1.10 1994/01/30 21:14:29 ian Rel $"; #endif #include <errno.h> @@ -77,7 +77,7 @@ _uuconf_iv2_system_internal (qglobal, zsystem, qsys) qglobal->ilineno = 0; - while ((cchars = getline (&zline, &cline, e)) > 0) + while ((cchars = _uuconf_getline (qglobal, &zline, &cline, e)) > 0) { int ctoks, ctimes, i; struct uuconf_system *qset; @@ -174,7 +174,7 @@ _uuconf_iv2_system_internal (qglobal, zsystem, qsys) here. */ zretry = strchr (pzsplit[1], ';'); if (zretry == NULL) - cretry = 0; + cretry = 55; else { *zretry = '\0'; @@ -212,6 +212,11 @@ _uuconf_iv2_system_internal (qglobal, zsystem, qsys) pblock); if (iret != UUCONF_SUCCESS) break; + + /* Treat any time/grade setting as both a timegrade and a + call-timegrade. */ + if (bgrade != UUCONF_GRADE_LOW) + qset->uuconf_qcalltimegrade = qset->uuconf_qtimegrade; } if (iret != UUCONF_SUCCESS) @@ -259,6 +264,7 @@ _uuconf_iv2_system_internal (qglobal, zsystem, qsys) else qset->uuconf_qport->uuconf_u.uuconf_stcp.uuconf_zport = pzsplit[3]; + qset->uuconf_qport->uuconf_u.uuconf_stcp.uuconf_pzdialer = NULL; } if (ctoks < 4) diff --git a/gnu/libexec/uucp/libuuconf/vsnams.c b/gnu/libexec/uucp/libuuconf/vsnams.c index 0bf04b581d80..a52cfcf5eb1c 100644 --- a/gnu/libexec/uucp/libuuconf/vsnams.c +++ b/gnu/libexec/uucp/libuuconf/vsnams.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_vsnams_rcsid[] = "$Id: vsnams.c,v 1.1 1993/08/04 19:35:29 jtc Exp $"; +const char _uuconf_vsnams_rcsid[] = "$Id: vsnams.c,v 1.4 1994/01/30 21:14:29 ian Rel $"; #endif #include <errno.h> diff --git a/gnu/libexec/uucp/libuuconf/vsys.c b/gnu/libexec/uucp/libuuconf/vsys.c index c0280cce3f13..4b0a68be6779 100644 --- a/gnu/libexec/uucp/libuuconf/vsys.c +++ b/gnu/libexec/uucp/libuuconf/vsys.c @@ -20,13 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. The author of the program may be contacted at ian@airs.com or - c/o Infinity Development Systems, P.O. Box 520, Waltham, MA 02254. + c/o Cygnus Support, Building 200, 1 Kendall Square, Cambridge, MA 02139. */ #include "uucnfi.h" #if USE_RCS_ID -const char _uuconf_vsys_rcsid[] = "$Id: vsys.c,v 1.1 1993/08/04 19:35:30 jtc Exp $"; +const char _uuconf_vsys_rcsid[] = "$Id: vsys.c,v 1.3 1994/01/30 21:14:29 ian Rel $"; #endif /* Get system information from the V2 configuration files. This is a |
