fix some obscure header type size/alignment issues
authorRich Felker <dalias@aerifal.cx>
Mon, 4 Mar 2013 22:05:45 +0000 (17:05 -0500)
committerRich Felker <dalias@aerifal.cx>
Mon, 4 Mar 2013 22:05:45 +0000 (17:05 -0500)
include/net/if_arp.h
include/regex.h
include/signal.h
include/sys/socket.h

index bb5eadf18557ef08d66e7b8d653214623ec69ae3..371ab10414d96ebd0f24a273fa97d614e2e3daf8 100644 (file)
@@ -117,12 +117,12 @@ struct arpreq_old {
 #define ARPD_FLUSH     0x03
 
 struct arpd_request {
-       uint16_t req;
+       unsigned short req;
        uint32_t ip;
-       uint32_t dev;
-       uint32_t stamp;
-       uint32_t updated;
-       uint8_t ha[MAX_ADDR_LEN];
+       unsigned long dev;
+       unsigned long stamp;
+       unsigned long updated;
+       unsigned char ha[MAX_ADDR_LEN];
 };
 
 
index 2eac1ebf9bdd6a02c97c5360724561a5695573c2..ea9b894bfb8c923eaf95f57d0a868a815a19d46d 100644 (file)
@@ -17,6 +17,7 @@ typedef struct {
        size_t re_nsub;
        void *__opaque, *__padding[4];
        size_t __nsub2;
+       char __padding2;
 } regex_t;
 
 typedef struct {
index b8ba1b5a536a30a3dc6726b3d48aa58c8ffbcdb5..242b4ad2b7b73e7d5965ac733cd930d4cc3817b3 100644 (file)
@@ -103,7 +103,7 @@ union sigval {
 struct __siginfo {
        int si_signo, si_errno, si_code;
        union {
-               char __pad[128 - 3*sizeof(int)];
+               char __pad[128 - 2*sizeof(int) - sizeof(long)];
                struct {
                        pid_t si_pid;
                        uid_t si_uid;
index cf042eb1f0af830e71c223bb6d32ebf19f5c28ab..97126669144b53346182955f36b76277aa51c7c0 100644 (file)
@@ -239,10 +239,8 @@ struct sockaddr
 struct sockaddr_storage
 {
        sa_family_t ss_family;
-       union {
-               long long __align;
-               char __padding[126];
-       } __padding;
+       unsigned long __ss_align;
+       char __ss_padding[128-2*sizeof(unsigned long)];
 };
 
 int socket (int, int, int);