about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog15
-rw-r--r--sysdeps/unix/bsd/bsd4.4/bits/socket.h5
-rw-r--r--sysdeps/unix/sysv/aix/bits/socket.h7
-rw-r--r--sysdeps/unix/sysv/linux/alpha/bits/socket.h5
-rw-r--r--sysdeps/unix/sysv/linux/bits/socket.h5
-rw-r--r--sysdeps/unix/sysv/linux/ia64/bits/socket.h5
-rw-r--r--sysdeps/unix/sysv/linux/mips/bits/socket.h5
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-64/bits/socket.h5
-rw-r--r--sysdeps/unix/sysv/linux/sparc/bits/socket.h5
9 files changed, 38 insertions, 19 deletions
diff --git a/ChangeLog b/ChangeLog
index 2f2500b074..c82f0b481f 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,16 @@
+2001-09-25  Jakub Jelinek  <jakub@redhat.com>
+
+	* sysdeps/unix/bsd/bsd4.4/bits/socket.h (struct cmsghdr): Don't
+	declare __cmsg_data field if its size would be bigger than 0.
+	(CMSG_DATA): Adjust accordingly.
+	* sysdeps/unix/sysv/aix/bits/socket.h: Likewise.
+	* sysdeps/unix/sysv/linux/alpha/bits/socket.h: Likewise.
+	* sysdeps/unix/sysv/linux/ia64/bits/socket.h: Likewise.
+	* sysdeps/unix/sysv/linux/s390/s390-64/bits/socket.h: Likewise.
+	* sysdeps/unix/sysv/linux/bits/socket.h: Likewise.
+	* sysdeps/unix/sysv/linux/mips/bits/socket.h: Likewise.
+	* sysdeps/unix/sysv/linux/sparc/bits/socket.h: Likewise.
+
 2001-09-25  Ulrich Drepper  <drepper@redhat.com>
 
 	* iconvdata/TESTS: Add entries for IBM1160 and IBM1161.
@@ -764,7 +777,7 @@
 	* elf/dl-reloc.c (RESOLVE_MAP, RESOLVE): Use elf_machine_type_class
 	instead of elf_machine_lookup_noexec_p and elf_machine_lookup_noplt_p.
 	Pass type_class to _dl_lookup_*.
-	* elf/dl-lookup.c (_dl_lookup_symbol): Take type_clas parameter now.
+	* elf/dl-lookup.c (_dl_lookup_symbol): Take type_class parameter now.
 	Pass around just type_class instead of noexec, noplt pair.
 	(_dl_lookup_versioned_symbol): Likewise.
 	(_dl_lookup_symbol_skip): Pass around just type_class instead of
diff --git a/sysdeps/unix/bsd/bsd4.4/bits/socket.h b/sysdeps/unix/bsd/bsd4.4/bits/socket.h
index ef2a5bf86a..8d442aadd4 100644
--- a/sysdeps/unix/bsd/bsd4.4/bits/socket.h
+++ b/sysdeps/unix/bsd/bsd4.4/bits/socket.h
@@ -199,12 +199,13 @@ struct cmsghdr
 				   of cmsghdr structure.  */
     int cmsg_level;		/* Originating protocol.  */
     int cmsg_type;		/* Protocol specific type.  */
+#if (!defined __STRICT_ANSI__ && __GNUC__ >= 2) || __STDC_VERSION__ >= 199901L
     __extension__ unsigned char __cmsg_data __flexarr; /* Ancillary data.  */
-    /* XXX Perhaps this should be removed.  */
+#endif
   };
 
 /* Ancillary data object manipulation macros.  */
-#if !defined __STRICT_ANSI__ && defined __GNUC__ && __GNUC__ >= 2
+#if (!defined __STRICT_ANSI__ && __GNUC__ >= 2) || __STDC_VERSION__ >= 199901L
 # define CMSG_DATA(cmsg) ((cmsg)->__cmsg_data)
 #else
 # define CMSG_DATA(cmsg) ((unsigned char *) ((struct cmsghdr *) (cmsg) + 1))
diff --git a/sysdeps/unix/sysv/aix/bits/socket.h b/sysdeps/unix/sysv/aix/bits/socket.h
index 45877fade4..1fdadfe082 100644
--- a/sysdeps/unix/sysv/aix/bits/socket.h
+++ b/sysdeps/unix/sysv/aix/bits/socket.h
@@ -203,14 +203,13 @@ struct cmsghdr
 				   of cmsghdr structure.  */
     int cmsg_level;		/* Originating protocol.  */
     int cmsg_type;		/* Protocol specific type.  */
-#if !defined __STRICT_ANSI__ && defined __GNUC__ && __GNUC__ >= 2
-    unsigned char __cmsg_data[0]; /* Ancillary data.  */
-    /* XXX Perhaps this should be removed.  */
+#if (!defined __STRICT_ANSI__ && __GNUC__ >= 2) || __STDC_VERSION__ >= 199901L
+    __extension__ unsigned char __cmsg_data __flexarr; /* Ancillary data.  */
 #endif
   };
 
 /* Ancillary data object manipulation macros.  */
-#if !defined __STRICT_ANSI__ && defined __GNUC__ && __GNUC__ >= 2
+#if (!defined __STRICT_ANSI__ && __GNUC__ >= 2) || __STDC_VERSION__ >= 199901L
 # define CMSG_DATA(cmsg) ((cmsg)->__cmsg_data)
 #else
 # define CMSG_DATA(cmsg) ((unsigned char *) ((struct cmsghdr *) (cmsg) + 1))
diff --git a/sysdeps/unix/sysv/linux/alpha/bits/socket.h b/sysdeps/unix/sysv/linux/alpha/bits/socket.h
index 2d57128231..82c4302ed5 100644
--- a/sysdeps/unix/sysv/linux/alpha/bits/socket.h
+++ b/sysdeps/unix/sysv/linux/alpha/bits/socket.h
@@ -233,12 +233,13 @@ struct cmsghdr
 				   of cmsghdr structure.  */
     int cmsg_level;		/* Originating protocol.  */
     int cmsg_type;		/* Protocol specific type.  */
+#if (!defined __STRICT_ANSI__ && __GNUC__ >= 2) || __STDC_VERSION__ >= 199901L
     __extension__ unsigned char __cmsg_data __flexarr; /* Ancillary data.  */
-    /* XXX Perhaps this should be removed.  */
+#endif
   };
 
 /* Ancillary data object manipulation macros.  */
-#if !defined __STRICT_ANSI__ && defined __GNUC__ && __GNUC__ >= 2
+#if (!defined __STRICT_ANSI__ && __GNUC__ >= 2) || __STDC_VERSION__ >= 199901L
 # define CMSG_DATA(cmsg) ((cmsg)->__cmsg_data)
 #else
 # define CMSG_DATA(cmsg) ((unsigned char *) ((struct cmsghdr *) (cmsg) + 1))
diff --git a/sysdeps/unix/sysv/linux/bits/socket.h b/sysdeps/unix/sysv/linux/bits/socket.h
index 6ad4a5ed92..61644073b1 100644
--- a/sysdeps/unix/sysv/linux/bits/socket.h
+++ b/sysdeps/unix/sysv/linux/bits/socket.h
@@ -233,12 +233,13 @@ struct cmsghdr
 				   of cmsghdr structure.  */
     int cmsg_level;		/* Originating protocol.  */
     int cmsg_type;		/* Protocol specific type.  */
+#if (!defined __STRICT_ANSI__ && __GNUC__ >= 2) || __STDC_VERSION__ >= 199901L
     __extension__ unsigned char __cmsg_data __flexarr; /* Ancillary data.  */
-    /* XXX Perhaps this should be removed.  */
+#endif
   };
 
 /* Ancillary data object manipulation macros.  */
-#if !defined __STRICT_ANSI__ && defined __GNUC__ && __GNUC__ >= 2
+#if (!defined __STRICT_ANSI__ && __GNUC__ >= 2) || __STDC_VERSION__ >= 199901L
 # define CMSG_DATA(cmsg) ((cmsg)->__cmsg_data)
 #else
 # define CMSG_DATA(cmsg) ((unsigned char *) ((struct cmsghdr *) (cmsg) + 1))
diff --git a/sysdeps/unix/sysv/linux/ia64/bits/socket.h b/sysdeps/unix/sysv/linux/ia64/bits/socket.h
index c96fccd772..59e0b1bf4f 100644
--- a/sysdeps/unix/sysv/linux/ia64/bits/socket.h
+++ b/sysdeps/unix/sysv/linux/ia64/bits/socket.h
@@ -233,12 +233,13 @@ struct cmsghdr
 				   of cmsghdr structure.  */
     int cmsg_level;		/* Originating protocol.  */
     int cmsg_type;		/* Protocol specific type.  */
+#if (!defined __STRICT_ANSI__ && __GNUC__ >= 2) || __STDC_VERSION__ >= 199901L
     __extension__ unsigned char __cmsg_data __flexarr; /* Ancillary data.  */
-    /* XXX Perhaps this should be removed.  */
+#endif
   };
 
 /* Ancillary data object manipulation macros.  */
-#if !defined __STRICT_ANSI__ && defined __GNUC__ && __GNUC__ >= 2
+#if (!defined __STRICT_ANSI__ && __GNUC__ >= 2) || __STDC_VERSION__ >= 199901L
 # define CMSG_DATA(cmsg) ((cmsg)->__cmsg_data)
 #else
 # define CMSG_DATA(cmsg) ((unsigned char *) ((struct cmsghdr *) (cmsg) + 1))
diff --git a/sysdeps/unix/sysv/linux/mips/bits/socket.h b/sysdeps/unix/sysv/linux/mips/bits/socket.h
index 482eefe257..a10c3a711a 100644
--- a/sysdeps/unix/sysv/linux/mips/bits/socket.h
+++ b/sysdeps/unix/sysv/linux/mips/bits/socket.h
@@ -233,12 +233,13 @@ struct cmsghdr
 				   of cmsghdr structure.  */
     int cmsg_level;		/* Originating protocol.  */
     int cmsg_type;		/* Protocol specific type.  */
+#if (!defined __STRICT_ANSI__ && __GNUC__ >= 2) || __STDC_VERSION__ >= 199901L
     __extension__ unsigned char __cmsg_data __flexarr; /* Ancillary data.  */
-    /* XXX Perhaps this should be removed.  */
+#endif
   };
 
 /* Ancillary data object manipulation macros.  */
-#if !defined __STRICT_ANSI__ && defined __GNUC__ && __GNUC__ >= 2
+#if (!defined __STRICT_ANSI__ && __GNUC__ >= 2) || __STDC_VERSION__ >= 199901L
 # define CMSG_DATA(cmsg) ((cmsg)->__cmsg_data)
 #else
 # define CMSG_DATA(cmsg) ((unsigned char *) ((struct cmsghdr *) (cmsg) + 1))
diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/bits/socket.h b/sysdeps/unix/sysv/linux/s390/s390-64/bits/socket.h
index b9290058ec..3b689563e0 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-64/bits/socket.h
+++ b/sysdeps/unix/sysv/linux/s390/s390-64/bits/socket.h
@@ -233,12 +233,13 @@ struct cmsghdr
 				   of cmsghdr structure.  */
     int cmsg_level;		/* Originating protocol.  */
     int cmsg_type;		/* Protocol specific type.  */
+#if (!defined __STRICT_ANSI__ && __GNUC__ >= 2) || __STDC_VERSION__ >= 199901L
     __extension__ unsigned char __cmsg_data __flexarr; /* Ancillary data.  */
-    /* XXX Perhaps this should be removed.  */
+#endif
   };
 
 /* Ancillary data object manipulation macros.  */
-#if !defined __STRICT_ANSI__ && defined __GNUC__ && __GNUC__ >= 2
+#if (!defined __STRICT_ANSI__ && __GNUC__ >= 2) || __STDC_VERSION__ >= 199901L
 # define CMSG_DATA(cmsg) ((cmsg)->__cmsg_data)
 #else
 # define CMSG_DATA(cmsg) ((unsigned char *) ((struct cmsghdr *) (cmsg) + 1))
diff --git a/sysdeps/unix/sysv/linux/sparc/bits/socket.h b/sysdeps/unix/sysv/linux/sparc/bits/socket.h
index a2471ab192..4dfcee41c9 100644
--- a/sysdeps/unix/sysv/linux/sparc/bits/socket.h
+++ b/sysdeps/unix/sysv/linux/sparc/bits/socket.h
@@ -239,12 +239,13 @@ struct cmsghdr
 				   of cmsghdr structure.  */
     int cmsg_level;		/* Originating protocol.  */
     int cmsg_type;		/* Protocol specific type.  */
+#if (!defined __STRICT_ANSI__ && __GNUC__ >= 2) || __STDC_VERSION__ >= 199901L
     __extension__ unsigned char __cmsg_data __flexarr; /* Ancillary data.  */
-    /* XXX Perhaps this should be removed.  */
+#endif
   };
 
 /* Ancillary data object manipulation macros.  */
-#if !defined __STRICT_ANSI__ && defined __GNUC__ && __GNUC__ >= 2
+#if (!defined __STRICT_ANSI__ && __GNUC__ >= 2) || __STDC_VERSION__ >= 199901L
 # define CMSG_DATA(cmsg) ((cmsg)->__cmsg_data)
 #else
 # define CMSG_DATA(cmsg) ((unsigned char *) ((struct cmsghdr *) (cmsg) + 1))