summaryrefslogtreecommitdiff
path: root/sysdeps/gnu
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps/gnu')
-rw-r--r--sysdeps/gnu/Makefile2
-rw-r--r--sysdeps/gnu/bits/ipc.h2
-rw-r--r--sysdeps/gnu/bits/msq.h6
-rw-r--r--sysdeps/gnu/bits/sem.h2
-rw-r--r--sysdeps/gnu/bits/shm.h6
-rw-r--r--sysdeps/gnu/bits/utmp.h15
-rw-r--r--sysdeps/gnu/bits/utmpx.h4
-rw-r--r--sysdeps/gnu/configure4
-rw-r--r--sysdeps/gnu/errlist-compat.awk2
-rw-r--r--sysdeps/gnu/errlist.awk23
-rw-r--r--sysdeps/gnu/errlist.c114
-rw-r--r--sysdeps/gnu/getutmp.c2
-rw-r--r--sysdeps/gnu/glob-lstat-compat.c38
-rw-r--r--sysdeps/gnu/glob64-lstat-compat.c48
-rw-r--r--sysdeps/gnu/glob64.c10
-rw-r--r--sysdeps/gnu/globfree64.c10
-rw-r--r--sysdeps/gnu/ifaddrs.c4
-rw-r--r--sysdeps/gnu/ldsodefs.h2
-rw-r--r--sysdeps/gnu/net/if.h2
-rw-r--r--sysdeps/gnu/netinet/ip_icmp.h58
-rw-r--r--sysdeps/gnu/netinet/tcp.h187
-rw-r--r--sysdeps/gnu/netinet/udp.h23
-rw-r--r--sysdeps/gnu/siglist.c2
-rw-r--r--sysdeps/gnu/sys/mtio.h2
-rw-r--r--sysdeps/gnu/unwind-resume.c5
-rw-r--r--sysdeps/gnu/updwtmp.c2
-rw-r--r--sysdeps/gnu/utmp_file.c2
-rw-r--r--sysdeps/gnu/utmpx.h2
28 files changed, 341 insertions, 238 deletions
diff --git a/sysdeps/gnu/Makefile b/sysdeps/gnu/Makefile
index c135ca9c36..ae0c3fc0aa 100644
--- a/sysdeps/gnu/Makefile
+++ b/sysdeps/gnu/Makefile
@@ -1,4 +1,4 @@
-# Copyright (C) 1996-2016 Free Software Foundation, Inc.
+# Copyright (C) 1996-2018 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
diff --git a/sysdeps/gnu/bits/ipc.h b/sysdeps/gnu/bits/ipc.h
index c28b4e8207..8ca9d59d34 100644
--- a/sysdeps/gnu/bits/ipc.h
+++ b/sysdeps/gnu/bits/ipc.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 1995-2016 Free Software Foundation, Inc.
+/* Copyright (C) 1995-2018 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
diff --git a/sysdeps/gnu/bits/msq.h b/sysdeps/gnu/bits/msq.h
index 8fc484f43d..0a4a67d5e9 100644
--- a/sysdeps/gnu/bits/msq.h
+++ b/sysdeps/gnu/bits/msq.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 1995-2016 Free Software Foundation, Inc.
+/* Copyright (C) 1995-2018 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
@@ -43,8 +43,8 @@ struct msqid_ds
__time_t msg_stime; /* time of last msgsnd command */
__time_t msg_rtime; /* time of last msgrcv command */
__time_t msg_ctime; /* time of last change */
- struct wait_queue *__wwait; /* ??? */
- struct wait_queue *__rwait; /* ??? */
+ struct __wait_queue *__wwait; /* ??? */
+ struct __wait_queue *__rwait; /* ??? */
unsigned short int __msg_cbytes;/* current number of bytes on queue */
msgqnum_t msg_qnum; /* number of messages currently on queue */
msglen_t msg_qbytes; /* max number of bytes allowed on queue */
diff --git a/sysdeps/gnu/bits/sem.h b/sysdeps/gnu/bits/sem.h
index e24452e0b1..3c88176dfc 100644
--- a/sysdeps/gnu/bits/sem.h
+++ b/sysdeps/gnu/bits/sem.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 1995-2016 Free Software Foundation, Inc.
+/* Copyright (C) 1995-2018 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
diff --git a/sysdeps/gnu/bits/shm.h b/sysdeps/gnu/bits/shm.h
index f5e139f11c..895c49b269 100644
--- a/sysdeps/gnu/bits/shm.h
+++ b/sysdeps/gnu/bits/shm.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 1995-2016 Free Software Foundation, Inc.
+/* Copyright (C) 1995-2018 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
@@ -49,7 +49,7 @@ typedef unsigned short int shmatt_t;
struct shmid_ds
{
struct ipc_perm shm_perm; /* operation permission struct */
- int shm_segsz; /* size of segment in bytes */
+ size_t shm_segsz; /* size of segment in bytes */
__time_t shm_atime; /* time of last shmat() */
__time_t shm_dtime; /* time of last shmdt() */
__time_t shm_ctime; /* time of last change by shmctl() */
@@ -58,7 +58,7 @@ struct shmid_ds
shmatt_t shm_nattch; /* number of current attaches */
unsigned short int __shm_npages; /* size of segment (pages) */
unsigned long int *__shm_pages; /* array of ptrs to frames -> SHMMAX */
- struct vm_area_struct *__attaches; /* descriptors for attaches */
+ struct __vm_area_struct *__attaches; /* descriptors for attaches */
};
#ifdef __USE_MISC
diff --git a/sysdeps/gnu/bits/utmp.h b/sysdeps/gnu/bits/utmp.h
index 2a1ffcbf6f..47a6082eac 100644
--- a/sysdeps/gnu/bits/utmp.h
+++ b/sysdeps/gnu/bits/utmp.h
@@ -1,5 +1,5 @@
/* The `struct utmp' type, describing entries in the utmp file. GNU version.
- Copyright (C) 1993-2016 Free Software Foundation, Inc.
+ Copyright (C) 1993-2018 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
@@ -35,7 +35,7 @@
previous logins. */
struct lastlog
{
-#ifdef __WORDSIZE_TIME64_COMPAT32
+#if __WORDSIZE_TIME64_COMPAT32
int32_t ll_time;
#else
__time_t ll_time;
@@ -59,16 +59,19 @@ struct utmp
{
short int ut_type; /* Type of login. */
pid_t ut_pid; /* Process ID of login process. */
- char ut_line[UT_LINESIZE]; /* Devicename. */
+ char ut_line[UT_LINESIZE]
+ __attribute_nonstring__; /* Devicename. */
char ut_id[4]; /* Inittab ID. */
- char ut_user[UT_NAMESIZE]; /* Username. */
- char ut_host[UT_HOSTSIZE]; /* Hostname for remote login. */
+ char ut_user[UT_NAMESIZE]
+ __attribute_nonstring__; /* Username. */
+ char ut_host[UT_HOSTSIZE]
+ __attribute_nonstring__; /* Hostname for remote login. */
struct exit_status ut_exit; /* Exit status of a process marked
as DEAD_PROCESS. */
/* The ut_session and ut_tv fields must be the same size when compiled
32- and 64-bit. This allows data files and shared memory to be
shared between 32- and 64-bit applications. */
-#ifdef __WORDSIZE_TIME64_COMPAT32
+#if __WORDSIZE_TIME64_COMPAT32
int32_t ut_session; /* Session ID, used for windowing. */
struct
{
diff --git a/sysdeps/gnu/bits/utmpx.h b/sysdeps/gnu/bits/utmpx.h
index b41548b24c..2a77efc607 100644
--- a/sysdeps/gnu/bits/utmpx.h
+++ b/sysdeps/gnu/bits/utmpx.h
@@ -1,5 +1,5 @@
/* Structures and definitions for the user accounting database. GNU version.
- Copyright (C) 1997-2016 Free Software Foundation, Inc.
+ Copyright (C) 1997-2018 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
@@ -66,7 +66,7 @@ struct utmpx
/* The fields ut_session and ut_tv must be the same size when compiled
32- and 64-bit. This allows files and shared memory to be shared
between 32- and 64-bit applications. */
-#ifdef __WORDSIZE_TIME64_COMPAT32
+#if __WORDSIZE_TIME64_COMPAT32
__int32_t ut_session; /* Session ID, used for windowing. */
struct
{
diff --git a/sysdeps/gnu/configure b/sysdeps/gnu/configure
index 71243ad0c6..c15d1087e8 100644
--- a/sysdeps/gnu/configure
+++ b/sysdeps/gnu/configure
@@ -9,8 +9,8 @@
test -n "$libc_cv_slibdir" ||
case "$prefix" in
/usr | /usr/)
- libc_cv_slibdir=/lib
- libc_cv_rtlddir=/lib
+ libc_cv_slibdir='/lib'
+ libc_cv_rtlddir='/lib'
if test "$libdir" = '${exec_prefix}/lib'; then
libdir='${exec_prefix}/lib';
# Locale data can be shared between 32-bit and 64-bit libraries.
diff --git a/sysdeps/gnu/errlist-compat.awk b/sysdeps/gnu/errlist-compat.awk
index 202de93cc5..ba1257ffab 100644
--- a/sysdeps/gnu/errlist-compat.awk
+++ b/sysdeps/gnu/errlist-compat.awk
@@ -1,5 +1,5 @@
# awk script to generate errlist-compat.c
-# Copyright (C) 2002-2016 Free Software Foundation, Inc.
+# Copyright (C) 2002-2018 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
diff --git a/sysdeps/gnu/errlist.awk b/sysdeps/gnu/errlist.awk
index 19bd676a90..9a5adf86a6 100644
--- a/sysdeps/gnu/errlist.awk
+++ b/sysdeps/gnu/errlist.awk
@@ -1,4 +1,4 @@
-# Copyright (C) 1991-2016 Free Software Foundation, Inc.
+# Copyright (C) 1991-2018 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
@@ -16,10 +16,8 @@
# <http://www.gnu.org/licenses/>.
# errno.texi contains lines like:
-# @comment errno.h
-# @comment POSIX.1: Function not implemented
# @deftypevr Macro int ENOSYS
-# @comment errno 78
+# @errno{ENOSYS, 78, Function not implemented}
# Descriptive paragraph...
# @end deftypevr
@@ -61,22 +59,14 @@ BEGIN {
print " [0] = N_(\"Success\"),"
}
-$1 == "@comment" && $2 == "errno.h" { errnoh=1; next }
-errnoh == 1 && $1 == "@comment" \
+/^@errno\{/ \
{
- ++errnoh;
etext = $3;
for (i = 4; i <= NF; ++i)
etext = etext " " $i;
- next;
- }
-errnoh == 2 && $1 == "@deftypevr" && $2 == "Macro" && $3 == "int" \
- {
- e = $4; errnoh++; next;
- }
-errnoh == 3 && $1 == "@comment" && $2 == "errno" \
- {
- errno = $3 + 0;
+ etext = substr(etext, 1, length(etext)-1)
+ e = substr($1, 8, length($1)-8)
+ errno = substr($2, 1, length($2)-1) + 0
if (alias[e])
printf "#if defined (%s) && %s != %s\n", e, e, alias[e];
else
@@ -102,7 +92,6 @@ errnoh == 4 \
# This magic tag in C comments gets them copied into libc.pot.
desc = desc "\nTRANS" ($0 != "" ? " " : "") $0; next
}
-{ errnoh=0 }
END {
print " };";
print "";
diff --git a/sysdeps/gnu/errlist.c b/sysdeps/gnu/errlist.c
index a9a5960503..31ebfa9491 100644
--- a/sysdeps/gnu/errlist.c
+++ b/sysdeps/gnu/errlist.c
@@ -21,7 +21,7 @@ const char *const _sys_errlist_internal[ERRLIST_SIZE] =
[0] = N_("Success"),
#ifdef EPERM
/*
-TRANS Operation not permitted; only the owner of the file (or other resource)
+TRANS Only the owner of the file (or other resource)
TRANS or processes with special privileges can perform the operation. */
[ERR_REMAP (EPERM)] = N_("Operation not permitted"),
# if EPERM > ERR_MAX
@@ -31,7 +31,7 @@ TRANS or processes with special privileges can perform the operation. */
#endif
#ifdef ENOENT
/*
-TRANS No such file or directory. This is a ``file doesn't exist'' error
+TRANS This is a ``file doesn't exist'' error
TRANS for ordinary files that are referenced in contexts where they are
TRANS expected to already exist. */
[ERR_REMAP (ENOENT)] = N_("No such file or directory"),
@@ -51,7 +51,7 @@ TRANS No process matches the specified process ID. */
#endif
#ifdef EINTR
/*
-TRANS Interrupted function call; an asynchronous signal occurred and prevented
+TRANS An asynchronous signal occurred and prevented
TRANS completion of the call. When this happens, you should try the call
TRANS again.
TRANS
@@ -66,7 +66,7 @@ TRANS Primitives}. */
#endif
#ifdef EIO
/*
-TRANS Input/output error; usually used for physical read or write errors. */
+TRANS Usually used for physical read or write errors. */
[ERR_REMAP (EIO)] = N_("Input/output error"),
# if EIO > ERR_MAX
# undef ERR_MAX
@@ -75,7 +75,7 @@ TRANS Input/output error; usually used for physical read or write errors. */
#endif
#ifdef ENXIO
/*
-TRANS No such device or address. The system tried to use the device
+TRANS The system tried to use the device
TRANS represented by a file you specified, and it couldn't find the device.
TRANS This can mean that the device file was installed incorrectly, or that
TRANS the physical device is missing or not correctly attached to the
@@ -88,7 +88,7 @@ TRANS computer. */
#endif
#ifdef E2BIG
/*
-TRANS Argument list too long; used when the arguments passed to a new program
+TRANS Used when the arguments passed to a new program
TRANS being executed with one of the @code{exec} functions (@pxref{Executing a
TRANS File}) occupy too much memory space. This condition never arises on
TRANS @gnuhurdsystems{}. */
@@ -110,7 +110,7 @@ TRANS @code{exec} functions; see @ref{Executing a File}. */
#endif
#ifdef EBADF
/*
-TRANS Bad file descriptor; for example, I/O on a descriptor that has been
+TRANS For example, I/O on a descriptor that has been
TRANS closed or reading from a descriptor open only for writing (or vice
TRANS versa). */
[ERR_REMAP (EBADF)] = N_("Bad file descriptor"),
@@ -121,7 +121,7 @@ TRANS versa). */
#endif
#ifdef ECHILD
/*
-TRANS There are no child processes. This error happens on operations that are
+TRANS This error happens on operations that are
TRANS supposed to manipulate child processes, when there aren't any processes
TRANS to manipulate. */
[ERR_REMAP (ECHILD)] = N_("No child processes"),
@@ -132,7 +132,7 @@ TRANS to manipulate. */
#endif
#ifdef EDEADLK
/*
-TRANS Deadlock avoided; allocating a system resource would have resulted in a
+TRANS Allocating a system resource would have resulted in a
TRANS deadlock situation. The system does not guarantee that it will notice
TRANS all such situations. This error means you got lucky and the system
TRANS noticed; it might just hang. @xref{File Locks}, for an example. */
@@ -144,7 +144,7 @@ TRANS noticed; it might just hang. @xref{File Locks}, for an example. */
#endif
#ifdef ENOMEM
/*
-TRANS No memory available. The system cannot allocate more virtual memory
+TRANS The system cannot allocate more virtual memory
TRANS because its capacity is full. */
[ERR_REMAP (ENOMEM)] = N_("Cannot allocate memory"),
# if ENOMEM > ERR_MAX
@@ -154,7 +154,7 @@ TRANS because its capacity is full. */
#endif
#ifdef EACCES
/*
-TRANS Permission denied; the file permissions do not allow the attempted operation. */
+TRANS The file permissions do not allow the attempted operation. */
[ERR_REMAP (EACCES)] = N_("Permission denied"),
# if EACCES > ERR_MAX
# undef ERR_MAX
@@ -163,7 +163,7 @@ TRANS Permission denied; the file permissions do not allow the attempted operati
#endif
#ifdef EFAULT
/*
-TRANS Bad address; an invalid pointer was detected.
+TRANS An invalid pointer was detected.
TRANS On @gnuhurdsystems{}, this error never happens; you get a signal instead. */
[ERR_REMAP (EFAULT)] = N_("Bad address"),
# if EFAULT > ERR_MAX
@@ -184,7 +184,7 @@ TRANS system in Unix gives this error. */
#endif
#ifdef EBUSY
/*
-TRANS Resource busy; a system resource that can't be shared is already in use.
+TRANS A system resource that can't be shared is already in use.
TRANS For example, if you try to delete a file that is the root of a currently
TRANS mounted filesystem, you get this error. */
[ERR_REMAP (EBUSY)] = N_("Device or resource busy"),
@@ -195,7 +195,7 @@ TRANS mounted filesystem, you get this error. */
#endif
#ifdef EEXIST
/*
-TRANS File exists; an existing file was specified in a context where it only
+TRANS An existing file was specified in a context where it only
TRANS makes sense to specify a new file. */
[ERR_REMAP (EEXIST)] = N_("File exists"),
# if EEXIST > ERR_MAX
@@ -235,7 +235,7 @@ TRANS A file that isn't a directory was specified when a directory is required.
#endif
#ifdef EISDIR
/*
-TRANS File is a directory; you cannot open a directory for writing,
+TRANS You cannot open a directory for writing,
TRANS or create or remove hard links to it. */
[ERR_REMAP (EISDIR)] = N_("Is a directory"),
# if EISDIR > ERR_MAX
@@ -245,7 +245,7 @@ TRANS or create or remove hard links to it. */
#endif
#ifdef EINVAL
/*
-TRANS Invalid argument. This is used to indicate various kinds of problems
+TRANS This is used to indicate various kinds of problems
TRANS with passing the wrong argument to a library function. */
[ERR_REMAP (EINVAL)] = N_("Invalid argument"),
# if EINVAL > ERR_MAX
@@ -304,7 +304,7 @@ TRANS is not an error on @gnuhurdsystems{}; the text is copied as necessary. */
#endif
#ifdef EFBIG
/*
-TRANS File too big; the size of a file would be larger than allowed by the system. */
+TRANS The size of a file would be larger than allowed by the system. */
[ERR_REMAP (EFBIG)] = N_("File too large"),
# if EFBIG > ERR_MAX
# undef ERR_MAX
@@ -313,7 +313,7 @@ TRANS File too big; the size of a file would be larger than allowed by the syste
#endif
#ifdef ENOSPC
/*
-TRANS No space left on device; write operation on a file failed because the
+TRANS Write operation on a file failed because the
TRANS disk is full. */
[ERR_REMAP (ENOSPC)] = N_("No space left on device"),
# if ENOSPC > ERR_MAX
@@ -341,7 +341,7 @@ TRANS An attempt was made to modify something on a read-only file system. */
#endif
#ifdef EMLINK
/*
-TRANS Too many links; the link count of a single file would become too large.
+TRANS The link count of a single file would become too large.
TRANS @code{rename} can cause this error if the file being renamed already has
TRANS as many links as it can take (@pxref{Renaming Files}). */
[ERR_REMAP (EMLINK)] = N_("Too many links"),
@@ -352,7 +352,7 @@ TRANS as many links as it can take (@pxref{Renaming Files}). */
#endif
#ifdef EPIPE
/*
-TRANS Broken pipe; there is no process reading from the other end of a pipe.
+TRANS There is no process reading from the other end of a pipe.
TRANS Every library function that returns this error code also generates a
TRANS @code{SIGPIPE} signal; this signal terminates the program if not handled
TRANS or blocked. Thus, your program will never actually see @code{EPIPE}
@@ -365,7 +365,7 @@ TRANS unless it has handled or blocked @code{SIGPIPE}. */
#endif
#ifdef EDOM
/*
-TRANS Domain error; used by mathematical functions when an argument value does
+TRANS Used by mathematical functions when an argument value does
TRANS not fall into the domain over which the function is defined. */
[ERR_REMAP (EDOM)] = N_("Numerical argument out of domain"),
# if EDOM > ERR_MAX
@@ -375,7 +375,7 @@ TRANS not fall into the domain over which the function is defined. */
#endif
#ifdef ERANGE
/*
-TRANS Range error; used by mathematical functions when the result value is
+TRANS Used by mathematical functions when the result value is
TRANS not representable because of overflow or underflow. */
[ERR_REMAP (ERANGE)] = N_("Numerical result out of range"),
# if ERANGE > ERR_MAX
@@ -385,7 +385,7 @@ TRANS not representable because of overflow or underflow. */
#endif
#ifdef EAGAIN
/*
-TRANS Resource temporarily unavailable; the call might work if you try again
+TRANS The call might work if you try again
TRANS later. The macro @code{EWOULDBLOCK} is another name for @code{EAGAIN};
TRANS they are always the same in @theglibc{}.
TRANS
@@ -672,8 +672,7 @@ TRANS The socket has already been shut down. */
# endif
#endif
#ifdef ETOOMANYREFS
-/*
-TRANS ??? */
+/* */
[ERR_REMAP (ETOOMANYREFS)] = N_("Too many references: cannot splice"),
# if ETOOMANYREFS > ERR_MAX
# undef ERR_MAX
@@ -781,7 +780,7 @@ TRANS The user's disk quota was exceeded. */
#endif
#ifdef ESTALE
/*
-TRANS Stale file handle. This indicates an internal confusion in the
+TRANS This indicates an internal confusion in the
TRANS file system which is due to file system rearrangements on the server host
TRANS for NFS file systems or corruption in other file systems.
TRANS Repairing this condition usually requires unmounting, possibly repairing
@@ -805,8 +804,7 @@ TRANS properly on @gnuhurdsystems{}, making this error code impossible.) */
# endif
#endif
#ifdef EBADRPC
-/*
-TRANS ??? */
+/* */
[ERR_REMAP (EBADRPC)] = N_("RPC struct is bad"),
# if EBADRPC > ERR_MAX
# undef ERR_MAX
@@ -814,8 +812,7 @@ TRANS ??? */
# endif
#endif
#ifdef ERPCMISMATCH
-/*
-TRANS ??? */
+/* */
[ERR_REMAP (ERPCMISMATCH)] = N_("RPC version wrong"),
# if ERPCMISMATCH > ERR_MAX
# undef ERR_MAX
@@ -823,8 +820,7 @@ TRANS ??? */
# endif
#endif
#ifdef EPROGUNAVAIL
-/*
-TRANS ??? */
+/* */
[ERR_REMAP (EPROGUNAVAIL)] = N_("RPC program not available"),
# if EPROGUNAVAIL > ERR_MAX
# undef ERR_MAX
@@ -832,8 +828,7 @@ TRANS ??? */
# endif
#endif
#ifdef EPROGMISMATCH
-/*
-TRANS ??? */
+/* */
[ERR_REMAP (EPROGMISMATCH)] = N_("RPC program version wrong"),
# if EPROGMISMATCH > ERR_MAX
# undef ERR_MAX
@@ -841,8 +836,7 @@ TRANS ??? */
# endif
#endif
#ifdef EPROCUNAVAIL
-/*
-TRANS ??? */
+/* */
[ERR_REMAP (EPROCUNAVAIL)] = N_("RPC bad procedure for program"),
# if EPROCUNAVAIL > ERR_MAX
# undef ERR_MAX
@@ -851,7 +845,7 @@ TRANS ??? */
#endif
#ifdef ENOLCK
/*
-TRANS No locks available. This is used by the file locking facilities; see
+TRANS This is used by the file locking facilities; see
TRANS @ref{File Locks}. This error is never generated by @gnuhurdsystems{}, but
TRANS it can result from an operation to an NFS server running another
TRANS operating system. */
@@ -863,7 +857,7 @@ TRANS operating system. */
#endif
#ifdef EFTYPE
/*
-TRANS Inappropriate file type or format. The file was the wrong type for the
+TRANS The file was the wrong type for the
TRANS operation, or a data file had the wrong format.
TRANS
TRANS On some systems @code{chmod} returns this error if you try to set the
@@ -875,8 +869,7 @@ TRANS sticky bit on a non-directory file; @pxref{Setting Permissions}. */
# endif
#endif
#ifdef EAUTH
-/*
-TRANS ??? */
+/* */
[ERR_REMAP (EAUTH)] = N_("Authentication error"),
# if EAUTH > ERR_MAX
# undef ERR_MAX
@@ -884,8 +877,7 @@ TRANS ??? */
# endif
#endif
#ifdef ENEEDAUTH
-/*
-TRANS ??? */
+/* */
[ERR_REMAP (ENEEDAUTH)] = N_("Need authenticator"),
# if ENEEDAUTH > ERR_MAX
# undef ERR_MAX
@@ -894,7 +886,7 @@ TRANS ??? */
#endif
#ifdef ENOSYS
/*
-TRANS Function not implemented. This indicates that the function called is
+TRANS This indicates that the function called is
TRANS not implemented at all, either in the C library itself or in the
TRANS operating system. When you get this error, you can be sure that this
TRANS particular function will always fail with @code{ENOSYS} unless you
@@ -907,7 +899,7 @@ TRANS install a new version of the C library or the operating system. */
#endif
#if defined (ENOTSUP) && ENOTSUP != EOPNOTSUPP
/*
-TRANS Not supported. A function returns this error when certain parameter
+TRANS A function returns this error when certain parameter
TRANS values are valid, but the functionality they request is not available.
TRANS This can mean that the function does not implement a particular command
TRANS or option value or flag bit at all. For functions that operate on some
@@ -1088,7 +1080,7 @@ TRANS This error code has no purpose. */
#endif
#ifdef ECANCELED
/*
-TRANS Operation canceled; an asynchronous operation was canceled before it
+TRANS An asynchronous operation was canceled before it
TRANS completed. @xref{Asynchronous I/O}. When you call @code{aio_cancel},
TRANS the normal result is for the operations affected to complete with this
TRANS error; @pxref{Cancel AIO Operations}. */
@@ -1098,6 +1090,22 @@ TRANS error; @pxref{Cancel AIO Operations}. */
# define ERR_MAX ECANCELED
# endif
#endif
+#ifdef EOWNERDEAD
+/* */
+ [ERR_REMAP (EOWNERDEAD)] = N_("Owner died"),
+# if EOWNERDEAD > ERR_MAX
+# undef ERR_MAX
+# define ERR_MAX EOWNERDEAD
+# endif
+#endif
+#ifdef ENOTRECOVERABLE
+/* */
+ [ERR_REMAP (ENOTRECOVERABLE)] = N_("State not recoverable"),
+# if ENOTRECOVERABLE > ERR_MAX
+# undef ERR_MAX
+# define ERR_MAX ENOTRECOVERABLE
+# endif
+#endif
#ifdef ERESTART
/* */
[ERR_REMAP (ERESTART)] = N_("Interrupted system call should be restarted"),
@@ -1442,22 +1450,6 @@ TRANS error; @pxref{Cancel AIO Operations}. */
# define ERR_MAX EKEYREJECTED
# endif
#endif
-#ifdef EOWNERDEAD
-/* */
- [ERR_REMAP (EOWNERDEAD)] = N_("Owner died"),
-# if EOWNERDEAD > ERR_MAX
-# undef ERR_MAX
-# define ERR_MAX EOWNERDEAD
-# endif
-#endif
-#ifdef ENOTRECOVERABLE
-/* */
- [ERR_REMAP (ENOTRECOVERABLE)] = N_("State not recoverable"),
-# if ENOTRECOVERABLE > ERR_MAX
-# undef ERR_MAX
-# define ERR_MAX ENOTRECOVERABLE
-# endif
-#endif
#ifdef ERFKILL
/* */
[ERR_REMAP (ERFKILL)] = N_("Operation not possible due to RF-kill"),
diff --git a/sysdeps/gnu/getutmp.c b/sysdeps/gnu/getutmp.c
index 755ce3ede3..39b27321ad 100644
--- a/sysdeps/gnu/getutmp.c
+++ b/sysdeps/gnu/getutmp.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1999-2016 Free Software Foundation, Inc.
+/* Copyright (C) 1999-2018 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
diff --git a/sysdeps/gnu/glob-lstat-compat.c b/sysdeps/gnu/glob-lstat-compat.c
new file mode 100644
index 0000000000..7cb52d4fee
--- /dev/null
+++ b/sysdeps/gnu/glob-lstat-compat.c
@@ -0,0 +1,38 @@
+/* Compat glob which does not use gl_lstat for GLOB_ALTDIRFUNC.
+ GNU version
+ Copyright (C) 2017-2018 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
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C 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
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sys/stat.h>
+#include <shlib-compat.h>
+
+#define glob64 __no_glob64_decl
+#include <glob.h>
+#undef glob64
+
+#define __glob __glob_lstat_compat
+
+#define GLOB_ATTRIBUTE attribute_compat_text_section
+
+/* Avoid calling gl_lstat with GLOB_ALTDIRFUNC. */
+#define GLOB_NO_LSTAT
+
+#include <posix/glob.c>
+
+#if SHLIB_COMPAT(libc, GLIBC_2_0, GLIBC_2_27)
+compat_symbol (libc, __glob_lstat_compat, glob, GLIBC_2_0);
+#endif
diff --git a/sysdeps/gnu/glob64-lstat-compat.c b/sysdeps/gnu/glob64-lstat-compat.c
new file mode 100644
index 0000000000..e237407e0b
--- /dev/null
+++ b/sysdeps/gnu/glob64-lstat-compat.c
@@ -0,0 +1,48 @@
+/* Compat glob which does not use gl_lstat for GLOB_ALTDIRFUNC.
+ GNU version
+ Copyright (C) 2017-2018 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
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C 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
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <dirent.h>
+#include <glob.h>
+#include <sys/stat.h>
+#include <shlib-compat.h>
+
+#define dirent dirent64
+#define __readdir(dirp) __readdir64 (dirp)
+
+#define glob_t glob64_t
+#define __glob __glob64_lstat_compat
+#define globfree globfree64
+
+#undef stat
+#define stat stat64
+#undef __stat
+#define __stat(file, buf) __xstat64 (_STAT_VER, file, buf)
+
+#define COMPILE_GLOB64 1
+
+#define GLOB_ATTRIBUTE attribute_compat_text_section
+
+/* Avoid calling gl_lstat with GLOB_ALTDIRFUNC. */
+#define GLOB_NO_LSTAT
+
+#include <posix/glob.c>
+
+#if SHLIB_COMPAT(libc, GLIBC_2_1, GLIBC_2_27)
+compat_symbol (libc, __glob64_lstat_compat, glob64, GLIBC_2_1);
+#endif
diff --git a/sysdeps/gnu/glob64.c b/sysdeps/gnu/glob64.c
index d1e4e6f0d5..42b5b225ca 100644
--- a/sysdeps/gnu/glob64.c
+++ b/sysdeps/gnu/glob64.c
@@ -6,8 +6,7 @@
#define __readdir(dirp) __readdir64 (dirp)
#define glob_t glob64_t
-#define glob(pattern, flags, errfunc, pglob) \
- glob64 (pattern, flags, errfunc, pglob)
+#define __glob __glob64
#define globfree(pglob) globfree64 (pglob)
#undef stat
@@ -15,11 +14,10 @@
#undef __stat
#define __stat(file, buf) __xstat64 (_STAT_VER, file, buf)
-#define NO_GLOB_PATTERN_P 1
-
#define COMPILE_GLOB64 1
#include <posix/glob.c>
-libc_hidden_def (glob64)
-libc_hidden_def (globfree64)
+libc_hidden_def (__glob64)
+versioned_symbol (libc, __glob64, glob64, GLIBC_2_27);
+libc_hidden_ver (__glob64, glob64)
diff --git a/sysdeps/gnu/globfree64.c b/sysdeps/gnu/globfree64.c
new file mode 100644
index 0000000000..f092d0bf8b
--- /dev/null
+++ b/sysdeps/gnu/globfree64.c
@@ -0,0 +1,10 @@
+#include <dirent.h>
+#include <glob.h>
+#include <sys/stat.h>
+
+#define glob_t glob64_t
+#define globfree(pglob) globfree64 (pglob)
+
+#include <posix/globfree.c>
+
+libc_hidden_def (globfree64)
diff --git a/sysdeps/gnu/ifaddrs.c b/sysdeps/gnu/ifaddrs.c
index b60fa7dd28..945070f9d1 100644
--- a/sysdeps/gnu/ifaddrs.c
+++ b/sysdeps/gnu/ifaddrs.c
@@ -1,5 +1,5 @@
/* getifaddrs -- get names and addresses of all network interfaces
- Copyright (C) 2002-2016 Free Software Foundation, Inc.
+ Copyright (C) 2002-2018 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
@@ -151,6 +151,7 @@ __getifaddrs (struct ifaddrs **ifap)
return 0;
}
weak_alias (__getifaddrs, getifaddrs)
+libc_hidden_def (__getifaddrs)
#ifndef getifaddrs
libc_hidden_weak (getifaddrs)
#endif
@@ -161,4 +162,5 @@ __freeifaddrs (struct ifaddrs *ifa)
free (ifa);
}
weak_alias (__freeifaddrs, freeifaddrs)
+libc_hidden_def (__freeifaddrs)
libc_hidden_weak (freeifaddrs)
diff --git a/sysdeps/gnu/ldsodefs.h b/sysdeps/gnu/ldsodefs.h
index 2a1d2f7fcf..1896ed2b89 100644
--- a/sysdeps/gnu/ldsodefs.h
+++ b/sysdeps/gnu/ldsodefs.h
@@ -1,5 +1,5 @@
/* Run-time dynamic linker data structures for loaded ELF shared objects. GNU.
- Copyright (C) 2001-2016 Free Software Foundation, Inc.
+ Copyright (C) 2001-2018 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
diff --git a/sysdeps/gnu/net/if.h b/sysdeps/gnu/net/if.h
index bbc2094942..89e55dad02 100644
--- a/sysdeps/gnu/net/if.h
+++ b/sysdeps/gnu/net/if.h
@@ -1,5 +1,5 @@
/* net/if.h -- declarations for inquiring about network interfaces
- Copyright (C) 1997-2016 Free Software Foundation, Inc.
+ Copyright (C) 1997-2018 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
diff --git a/sysdeps/gnu/netinet/ip_icmp.h b/sysdeps/gnu/netinet/ip_icmp.h
index 4f7c1b1b60..bb998e0233 100644
--- a/sysdeps/gnu/netinet/ip_icmp.h
+++ b/sysdeps/gnu/netinet/ip_icmp.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991-2016 Free Software Foundation, Inc.
+/* Copyright (C) 1991-2018 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
@@ -18,28 +18,28 @@
#ifndef __NETINET_IP_ICMP_H
#define __NETINET_IP_ICMP_H 1
-#include <sys/cdefs.h>
#include <sys/types.h>
+#include <stdint.h>
__BEGIN_DECLS
struct icmphdr
{
- u_int8_t type; /* message type */
- u_int8_t code; /* type sub-code */
- u_int16_t checksum;
+ uint8_t type; /* message type */
+ uint8_t code; /* type sub-code */
+ uint16_t checksum;
union
{
struct
{
- u_int16_t id;
- u_int16_t sequence;
+ uint16_t id;
+ uint16_t sequence;
} echo; /* echo datagram */
- u_int32_t gateway; /* gateway address */
+ uint32_t gateway; /* gateway address */
struct
{
- u_int16_t __glibc_reserved;
- u_int16_t mtu;
+ uint16_t __glibc_reserved;
+ uint16_t mtu;
} frag; /* path mtu discovery */
} un;
};
@@ -130,38 +130,38 @@ struct icmphdr
*/
struct icmp_ra_addr
{
- u_int32_t ira_addr;
- u_int32_t ira_preference;
+ uint32_t ira_addr;
+ uint32_t ira_preference;
};
struct icmp
{
- u_int8_t icmp_type; /* type of message, see below */
- u_int8_t icmp_code; /* type sub code */
- u_int16_t icmp_cksum; /* ones complement checksum of struct */
+ uint8_t icmp_type; /* type of message, see below */
+ uint8_t icmp_code; /* type sub code */
+ uint16_t icmp_cksum; /* ones complement checksum of struct */
union
{
- u_char ih_pptr; /* ICMP_PARAMPROB */
+ unsigned char ih_pptr; /* ICMP_PARAMPROB */
struct in_addr ih_gwaddr; /* gateway address */
struct ih_idseq /* echo datagram */
{
- u_int16_t icd_id;
- u_int16_t icd_seq;
+ uint16_t icd_id;
+ uint16_t icd_seq;
} ih_idseq;
- u_int32_t ih_void;
+ uint32_t ih_void;
/* ICMP_UNREACH_NEEDFRAG -- Path MTU Discovery (RFC1191) */
struct ih_pmtu
{
- u_int16_t ipm_void;
- u_int16_t ipm_nextmtu;
+ uint16_t ipm_void;
+ uint16_t ipm_nextmtu;
} ih_pmtu;
struct ih_rtradv
{
- u_int8_t irt_num_addrs;
- u_int8_t irt_wpa;
- u_int16_t irt_lifetime;
+ uint8_t irt_num_addrs;
+ uint8_t irt_wpa;
+ uint16_t irt_lifetime;
} ih_rtradv;
} icmp_hun;
#define icmp_pptr icmp_hun.ih_pptr
@@ -178,9 +178,9 @@ struct icmp
{
struct
{
- u_int32_t its_otime;
- u_int32_t its_rtime;
- u_int32_t its_ttime;
+ uint32_t its_otime;
+ uint32_t its_rtime;
+ uint32_t its_ttime;
} id_ts;
struct
{
@@ -188,8 +188,8 @@ struct icmp
/* options and then 64 bits of data */
} id_ip;
struct icmp_ra_addr id_radv;
- u_int32_t id_mask;
- u_int8_t id_data[1];
+ uint32_t id_mask;
+ uint8_t id_data[1];
} icmp_dun;
#define icmp_otime icmp_dun.id_ts.its_otime
#define icmp_rtime icmp_dun.id_ts.its_rtime
diff --git a/sysdeps/gnu/netinet/tcp.h b/sysdeps/gnu/netinet/tcp.h
index 3918bcac4f..44a72e929e 100644
--- a/sysdeps/gnu/netinet/tcp.h
+++ b/sysdeps/gnu/netinet/tcp.h
@@ -69,12 +69,19 @@
connections. */
#define TCP_SAVED_SYN 28 /* Get SYN headers recorded for
connection. */
+#define TCP_REPAIR_WINDOW 29 /* Get/set window parameters. */
+#define TCP_FASTOPEN_CONNECT 30 /* Attempt FastOpen with connect. */
+#define TCP_ULP 31 /* Attach a ULP to a TCP connection. */
+#define TCP_MD5SIG_EXT 32 /* TCP MD5 Signature with extensions. */
+#define TCP_FASTOPEN_KEY 33 /* Set the key for Fast Open (cookie). */
+#define TCP_FASTOPEN_NO_COOKIE 34 /* Enable TFO without a TFO cookie. */
#ifdef __USE_MISC
# include <sys/types.h>
# include <sys/socket.h>
+# include <stdint.h>
-typedef u_int32_t tcp_seq;
+typedef uint32_t tcp_seq;
/*
* TCP header.
* Per RFC 793, September, 1981.
@@ -85,61 +92,61 @@ struct tcphdr
{
struct
{
- u_int16_t th_sport; /* source port */
- u_int16_t th_dport; /* destination port */
+ uint16_t th_sport; /* source port */
+ uint16_t th_dport; /* destination port */
tcp_seq th_seq; /* sequence number */
tcp_seq th_ack; /* acknowledgement number */
# if __BYTE_ORDER == __LITTLE_ENDIAN
- u_int8_t th_x2:4; /* (unused) */
- u_int8_t th_off:4; /* data offset */
+ uint8_t th_x2:4; /* (unused) */
+ uint8_t th_off:4; /* data offset */
# endif
# if __BYTE_ORDER == __BIG_ENDIAN
- u_int8_t th_off:4; /* data offset */
- u_int8_t th_x2:4; /* (unused) */
+ uint8_t th_off:4; /* data offset */
+ uint8_t th_x2:4; /* (unused) */
# endif
- u_int8_t th_flags;
+ uint8_t th_flags;
# define TH_FIN 0x01
# define TH_SYN 0x02
# define TH_RST 0x04
# define TH_PUSH 0x08
# define TH_ACK 0x10
# define TH_URG 0x20
- u_int16_t th_win; /* window */
- u_int16_t th_sum; /* checksum */
- u_int16_t th_urp; /* urgent pointer */
+ uint16_t th_win; /* window */
+ uint16_t th_sum; /* checksum */
+ uint16_t th_urp; /* urgent pointer */
};
struct
{
- u_int16_t source;
- u_int16_t dest;
- u_int32_t seq;
- u_int32_t ack_seq;
+ uint16_t source;
+ uint16_t dest;
+ uint32_t seq;
+ uint32_t ack_seq;
# if __BYTE_ORDER == __LITTLE_ENDIAN
- u_int16_t res1:4;
- u_int16_t doff:4;
- u_int16_t fin:1;
- u_int16_t syn:1;
- u_int16_t rst:1;
- u_int16_t psh:1;
- u_int16_t ack:1;
- u_int16_t urg:1;
- u_int16_t res2:2;
+ uint16_t res1:4;
+ uint16_t doff:4;
+ uint16_t fin:1;
+ uint16_t syn:1;
+ uint16_t rst:1;
+ uint16_t psh:1;
+ uint16_t ack:1;
+ uint16_t urg:1;
+ uint16_t res2:2;
# elif __BYTE_ORDER == __BIG_ENDIAN
- u_int16_t doff:4;
- u_int16_t res1:4;
- u_int16_t res2:2;
- u_int16_t urg:1;
- u_int16_t ack:1;
- u_int16_t psh:1;
- u_int16_t rst:1;
- u_int16_t syn:1;
- u_int16_t fin:1;
+ uint16_t doff:4;
+ uint16_t res1:4;
+ uint16_t res2:2;
+ uint16_t urg:1;
+ uint16_t ack:1;
+ uint16_t psh:1;
+ uint16_t rst:1;
+ uint16_t syn:1;
+ uint16_t fin:1;
# else
# error "Adjust your <bits/endian.h> defines"
# endif
- u_int16_t window;
- u_int16_t check;
- u_int16_t urg_ptr;
+ uint16_t window;
+ uint16_t check;
+ uint16_t urg_ptr;
};
};
};
@@ -209,65 +216,69 @@ enum tcp_ca_state
struct tcp_info
{
- u_int8_t tcpi_state;
- u_int8_t tcpi_ca_state;
- u_int8_t tcpi_retransmits;
- u_int8_t tcpi_probes;
- u_int8_t tcpi_backoff;
- u_int8_t tcpi_options;
- u_int8_t tcpi_snd_wscale : 4, tcpi_rcv_wscale : 4;
-
- u_int32_t tcpi_rto;
- u_int32_t tcpi_ato;
- u_int32_t tcpi_snd_mss;
- u_int32_t tcpi_rcv_mss;
-
- u_int32_t tcpi_unacked;
- u_int32_t tcpi_sacked;
- u_int32_t tcpi_lost;
- u_int32_t tcpi_retrans;
- u_int32_t tcpi_fackets;
+ uint8_t tcpi_state;
+ uint8_t tcpi_ca_state;
+ uint8_t tcpi_retransmits;
+ uint8_t tcpi_probes;
+ uint8_t tcpi_backoff;
+ uint8_t tcpi_options;
+ uint8_t tcpi_snd_wscale : 4, tcpi_rcv_wscale : 4;
+
+ uint32_t tcpi_rto;
+ uint32_t tcpi_ato;
+ uint32_t tcpi_snd_mss;
+ uint32_t tcpi_rcv_mss;
+
+ uint32_t tcpi_unacked;
+ uint32_t tcpi_sacked;
+ uint32_t tcpi_lost;
+ uint32_t tcpi_retrans;
+ uint32_t tcpi_fackets;
/* Times. */
- u_int32_t tcpi_last_data_sent;
- u_int32_t tcpi_last_ack_sent; /* Not remembered, sorry. */
- u_int32_t tcpi_last_data_recv;
- u_int32_t tcpi_last_ack_recv;
+ uint32_t tcpi_last_data_sent;
+ uint32_t tcpi_last_ack_sent; /* Not remembered, sorry. */
+ uint32_t tcpi_last_data_recv;
+ uint32_t tcpi_last_ack_recv;
/* Metrics. */
- u_int32_t tcpi_pmtu;
- u_int32_t tcpi_rcv_ssthresh;
- u_int32_t tcpi_rtt;
- u_int32_t tcpi_rttvar;
- u_int32_t tcpi_snd_ssthresh;
- u_int32_t tcpi_snd_cwnd;
- u_int32_t tcpi_advmss;
- u_int32_t tcpi_reordering;
-
- u_int32_t tcpi_rcv_rtt;
- u_int32_t tcpi_rcv_space;
-
- u_int32_t tcpi_total_retrans;
+ uint32_t tcpi_pmtu;
+ uint32_t tcpi_rcv_ssthresh;
+ uint32_t tcpi_rtt;
+ uint32_t tcpi_rttvar;
+ uint32_t tcpi_snd_ssthresh;
+ uint32_t tcpi_snd_cwnd;
+ uint32_t tcpi_advmss;
+ uint32_t tcpi_reordering;
+
+ uint32_t tcpi_rcv_rtt;
+ uint32_t tcpi_rcv_space;
+
+ uint32_t tcpi_total_retrans;
};
/* For TCP_MD5SIG socket option. */
#define TCP_MD5SIG_MAXKEYLEN 80
+/* tcp_md5sig extension flags for TCP_MD5SIG_EXT. */
+#define TCP_MD5SIG_FLAG_PREFIX 1 /* Address prefix length. */
+
struct tcp_md5sig
{
struct sockaddr_storage tcpm_addr; /* Address associated. */
- u_int16_t __tcpm_pad1; /* Zero. */
- u_int16_t tcpm_keylen; /* Key length. */
- u_int32_t __tcpm_pad2; /* Zero. */
- u_int8_t tcpm_key[TCP_MD5SIG_MAXKEYLEN]; /* Key (binary). */
+ uint8_t tcpm_flags; /* Extension flags. */
+ uint8_t tcpm_prefixlen; /* Address prefix. */
+ uint16_t tcpm_keylen; /* Key length. */
+ uint32_t __tcpm_pad; /* Zero. */
+ uint8_t tcpm_key[TCP_MD5SIG_MAXKEYLEN]; /* Key (binary). */
};
/* For socket repair options. */
struct tcp_repair_opt
{
- u_int32_t opt_code;
- u_int32_t opt_val;
+ uint32_t opt_code;
+ uint32_t opt_val;
};
/* Queue to repair, for TCP_REPAIR_QUEUE. */
@@ -298,12 +309,22 @@ enum
struct tcp_cookie_transactions
{
- u_int16_t tcpct_flags;
- u_int8_t __tcpct_pad1;
- u_int8_t tcpct_cookie_desired;
- u_int16_t tcpct_s_data_desired;
- u_int16_t tcpct_used;
- u_int8_t tcpct_value[TCP_MSS_DEFAULT];
+ uint16_t tcpct_flags;
+ uint8_t __tcpct_pad1;
+ uint8_t tcpct_cookie_desired;
+ uint16_t tcpct_s_data_desired;
+ uint16_t tcpct_used;
+ uint8_t tcpct_value[TCP_MSS_DEFAULT];
+};
+
+/* For use with TCP_REPAIR_WINDOW. */
+struct tcp_repair_window
+{
+ uint32_t snd_wl1;
+ uint32_t snd_wnd;
+ uint32_t max_window;
+ uint32_t rcv_wnd;
+ uint32_t rcv_wup;
};
#endif /* Misc. */
diff --git a/sysdeps/gnu/netinet/udp.h b/sysdeps/gnu/netinet/udp.h
index bcc3213dc2..eddd248655 100644
--- a/sysdeps/gnu/netinet/udp.h
+++ b/sysdeps/gnu/netinet/udp.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991-2016 Free Software Foundation, Inc.
+/* Copyright (C) 1991-2018 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
@@ -47,9 +47,8 @@
#ifndef __NETINET_UDP_H
#define __NETINET_UDP_H 1
-#include <features.h>
#include <sys/types.h>
-
+#include <stdint.h>
/* UDP header as specified by RFC 768, August 1980. */
@@ -59,17 +58,17 @@ struct udphdr
{
struct
{
- u_int16_t uh_sport; /* source port */
- u_int16_t uh_dport; /* destination port */
- u_int16_t uh_ulen; /* udp length */
- u_int16_t uh_sum; /* udp checksum */
+ uint16_t uh_sport; /* source port */
+ uint16_t uh_dport; /* destination port */
+ uint16_t uh_ulen; /* udp length */
+ uint16_t uh_sum; /* udp checksum */
};
struct
{
- u_int16_t source;
- u_int16_t dest;
- u_int16_t len;
- u_int16_t check;
+ uint16_t source;
+ uint16_t dest;
+ uint16_t len;
+ uint16_t check;
};
};
};
@@ -87,6 +86,8 @@ struct udphdr
#define UDP_ENCAP_ESPINUDP_NON_IKE 1 /* draft-ietf-ipsec-nat-t-ike-00/01 */
#define UDP_ENCAP_ESPINUDP 2 /* draft-ietf-ipsec-udp-encaps-06 */
#define UDP_ENCAP_L2TPINUDP 3 /* rfc2661 */
+#define UDP_ENCAP_GTP0 4 /* GSM TS 09.60 */
+#define UDP_ENCAP_GTP1U 5 /* 3GPP TS 29.060 */
#define SOL_UDP 17 /* sockopt level for UDP */
diff --git a/sysdeps/gnu/siglist.c b/sysdeps/gnu/siglist.c
index bc69e5fcd1..0b2e40a47a 100644
--- a/sysdeps/gnu/siglist.c
+++ b/sysdeps/gnu/siglist.c
@@ -1,5 +1,5 @@
/* Define list of all signal numbers and their names.
- Copyright (C) 1997-2016 Free Software Foundation, Inc.
+ Copyright (C) 1997-2018 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
diff --git a/sysdeps/gnu/sys/mtio.h b/sysdeps/gnu/sys/mtio.h
index 3d175ae1e0..182767a39d 100644
--- a/sysdeps/gnu/sys/mtio.h
+++ b/sysdeps/gnu/sys/mtio.h
@@ -1,5 +1,5 @@
/* Structures and definitions for magnetic tape I/O control commands.
- Copyright (C) 1996-2016 Free Software Foundation, Inc.
+ Copyright (C) 1996-2018 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
diff --git a/sysdeps/gnu/unwind-resume.c b/sysdeps/gnu/unwind-resume.c
index 5d25e73dd1..9283d925de 100644
--- a/sysdeps/gnu/unwind-resume.c
+++ b/sysdeps/gnu/unwind-resume.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2003-2016 Free Software Foundation, Inc.
+/* Copyright (C) 2003-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Jakub Jelinek <jakub@redhat.com>.
@@ -35,13 +35,14 @@ __libgcc_s_init (void)
void *resume, *personality;
void *handle;
+ /* See include/dlfcn.h. Use of __libc_dlopen requires RTLD_NOW. */
handle = __libc_dlopen (LIBGCC_S_SO);
if (handle == NULL
|| (resume = __libc_dlsym (handle, "_Unwind_Resume")) == NULL
|| (personality = __libc_dlsym (handle, "__gcc_personality_v0")) == NULL)
__libc_fatal (LIBGCC_S_SO
- " must be installed for pthread_cancel to work\n");
+ " must be installed for unwinding to work\n");
#ifdef PTR_MANGLE
PTR_MANGLE (resume);
diff --git a/sysdeps/gnu/updwtmp.c b/sysdeps/gnu/updwtmp.c
index f6734a6346..e00e8aa33d 100644
--- a/sysdeps/gnu/updwtmp.c
+++ b/sysdeps/gnu/updwtmp.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1998-2016 Free Software Foundation, Inc.
+/* Copyright (C) 1998-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Mark Kettenis <kettenis@phys.uva.nl>, 1998.
diff --git a/sysdeps/gnu/utmp_file.c b/sysdeps/gnu/utmp_file.c
index d658283adf..592dba3594 100644
--- a/sysdeps/gnu/utmp_file.c
+++ b/sysdeps/gnu/utmp_file.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1998-2016 Free Software Foundation, Inc.
+/* Copyright (C) 1998-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Mark Kettenis <kettenis@phys.uva.nl>, 1998.
diff --git a/sysdeps/gnu/utmpx.h b/sysdeps/gnu/utmpx.h
index 3c45ba37f8..c435d89719 100644
--- a/sysdeps/gnu/utmpx.h
+++ b/sysdeps/gnu/utmpx.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 1997-2016 Free Software Foundation, Inc.
+/* Copyright (C) 1997-2018 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