xref: /csrg-svn/sys/deprecated/netpup/pup.h (revision 14246)
1*14246Ssam /*	pup.h	6.1	83/07/29	*/
25849Sroot 
312826Ssam struct	pupport {
412826Ssam 	u_char	pup_net;
512826Ssam 	u_char	pup_host;
612826Ssam 	u_char	pup_socket[4];
76027Ssam };
85849Sroot 
95849Sroot /*
105849Sroot  * PUP header.
115849Sroot  */
125849Sroot struct pup_header {
135849Sroot 	u_short	pup_length;
145849Sroot 	u_char	pup_tcontrol;		/* transport control */
155849Sroot 	u_char	pup_type;		/* protocol type */
165849Sroot 	u_long	pup_id;			/* used by protocols */
1712826Ssam 	u_char	pup_dnet;		/* destination */
1812826Ssam 	u_char	pup_dhost;
1912826Ssam 	u_char	pup_dsock[4];
2012826Ssam 	u_char	pup_snet;		/* source */
2112826Ssam 	u_char	pup_shost;
2212826Ssam 	u_char	pup_ssock[4];
235849Sroot };
245849Sroot 
255849Sroot #define	PUP_TRACE	01		/* trace pup in network */
266027Ssam 
2712826Ssam #define	MINPUPSIZ	(sizeof (struct pup_header) + sizeof (short))
2812826Ssam #define	MAXPUPDATA	532
2912826Ssam #define	MAXPUPSIZ	(MINPUPSIZ + MAXPUPDATA)
3012826Ssam 
3112826Ssam #define	PUP_NOCKSUM	0xffff		/* no checksum supplied */
3212826Ssam 
336027Ssam /*
346027Ssam  * A sockaddr, as seen through the eyes of PUP.
356027Ssam  */
366027Ssam struct sockaddr_pup {
376027Ssam 	short	spup_family;
386027Ssam 	short	spup_zero1;
3912826Ssam 	u_char	spup_net;
4012826Ssam 	u_char	spup_host;
4112826Ssam 	u_char	spup_sock[4];
426027Ssam 	char	spup_zero2[4];
436027Ssam };
44