From 24e16f2e1c1c0e85496a6d276a9c7783df4601ce Mon Sep 17 00:00:00 2001 From: Garrett Wollman Date: Tue, 7 Feb 1995 02:01:57 +0000 Subject: [PATCH] Merge in the socket-level support for Transaction TCP from the OLAH_TTCP branch. Submitted by: Andras Olah --- sys/net/route.h | 12 +++++++++++- sys/sys/protosw.h | 12 +++++++++--- sys/sys/socket.h | 3 ++- 3 files changed, 22 insertions(+), 5 deletions(-) diff --git a/sys/net/route.h b/sys/net/route.h index 97ec9e4d36a..94b9be77d83 100644 --- a/sys/net/route.h +++ b/sys/net/route.h @@ -31,7 +31,7 @@ * SUCH DAMAGE. * * @(#)route.h 8.3 (Berkeley) 4/19/94 - * $Id: route.h,v 1.7 1995/01/23 02:00:35 wollman Exp $ + * $Id: route.h,v 1.8 1995/01/24 04:47:33 bde Exp $ */ #ifndef _NET_ROUTE_H_ @@ -184,7 +184,17 @@ struct rt_msghdr { struct rt_metrics rtm_rmx; /* metrics themselves */ }; +<<<<<<< route.h #define RTM_VERSION 5 /* Up the ante and ignore older versions */ +||||||| 1.5.4.1 +#define RTM_VERSION 3 /* Up the ante and ignore older versions */ +======= +#define RTM_VERSION 3 /* Up the ante and ignore older versions */ +#ifdef TTCP +#undef RTM_VERSION +#define RTM_VERSION 4 /* T/TCP requires changes in the rmx */ +#endif +>>>>>>> /tmp/T4000726 #define RTM_ADD 0x1 /* Add Route */ #define RTM_DELETE 0x2 /* Delete Route */ diff --git a/sys/sys/protosw.h b/sys/sys/protosw.h index c3749acded6..f01f91013c9 100644 --- a/sys/sys/protosw.h +++ b/sys/sys/protosw.h @@ -31,7 +31,7 @@ * SUCH DAMAGE. * * @(#)protosw.h 8.1 (Berkeley) 6/2/93 - * $Id: protosw.h,v 1.4 1994/10/08 01:45:27 phk Exp $ + * $Id: protosw.h,v 1.5 1994/10/08 22:22:57 phk Exp $ */ #ifndef _SYS_PROTOSW_H_ @@ -86,12 +86,17 @@ struct protosw { * Values for pr_flags. * PR_ADDR requires PR_ATOMIC; * PR_ADDR and PR_CONNREQUIRED are mutually exclusive. + * PR_IMPLOPCL means that the protocol allows sendto without prior connect, + * and the protocol understands the MSG_EOF flag. The first property is + * is only relevant if PR_CONNREQUIRED is set (otherwise sendto is allowed + * anyhow). */ #define PR_ATOMIC 0x01 /* exchange atomic messages only */ #define PR_ADDR 0x02 /* addresses given with messages */ #define PR_CONNREQUIRED 0x04 /* connection required by protocol */ #define PR_WANTRCVD 0x08 /* want PRU_RCVD calls */ #define PR_RIGHTS 0x10 /* passes capabilities */ +#define PR_IMPLOPCL 0x20 /* implied open/close */ /* * The arguments to usrreq are: @@ -128,8 +133,8 @@ struct protosw { #define PRU_SLOWTIMO 19 /* 500ms timeout */ #define PRU_PROTORCV 20 /* receive from below */ #define PRU_PROTOSEND 21 /* send to below */ - -#define PRU_NREQ 21 +#define PRU_SEND_EOF 22 /* send and close */ +#define PRU_NREQ 22 #ifdef PRUREQUESTS char *prurequests[] = { @@ -139,6 +144,7 @@ char *prurequests[] = { "SENSE", "RCVOOB", "SENDOOB", "SOCKADDR", "PEERADDR", "CONNECT2", "FASTTIMO", "SLOWTIMO", "PROTORCV", "PROTOSEND", + "SEND_EOF", }; #endif diff --git a/sys/sys/socket.h b/sys/sys/socket.h index 0ca321a5fa2..05f3fb2abbc 100644 --- a/sys/sys/socket.h +++ b/sys/sys/socket.h @@ -31,7 +31,7 @@ * SUCH DAMAGE. * * @(#)socket.h 8.4 (Berkeley) 2/21/94 - * $Id: socket.h,v 1.4 1994/10/08 22:22:59 phk Exp $ + * $Id: socket.h,v 1.5 1995/01/05 19:51:51 se Exp $ */ #ifndef _SYS_SOCKET_H_ @@ -265,6 +265,7 @@ struct msghdr { #define MSG_CTRUNC 0x20 /* control data lost before delivery */ #define MSG_WAITALL 0x40 /* wait for full request or error */ #define MSG_DONTWAIT 0x80 /* this message should be nonblocking */ +#define MSG_EOF 0x100 /* data completes connection */ #define MSG_COMPAT 0x8000 /* used in sendit() */ /*