diff options
Diffstat (limited to 'bits')
-rw-r--r-- | bits/in.h | 7 | ||||
-rw-r--r-- | bits/libc-lock.h | 3 | ||||
-rw-r--r-- | bits/sigaction.h | 2 | ||||
-rw-r--r-- | bits/stdio-lock.h | 17 |
4 files changed, 22 insertions, 7 deletions
@@ -57,7 +57,7 @@ struct ip_opts /* IPV6 socket options. */ #define IPV6_ADDRFORM 1 -#define IPV6_RXINFO 2 +#define IPV6_PKTINFO 2 #define IPV6_HOPOPTS 3 #define IPV6_DSTOPTS 4 #define IPV6_RTHDR 5 @@ -65,8 +65,9 @@ struct ip_opts #define IPV6_CHECKSUM 7 #define IPV6_HOPLIMIT 8 -#define IPV6_TXINFO IPV6_RXINFO -#define SCM_SRCINFO IPV6_TXINFO +#define IPV6_RXINFO IPV6_PKTINFO +#define IPV6_TXINFO IPV6_PKTINFO +#define SCM_SRCINFO IPV6_PKTINFO #define SCM_SRCRT IPV6_RXSRCRT #define IPV6_UNICAST_HOPS 16 diff --git a/bits/libc-lock.h b/bits/libc-lock.h index 3f9c211e0a..a307f8cfff 100644 --- a/bits/libc-lock.h +++ b/bits/libc-lock.h @@ -98,6 +98,9 @@ } \ } while (0) +/* Get once control variable. */ +#define __libc_once_get(ONCE_CONTROL) \ + ((ONCE_CONTROL) == 1) /* Start a critical region with a cleanup function */ #define __libc_cleanup_region_start(DOIT, FCT, ARG) \ diff --git a/bits/sigaction.h b/bits/sigaction.h index adcc276cc8..97242a6edf 100644 --- a/bits/sigaction.h +++ b/bits/sigaction.h @@ -55,6 +55,8 @@ struct sigaction /* Bits in `sa_flags'. */ #if defined __USE_UNIX98 || defined __USE_MISC # define SA_ONSTACK 0x0001 /* Take signal on signal stack. */ +#endif +#if defined __USE_UNIX98 || defined __USE_MISC || defined __USE_XOPEN2K8 # define SA_RESTART 0x0002 /* Restart syscall on signal return. */ # define SA_NODEFER 0x0010 /* Don't automatically block the signal when its handler is being executed. */ diff --git a/bits/stdio-lock.h b/bits/stdio-lock.h index d7c1db0132..3407171e03 100644 --- a/bits/stdio-lock.h +++ b/bits/stdio-lock.h @@ -47,12 +47,21 @@ __libc_lock_define_recursive (typedef, _IO_lock_t) #if defined _LIBC && !defined NOT_IN_libc # define _IO_acquire_lock(_fp) \ - _IO_cleanup_region_start ((void (*) (void *)) _IO_funlockfile, (_fp)); \ - _IO_flockfile (_fp) + { \ + _IO_FILE *_IO_acquire_lock_file = _fp; \ + __libc_cleanup_region_start (1, (void (*) (void *)) _IO_acquire_lock_fct, &_IO_acquire_lock_file); \ + _IO_flockfile (_IO_acquire_lock_file) + +# define _IO_acquire_lock_clear_flags2(_fp) \ + { \ + _IO_FILE *_IO_acquire_lock_file = _fp; \ + __libc_cleanup_region_start (1, (void (*) (void *)) _IO_acquire_lock_clear_flags2_fct, &_IO_acquire_lock_file); \ + _IO_flockfile (_IO_acquire_lock_file) # define _IO_release_lock(_fp) \ - _IO_funlockfile (_fp); \ - _IO_cleanup_region_end (0) + __libc_cleanup_region_end (1); \ + } + #endif #endif /* bits/stdio-lock.h */ |