On 12/10/20 2:34 PM, Rainer Orth wrote:
I've just checked: <netinet/icmp6.h> is effectively unchanged since
Solaris 10.
Besides, there's gcc211 in the GCC compile farm, running Solaris 11.3/SPARC.
Ah, thanks, I wasn't aware there was a compile farm available to GCC
developers. I've applied for an account, but it sounds like it may take
a while to get approved.
My theory was wrong, by the way. This CĀ snippet, representative of the
Solaris headers, expands just fine:
struct in6_addr {
union {
uint8_t __u6_addr8[16];
uint16_t __u6_addr16[8];
uint32_t __u6_addr32[4];
} __u6_addr; /* 128-bit IP6 address */
};
typedef struct icmp6_hdr {
uint8_t icmp6_type; /* type field */
uint8_t icmp6_code; /* code field */
uint16_t icmp6_cksum; /* checksum field */
union {
uint32_t icmp6_un_data32[1]; /* type-specific field */
uint16_t icmp6_un_data16[2]; /* type-specific field */
uint8_t icmp6_un_data8[4]; /* type-specific field */
} icmp6_dataun;
} icmp6_t;
typedef struct mld_hdr {
struct icmp6_hdr mld_icmp6_hdr;
struct in6_addr mld_addr; /* multicast address */
} mld_hdr_t;
Something else is afoot here, but I'm not sure what.
Nikhil