svn commit: trunk/uClibc/libc/sysdeps/linux/common/bits

vapier at uclibc.org vapier at uclibc.org
Wed Nov 9 03:08:17 UTC 2005


Author: vapier
Date: 2005-11-08 19:08:14 -0800 (Tue, 08 Nov 2005)
New Revision: 12194

Log:
sync with glibc

Modified:
   trunk/uClibc/libc/sysdeps/linux/common/bits/byteswap.h
   trunk/uClibc/libc/sysdeps/linux/common/bits/confname.h
   trunk/uClibc/libc/sysdeps/linux/common/bits/environments.h
   trunk/uClibc/libc/sysdeps/linux/common/bits/in.h
   trunk/uClibc/libc/sysdeps/linux/common/bits/ioctls.h
   trunk/uClibc/libc/sysdeps/linux/common/bits/local_lim.h
   trunk/uClibc/libc/sysdeps/linux/common/bits/msq.h
   trunk/uClibc/libc/sysdeps/linux/common/bits/posix_opt.h
   trunk/uClibc/libc/sysdeps/linux/common/bits/resource.h
   trunk/uClibc/libc/sysdeps/linux/common/bits/sigthread.h
   trunk/uClibc/libc/sysdeps/linux/common/bits/socket.h
   trunk/uClibc/libc/sysdeps/linux/common/bits/statvfs.h
   trunk/uClibc/libc/sysdeps/linux/common/bits/termios.h
   trunk/uClibc/libc/sysdeps/linux/common/bits/types.h
   trunk/uClibc/libc/sysdeps/linux/common/bits/waitflags.h


Changeset:
Modified: trunk/uClibc/libc/sysdeps/linux/common/bits/byteswap.h
===================================================================
--- trunk/uClibc/libc/sysdeps/linux/common/bits/byteswap.h	2005-11-09 03:07:44 UTC (rev 12193)
+++ trunk/uClibc/libc/sysdeps/linux/common/bits/byteswap.h	2005-11-09 03:08:14 UTC (rev 12194)
@@ -1,5 +1,5 @@
 /* Macros to swap the order of bytes in integer values.
-   Copyright (C) 1997, 1998, 2000, 2001, 2002 Free Software Foundation, Inc.
+   Copyright (C) 1997,1998,2000,2001,2002,2005 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
@@ -25,32 +25,35 @@
 #define _BITS_BYTESWAP_H 1
 
 /* Swap bytes in 16 bit value.  */
+#define __bswap_constant_16(x) \
+     ((((x) >> 8) & 0xffu) | (((x) & 0xffu) << 8))
+
 #ifdef __GNUC__
 # define __bswap_16(x) \
     (__extension__							      \
-     ({ unsigned short int __bsx = (x);					      \
-        ((((__bsx) >> 8) & 0xff) | (((__bsx) & 0xff) << 8)); }))
+     ({ unsigned short int __bsx = (x); __bswap_constant_16 (__bsx); }))
 #else
 static __inline unsigned short int
 __bswap_16 (unsigned short int __bsx)
 {
-  return ((((__bsx) >> 8) & 0xff) | (((__bsx) & 0xff) << 8));
+  return __bswap_constant_16 (__bsx);
 }
 #endif
 
 /* Swap bytes in 32 bit value.  */
+#define __bswap_constant_32(x) \
+     ((((x) & 0xff000000u) >> 24) | (((x) & 0x00ff0000u) >>  8) |	      \
+      (((x) & 0x0000ff00u) <<  8) | (((x) & 0x000000ffu) << 24))
+
 #ifdef __GNUC__
 # define __bswap_32(x) \
-    (__extension__							      \
-     ({ unsigned int __bsx = (x);					      \
-        ((((__bsx) & 0xff000000) >> 24) | (((__bsx) & 0x00ff0000) >>  8) |    \
-	 (((__bsx) & 0x0000ff00) <<  8) | (((__bsx) & 0x000000ff) << 24)); }))
+  (__extension__							      \
+   ({ register unsigned int __bsx = (x); __bswap_constant_32 (__bsx); }))
 #else
 static __inline unsigned int
 __bswap_32 (unsigned int __bsx)
 {
-  return ((((__bsx) & 0xff000000) >> 24) | (((__bsx) & 0x00ff0000) >>  8) |
-	  (((__bsx) & 0x0000ff00) <<  8) | (((__bsx) & 0x000000ff) << 24));
+  return __bswap_constant_32 (__bsx);
 }
 #endif
 

Modified: trunk/uClibc/libc/sysdeps/linux/common/bits/confname.h
===================================================================
--- trunk/uClibc/libc/sysdeps/linux/common/bits/confname.h	2005-11-09 03:07:44 UTC (rev 12193)
+++ trunk/uClibc/libc/sysdeps/linux/common/bits/confname.h	2005-11-09 03:08:14 UTC (rev 12194)
@@ -1,5 +1,6 @@
 /* `sysconf', `pathconf', and `confstr' NAME values.  Generic version.
-   Copyright (C) 1993, 1995-1998, 2000, 2001 Free Software Foundation, Inc.
+   Copyright (C) 1993,1995-1998,2000,2001,2003,2004
+   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
@@ -471,96 +472,96 @@
     _CS_PATH,			/* The default search path.  */
 #define _CS_PATH		_CS_PATH
 
+    _CS_V6_WIDTH_RESTRICTED_ENVS,
+# define _CS_V6_WIDTH_RESTRICTED_ENVS	_CS_V6_WIDTH_RESTRICTED_ENVS
+
 # if (defined __USE_FILE_OFFSET64 || defined __USE_LARGEFILE64 \
      || defined __USE_LARGEFILE)
     _CS_LFS_CFLAGS = 1000,
-#  define _CS_LFS_CFLAGS		_CS_LFS_CFLAGS
+#define _CS_LFS_CFLAGS	_CS_LFS_CFLAGS
     _CS_LFS_LDFLAGS,
-#  define _CS_LFS_LDFLAGS	_CS_LFS_LDFLAGS
+#define _CS_LFS_LDFLAGS	_CS_LFS_LDFLAGS
     _CS_LFS_LIBS,
-#  define _CS_LFS_LIBS		_CS_LFS_LIBS
+#define _CS_LFS_LIBS		_CS_LFS_LIBS
     _CS_LFS_LINTFLAGS,
-#  define _CS_LFS_LINTFLAGS	_CS_LFS_LINTFLAGS
+#define _CS_LFS_LINTFLAGS	_CS_LFS_LINTFLAGS
     _CS_LFS64_CFLAGS,
-#  define _CS_LFS64_CFLAGS	_CS_LFS64_CFLAGS
+#define _CS_LFS64_CFLAGS	_CS_LFS64_CFLAGS
     _CS_LFS64_LDFLAGS,
-#  define _CS_LFS64_LDFLAGS	_CS_LFS64_LDFLAGS
+#define _CS_LFS64_LDFLAGS	_CS_LFS64_LDFLAGS
     _CS_LFS64_LIBS,
-#  define _CS_LFS64_LIBS		_CS_LFS64_LIBS
+#define _CS_LFS64_LIBS	_CS_LFS64_LIBS
     _CS_LFS64_LINTFLAGS,
-#  define _CS_LFS64_LINTFLAGS	_CS_LFS64_LINTFLAGS
+#define _CS_LFS64_LINTFLAGS	_CS_LFS64_LINTFLAGS
 # endif
 
 # ifdef __USE_UNIX98
     _CS_XBS5_ILP32_OFF32_CFLAGS = 1100,
-#  define _CS_XBS5_ILP32_OFF32_CFLAGS _CS_XBS5_ILP32_OFF32_CFLAGS
+#define _CS_XBS5_ILP32_OFF32_CFLAGS _CS_XBS5_ILP32_OFF32_CFLAGS
     _CS_XBS5_ILP32_OFF32_LDFLAGS,
-#  define _CS_XBS5_ILP32_OFF32_LDFLAGS _CS_XBS5_ILP32_OFF32_LDFLAGS
+#define _CS_XBS5_ILP32_OFF32_LDFLAGS _CS_XBS5_ILP32_OFF32_LDFLAGS
     _CS_XBS5_ILP32_OFF32_LIBS,
-#  define _CS_XBS5_ILP32_OFF32_LIBS _CS_XBS5_ILP32_OFF32_LIBS
+#define _CS_XBS5_ILP32_OFF32_LIBS _CS_XBS5_ILP32_OFF32_LIBS
     _CS_XBS5_ILP32_OFF32_LINTFLAGS,
-#  define _CS_XBS5_ILP32_OFF32_LINTFLAGS _CS_XBS5_ILP32_OFF32_LINTFLAGS
+#define _CS_XBS5_ILP32_OFF32_LINTFLAGS _CS_XBS5_ILP32_OFF32_LINTFLAGS
     _CS_XBS5_ILP32_OFFBIG_CFLAGS,
-#  define _CS_XBS5_ILP32_OFFBIG_CFLAGS _CS_XBS5_ILP32_OFFBIG_CFLAGS
+#define _CS_XBS5_ILP32_OFFBIG_CFLAGS _CS_XBS5_ILP32_OFFBIG_CFLAGS
     _CS_XBS5_ILP32_OFFBIG_LDFLAGS,
-#  define _CS_XBS5_ILP32_OFFBIG_LDFLAGS _CS_XBS5_ILP32_OFFBIG_LDFLAGS
+#define _CS_XBS5_ILP32_OFFBIG_LDFLAGS _CS_XBS5_ILP32_OFFBIG_LDFLAGS
     _CS_XBS5_ILP32_OFFBIG_LIBS,
-#  define _CS_XBS5_ILP32_OFFBIG_LIBS _CS_XBS5_ILP32_OFFBIG_LIBS
+#define _CS_XBS5_ILP32_OFFBIG_LIBS _CS_XBS5_ILP32_OFFBIG_LIBS
     _CS_XBS5_ILP32_OFFBIG_LINTFLAGS,
-#  define _CS_XBS5_ILP32_OFFBIG_LINTFLAGS _CS_XBS5_ILP32_OFFBIG_LINTFLAGS
+#define _CS_XBS5_ILP32_OFFBIG_LINTFLAGS _CS_XBS5_ILP32_OFFBIG_LINTFLAGS
     _CS_XBS5_LP64_OFF64_CFLAGS,
-#  define _CS_XBS5_LP64_OFF64_CFLAGS _CS_XBS5_LP64_OFF64_CFLAGS
+#define _CS_XBS5_LP64_OFF64_CFLAGS _CS_XBS5_LP64_OFF64_CFLAGS
     _CS_XBS5_LP64_OFF64_LDFLAGS,
-#  define _CS_XBS5_LP64_OFF64_LDFLAGS _CS_XBS5_LP64_OFF64_LDFLAGS
+#define _CS_XBS5_LP64_OFF64_LDFLAGS _CS_XBS5_LP64_OFF64_LDFLAGS
     _CS_XBS5_LP64_OFF64_LIBS,
-#  define _CS_XBS5_LP64_OFF64_LIBS _CS_XBS5_LP64_OFF64_LIBS
+#define _CS_XBS5_LP64_OFF64_LIBS _CS_XBS5_LP64_OFF64_LIBS
     _CS_XBS5_LP64_OFF64_LINTFLAGS,
-#  define _CS_XBS5_LP64_OFF64_LINTFLAGS _CS_XBS5_LP64_OFF64_LINTFLAGS
+#define _CS_XBS5_LP64_OFF64_LINTFLAGS _CS_XBS5_LP64_OFF64_LINTFLAGS
     _CS_XBS5_LPBIG_OFFBIG_CFLAGS,
-#  define _CS_XBS5_LPBIG_OFFBIG_CFLAGS _CS_XBS5_LPBIG_OFFBIG_CFLAGS
+#define _CS_XBS5_LPBIG_OFFBIG_CFLAGS _CS_XBS5_LPBIG_OFFBIG_CFLAGS
     _CS_XBS5_LPBIG_OFFBIG_LDFLAGS,
-#  define _CS_XBS5_LPBIG_OFFBIG_LDFLAGS _CS_XBS5_LPBIG_OFFBIG_LDFLAGS
+#define _CS_XBS5_LPBIG_OFFBIG_LDFLAGS _CS_XBS5_LPBIG_OFFBIG_LDFLAGS
     _CS_XBS5_LPBIG_OFFBIG_LIBS,
-#  define _CS_XBS5_LPBIG_OFFBIG_LIBS _CS_XBS5_LPBIG_OFFBIG_LIBS
+#define _CS_XBS5_LPBIG_OFFBIG_LIBS _CS_XBS5_LPBIG_OFFBIG_LIBS
     _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS,
-#  define _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS
+#define _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS
 # endif
 # ifdef __USE_XOPEN2K
     _CS_POSIX_V6_ILP32_OFF32_CFLAGS,
-#  define _CS_POSIX_V6_ILP32_OFF32_CFLAGS _CS_POSIX_V6_ILP32_OFF32_CFLAGS
+#define _CS_POSIX_V6_ILP32_OFF32_CFLAGS _CS_POSIX_V6_ILP32_OFF32_CFLAGS
     _CS_POSIX_V6_ILP32_OFF32_LDFLAGS,
-#  define _CS_POSIX_V6_ILP32_OFF32_LDFLAGS _CS_POSIX_V6_ILP32_OFF32_LDFLAGS
+#define _CS_POSIX_V6_ILP32_OFF32_LDFLAGS _CS_POSIX_V6_ILP32_OFF32_LDFLAGS
     _CS_POSIX_V6_ILP32_OFF32_LIBS,
-#  define _CS_POSIX_V6_ILP32_OFF32_LIBS _CS_POSIX_V6_ILP32_OFF32_LIBS
+#define _CS_POSIX_V6_ILP32_OFF32_LIBS _CS_POSIX_V6_ILP32_OFF32_LIBS
     _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS,
-#  define _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS
+#define _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS
     _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS,
-#  define _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS
+#define _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS
     _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS,
-#  define _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS
+#define _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS
     _CS_POSIX_V6_ILP32_OFFBIG_LIBS,
-#  define _CS_POSIX_V6_ILP32_OFFBIG_LIBS _CS_POSIX_V6_ILP32_OFFBIG_LIBS
+#define _CS_POSIX_V6_ILP32_OFFBIG_LIBS _CS_POSIX_V6_ILP32_OFFBIG_LIBS
     _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS,
-#  define _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS
+#define _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS
     _CS_POSIX_V6_LP64_OFF64_CFLAGS,
-#  define _CS_POSIX_V6_LP64_OFF64_CFLAGS _CS_POSIX_V6_LP64_OFF64_CFLAGS
+#define _CS_POSIX_V6_LP64_OFF64_CFLAGS _CS_POSIX_V6_LP64_OFF64_CFLAGS
     _CS_POSIX_V6_LP64_OFF64_LDFLAGS,
-#  define _CS_POSIX_V6_LP64_OFF64_LDFLAGS _CS_POSIX_V6_LP64_OFF64_LDFLAGS
+#define _CS_POSIX_V6_LP64_OFF64_LDFLAGS _CS_POSIX_V6_LP64_OFF64_LDFLAGS
     _CS_POSIX_V6_LP64_OFF64_LIBS,
-#  define _CS_POSIX_V6_LP64_OFF64_LIBS _CS_POSIX_V6_LP64_OFF64_LIBS
+#define _CS_POSIX_V6_LP64_OFF64_LIBS _CS_POSIX_V6_LP64_OFF64_LIBS
     _CS_POSIX_V6_LP64_OFF64_LINTFLAGS,
-#  define _CS_POSIX_V6_LP64_OFF64_LINTFLAGS _CS_POSIX_V6_LP64_OFF64_LINTFLAGS
+#define _CS_POSIX_V6_LP64_OFF64_LINTFLAGS _CS_POSIX_V6_LP64_OFF64_LINTFLAGS
     _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS,
-#  define _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS
+#define _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS
     _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS,
-#  define _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS
+#define _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS
     _CS_POSIX_V6_LPBIG_OFFBIG_LIBS,
-#  define _CS_POSIX_V6_LPBIG_OFFBIG_LIBS _CS_POSIX_V6_LPBIG_OFFBIG_LIBS
-    _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS,
-#  define _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS
+#define _CS_POSIX_V6_LPBIG_OFFBIG_LIBS _CS_POSIX_V6_LPBIG_OFFBIG_LIBS
+    _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS
+#define _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS
 # endif
-
-    _CS_V6_WIDTH_RESTRICTED_ENVS
-# define _CS_V6_WIDTH_RESTRICTED_ENVS	_CS_V6_WIDTH_RESTRICTED_ENVS
   };
 #endif

Modified: trunk/uClibc/libc/sysdeps/linux/common/bits/environments.h
===================================================================
--- trunk/uClibc/libc/sysdeps/linux/common/bits/environments.h	2005-11-09 03:07:44 UTC (rev 12193)
+++ trunk/uClibc/libc/sysdeps/linux/common/bits/environments.h	2005-11-09 03:08:14 UTC (rev 12194)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1999, 2001 Free Software Foundation, Inc.
+/* Copyright (C) 1999, 2001, 2004 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
@@ -72,4 +72,7 @@
 # define _XBS5_LP64_OFF64	-1
 # define _XBS5_LPBIG_OFFBIG	-1
 
+/* CFLAGS.  */
+#define __ILP32_OFFBIG_CFLAGS   "-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64"
+
 #endif /* __WORDSIZE == 32 */

Modified: trunk/uClibc/libc/sysdeps/linux/common/bits/in.h
===================================================================
--- trunk/uClibc/libc/sysdeps/linux/common/bits/in.h	2005-11-09 03:07:44 UTC (rev 12193)
+++ trunk/uClibc/libc/sysdeps/linux/common/bits/in.h	2005-11-09 03:08:14 UTC (rev 12194)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991-1999, 2000 Free Software Foundation, Inc.
+/* Copyright (C) 1991-1999, 2000, 2004 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
@@ -30,8 +30,8 @@
 #define IP_HDRINCL         3	/* int; Header is included with data.  */
 #define IP_OPTIONS         4	/* ip_opts; IP per-packet options.  */
 #define IP_ROUTER_ALERT    5	/* bool */
-#define IP_RECVOPTS        6	/* bool */
-#define IP_RETOPTS         7	/* bool */
+#define IP_RECVOPTS        6	/* bool; Receive all IP options w/datagram.  */
+#define IP_RETOPTS         7	/* bool; Set/get IP per-packet options.  */
 #define IP_PKTINFO         8	/* bool */
 #define IP_PKTOPTIONS      9
 #define IP_PMTUDISC        10	/* obsolete name? */
@@ -44,9 +44,24 @@
 #define IP_MULTICAST_LOOP  34	/* i_char; set/get IP multicast loopback */
 #define IP_ADD_MEMBERSHIP  35	/* ip_mreq; add an IP group membership */
 #define IP_DROP_MEMBERSHIP 36	/* ip_mreq; drop an IP group membership */
+#define IP_UNBLOCK_SOURCE  37	/* ip_mreq_source: unblock data from source */
+#define IP_BLOCK_SOURCE    38	/* ip_mreq_source: block data from source */
+#define IP_ADD_SOURCE_MEMBERSHIP  39	/* ip_mreq_source: join source group */
+#define IP_DROP_SOURCE_MEMBERSHIP 40	/* ip_mreq_source: leave source group */
+#define IP_MSFILTER               41
+#define MCAST_JOIN_GROUP          42	/* group_req: join any-source group */
+#define MCAST_BLOCK_SOURCE        43	/* group_source_req: block from given group */
+#define MCAST_UNBLOCK_SOURCE      44	/* group_source_req: unblock from given group*/
+#define MCAST_LEAVE_GROUP         45	/* group_req: leave any-source group */
+#define MCAST_JOIN_SOURCE_GROUP   46	/* group_source_req: join source-spec gr */
+#define MCAST_LEAVE_SOURCE_GROUP  47	/* group_source_req: leave source-spec gr*/
+#define MCAST_MSFILTER            48
 
+#define MCAST_EXCLUDE   0
+#define MCAST_INCLUDE   1
+
 /* For BSD compatibility.  */
-#define IP_RECVRETOPTS	IP_RETOPTS
+#define IP_RECVRETOPTS     IP_RETOPTS	/* bool; Receive IP options for response.  */
 
 /* IP_MTU_DISCOVER arguments.  */
 #define IP_PMTUDISC_DONT   0	/* Never send DF frames.  */
@@ -60,9 +75,9 @@
 #define IP_DEFAULT_MULTICAST_LOOP       1
 #define IP_MAX_MEMBERSHIPS              20
 
-/* Structure used to describe IP options for IP_OPTIONS. The `ip_dst'
-   field is used for the first-hop gateway when using a source route
-   (this gets put into the header proper).  */
+/* Structure used to describe IP options for IP_OPTIONS and IP_RETOPTS.
+   The `ip_dst' field is used for the first-hop gateway when using a
+   source route (this gets put into the header proper).  */
 struct ip_opts
   {
     struct in_addr ip_dst;	/* First hop; zero without source route.  */
@@ -115,16 +130,20 @@
 #define IPV6_MTU_DISCOVER	23
 #define IPV6_MTU		24
 #define IPV6_RECVERR		25
+#define IPV6_V6ONLY		26
+#define IPV6_JOIN_ANYCAST	27
+#define IPV6_LEAVE_ANYCAST	28
+#define IPV6_IPSEC_POLICY	34
+#define IPV6_XFRM_POLICY	35
 
 #define SCM_SRCRT		IPV6_RXSRCRT
 
 /* Obsolete synonyms for the above.  */
+#define IPV6_ADD_MEMBERSHIP	IPV6_JOIN_GROUP
+#define IPV6_DROP_MEMBERSHIP	IPV6_LEAVE_GROUP
 #define IPV6_RXHOPOPTS		IPV6_HOPOPTS
 #define IPV6_RXDSTOPTS		IPV6_DSTOPTS
-#define IPV6_ADD_MEMBERSHIP	IPV6_JOIN_GROUP
-#define IPV6_DROP_MEMBERSHIP	IPV6_LEAVE_GROUP
 
-
 /* IPV6_MTU_DISCOVER values.  */
 #define IPV6_PMTUDISC_DONT	0	/* Never send DF frames.  */
 #define IPV6_PMTUDISC_WANT	1	/* Use per route hints.  */

Modified: trunk/uClibc/libc/sysdeps/linux/common/bits/ioctls.h
===================================================================
--- trunk/uClibc/libc/sysdeps/linux/common/bits/ioctls.h	2005-11-09 03:07:44 UTC (rev 12193)
+++ trunk/uClibc/libc/sysdeps/linux/common/bits/ioctls.h	2005-11-09 03:08:14 UTC (rev 12194)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1996, 1997, 1998 Free Software Foundation, Inc.
+/* Copyright (C) 1996, 1997, 1998, 2003 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
@@ -48,6 +48,7 @@
 #define SIOCSIFMEM	0x8920		/* set memory address (BSD)	*/
 #define SIOCGIFMTU	0x8921		/* get MTU size			*/
 #define SIOCSIFMTU	0x8922		/* set MTU size			*/
+#define SIOCSIFNAME	0x8923		/* set interface name		*/
 #define	SIOCSIFHWADDR	0x8924		/* set hardware address 	*/
 #define SIOCGIFENCAP	0x8925		/* get/set encapsulations       */
 #define SIOCSIFENCAP	0x8926

Modified: trunk/uClibc/libc/sysdeps/linux/common/bits/local_lim.h
===================================================================
--- trunk/uClibc/libc/sysdeps/linux/common/bits/local_lim.h	2005-11-09 03:07:44 UTC (rev 12193)
+++ trunk/uClibc/libc/sysdeps/linux/common/bits/local_lim.h	2005-11-09 03:08:14 UTC (rev 12194)
@@ -1,21 +1,21 @@
 /* Minimum guaranteed maximum values for system limits.  Linux version.
-   Copyright (C) 1993, 94, 95, 96, 97, 98, 2000 Free Software Foundation, Inc.
+   Copyright (C) 1993-1998, 2000, 2003, 2004 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 Library General Public License as
-   published by the Free Software Foundation; either version 2 of the
-   License, or (at your option) any later version.
+   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
-   Library General Public License for more details.
+   Lesser General Public License for more details.
 
-   You should have received a copy of the GNU Library General Public
-   License along with the GNU C Library; see the file COPYING.LIB.  If not,
-   write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-   Boston, MA 02111-1307, USA.  */
+   You should have received a copy of the GNU Lesser General Public
+   License along with the GNU C Library; if not, write to the Free
+   Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+   02111-1307 USA.  */
 
 /* The kernel header pollutes the namespace with the NR_OPEN symbol
    and defines LINK_MAX although filesystems have different maxima.  A
@@ -66,12 +66,24 @@
 /* This is the value this implementation supports.  */
 #define PTHREAD_THREADS_MAX	1024
 
+/* Minimum size for a thread.  We are free to choose a reasonable value.  */
+#define PTHREAD_STACK_MIN	16384
+
 /* Maximum amount by which a process can descrease its asynchronous I/O
    priority level.  */
 #define AIO_PRIO_DELTA_MAX	20
 
-/* Minimum size for a thread.  We are free to choose a reasonable value.  */
-#define PTHREAD_STACK_MIN	16384
+/* Maximum tty name length.  */
+#define TTY_NAME_MAX		32
 
+/* Maximum login name length.  This is arbitrary.  */
+#define LOGIN_NAME_MAX		256
+
+/* Maximum host name length.  */
+#define HOST_NAME_MAX		64
+
+/* Maximum message queue priority level.  */
+#define MQ_PRIO_MAX		32768
+
 /* Maximum number of POSIX timers available.  */
 #define TIMER_MAX	256

Modified: trunk/uClibc/libc/sysdeps/linux/common/bits/msq.h
===================================================================
--- trunk/uClibc/libc/sysdeps/linux/common/bits/msq.h	2005-11-09 03:07:44 UTC (rev 12193)
+++ trunk/uClibc/libc/sysdeps/linux/common/bits/msq.h	2005-11-09 03:08:14 UTC (rev 12194)
@@ -32,6 +32,7 @@
 typedef unsigned long int msgqnum_t;
 typedef unsigned long int msglen_t;
 
+
 /* Structure of record for one message inside the kernel.
    The type `struct msg' is opaque.  */
 struct msqid_ds

Modified: trunk/uClibc/libc/sysdeps/linux/common/bits/posix_opt.h
===================================================================
--- trunk/uClibc/libc/sysdeps/linux/common/bits/posix_opt.h	2005-11-09 03:07:44 UTC (rev 12193)
+++ trunk/uClibc/libc/sysdeps/linux/common/bits/posix_opt.h	2005-11-09 03:08:14 UTC (rev 12194)
@@ -1,25 +1,29 @@
 /* Define POSIX options for Linux.
-   Copyright (C) 1996,1997,1998,1999,2000,2001 Free Software Foundation, Inc.
+   Copyright (C) 1996,1997,1999,2000,2002,2003 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 Library General Public License as
-   published by the Free Software Foundation; either version 2 of the
-   License, or (at your option) any later version.
+   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
-   Library General Public License for more details.
+   Lesser General Public License for more details.
 
-   You should have received a copy of the GNU Library General Public
-   License along with the GNU C Library; see the file COPYING.LIB.  If not,
-   write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-   Boston, MA 02111-1307, USA.  */
+   You should have received a copy of the GNU Lesser General Public
+   License along with the GNU C Library; if not, write to the Free
+   Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+   02111-1307 USA.  */
 
-#ifndef	_POSIX_OPT_H
-#define	_POSIX_OPT_H	1
+/*
+ * Never include this file directly; use <unistd.h> instead.
+ */
 
+#ifndef	_BITS_POSIX_OPT_H
+#define	_BITS_POSIX_OPT_H	1
+
 /* Job control is supported.  */
 #define	_POSIX_JOB_CONTROL	1
 
@@ -27,27 +31,27 @@
 #define	_POSIX_SAVED_IDS	1
 
 /* Priority scheduling is supported.  */
-#define	_POSIX_PRIORITY_SCHEDULING	1
+#define	_POSIX_PRIORITY_SCHEDULING	200112L
 
 /* Synchronizing file data is supported.  */
-#define	_POSIX_SYNCHRONIZED_IO	1
+#define	_POSIX_SYNCHRONIZED_IO	200112L
 
 /* The fsync function is present.  */
-#define	_POSIX_FSYNC	1
+#define	_POSIX_FSYNC	200112L
 
 /* Mapping of files to memory is supported.  */
-#define	_POSIX_MAPPED_FILES	1
+#define	_POSIX_MAPPED_FILES	200112L
 
 /* Locking of all memory is supported.  */
 #ifdef __ARCH_HAS_MMU__
-# define	_POSIX_MEMLOCK	1
+# define	_POSIX_MEMLOCK	200112L
 #else
 # undef		_POSIX_MEMLOCK
 #endif
 
 /* Locking of ranges of memory is supported.  */
 #ifdef __ARCH_HAS_MMU__
-# define	_POSIX_MEMLOCK_RANGE	1
+# define	_POSIX_MEMLOCK_RANGE	200112L
 #else
 # define	_POSIX_MEMLOCK_RANGE
 #endif
@@ -105,7 +109,7 @@
 #endif
 
 /* We provide priority scheduling for threads.  */
-#define	_POSIX_THREAD_PRIORITY_SCHEDULING	1
+#define _POSIX_THREAD_PRIORITY_SCHEDULING	1
 
 /* We support user-defined stack sizes.  */
 #define _POSIX_THREAD_ATTR_STACKSIZE	1
@@ -121,7 +125,7 @@
 #endif
 
 /* Real-time signals are supported.  */
-#define _POSIX_REALTIME_SIGNALS	1
+#define _POSIX_REALTIME_SIGNALS	200112L
 
 /* We support asynchronous I/O.  */
 #define _POSIX_ASYNCHRONOUS_IO	1
@@ -147,46 +151,46 @@
 # undef _LFS64_STDIO
 #endif
 
+/* POSIX timers are available.  */
+#define _POSIX_TIMERS	200112L
+
 /* POSIX shared memory objects are implemented.  */
-#define _POSIX_SHARED_MEMORY_OBJECTS	1
+#define _POSIX_SHARED_MEMORY_OBJECTS	200112L
 
-/* GNU libc provides regular expression handling.  */
-#ifdef __UCLIBC_HAS_REGEX__
-# define _POSIX_REGEXP	1
-#else
-# undef _POSIX_REGEXP
-#endif
-
 #if defined(__i386__)
 /* CPU-time clocks supported.  */
-#define _POSIX_CPUTIME 200912L
+# define _POSIX_CPUTIME 200912L
 
 /* We support the clock also in threads.  */
-#define _POSIX_THREAD_CPUTIME  200912L
+# define _POSIX_THREAD_CPUTIME  200912L
 #endif
 
 /* Reader/Writer locks are available.  */
 #define _POSIX_READER_WRITER_LOCKS	200912L
 
+/* GNU libc provides regular expression handling.  */
+#ifdef __UCLIBC_HAS_REGEX__
+# define _POSIX_REGEXP	1
+#else
+# undef _POSIX_REGEXP
+#endif
+
 /* We have a POSIX shell.  */
 #define _POSIX_SHELL	1
 
+/* The `spawn' function family is supported.  */
+#define _POSIX_SPAWN	200912L
+
 /* We support the Timeouts option.  */
 #define _POSIX_TIMEOUTS	200912L
 
 /* We support spinlocks.  */
 #define _POSIX_SPIN_LOCKS	200912L
 
-/* The `spawn' function family is supported.  */
-#define _POSIX_SPAWN	200912L
-
-/* We have POSIX timers.  */
-#define _POSIX_TIMERS	1
-
 /* The barrier functions are available.  */
 #define _POSIX_BARRIERS	200912L
 
 /* POSIX message queues are not yet supported.  */
 #undef	_POSIX_MESSAGE_PASSING
 
-#endif /* posix_opt.h */
+#endif /* bits/posix_opt.h */

Modified: trunk/uClibc/libc/sysdeps/linux/common/bits/resource.h
===================================================================
--- trunk/uClibc/libc/sysdeps/linux/common/bits/resource.h	2005-11-09 03:07:44 UTC (rev 12193)
+++ trunk/uClibc/libc/sysdeps/linux/common/bits/resource.h	2005-11-09 03:08:14 UTC (rev 12194)
@@ -1,5 +1,6 @@
 /* Bit values & structures for resource limits.  Linux version.
-   Copyright (C) 1994,1996,1997,1998,1999,2000 Free Software Foundation, Inc.
+   Copyright (C) 1994, 1996, 1997, 1998, 1999, 2000, 2004, 2005
+   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
@@ -55,34 +56,35 @@
      This affects swapping; processes that are exceeding their
      resident set size will be more likely to have physical memory
      taken from them.  */
-  RLIMIT_RSS = 5,
-#define	RLIMIT_RSS RLIMIT_RSS
+  __RLIMIT_RSS = 5,
+#define	RLIMIT_RSS __RLIMIT_RSS
 
   /* Number of open files.  */
   RLIMIT_NOFILE = 7,
-  RLIMIT_OFILE = RLIMIT_NOFILE, /* BSD name for same.  */
+  __RLIMIT_OFILE = RLIMIT_NOFILE, /* BSD name for same.  */
 #define RLIMIT_NOFILE RLIMIT_NOFILE
-#define RLIMIT_OFILE RLIMIT_OFILE
+#define RLIMIT_OFILE __RLIMIT_OFILE
 
-  /* Address space limit (?) */
+  /* Address space limit.  */
   RLIMIT_AS = 9,
 #define RLIMIT_AS RLIMIT_AS
 
   /* Number of processes.  */
-  RLIMIT_NPROC = 6,
-#define RLIMIT_NPROC RLIMIT_NPROC
+  __RLIMIT_NPROC = 6,
+#define RLIMIT_NPROC __RLIMIT_NPROC
 
   /* Locked-in-memory address space.  */
-  RLIMIT_MEMLOCK = 8,
-#define RLIMIT_MEMLOCK RLIMIT_MEMLOCK
+  __RLIMIT_MEMLOCK = 8,
+#define RLIMIT_MEMLOCK __RLIMIT_MEMLOCK
 
   /* Maximum number of file locks.  */
-  RLIMIT_LOCKS = 10,
-#define RLIMIT_LOCKS RLIMIT_LOCKS
+  __RLIMIT_LOCKS = 10,
+#define RLIMIT_LOCKS __RLIMIT_LOCKS
 
-  RLIM_NLIMITS = 11
-#define RLIMIT_NLIMITS RLIMIT_NLIMITS
-#define RLIM_NLIMITS RLIM_NLIMITS
+  __RLIMIT_NLIMITS = 11,
+  __RLIM_NLIMITS = __RLIMIT_NLIMITS
+#define RLIMIT_NLIMITS __RLIMIT_NLIMITS
+#define RLIM_NLIMITS __RLIM_NLIMITS
 };
 
 /* Value to indicate that there is no limit.  */

Modified: trunk/uClibc/libc/sysdeps/linux/common/bits/sigthread.h
===================================================================
--- trunk/uClibc/libc/sysdeps/linux/common/bits/sigthread.h	2005-11-09 03:07:44 UTC (rev 12193)
+++ trunk/uClibc/libc/sysdeps/linux/common/bits/sigthread.h	2005-11-09 03:08:14 UTC (rev 12194)
@@ -1,21 +1,21 @@
-/* Signal handling function for threaded programs.
-   Copyright (C) 1998, 1999, 2000 Free Software Foundation, Inc.
+/* Signal handling function for threaded programs.  Generic version.
+   Copyright (C) 2000 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 Library General Public License as
-   published by the Free Software Foundation; either version 2 of the
-   License, or (at your option) any later version.
+   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
-   Library General Public License for more details.
+   Lesser General Public License for more details.
 
-   You should have received a copy of the GNU Library General Public
-   License along with the GNU C Library; see the file COPYING.LIB.  If not,
-   write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-   Boston, MA 02111-1307, USA.  */
+   You should have received a copy of the GNU Lesser General Public
+   License along with the GNU C Library; if not, write to the Free
+   Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+   02111-1307 USA.  */
 
 #ifndef _BITS_SIGTHREAD_H
 #define _BITS_SIGTHREAD_H	1
@@ -24,10 +24,10 @@
 # error "Never include this file directly.  Use <pthread.h> instead"
 #endif
 
-/* Functions for handling signals. */
-
-/* Modify the signal mask for the calling thread.  The arguments have
-   the same meaning as for sigprocmask(2). */
+/* Modify the signal mask for the calling thread.  The arguments have the
+   same meaning as for sigprocmask; in fact, this and sigprocmask might be
+   the same function.  We declare this the same on all platforms, since it
+   doesn't use any thread-related types.  */
 extern int pthread_sigmask (int __how,
 			    __const __sigset_t *__restrict __newmask,
 			    __sigset_t *__restrict __oldmask)__THROW;

Modified: trunk/uClibc/libc/sysdeps/linux/common/bits/socket.h
===================================================================
--- trunk/uClibc/libc/sysdeps/linux/common/bits/socket.h	2005-11-09 03:07:44 UTC (rev 12193)
+++ trunk/uClibc/libc/sysdeps/linux/common/bits/socket.h	2005-11-09 03:08:14 UTC (rev 12194)
@@ -1,5 +1,5 @@
 /* System-specific socket constants and types.  Linux version.
-   Copyright (C) 1991,1992,1994-1999,2000,2001 Free Software Foundation, Inc.
+   Copyright (C) 1991,1992,1994-2001, 2004 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
@@ -212,6 +212,9 @@
 
 /* Structure describing messages sent by
    `sendmsg' and received by `recvmsg'.  */
+/* Note: do not change these members to match glibc; these match the
+   SuSv3 spec already (e.g. msg_iovlen/msg_controllen).
+   http://www.opengroup.org/onlinepubs/009695399/basedefs/sys/socket.h.html */
 struct msghdr
   {
     void *msg_name;		/* Address to send to/receive from.  */

Modified: trunk/uClibc/libc/sysdeps/linux/common/bits/statvfs.h
===================================================================
--- trunk/uClibc/libc/sysdeps/linux/common/bits/statvfs.h	2005-11-09 03:07:44 UTC (rev 12193)
+++ trunk/uClibc/libc/sysdeps/linux/common/bits/statvfs.h	2005-11-09 03:08:14 UTC (rev 12194)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1997, 1998, 2000, 2001 Free Software Foundation, Inc.
+/* Copyright (C) 1997, 1998, 2000, 2001, 2002 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
@@ -22,6 +22,10 @@
 
 #include <bits/types.h>  /* For __fsblkcnt_t and __fsfilcnt_t.  */
 
+#if __WORDSIZE == 32
+#define _STATVFSBUF_F_UNUSED
+#endif
+
 struct statvfs
   {
     unsigned long int f_bsize;
@@ -42,12 +46,13 @@
     __fsfilcnt64_t f_favail;
 #endif
     unsigned long int f_fsid;
+#ifdef _STATVFSBUF_F_UNUSED
     int __f_unused;
+#endif
     unsigned long int f_flag;
     unsigned long int f_namemax;
     int __f_spare[6];
   };
-#define _STATVFSBUF_F_UNUSED
 
 #ifdef __USE_LARGEFILE64
 struct statvfs64
@@ -61,7 +66,9 @@
     __fsfilcnt64_t f_ffree;
     __fsfilcnt64_t f_favail;
     unsigned long int f_fsid;
+#ifdef _STATVFSBUF_F_UNUSED
     int __f_unused;
+#endif
     unsigned long int f_flag;
     unsigned long int f_namemax;
     int __f_spare[6];
@@ -69,14 +76,15 @@
 #endif
 
 /* Definitions for the flag in `f_flag'.  These definitions should be
-   kept in sync which the definitions in <sys/mount.h>.  */
+   kept in sync with the definitions in <sys/mount.h>.  */
 enum
 {
   ST_RDONLY = 1,		/* Mount read-only.  */
 #define ST_RDONLY	ST_RDONLY
-  ST_NOSUID = 2,		/* Ignore suid and sgid bits.  */
+  ST_NOSUID = 2			/* Ignore suid and sgid bits.  */
 #define ST_NOSUID	ST_NOSUID
 #ifdef __USE_GNU
+  ,
   ST_NODEV = 4,			/* Disallow access to device special files.  */
 # define ST_NODEV	ST_NODEV
   ST_NOEXEC = 8,		/* Disallow program execution.  */
@@ -93,7 +101,7 @@
 # define ST_IMMUTABLE	ST_IMMUTABLE
   ST_NOATIME = 1024,		/* Do not update access times.  */
 # define ST_NOATIME	ST_NOATIME
-  ST_NODIRATIME			/* Do not update directory access times.  */
+  ST_NODIRATIME = 2048		/* Do not update directory access times.  */
 # define ST_NODIRATIME	ST_NODIRATIME
 #endif	/* Use GNU.  */
 };

Modified: trunk/uClibc/libc/sysdeps/linux/common/bits/termios.h
===================================================================
--- trunk/uClibc/libc/sysdeps/linux/common/bits/termios.h	2005-11-09 03:07:44 UTC (rev 12193)
+++ trunk/uClibc/libc/sysdeps/linux/common/bits/termios.h	2005-11-09 03:08:14 UTC (rev 12194)
@@ -1,5 +1,6 @@
 /* termios type and macro definitions.  Linux version.
-   Copyright (C) 1993, 94, 95, 96, 97, 98, 99 Free Software Foundation, Inc.
+   Copyright (C) 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2003, 2005
+	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
@@ -36,6 +37,8 @@
     cc_t c_cc[NCCS];		/* control characters */
     speed_t c_ispeed;		/* input speed */
     speed_t c_ospeed;		/* output speed */
+#define _HAVE_STRUCT_TERMIOS_C_ISPEED 1
+#define _HAVE_STRUCT_TERMIOS_C_OSPEED 1
   };
 
 /* c_cc characters */
@@ -72,6 +75,7 @@
 #define IXANY	0004000
 #define IXOFF	0010000
 #define IMAXBEL	0020000
+#define IUTF8	0040000
 
 /* c_oflag bits */
 #define OPOST	0000001
@@ -168,6 +172,7 @@
 #define __MAX_BAUD B4000000
 #ifdef __USE_MISC
 # define CIBAUD	  002003600000		/* input baud rate (not used) */
+# define CMSPAR   010000000000		/* mark or space (stick) parity */
 # define CRTSCTS  020000000000		/* flow control */
 #endif
 

Modified: trunk/uClibc/libc/sysdeps/linux/common/bits/types.h
===================================================================
--- trunk/uClibc/libc/sysdeps/linux/common/bits/types.h	2005-11-09 03:07:44 UTC (rev 12193)
+++ trunk/uClibc/libc/sysdeps/linux/common/bits/types.h	2005-11-09 03:08:14 UTC (rev 12194)
@@ -37,22 +37,7 @@
 typedef unsigned int __u_int;
 typedef unsigned long int __u_long;
 
-#if __WORDSIZE == 64
-typedef long int __quad_t;
-typedef unsigned long int __u_quad_t;
-#elif defined(__GNUC__)
-__extension__ typedef unsigned long long int __u_quad_t;
-__extension__ typedef long long int __quad_t;
-#else
-typedef struct
-  {
-    long int __val[2];
-  } __quad_t;
-typedef struct
-  {
-    __u_long __val[2];
-  } __u_quad_t;
-#endif
+/* Fixed-size types, underlying types depend on word size and compiler.  */
 typedef signed char __int8_t;
 typedef unsigned char __uint8_t;
 typedef signed short int __int16_t;
@@ -66,8 +51,25 @@
 __extension__ typedef signed long long int __int64_t;
 __extension__ typedef unsigned long long int __uint64_t;
 #endif
-typedef __quad_t *__qaddr_t;
 
+/* quad_t is also 64 bits.  */
+#if __WORDSIZE == 64
+typedef long int __quad_t;
+typedef unsigned long int __u_quad_t;
+#elif defined(__GNUC__)
+__extension__ typedef long long int __quad_t;
+__extension__ typedef unsigned long long int __u_quad_t;
+#else
+typedef struct
+{
+  long __val[2];
+} __quad_t;
+typedef struct
+{
+  __u_long __val[2];
+} __u_quad_t;
+#endif
+
 #if __WORDSIZE == 32
 # define __SWORD_TYPE		int
 #elif __WORDSIZE == 64
@@ -97,6 +99,7 @@
 
 /* Everythin' else.  */
 typedef int __daddr_t;			/* The type of a disk address.  */
+typedef __quad_t *__rqaddr_t;
 typedef char *__caddr_t;
 typedef long int __time_t;
 typedef unsigned int __useconds_t;

Modified: trunk/uClibc/libc/sysdeps/linux/common/bits/waitflags.h
===================================================================
--- trunk/uClibc/libc/sysdeps/linux/common/bits/waitflags.h	2005-11-09 03:07:44 UTC (rev 12193)
+++ trunk/uClibc/libc/sysdeps/linux/common/bits/waitflags.h	2005-11-09 03:08:14 UTC (rev 12194)
@@ -1,5 +1,5 @@
 /* Definitions of flag bits for `waitpid' et al.
-   Copyright (C) 1992, 1996, 1997, 2000 Free Software Foundation, Inc.
+   Copyright (C) 1992,1996,1997,2000,2004,2005 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
@@ -26,5 +26,13 @@
 #define	WNOHANG		1	/* Don't block waiting.  */
 #define	WUNTRACED	2	/* Report status of stopped children.  */
 
+/* Bits in the fourth argument to `waitid'.  */
+#define WSTOPPED	2	/* Report stopped child (same as WUNTRACED). */
+#define WEXITED		4	/* Report dead child.  */
+#define WCONTINUED	8	/* Report continued child.  */
+#define WNOWAIT		0x01000000 /* Don't reap, just poll status.  */
+
+#define __WNOTHREAD     0x20000000 /* Don't wait on children of other threads
+				      in this group */
 #define __WALL		0x40000000 /* Wait for any child.  */
 #define __WCLONE	0x80000000 /* Wait for cloned process.  */




More information about the uClibc-cvs mailing list