/** A socket address family */
typedef uint16_t sa_family_t;
+/** Length of a @c struct @c sockaddr */
+#define SA_LEN 32
+
/**
* Generalized socket address structure
*
* This is an AF_XXX constant.
*/
sa_family_t sa_family;
+ /** Padding
+ *
+ * This ensures that a struct @c sockaddr_tcpip is large
+ * enough to hold a socket address for any TCP/IP address
+ * family.
+ */
+ char pad[ SA_LEN - sizeof ( sa_family_t ) ];
};
#endif /* _GPXE_SOCKET_H */
*/
#define TCPIP_EMPTY_CSUM 0xffff
-/** Length of a @c struct @c sockaddr_tcpip */
-#define SA_TCPIP_LEN 32
-
/**
* TCP/IP socket address
*
* enough to hold a socket address for any TCP/IP address
* family.
*/
- char pad[SA_TCPIP_LEN - sizeof ( sa_family_t ) - sizeof ( uint16_t )];
+ char pad[ sizeof ( struct sockaddr ) -
+ ( sizeof ( sa_family_t ) + sizeof ( uint16_t ) ) ];
};
/**