mirror of
https://sourceware.org/git/glibc.git
synced 2025-08-07 06:43:00 +03:00
Hi Joseph, As we discussed, this patch just makes C23 include every check that is performed by C11. I tested the commit by adding the ISO23 Make and Python variables to be the same as ISO11. So the only difference was compiling with -DISO23 instead of -DISO11. And changed the temporary directories to instead use the format f'/tmp/glibc-{self.standard}-{self.header}'. Then I used a shell script to run 'cmp' on each file in the ISO11 and ISO23 directories for each header to make sure they were the same. -- 8< -- Make C23 checks include every test that is performed by C11. Done by running the following command: find conform -name '*.h-data' | xargs sed -i \ -e 's| !defined ISO11| !defined ISO11 \&\& !defined ISO23|g' \ -e 's| defined ISO11| defined ISO11 \|\| defined ISO23|g' \ -e 's|ifdef ISO11|if defined ISO11 \|\| defined ISO23|g' \ -e 's|ifndef ISO11|if !defined ISO11 \&\& !defined ISO23|g' Signed-off-by: Collin Funk <collin.funk1@gmail.com>
98 lines
2.2 KiB
Plaintext
98 lines
2.2 KiB
Plaintext
#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined ISO23 && !defined POSIX && !defined XPG4
|
|
type in_port_t
|
|
type in_addr_t
|
|
|
|
type sa_family_t
|
|
|
|
type {struct in_addr}
|
|
|
|
element {struct in_addr} in_addr_t s_addr
|
|
|
|
type {struct sockaddr_in}
|
|
|
|
element {struct sockaddr_in} sa_family_t sin_family
|
|
element {struct sockaddr_in} in_port_t sin_port
|
|
element {struct sockaddr_in} {struct in_addr} sin_addr
|
|
element {struct sockaddr_in} {unsigned char} sin_zero [8]
|
|
|
|
type {struct in6_addr}
|
|
|
|
element {struct in6_addr} uint8_t s6_addr [16]
|
|
|
|
type {struct sockaddr_in6}
|
|
|
|
element {struct sockaddr_in6} sa_family_t sin6_family
|
|
element {struct sockaddr_in6} in_port_t sin6_port
|
|
element {struct sockaddr_in6} uint32_t sin6_flowinfo
|
|
element {struct sockaddr_in6} {struct in6_addr} sin6_addr
|
|
element {struct sockaddr_in6} uint32_t sin6_scope_id
|
|
|
|
variable {const struct in6_addr} in6addr_any
|
|
|
|
// constant IN6ADDR_ANY_INIT
|
|
macro IN6ADDR_ANY_INIT
|
|
|
|
variable {const struct in6_addr} in6addr_loopback
|
|
|
|
// constant IN6ADDR_LOOPBACK_INIT
|
|
macro IN6ADDR_LOOPBACK_INIT
|
|
|
|
type {struct ipv6_mreq}
|
|
|
|
element {struct ipv6_mreq} {struct in6_addr} ipv6mr_multiaddr
|
|
element {struct ipv6_mreq} {unsigned int} ipv6mr_interface
|
|
|
|
macro IPPROTO_IP
|
|
macro IPPROTO_IPV6
|
|
macro IPPROTO_ICMP
|
|
macro IPPROTO_TCP
|
|
macro IPPROTO_UDP
|
|
|
|
macro INADDR_ANY
|
|
macro INADDR_BROADCAST
|
|
|
|
constant INET_ADDRSTRLEN == 16
|
|
|
|
function uint32_t htonl (uint32_t)
|
|
function uint16_t htons (uint16_t)
|
|
function uint32_t ntohl (uint32_t)
|
|
function uint16_t ntohs (uint16_t)
|
|
|
|
allow-header inttypes.h
|
|
allow-header sys/socket.h
|
|
|
|
constant INET6_ADDRSTRLEN == 46
|
|
|
|
macro IPV6_JOIN_GROUP
|
|
macro IPV6_LEAVE_GROUP
|
|
macro IPV6_MULTICAST_HOPS
|
|
macro IPV6_MULTICAST_IF
|
|
macro IPV6_MULTICAST_LOOP
|
|
macro IPV6_UNICAST_HOPS
|
|
|
|
macro IN6_IS_ADDR_UNSPECIFIED
|
|
macro IN6_IS_ADDR_LOOPBACK
|
|
macro IN6_IS_ADDR_MULTICAST
|
|
macro IN6_IS_ADDR_LINKLOCAL
|
|
macro IN6_IS_ADDR_SITELOCAL
|
|
macro IN6_IS_ADDR_V4MAPPED
|
|
macro IN6_IS_ADDR_V4COMPAT
|
|
macro IN6_IS_ADDR_MC_NODELOCAL
|
|
macro IN6_IS_ADDR_MC_LINKLOCAL
|
|
macro IN6_IS_ADDR_MC_SITELOCAL
|
|
macro IN6_IS_ADDR_MC_ORGLOCAL
|
|
macro IN6_IS_ADDR_MC_GLOBAL
|
|
|
|
allow IMPLINK_*
|
|
allow IN_*
|
|
allow IN6_*
|
|
allow INADDR_*
|
|
allow IP_*
|
|
allow IPV6_*
|
|
allow IPPORT_*
|
|
allow IPPROTO_*
|
|
allow SOCK_*
|
|
allow sin_*
|
|
allow sin6_*
|
|
#endif
|