| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172 | /* * Copyright (c) 1982, 1986 Regents of the University of California. * All rights reserved. * * Redistribution and use in source and binary forms are permitted * provided that the above copyright notice and this paragraph are * duplicated in all such forms and that any documentation, * advertising materials, and other materials related to such * distribution and use acknowledge that the software was developed * by the University of California, Berkeley.  The name of the * University may not be used to endorse or promote products derived * from this software without specific prior written permission. * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. * *	@(#)tcp.h	7.5 (Berkeley) 6/29/88 */#ifndef _NETINET_IP_TCP_H#define _NETINET_IP_TCP_H#include <endian.h>#include <linux/socket.h>#include <sys/types.h>typedef	u_int32_t	tcp_seq;/* * TCP header. * Per RFC 793, September, 1981. */struct tcphdr {	u_short	th_sport;		/* source port */	u_short	th_dport;		/* destination port */	tcp_seq	th_seq;			/* sequence number */	tcp_seq	th_ack;			/* acknowledgement number */#if __BYTE_ORDER == __LITTLE_ENDIAN 	u_char	th_x2:4,		/* (unused) */		th_off:4;		/* data offset */#endif#if __BYTE_ORDER == __BIG_ENDIAN 	u_char	th_off:4,		/* data offset */		th_x2:4;		/* (unused) */#endif	u_char	th_flags;#define	TH_FIN	0x01#define	TH_SYN	0x02#define	TH_RST	0x04#define	TH_PUSH	0x08#define	TH_ACK	0x10#define	TH_URG	0x20	u_short	th_win;			/* window */	u_short	th_sum;			/* checksum */	u_short	th_urp;			/* urgent pointer */};#define	TCPOPT_EOL	0#define	TCPOPT_NOP	1#define	TCPOPT_MAXSEG	2/* * Default maximum segment size for TCP. * With an IP MSS of 576, this is 536, * but 512 is probably more convenient. */#ifdef	lint#define	TCP_MSS	536#else#define	TCP_MSS	MIN(512, IP_MSS - sizeof (struct tcpiphdr))#endif#endif /* _NETINET_TCP_H */
 |