diff --git a/sys/net/slcompress.h b/sys/net/slcompress.h index 4e20c3768c40..6959db0671bb 100644 --- a/sys/net/slcompress.h +++ b/sys/net/slcompress.h @@ -119,8 +119,13 @@ struct cstate { u_int16_t cs_hlen; /* size of hdr (receive only) */ u_char cs_id; /* connection # associated with this state */ u_char cs_filler; - struct ip cs_ip; /* ip/tcp hdr from most recent packet */ + union { + char csu_hdr[MAX_HDR]; + struct ip csu_ip; /* ip/tcp hdr from most recent packet */ + } slcs_u; }; +#define cs_ip slcs_u.csu_ip +#define cs_hdr slcs_u.csu_hdr /* * all the state data for one serial line (we need one of these diff --git a/usr.sbin/ppp/slcompress.h b/usr.sbin/ppp/slcompress.h index 85aee7432f95..099771be134f 100644 --- a/usr.sbin/ppp/slcompress.h +++ b/usr.sbin/ppp/slcompress.h @@ -102,8 +102,14 @@ struct cstate { u_short cs_hlen; /* size of hdr (receive only) */ u_char cs_id; /* connection # associated with this state */ u_char cs_filler; - struct ip cs_ip; /* ip/tcp hdr from most recent packet */ -}; + union { + char csu_hdr[MAX_HDR]; + struct ip csu_ip; /* ip/tcp hdr from most recent packet */ + } slcs_u; + }; + +#define cs_ip slcs_u.csu_ip +#define cs_hdr slcs_u.csu_hdr /* * all the state data for one serial line (we need one of these