From b8fe19fa809ac786b7d3dbb464cb1b3f887dc69d Mon Sep 17 00:00:00 2001 From: Roland McGrath Date: Wed, 22 May 1996 02:11:55 +0000 Subject: Wed May 22 01:48:54 1996 Ulrich Drepper * stdlib/strtol.c [!QUAD] (ULONG_MAX, LONG_MAX): Define these macros if they are not available. (WEAKNAME): New macro to declare argument as weak. Define function with __ prefix and add normal name as weak alias. * sysdeps/posix/euidaccess.c (S_IROTH, S_IWOTH, S_IXOTH): Defines these macros if not already available based on R_OK, W_OK, and X_OK. Tue May 21 18:48:46 1996 Roland McGrath * misc/sys/syslog.h (__need___va_list): Define this instead of __need_va_list before including . * Makerules (o-iterator): Use $(object-suffixes-left) instead of $(object-suffixes) to produce repetitions; this is used for other lists than just that one. [versioned]: Use $(o-iterator) properly. * sysdeps/unix/sysv/linux/Implies: Include `gnu'. * sysdeps/mach/hurd/Implies: Likewise. Sat May 18 02:57:46 1996 Ulrich Drepper * login/Makefile: New file. This directory contains functions for user administration. * Makefile (subdirs): Add login. * misc/Makefile (headers): Remove utmp.h. Now in login/utmp.h. (extra-libs, libutil-routines): Ditto. * misc/login.c, misc/login_tty.c, misc/logout.c, misc/logwtmp.c, misc/utmp.h: Moved to misc/. * login/login.c, login/login_tty.c, login/logout.c, login/logwtmp.c, login/utmp.h: Moved to here from misc/. * login/utmp.h: Split file. Definitions of data structures and constants are now in the system dependent utmpbits.h file. * login/setutent_r.c, login/setutent.c, login/endutent_r.c, login/endutent.c, login/getutent_r.c, login/getutent.c, login/getutid_r.c, login/getutid.c, login/getutline_r.c, login/getutline.c, login/pututline_r.c, login/pututline.c: New files. Routines to handle utmp-style files. * sysdeps/gnu/utmpbits.h: New file. Contains GNU/Linux specific definitions of utmp data structures and constants. * sysdeps/unix/sysv/utmpbits.h: Renamed from sysdeps/unix/sysv/utmp.h. * sysdeps/generic/utmpbits.h: New file. Generic (BSDish) version of definitions of utmp data structures and constants. Fri May 17 00:01:31 1996 Ulrich Drepper * locale/C-monetary.c: Default value for mon_decimal_point should be '.'. * stdio-common/printf.h: Remove Linux libc compatibility stuff. Add `extra' flag. Currently used in __printf_fp. * stdio-common/printf_fp.c (__guess_grouping): Renamed from `guess_grouping' and extend visibility to extern. This function is now used in `strfmon'. (__printf_fp): Recognize new bit flag in info struct. This triggers to use the grouping information and decimal point from the LC_MONETARY category instead of the LC_NUMERIC category. * stdio-common/vfprintf.c (process_arg): Correct major bug. In `complicated' loop we must not use the varargs because the args are already available in the ARGS_VALUE array. * stdlib/Makefile (headers): Add monetary.h. (routines): Add strfmon. * stdlib/monetary.h: New file. Header for strfmon function. * stdlib/strfmon.c: New file. Implement strfmon function to print monetary amounts according to current locale's rules. * sysdeps/unix/sysv/linux/i386/sys/vm86.h: The kernel header is now (>= Linux-1.3.100) called . --- misc/Makefile | 8 ++---- misc/login.c | 63 ------------------------------------------- misc/login_tty.c | 75 --------------------------------------------------- misc/logout.c | 72 ------------------------------------------------- misc/logwtmp.c | 67 --------------------------------------------- misc/utmp.h | 82 -------------------------------------------------------- 6 files changed, 2 insertions(+), 365 deletions(-) delete mode 100644 misc/login.c delete mode 100644 misc/login_tty.c delete mode 100644 misc/logout.c delete mode 100644 misc/logwtmp.c delete mode 100644 misc/utmp.h (limited to 'misc') diff --git a/misc/Makefile b/misc/Makefile index db08014d78..b36e46f09a 100644 --- a/misc/Makefile +++ b/misc/Makefile @@ -25,8 +25,8 @@ subdir := misc headers := sys/uio.h iovec.h sys/ioctl.h sys/ptrace.h ioctls.h sys/file.h\ a.out.h nlist.h stab.h stab.def sgtty.h sys/dir.h sys/cdefs.h \ ttyent.h syscall.h syslog.h sys/syslog.h paths.h sys/reboot.h \ - sys/mman.h sys/param.h fstab.h mntent.h search.h utmp.h \ - err.h error.h sys/queue.h sysexits.h + sys/mman.h sys/param.h fstab.h mntent.h search.h err.h error.h\ + sys/queue.h sysexits.h routines := brk sbrk sstk ioctl \ readv writev \ @@ -60,10 +60,6 @@ install-lib := libbsd-compat.a libg.a non-lib.a := libbsd-compat.a gpl2lgpl := error.c error.h -# Build the -lutil library with these extra functions. -extra-libs := libutil -libutil-routines:= login login_tty logout logwtmp pty - include ../Rules diff --git a/misc/login.c b/misc/login.c deleted file mode 100644 index 5b71082c52..0000000000 --- a/misc/login.c +++ /dev/null @@ -1,63 +0,0 @@ -/* - * Copyright (c) 1988, 1993 - * The Regents of the University of California. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ - -#if defined(LIBC_SCCS) && !defined(lint) -static char sccsid[] = "@(#)login.c 8.1 (Berkeley) 6/4/93"; -#endif /* LIBC_SCCS and not lint */ - -#include - -#include -#include -#include -#include -#include - -void -login(ut) - const struct utmp *ut; -{ - register int fd; - int tty; - - tty = ttyslot(); - if (tty > 0 && (fd = open(_PATH_UTMP, O_WRONLY|O_CREAT, 0644)) >= 0) { - (void)lseek(fd, (off_t)(tty * sizeof(struct utmp)), L_SET); - (void)write(fd, ut, sizeof(struct utmp)); - (void)close(fd); - } - if ((fd = open(_PATH_WTMP, O_WRONLY|O_APPEND, 0)) >= 0) { - (void)write(fd, ut, sizeof(struct utmp)); - (void)close(fd); - } -} diff --git a/misc/login_tty.c b/misc/login_tty.c deleted file mode 100644 index e4e075c6ed..0000000000 --- a/misc/login_tty.c +++ /dev/null @@ -1,75 +0,0 @@ -/*- - * Copyright (c) 1990, 1993 - * The Regents of the University of California. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ - -#if defined(LIBC_SCCS) && !defined(lint) -static char sccsid[] = "@(#)login_tty.c 8.1 (Berkeley) 6/4/93"; -#endif /* LIBC_SCCS and not lint */ - -#include -#include -#include -#include - -int -login_tty(fd) - int fd; -{ - (void) setsid(); -#ifdef TIOCSCTTY - if (ioctl(fd, TIOCSCTTY, (char *)NULL) == -1) - return (-1); -#else - { - /* This might work. */ - char *fdname = ttyname (fd); - int newfd; - if (fdname) - { - if (fd != 0) - (void) close (0); - if (fd != 1) - (void) close (1); - if (fd != 2) - (void) close (2); - newfd = open (fdname, O_RDWR); - (void) close (newfd); - } - } -#endif - (void) dup2(fd, 0); - (void) dup2(fd, 1); - (void) dup2(fd, 2); - if (fd > 2) - (void) close(fd); - return (0); -} diff --git a/misc/logout.c b/misc/logout.c deleted file mode 100644 index 40ae25456f..0000000000 --- a/misc/logout.c +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Copyright (c) 1988, 1993 - * The Regents of the University of California. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ - -#if defined(LIBC_SCCS) && !defined(lint) -static char sccsid[] = "@(#)logout.c 8.1 (Berkeley) 6/4/93"; -#endif /* LIBC_SCCS and not lint */ - -#include -#include - -#include -#include -#include -#include -#include - -typedef struct utmp UTMP; - -int -logout(line) - register const char *line; -{ - register int fd; - UTMP ut; - int rval; - - if ((fd = open(_PATH_UTMP, O_RDWR, 0)) < 0) - return(0); - rval = 0; - while (read(fd, &ut, sizeof(UTMP)) == sizeof(UTMP)) { - if (!ut.ut_name[0] || strncmp(ut.ut_line, line, UT_LINESIZE)) - continue; - bzero(ut.ut_name, UT_NAMESIZE); - bzero(ut.ut_host, UT_HOSTSIZE); - (void)time(&ut.ut_time); - (void)lseek(fd, -(off_t)sizeof(UTMP), L_INCR); - (void)write(fd, &ut, sizeof(UTMP)); - rval = 1; - } - (void)close(fd); - return(rval); -} diff --git a/misc/logwtmp.c b/misc/logwtmp.c deleted file mode 100644 index 7734ca9624..0000000000 --- a/misc/logwtmp.c +++ /dev/null @@ -1,67 +0,0 @@ -/* - * Copyright (c) 1988, 1993 - * The Regents of the University of California. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ - -#if defined(LIBC_SCCS) && !defined(lint) -static char sccsid[] = "@(#)logwtmp.c 8.1 (Berkeley) 6/4/93"; -#endif /* LIBC_SCCS and not lint */ - -#include -#include -#include -#include -#include - -#include -#include - -void -logwtmp(line, name, host) - const char *line, *name, *host; -{ - struct utmp ut; - struct stat buf; - int fd; - - if ((fd = open(_PATH_WTMP, O_WRONLY|O_APPEND, 0)) < 0) - return; - if (fstat(fd, &buf) == 0) { - (void) strncpy(ut.ut_line, line, sizeof(ut.ut_line)); - (void) strncpy(ut.ut_name, name, sizeof(ut.ut_name)); - (void) strncpy(ut.ut_host, host, sizeof(ut.ut_host)); - (void) time(&ut.ut_time); - if (write(fd, (char *)&ut, sizeof(struct utmp)) != - sizeof(struct utmp)) - (void) ftruncate(fd, buf.st_size); - } - (void) close(fd); -} diff --git a/misc/utmp.h b/misc/utmp.h deleted file mode 100644 index cfd9438f5f..0000000000 --- a/misc/utmp.h +++ /dev/null @@ -1,82 +0,0 @@ -/* - * Copyright (c) 1988, 1993 - * The Regents of the University of California. All rights reserved. - * (c) UNIX System Laboratories, Inc. - * All or some portions of this file are derived from material licensed - * to the University of California by American Telephone and Telegraph - * Co. or Unix System Laboratories, Inc. and are reproduced herein with - * the permission of UNIX System Laboratories, Inc. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * @(#)utmp.h 8.2 (Berkeley) 1/21/94 - */ - -#ifndef _UTMP_H_ -#define _UTMP_H_ - -#include - -#define _PATH_UTMP "/var/run/utmp" -#define _PATH_WTMP "/var/log/wtmp" -#define _PATH_LASTLOG "/var/log/lastlog" - -#define UT_NAMESIZE 8 -#define UT_LINESIZE 8 -#define UT_HOSTSIZE 16 - -__BEGIN_DECLS - -struct lastlog { - time_t ll_time; - char ll_line[UT_LINESIZE]; - char ll_host[UT_HOSTSIZE]; -}; - -struct utmp { - char ut_line[UT_LINESIZE]; - char ut_name[UT_NAMESIZE]; - char ut_host[UT_HOSTSIZE]; - long ut_time; -}; - - -/* Write the given entry into utmp and wtmp. */ -extern void login __P ((const struct utmp *)); - -/* Write the utmp entry to say the user on UT_LINE has logged out. */ -extern int logout __P ((const char *ut_line)); - -/* Append to wtmp an entry for the current time and the given info. */ -extern void logwtmp __P ((const char *ut_line, const char *ut_name, - const char *ut_host)); - -__END_DECLS - -#endif /* !_UTMP_H_ */ -- cgit v1.2.3-65-gdbad