1999-08-28  Ulrich Drepper  <drepper@cygnus.com>

	* malloc/malloc.c (ptmalloc_init): Don't use variables to set
	thresholds for SUID binaries.  [PR libc/1277]

1999-08-28  Andreas Jaeger  <aj@arthur.rhein-neckar.de>

	* manual/install.texi (Running make install): Give examples for
	timezone and locale installation.

1999-08-28  Zack Weinberg  <zack@bitmover.com>

	* glibcbug.in: Get CCVERSION from autoconf substitution.
	* configure.in: Calculate and substitute CCVERSION.

1999-08-28  Andreas Jaeger  <aj@arthur.rhein-neckar.de>

	* sysdeps/unix/sysv/linux/mips/bits/sigaction.h: Fix sa_flags,
	partially reverting a patch from 1998-12-29.  We just can't change 
	the flags, kernels with different flags lead to
	incompatibilities.
This commit is contained in:
Ulrich Drepper 1999-08-28 22:34:29 +00:00
parent a125d9b46e
commit d01d63190b
13 changed files with 115 additions and 31 deletions

View file

@ -1,3 +1,25 @@
1999-08-28 Ulrich Drepper <drepper@cygnus.com>
* malloc/malloc.c (ptmalloc_init): Don't use variables to set
thresholds for SUID binaries. [PR libc/1277]
1999-08-28 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* manual/install.texi (Running make install): Give examples for
timezone and locale installation.
1999-08-28 Zack Weinberg <zack@bitmover.com>
* glibcbug.in: Get CCVERSION from autoconf substitution.
* configure.in: Calculate and substitute CCVERSION.
1999-08-28 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* sysdeps/unix/sysv/linux/mips/bits/sigaction.h: Fix sa_flags,
partially reverting a patch from 1998-12-29. We just can't change
the flags, kernels with different flags lead to
incompatibilities.
1999-08-26 Andreas Schwab <schwab@suse.de>
* locale/langinfo.h (YESSTR, NOSTR): Still define if __USE_GNU.

View file

@ -478,6 +478,10 @@ test -n "$aux_missing" && AC_MSG_WARN([
*** some features will be disabled.
*** Check the INSTALL file for required versions.])
# glibcbug.in wants to know the compiler version.
CCVERSION=`$CC -v 2>&1 | sed -n 's/gcc version //p'`
AC_SUBST(CCVERSION)
AC_PROG_CC_LOCAL
AC_CANONICAL_BUILD
if test $host != $build; then

View file

@ -10,6 +10,7 @@ RELEASE="@RELEASE@"
ADDONS="@subdirs@"
HOST="@host@"
CC='@CC@'
CCVERSION='@CCVERSION@'
CFLAGS="@CFLAGS@"
SYSINCLUDES="@SYSINCLUDES@"
VERSIONING="@VERSIONING@"
@ -109,7 +110,6 @@ SYSTEM=`( [ -f /bin/uname ] && /bin/uname -a ) || \
( [ -f /usr/bin/uname ] && /usr/bin/uname -a ) || echo ""`
ARCH=`[ -f /bin/arch ] && /bin/arch`
MACHINE=`[ -f /bin/machine ] && /bin/machine`
CCVERSION=`$CC -v 2>&1 | sed -n 's/gcc version //p'`
case $HOST in *linux*)
KHDRS=`(echo '#include <linux/version.h>'

View file

@ -56,6 +56,7 @@ enum
IPPROTO_MTP = 92, /* Multicast Transport Protocol. */
IPPROTO_ENCAP = 98, /* Encapsulation Header. */
IPPROTO_PIM = 103, /* Protocol Independent Multicast. */
IPPROTO_COMP = 108, /* Compression Header Protocol. */
IPPROTO_RAW = 255, /* Raw IP packets. */
IPPROTO_MAX
};

View file

@ -305,6 +305,10 @@
# include <sys/types.h>
#endif
#ifndef _LIBC
# define __secure_getenv(Str) getenv (Str)
#endif
/* Macros for handling mutexes and thread-specific data. This is
included early, because some thread-related header files (such as
pthread.h) should be included before any others. */
@ -1674,13 +1678,13 @@ ptmalloc_init __MALLOC_P((void))
thread_atfork(ptmalloc_lock_all, ptmalloc_unlock_all, ptmalloc_init_all);
#endif /* !defined NO_THREADS */
#if defined _LIBC || defined MALLOC_HOOKS
if((s = getenv("MALLOC_TRIM_THRESHOLD_")))
if((s = __secure_getenv("MALLOC_TRIM_THRESHOLD_")))
mALLOPt(M_TRIM_THRESHOLD, atoi(s));
if((s = getenv("MALLOC_TOP_PAD_")))
if((s = __secure_getenv("MALLOC_TOP_PAD_")))
mALLOPt(M_TOP_PAD, atoi(s));
if((s = getenv("MALLOC_MMAP_THRESHOLD_")))
if((s = __secure_getenv("MALLOC_MMAP_THRESHOLD_")))
mALLOPt(M_MMAP_THRESHOLD, atoi(s));
if((s = getenv("MALLOC_MMAP_MAX_")))
if((s = __secure_getenv("MALLOC_MMAP_MAX_")))
mALLOPt(M_MMAP_MAX, atoi(s));
s = getenv("MALLOC_CHECK_");
#ifndef NO_THREADS

View file

@ -17,7 +17,7 @@ access permissions and modification times.
file names.
* Accessing Directories:: Finding out what files a directory
contains.
* Working on Directory Trees:: Apply actions to all files or a selectable
* Working with Directory Trees:: Apply actions to all files or a selectable
subset of a directory hierarchy.
* Hard Links:: Adding alternate names to a file.
* Symbolic Links:: A file that ``points to'' a file name.
@ -793,7 +793,7 @@ is @math{0} or a bitwise-OR combination of any of the following values.
While traversing the directory symbolic links are not followed. Instead
symbolic links are reported using the @code{FTW_SL} value for the type
parameter to the callback function. If the file referenced by a
symbolic link does not exist {FTW_SLN} is returned instead.
symbolic link does not exist @code{FTW_SLN} is returned instead.
@item FTW_MOUNT
The callback function is only called for items which are on the same
mounted filesystem as the directory given by the @var{filename}
@ -1826,7 +1826,7 @@ main purpose is for access control.
The file owner and group play a role in determining access because the
file has one set of access permission bits for the owner, another set
that applies to users who belong to the file's group, and a third set of
bits that applies to everyone else. @xref{Access Permission} for the
bits that applies to everyone else. @xref{Access Permission}, for the
details of how access is decided based on this data.
When a file is created, its owner is set to the effective user ID of the
@ -1915,7 +1915,7 @@ The @dfn{file mode}, stored in the @code{st_mode} field of the file
attributes, contains two kinds of information: the file type code, and
the access permission bits. This section discusses only the access
permission bits, which control who can read or write the file.
@xref{Testing File Type} for information about the file type code.
@xref{Testing File Type}, for information about the file type code.
All of the symbols listed in this section are defined in the header file
@file{sys/stat.h}.

View file

@ -267,6 +267,23 @@ newer Linux kernel with the @code{devptsfs} or @code{devfs} filesystems
providing pty slaves, you don't need this program; otherwise you do.
The source for @file{pt_chown} is in @file{login/programs/pt_chown.c}.
After installation you might want to configure the timezone and locale
installation of your system. The GNU C library comes with a locale
database which gets configured with @code{localedef}. For example, to
set up a German locale with name @code{de_DE}, simply issue the command
@samp{localedef -i de_DE -f ISO-8859-1 de_DE}. To configure all locales
that are supported by glibc, you can issue from your build directory the
command @samp{make localedata/install-locales}.
To configure the locally used timezone, you can either set the @code{TZ}
environment variable. The script @code{tzselect} helps you to select
the right value. As an example for Germany, tzselect would tell you to
use @samp{TZ='Europe/Berlin'}. For a system wide installation (the
given paths are for an installation with @samp{--prefix=/usr}), link the
timezone file which is in @file{/usr/share/zoneinfo} to the file
@file{/etc/localtime}. For Germany, you might execute @samp{ln -s
/usr/share/zoneinfo/Europe/Berlin /etc/localtime}.
@node Tools for Compilation
@appendixsec Recommended Tools for Compilation
@cindex installation tools

View file

@ -17,9 +17,9 @@
@comment %**end of header (This is for running Texinfo on a region.)
@c sold 0.06/1.09, print run out 21may96
@set EDITION 0.08 DRAFT
@set VERSION 2.1 Beta
@set UPDATED 11 Jan 1999
@set EDITION 0.09 DRAFT
@set VERSION 2.2 Beta
@set UPDATED 28 Aug 1999
@set ISBN 1-882114-53-1
@ifinfo

View file

@ -914,7 +914,7 @@ selected when the program runs. If the user selects the locale
correctly there should never be a misunderstanding over the time and
date format.
@node Formatting Numbers, Locale Information, Locales
@node Formatting Numbers, , Locale Information, Locales
@section A dedicated function to format numbers
We have seen that the structure returned by @code{localeconv} as well as

View file

@ -103,7 +103,7 @@ enum __socket_type
#define AF_DECnet PF_DECnet
#define AF_NETBEUI PF_NETBEUI
#define AF_SECURITY PF_SECURITY
#define pseudo_AF_KEY PF_KEY
#define AF_KEY PF_KEY
#define AF_NETLINK PF_NETLINK
#define AF_ROUTE PF_ROUTE
#define AF_PACKET PF_PACKET
@ -192,9 +192,9 @@ enum
#define MSG_URG MSG_URG
MSG_RST = 0x1000,
#define MSG_RST MSG_RST
MSG_ERRQUEUE = 0x2000,
MSG_ERRQUEUE = 0x2000, /* Fetch message from error queue. */
#define MSG_ERRQUEUE MSG_ERRQUEUE
MSG_NOSIGNAL = 0x4000
MSG_NOSIGNAL = 0x4000 /* Do not generate SIGPIPE. */
#define MSG_NOSIGNAL MSG_NOSIGNAL
};

View file

@ -55,18 +55,20 @@ struct sigaction
};
/* Bits in `sa_flags'. */
#define SA_NOCLDSTOP 0x00020000 /* Don't send SIGCHLD when children stop. */
/* Please note that some Linux kernels versions use different values for these
flags which is a bug in those kernel versions. */
#define SA_NOCLDSTOP 0x00000001 /* Don't send SIGCHLD when children stop. */
#define SA_SIGINFO 0x00000008 /* Invoke signal-catching function with
three arguments instead of one. */
#if defined __USE_UNIX98 || defined __USE_MISC
# define SA_ONSTACK 0x00000001 /* Use signal stack by using `sa_restorer'. */
# define SA_RESETHAND 0x00000002 /* Reset to SIG_DFL on entry to handler. */
# define SA_RESTART 0x00000004 /* Restart syscall on signal return. */
# define SA_NODEFER 0x00000010 /* Don't automatically block the signal when
# define SA_ONSTACK 0x08000000 /* Use signal stack by using `sa_restorer'. */
# define SA_RESETHAND 0x80000000 /* Reset to SIG_DFL on entry to handler. */
# define SA_RESTART 0x10000000 /* Restart syscall on signal return. */
# define SA_NODEFER 0x40000000 /* Don't automatically block the signal when
its handler is being executed. */
#endif
#ifdef __USE_MISC
# define SA_INTERRUPT 0x01000000 /* Historical no-op. */
# define SA_INTERRUPT 0x20000000 /* Historical no-op. */
/* Some aliases for the SA_ constants. */
# define SA_NOMASK SA_NODEFER

View file

@ -82,6 +82,7 @@ enum __socket_type
#define PF_ECONET 19 /* Acorn Econet. */
#define PF_ATMSVC 20 /* ATM SVCs. */
#define PF_SNA 22 /* Linux SNA Project */
#define PF_IRDA 23 /* IRDA sockets. */
#define PF_MAX 32 /* For now.. */
/* Address families. */
@ -102,7 +103,7 @@ enum __socket_type
#define AF_DECnet PF_DECnet
#define AF_NETBEUI PF_NETBEUI
#define AF_SECURITY PF_SECURITY
#define pseudo_AF_KEY PF_KEY
#define AF_KEY PF_KEY
#define AF_NETLINK PF_NETLINK
#define AF_ROUTE PF_ROUTE
#define AF_PACKET PF_PACKET
@ -110,6 +111,7 @@ enum __socket_type
#define AF_ECONET PF_ECONET
#define AF_ATMSVC PF_ATMSVC
#define AF_SNA PF_SNA
#define AF_IRDA PF_IRDA
#define AF_MAX PF_MAX
/* Socket level values. Others are defined in the appropriate headers.
@ -119,6 +121,10 @@ enum __socket_type
#define SOL_RAW 255
#define SOL_DECNET 261
#define SOL_X25 262
#define SOL_PACKET 263
#define SOL_ATM 264 /* ATM layer (cell level). */
#define SOL_AAL 265 /* ATM Adaption Layer (packet level). */
#define SOL_IRDA 266
/* Maximum queue length specifiable by listen. */
#define SOMAXCONN 128
@ -137,17 +143,17 @@ struct sockaddr
/* Structure large enough to hold any socket address (with the historical
exception of AF_UNIX). We reserve 128 bytes. */
#if ULONG_MAX > 0xffffffff
# define __ss_align __uint64_t
# define __ss_aligntype __uint64_t
#else
# define __ss_align __uint32_t
# define __ss_aligntype __uint32_t
#endif
#define _SS_SIZE 128
#define _SS_PADSIZE (_SS_SIZE - (2 * sizeof(__ss_align)))
#define _SS_PADSIZE (_SS_SIZE - (2 * sizeof (__ss_aligntype)))
struct sockaddr_storage
{
__SOCKADDR_COMMON (__ss_); /* Address family, etc. */
__ss_align __ss_align; /* Force desired alignment. */
__ss_aligntype __ss_align; /* Force desired alignment. */
char __ss_padding[_SS_PADSIZE];
};
@ -161,10 +167,35 @@ enum
#define MSG_PEEK MSG_PEEK
MSG_DONTROUTE = 0x04, /* Don't use local routing. */
#define MSG_DONTROUTE MSG_DONTROUTE
#ifdef __USE_GNU
/* DECnet uses a different name. */
MSG_TRYHARD = MSG_DONTROUTE,
# define MSG_TRYHARD MSG_DONTROUTE
#endif
MSG_CTRUNC = 0x08, /* Control data lost before delivery. */
#define MSG_CTRUNC MSG_CTRUNC
MSG_PROXY = 0x10 /* Supply or ask second address. */
MSG_PROXY = 0x10, /* Supply or ask second address. */
#define MSG_PROXY MSG_PROXY
MSG_TRUNC = 0x20,
#define MSG_TRUNC MSG_TRUNC
MSG_DONTWAIT = 0x40, /* Nonblocking IO. */
#define MSG_DONTWAIT MSG_DONTWAIT
MSG_EOR = 0x80, /* End of record. */
#define MSG_EOR MSG_EOR
MSG_WAITALL = 0x100, /* Wait for a full request. */
#define MSG_WAITALL MSG_WAITALL
MSG_FIN = 0x200,
#define MSG_FIN MSG_FIN
MSG_SYN = 0x400,
#define MSG_SYN MSG_SYN
MSG_URG = 0x800,
#define MSG_URG MSG_URG
MSG_RST = 0x1000,
#define MSG_RST MSG_RST
MSG_ERRQUEUE = 0x2000, /* Fetch message from error queue. */
#define MSG_ERRQUEUE MSG_ERRQUEUE
MSG_NOSIGNAL = 0x4000 /* Do not generate SIGPIPE. */
#define MSG_NOSIGNAL MSG_NOSIGNAL
};
@ -224,7 +255,7 @@ __cmsg_nxthdr (struct msghdr *__mhdr, struct cmsghdr *__cmsg) __THROW
{
if ((size_t) __cmsg->cmsg_len < sizeof (struct cmsghdr))
/* The kernel header does this so there may be a reason. */
return NULL;
return 0;
__cmsg = (struct cmsghdr *) ((unsigned char *) __cmsg
+ CMSG_ALIGN (__cmsg->cmsg_len));
@ -233,7 +264,7 @@ __cmsg_nxthdr (struct msghdr *__mhdr, struct cmsghdr *__cmsg) __THROW
|| ((unsigned char *) __cmsg + CMSG_ALIGN (__cmsg->cmsg_len)
>= ((unsigned char *) __mhdr->msg_control + __mhdr->msg_controllen)))
/* No more entries. */
return NULL;
return 0;
return __cmsg;
}
#endif /* Use `extern inline'. */

View file

@ -1,5 +1,5 @@
/* Definitions for use with Linux AF_PACKET sockets.
Copyright (C) 1998 Free Software Foundation, Inc.
Copyright (C) 1998, 1999 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@ -45,6 +45,9 @@ struct sockaddr_ll
#define PACKET_ADD_MEMBERSHIP 1
#define PACKET_DROP_MEMBERSHIP 2
#define PACKET_RECV_OUTPUT 3
#define PACKET_RX_RING 5
#define PACKET_STATISTICS 6
struct packet_mreq
{