# /* VII net header */ struct net_hdr { char v2_dest; /* V2 net dest. addr. */ char v2_src; /* V2 net src addr. */ char v2_prot1; /* MIT protocol hdr word (MPHW) */ char v2_prot2; /* Subfield for MPHW */ short v2_zero; /* Padding */ }; #define NETHSIZ sizeof(struct net_hdr) #define NETMAX 2046 #define MPHWPROT 2 /* MIT protocol hdr word (MPHW) */ #define INETPROT 1 /* internet protocol id for MPHW type hdr */ /* Internet name */ struct in_name { char in_net; /* Net */ char in_snet; /* Subnet */ char in_rsvd; char in_host; /* Host */ }; /* Internet header */ struct inet_hdr { char ip_ihlver; /* Inet hdr length in 32 bit words */ /* Header version */ char ip_tsrv; /* Type of service */ short ip_len; /* Total packet length inc. header */ short ip_id; /* Id to help in fragmentation */ short ip_foff : 13; /* Fragment offset */ short ip_flgs : 3; /* Flags */ char ip_time; /* Packet time to live in secs */ char ip_prot; /* Protocol number */ short ip_chksum; /* Inet hdr chksum */ long ip_src; /* Source name */ long ip_dest; /* Dest. name */ }; #define IPHSIZ sizeof(struct inet_hdr) #define MAXINET 576 /* Standard max. inet pkt size */ #define IPDATASZ 566 /* MAXINET - IPHSIZ + 10 pad bytes must keep pad bytes for reassembly and for net padding */ #define IPOPTSZ 40 /* Internet hdr - option max len */ #define MOREFRAGS 01 /* More fragments - inet flag */ #define TCPPROT 6 /* Internet TCP protocol */ #define DGPROT 17 /* Internet datagram protocol */ #define GWPROT 3 /* Internet gateway to gateway prot */ /* TCP Header */ struct tcp_hdr { short tcp_sskt; /* Source socket */ short tcp_dskt; /* Destination socket */ short tcp_seqno; /* Sequence no. */ short tcp_ackno; /* Acknowledgement no. */ short tcp_flags : 6; /* Fin/Syn/Rst/Eol/Ack/Urg */ short tcp_rsvd : 6; /* Reserved */ short tcp_off : 4; /* Offset to data */ short tcp_window; /* Window size */ short tcp_cksum; /* Chksum */ short tcp_urgp; /* Urgent pointer */ }; /* User Datagram Header */ struct dgm_hdr { short dg_sskt; /* Source socket */ short dg_dskt; /* Destination socket */ short dg_len; /* Length */ short dg_cksum; /* Chksum */ }; #define DGICP 69 /* ICP socket no. for tftp */