mirror of
https://sourceware.org/git/glibc.git
synced 2024-11-23 09:43:32 +08:00
Update.
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:
parent
a125d9b46e
commit
d01d63190b
22
ChangeLog
22
ChangeLog
@ -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.
|
||||
|
@ -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
|
||||
|
@ -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>'
|
||||
|
@ -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
|
||||
};
|
||||
|
@ -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
|
||||
|
@ -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}.
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
};
|
||||
|
||||
|
@ -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
|
||||
|
@ -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'. */
|
||||
|
@ -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
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user