diff options
Diffstat (limited to 'newlib/libc/sys/linux/include/netns')
-rw-r--r-- | newlib/libc/sys/linux/include/netns/idp.h | 52 | ||||
-rw-r--r-- | newlib/libc/sys/linux/include/netns/idp_var.h | 55 | ||||
-rw-r--r-- | newlib/libc/sys/linux/include/netns/ns.h | 154 | ||||
-rw-r--r-- | newlib/libc/sys/linux/include/netns/ns_error.h | 96 | ||||
-rw-r--r-- | newlib/libc/sys/linux/include/netns/ns_if.h | 89 | ||||
-rw-r--r-- | newlib/libc/sys/linux/include/netns/ns_pcb.h | 85 | ||||
-rw-r--r-- | newlib/libc/sys/linux/include/netns/sp.h | 58 | ||||
-rw-r--r-- | newlib/libc/sys/linux/include/netns/spidp.h | 68 | ||||
-rw-r--r-- | newlib/libc/sys/linux/include/netns/spp_debug.h | 65 | ||||
-rw-r--r-- | newlib/libc/sys/linux/include/netns/spp_timer.h | 128 | ||||
-rw-r--r-- | newlib/libc/sys/linux/include/netns/spp_var.h | 221 |
11 files changed, 0 insertions, 1071 deletions
diff --git a/newlib/libc/sys/linux/include/netns/idp.h b/newlib/libc/sys/linux/include/netns/idp.h deleted file mode 100644 index 05cd4252b..000000000 --- a/newlib/libc/sys/linux/include/netns/idp.h +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Copyright (c) 1984, 1985, 1986, 1987, 1993 - * The Regents of the University of California. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * @(#)idp.h 8.1 (Berkeley) 6/10/93 - * $FreeBSD: src/sys/netns/idp.h,v 1.8 1999/08/28 00:49:46 peter Exp $ - */ - -#ifndef _NETNS_IDP_H_ -#define _NETNS_IDP_H_ - -/* - * Definitions for NS(tm) Internet Datagram Protocol - */ -struct idp { - u_short idp_sum; /* Checksum */ - u_short idp_len; /* Length, in bytes, including header */ - u_char idp_tc; /* Transport Control (i.e. hop count) */ - u_char idp_pt; /* Packet Type (i.e. level 2 protocol) */ - struct ns_addr idp_dna; /* Destination Network Address */ - struct ns_addr idp_sna; /* Source Network Address */ -}; - -#endif diff --git a/newlib/libc/sys/linux/include/netns/idp_var.h b/newlib/libc/sys/linux/include/netns/idp_var.h deleted file mode 100644 index aaeb1e028..000000000 --- a/newlib/libc/sys/linux/include/netns/idp_var.h +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Copyright (c) 1984, 1985, 1986, 1987, 1993 - * The Regents of the University of California. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * @(#)idp_var.h 8.1 (Berkeley) 6/10/93 - * $FreeBSD: src/sys/netns/idp_var.h,v 1.10 1999/12/29 04:46:18 peter Exp $ - */ - -#ifndef _NETNS_IDP_VAR_H_ -#define _NETNS_IDP_VAR_H_ - -/* - * IDP Kernel Structures and Variables - */ -struct idpstat { - int idps_badsum; /* checksum bad */ - int idps_tooshort; /* packet too short */ - int idps_toosmall; /* not enough data */ - int idps_badhlen; /* ip header length < data size */ - int idps_badlen; /* ip length < ip header length */ -}; - -#ifdef _KERNEL -struct idpstat idpstat; -#endif - -#endif diff --git a/newlib/libc/sys/linux/include/netns/ns.h b/newlib/libc/sys/linux/include/netns/ns.h deleted file mode 100644 index 94c801713..000000000 --- a/newlib/libc/sys/linux/include/netns/ns.h +++ /dev/null @@ -1,154 +0,0 @@ -/* - * Copyright (c) 1984, 1985, 1986, 1987, 1993 - * The Regents of the University of California. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * @(#)ns.h 8.1 (Berkeley) 6/10/93 - * $FreeBSD: src/sys/netns/ns.h,v 1.15 2002/03/20 02:39:27 alfred Exp $ - */ - -#ifndef _NETNS_NS_H_ -#define _NETNS_NS_H_ - -/* - * Constants and Structures defined by the Xerox Network Software - * per "Internet Transport Protocols", XSIS 028112, December 1981 - */ - -/* - * Protocols - */ -#define NSPROTO_RI 1 /* Routing Information */ -#define NSPROTO_ECHO 2 /* Echo Protocol */ -#define NSPROTO_ERROR 3 /* Error Protocol */ -#define NSPROTO_PE 4 /* Packet Exchange */ -#define NSPROTO_SPP 5 /* Sequenced Packet */ -#define NSPROTO_RAW 255 /* Placemarker*/ -#define NSPROTO_MAX 256 /* Placemarker*/ - - -/* - * Port/Socket numbers: network standard functions - */ - -#define NSPORT_RI 1 /* Routing Information */ -#define NSPORT_ECHO 2 /* Echo */ -#define NSPORT_RE 3 /* Router Error */ - -/* - * Ports < NSPORT_RESERVED are reserved for priveleged - * processes (e.g. root). - */ -#define NSPORT_RESERVED 3000 - -/* flags passed to ns_output as last parameter */ - -#define NS_FORWARDING 0x1 /* most of idp header exists */ -#define NS_ROUTETOIF 0x10 /* same as SO_DONTROUTE */ -#define NS_ALLOWBROADCAST SO_BROADCAST /* can send broadcast packets */ - -#define NS_MAXHOPS 15 - -/* flags passed to get/set socket option */ -#define SO_HEADERS_ON_INPUT 1 -#define SO_HEADERS_ON_OUTPUT 2 -#define SO_DEFAULT_HEADERS 3 -#define SO_LAST_HEADER 4 -#define SO_NSIP_ROUTE 5 -#define SO_SEQNO 6 -#define SO_ALL_PACKETS 7 -#define SO_MTU 8 - - -/* - * NS addressing - */ -union ns_host { - u_char c_host[6]; - u_short s_host[3]; -}; - -union ns_net { - u_char c_net[4]; - u_short s_net[2]; -}; - -union ns_net_u { - union ns_net net_e; - u_long long_e; -}; - -struct ns_addr { - union ns_net x_net; - union ns_host x_host; - u_short x_port; -}; - -/* - * Socket address, Xerox style - */ -struct sockaddr_ns { - u_char sns_len; - u_char sns_family; - struct ns_addr sns_addr; - char sns_zero[2]; -}; -#define sns_port sns_addr.x_port - -#define ns_neteqnn(a,b) (((a).s_net[0]==(b).s_net[0]) && \ - ((a).s_net[1]==(b).s_net[1])) -#define ns_neteq(a,b) ns_neteqnn((a).x_net, (b).x_net) -#define satons_addr(sa) (((struct sockaddr_ns *)&(sa))->sns_addr) -#define ns_hosteqnh(s,t) ((s).s_host[0] == (t).s_host[0] && \ - (s).s_host[1] == (t).s_host[1] && (s).s_host[2] == (t).s_host[2]) -#define ns_hosteq(s,t) (ns_hosteqnh((s).x_host,(t).x_host)) -#define ns_nullhost(x) (((x).x_host.s_host[0]==0) && \ - ((x).x_host.s_host[1]==0) && ((x).x_host.s_host[2]==0)) - -#ifdef _KERNEL -extern struct domain nsdomain; -union ns_host ns_thishost; -union ns_host ns_zerohost; -union ns_host ns_broadhost; -union ns_net ns_zeronet; -union ns_net ns_broadnet; -u_short ns_cksum(); -#else - -#include <sys/cdefs.h> - -__BEGIN_DECLS -extern struct ns_addr ns_addr(const char *); -extern char *ns_ntoa(struct ns_addr); -__END_DECLS - -#endif - -#endif diff --git a/newlib/libc/sys/linux/include/netns/ns_error.h b/newlib/libc/sys/linux/include/netns/ns_error.h deleted file mode 100644 index ae4474722..000000000 --- a/newlib/libc/sys/linux/include/netns/ns_error.h +++ /dev/null @@ -1,96 +0,0 @@ -/* - * Copyright (c) 1984, 1988, 1993 - * The Regents of the University of California. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * @(#)ns_error.h 8.1 (Berkeley) 6/10/93 - * $FreeBSD: src/sys/netns/ns_error.h,v 1.10 1999/12/29 04:46:19 peter Exp $ - */ - -#ifndef _NETNS_NS_ERROR_H_ -#define _NETNS_NS_ERROR_H_ - -/* - * Xerox NS error messages - */ - -struct ns_errp { - u_short ns_err_num; /* Error Number */ - u_short ns_err_param; /* Error Parameter */ - struct idp ns_err_idp; /* Initial segment of offending - packet */ - u_char ns_err_lev2[12]; /* at least this much higher - level protocol */ -}; -struct ns_epidp { - struct idp ns_ep_idp; - struct ns_errp ns_ep_errp; -}; - -#define NS_ERR_UNSPEC 0 /* Unspecified Error detected at dest. */ -#define NS_ERR_BADSUM 1 /* Bad Checksum detected at dest */ -#define NS_ERR_NOSOCK 2 /* Specified socket does not exist at dest*/ -#define NS_ERR_FULLUP 3 /* Dest. refuses packet due to resource lim.*/ -#define NS_ERR_UNSPEC_T 0x200 /* Unspec. Error occured before reaching dest*/ -#define NS_ERR_BADSUM_T 0x201 /* Bad Checksum detected in transit */ -#define NS_ERR_UNREACH_HOST 0x202 /* Dest cannot be reached from here*/ -#define NS_ERR_TOO_OLD 0x203 /* Packet x'd 15 routers without delivery*/ -#define NS_ERR_TOO_BIG 0x204 /* Packet too large to be forwarded through - some intermediate gateway. The error - parameter field contains the max packet - size that can be accommodated */ -#define NS_ERR_MAX 20 - -/* - * Variables related to this implementation - * of the network systems error message protocol. - */ -struct ns_errstat { -/* statistics related to ns_err packets generated */ - int ns_es_error; /* # of calls to ns_error */ - int ns_es_oldshort; /* no error 'cuz old ip too short */ - int ns_es_oldns_err; /* no error 'cuz old was ns_err */ - int ns_es_outhist[NS_ERR_MAX]; -/* statistics related to input messages processed */ - int ns_es_badcode; /* ns_err_code out of range */ - int ns_es_tooshort; /* packet < IDP_MINLEN */ - int ns_es_checksum; /* bad checksum */ - int ns_es_badlen; /* calculated bound mismatch */ - int ns_es_reflect; /* number of responses */ - int ns_es_inhist[NS_ERR_MAX]; - u_short ns_es_codes[NS_ERR_MAX];/* which error code for outhist - since we might not know all */ -}; - -#ifdef _KERNEL -struct ns_errstat ns_errstat; -#endif - -#endif diff --git a/newlib/libc/sys/linux/include/netns/ns_if.h b/newlib/libc/sys/linux/include/netns/ns_if.h deleted file mode 100644 index 4487b44f6..000000000 --- a/newlib/libc/sys/linux/include/netns/ns_if.h +++ /dev/null @@ -1,89 +0,0 @@ -/* - * Copyright (c) 1984, 1985, 1986, 1987, 1993 - * The Regents of the University of California. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * @(#)ns_if.h 8.1 (Berkeley) 6/10/93 - * $FreeBSD: src/sys/netns/ns_if.h,v 1.13 2002/03/20 02:39:27 alfred Exp $ - */ - -#ifndef _NETNS_NS_IF_H_ -#define _NETNS_NS_IF_H_ - -/* - * Interface address, xerox version. One of these structures - * is allocated for each interface with an internet address. - * The ifaddr structure contains the protocol-independent part - * of the structure and is assumed to be first. - */ - -struct ns_ifaddr { - struct ifaddr ia_ifa; /* protocol-independent info */ -#define ia_ifp ia_ifa.ifa_ifp -#define ia_flags ia_ifa.ifa_flags - struct ns_ifaddr *ia_next; /* next in list of xerox addresses */ - struct sockaddr_ns ia_addr; /* reserve space for my address */ - struct sockaddr_ns ia_dstaddr; /* space for my broadcast address */ -#define ia_broadaddr ia_dstaddr - struct sockaddr_ns ia_netmask; /* space for my network mask */ -}; - -struct ns_aliasreq { - char ifra_name[IFNAMSIZ]; /* if name, e.g. "en0" */ - struct sockaddr_ns ifra_addr; - struct sockaddr_ns ifra_broadaddr; -#define ifra_dstaddr ifra_broadaddr -}; -/* - * Given a pointer to an ns_ifaddr (ifaddr), - * return a pointer to the addr as a sockadd_ns. - */ - -#define IA_SNS(ia) (&(((struct ns_ifaddr *)(ia))->ia_addr)) - -/* This is not the right place for this but where is? */ -#define ETHERTYPE_NS 0x0600 - -#ifdef NSIP -struct nsip_req { - struct sockaddr rq_ns; /* must be ns format destination */ - struct sockaddr rq_ip; /* must be ip format gateway */ - short rq_flags; -}; -#endif - -#ifdef _KERNEL -struct ns_ifaddr *ns_ifaddr; -struct ns_ifaddr *ns_iaonnetof(); -void nsintr(void); -struct ifqueue nsintrq; /* XNS input packet queue */ -#endif - -#endif diff --git a/newlib/libc/sys/linux/include/netns/ns_pcb.h b/newlib/libc/sys/linux/include/netns/ns_pcb.h deleted file mode 100644 index 359d839c0..000000000 --- a/newlib/libc/sys/linux/include/netns/ns_pcb.h +++ /dev/null @@ -1,85 +0,0 @@ -/* - * Copyright (c) 1984, 1985, 1986, 1987, 1993 - * The Regents of the University of California. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * @(#)ns_pcb.h 8.1 (Berkeley) 6/10/93 - * $FreeBSD: src/sys/netns/ns_pcb.h,v 1.11 1999/12/29 04:46:20 peter Exp $ - */ - -#ifndef _NETNS_NS_PCB_H_ -#define _NETNS_NS_PCB_H_ - -/* - * Ns protocol interface control block. - */ -struct nspcb { - struct nspcb *nsp_next; /* doubly linked list */ - struct nspcb *nsp_prev; - struct socket *nsp_socket; /* back pointer to socket */ - struct ns_addr nsp_faddr; /* destination address */ - struct ns_addr nsp_laddr; /* socket's address */ - caddr_t nsp_pcb; /* protocol specific stuff */ - struct route nsp_route; /* routing information */ - struct ns_addr nsp_lastdst; /* validate cached route for dg socks*/ - long nsp_notify_param; /* extra info passed via ns_pcbnotify*/ - short nsp_flags; - u_char nsp_dpt; /* default packet type for idp_output*/ - u_char nsp_rpt; /* last received packet type by - idp_input() */ -}; - -/* possible flags */ - -#define NSP_IN_ABORT 0x1 /* calling abort through socket */ -#define NSP_RAWIN 0x2 /* show headers on input */ -#define NSP_RAWOUT 0x4 /* show header on output */ -#define NSP_ALL_PACKETS 0x8 /* Turn off higher proto processing */ - -#define NS_WILDCARD 1 - -#define nsp_lport nsp_laddr.x_port -#define nsp_fport nsp_faddr.x_port - -#define sotonspcb(so) ((struct nspcb *)((so)->so_pcb)) - -/* - * Nominal space allocated to a ns socket. - */ -#define NSSNDQ 2048 -#define NSRCVQ 2048 - - -#ifdef _KERNEL -struct nspcb nspcb; /* head of list */ -struct nspcb *ns_pcblookup(); -#endif - -#endif diff --git a/newlib/libc/sys/linux/include/netns/sp.h b/newlib/libc/sys/linux/include/netns/sp.h deleted file mode 100644 index 90f26c93d..000000000 --- a/newlib/libc/sys/linux/include/netns/sp.h +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Copyright (c) 1984, 1985, 1986, 1987, 1993 - * The Regents of the University of California. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * @(#)sp.h 8.1 (Berkeley) 6/10/93 - * $FreeBSD: src/sys/netns/sp.h,v 1.8 1999/08/28 00:49:52 peter Exp $ - */ - -#ifndef _NETNS_SP_H_ -#define _NETNS_SP_H_ - -/* - * Definitions for Xerox NS style sequenced packet protocol - */ - -struct sphdr { - u_char sp_cc; /* connection control */ - u_char sp_dt; /* datastream type */ -#define SP_SP 0x80 /* system packet */ -#define SP_SA 0x40 /* send acknowledgement */ -#define SP_OB 0x20 /* attention (out of band data) */ -#define SP_EM 0x10 /* end of message */ - u_short sp_sid; /* source connection identifier */ - u_short sp_did; /* destination connection identifier */ - u_short sp_seq; /* sequence number */ - u_short sp_ack; /* acknowledge number */ - u_short sp_alo; /* allocation number */ -}; - -#endif diff --git a/newlib/libc/sys/linux/include/netns/spidp.h b/newlib/libc/sys/linux/include/netns/spidp.h deleted file mode 100644 index 310a2b204..000000000 --- a/newlib/libc/sys/linux/include/netns/spidp.h +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Copyright (c) 1984, 1985, 1986, 1987, 1993 - * The Regents of the University of California. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * @(#)spidp.h 8.1 (Berkeley) 6/10/93 - * $FreeBSD: src/sys/netns/spidp.h,v 1.8 1999/08/28 00:49:52 peter Exp $ - */ - -#ifndef _NETNS_SPIDP_H_ -#define _NETNS_SPIDP_H_ - -/* - * Definitions for NS(tm) Internet Datagram Protocol - * containing a Sequenced Packet Protocol packet. - */ -struct spidp { - struct idp si_i; - struct sphdr si_s; -}; -struct spidp_q { - struct spidp_q *si_next; - struct spidp_q *si_prev; -}; -#define SI(x) ((struct spidp *)x) -#define si_sum si_i.idp_sum -#define si_len si_i.idp_len -#define si_tc si_i.idp_tc -#define si_pt si_i.idp_pt -#define si_dna si_i.idp_dna -#define si_sna si_i.idp_sna -#define si_sport si_i.idp_sna.x_port -#define si_cc si_s.sp_cc -#define si_dt si_s.sp_dt -#define si_sid si_s.sp_sid -#define si_did si_s.sp_did -#define si_seq si_s.sp_seq -#define si_ack si_s.sp_ack -#define si_alo si_s.sp_alo - -#endif diff --git a/newlib/libc/sys/linux/include/netns/spp_debug.h b/newlib/libc/sys/linux/include/netns/spp_debug.h deleted file mode 100644 index f85cc3901..000000000 --- a/newlib/libc/sys/linux/include/netns/spp_debug.h +++ /dev/null @@ -1,65 +0,0 @@ -/* - * Copyright (c) 1984, 1985, 1986, 1987, 1993 - * The Regents of the University of California. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * @(#)spp_debug.h 8.1 (Berkeley) 6/10/93 - * $FreeBSD: src/sys/netns/spp_debug.h,v 1.9 1999/08/28 00:49:53 peter Exp $ - */ - -#ifndef _NETNS_SPP_DEBUG_H_ -#define _NETNS_SPP_DEBUG_H_ - -struct spp_debug { - u_long sd_time; - short sd_act; - short sd_ostate; - caddr_t sd_cb; - short sd_req; - struct spidp sd_si; - struct sppcb sd_sp; -}; - -#define SA_INPUT 0 -#define SA_OUTPUT 1 -#define SA_USER 2 -#define SA_RESPOND 3 -#define SA_DROP 4 - -#ifdef SANAMES -char *sanames[] = - { "input", "output", "user", "respond", "drop" }; -#endif - -#define SPP_NDEBUG 100 -struct spp_debug spp_debug[SPP_NDEBUG]; -int spp_debx; - -#endif diff --git a/newlib/libc/sys/linux/include/netns/spp_timer.h b/newlib/libc/sys/linux/include/netns/spp_timer.h deleted file mode 100644 index e28ecad7f..000000000 --- a/newlib/libc/sys/linux/include/netns/spp_timer.h +++ /dev/null @@ -1,128 +0,0 @@ -/* - * Copyright (c) 1982, 1986, 1988, 1993 - * The Regents of the University of California. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * @(#)spp_timer.h 8.1 (Berkeley) 6/10/93 - * $FreeBSD: src/sys/netns/spp_timer.h,v 1.9 1999/12/29 04:46:20 peter Exp $ - */ - -#ifndef _NETNS_SPP_TIMER_H_ -#define _NETNS_SPP_TIMER_H_ - -/* - * Definitions of the SPP timers. These timers are counted - * down PR_SLOWHZ times a second. - */ -#define SPPT_NTIMERS 4 - -#define SPPT_REXMT 0 /* retransmit */ -#define SPPT_PERSIST 1 /* retransmit persistance */ -#define SPPT_KEEP 2 /* keep alive */ -#define SPPT_2MSL 3 /* 2*msl quiet time timer */ - -/* - * The SPPT_REXMT timer is used to force retransmissions. - * The SPP has the SPPT_REXMT timer set whenever segments - * have been sent for which ACKs are expected but not yet - * received. If an ACK is received which advances tp->snd_una, - * then the retransmit timer is cleared (if there are no more - * outstanding segments) or reset to the base value (if there - * are more ACKs expected). Whenever the retransmit timer goes off, - * we retransmit one unacknowledged segment, and do a backoff - * on the retransmit timer. - * - * The SPPT_PERSIST timer is used to keep window size information - * flowing even if the window goes shut. If all previous transmissions - * have been acknowledged (so that there are no retransmissions in progress), - * and the window is too small to bother sending anything, then we start - * the SPPT_PERSIST timer. When it expires, if the window is nonzero, - * we go to transmit state. Otherwise, at intervals send a single byte - * into the peer's window to force him to update our window information. - * We do this at most as often as SPPT_PERSMIN time intervals, - * but no more frequently than the current estimate of round-trip - * packet time. The SPPT_PERSIST timer is cleared whenever we receive - * a window update from the peer. - * - * The SPPT_KEEP timer is used to keep connections alive. If an - * connection is idle (no segments received) for SPPTV_KEEP amount of time, - * but not yet established, then we drop the connection. If the connection - * is established, then we force the peer to send us a segment by sending: - * <SEQ=SND.UNA-1><ACK=RCV.NXT><CTL=ACK> - * This segment is (deliberately) outside the window, and should elicit - * an ack segment in response from the peer. If, despite the SPPT_KEEP - * initiated segments we cannot elicit a response from a peer in SPPT_MAXIDLE - * amount of time, then we drop the connection. - */ - -#define SPP_TTL 30 /* default time to live for SPP segs */ -/* - * Time constants. - */ -#define SPPTV_MSL ( 15*PR_SLOWHZ) /* max seg lifetime */ -#define SPPTV_SRTTBASE 0 /* base roundtrip time; - if 0, no idea yet */ -#define SPPTV_SRTTDFLT ( 3*PR_SLOWHZ) /* assumed RTT if no info */ - -#define SPPTV_PERSMIN ( 5*PR_SLOWHZ) /* retransmit persistance */ -#define SPPTV_PERSMAX ( 60*PR_SLOWHZ) /* maximum persist interval */ - -#define SPPTV_KEEP ( 75*PR_SLOWHZ) /* keep alive - 75 secs */ -#define SPPTV_MAXIDLE ( 8*SPPTV_KEEP) /* maximum allowable idle - time before drop conn */ - -#define SPPTV_MIN ( 1*PR_SLOWHZ) /* minimum allowable value */ -#define SPPTV_REXMTMAX ( 64*PR_SLOWHZ) /* max allowable REXMT value */ - -#define SPP_LINGERTIME 120 /* linger at most 2 minutes */ - -#define SPP_MAXRXTSHIFT 12 /* maximum retransmits */ - -#ifdef SPPTIMERS -char *spptimers[] = - { "REXMT", "PERSIST", "KEEP", "2MSL" }; -#endif - -/* - * Force a time value to be in a certain range. - */ -#define SPPT_RANGESET(tv, value, tvmin, tvmax) { \ - (tv) = (value); \ - if ((tv) < (tvmin)) \ - (tv) = (tvmin); \ - else if ((tv) > (tvmax)) \ - (tv) = (tvmax); \ -} - -#ifdef _KERNEL -extern int spp_backoff[]; -#endif - -#endif diff --git a/newlib/libc/sys/linux/include/netns/spp_var.h b/newlib/libc/sys/linux/include/netns/spp_var.h deleted file mode 100644 index ed1ec050d..000000000 --- a/newlib/libc/sys/linux/include/netns/spp_var.h +++ /dev/null @@ -1,221 +0,0 @@ -/* - * Copyright (c) 1984, 1985, 1986, 1987, 1993 - * The Regents of the University of California. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * @(#)spp_var.h 8.1 (Berkeley) 6/10/93 - * $FreeBSD: src/sys/netns/spp_var.h,v 1.11 1999/12/29 04:46:21 peter Exp $ - */ - -#ifndef _NETNS_SPP_VAR_H_ -#define _NETNS_SPP_VAR_H_ - -/* - * Sp control block, one per connection - */ -struct sppcb { - struct spidp_q s_q; /* queue for out-of-order receipt */ - struct nspcb *s_nspcb; /* backpointer to internet pcb */ - u_char s_state; - u_char s_flags; -#define SF_ACKNOW 0x01 /* Ack peer immediately */ -#define SF_DELACK 0x02 /* Ack, but try to delay it */ -#define SF_HI 0x04 /* Show headers on input */ -#define SF_HO 0x08 /* Show headers on output */ -#define SF_PI 0x10 /* Packet (datagram) interface */ -#define SF_WIN 0x20 /* Window info changed */ -#define SF_RXT 0x40 /* Rxt info changed */ -#define SF_RVD 0x80 /* Calling from read usrreq routine */ - u_short s_mtu; /* Max packet size for this stream */ -/* use sequence fields in headers to store sequence numbers for this - connection */ - struct idp *s_idp; - struct sphdr s_shdr; /* prototype header to transmit */ -#define s_cc s_shdr.sp_cc /* connection control (for EM bit) */ -#define s_dt s_shdr.sp_dt /* datastream type */ -#define s_sid s_shdr.sp_sid /* source connection identifier */ -#define s_did s_shdr.sp_did /* destination connection identifier */ -#define s_seq s_shdr.sp_seq /* sequence number */ -#define s_ack s_shdr.sp_ack /* acknowledge number */ -#define s_alo s_shdr.sp_alo /* allocation number */ -#define s_dport s_idp->idp_dna.x_port /* where we are sending */ - struct sphdr s_rhdr; /* last received header (in effect!)*/ - u_short s_rack; /* their acknowledge number */ - u_short s_ralo; /* their allocation number */ - u_short s_smax; /* highest packet # we have sent */ - u_short s_snxt; /* which packet to send next */ - -/* congestion control */ -#define CUNIT 1024 /* scaling for ... */ - int s_cwnd; /* Congestion-controlled window */ - /* in packets * CUNIT */ - short s_swnd; /* == tcp snd_wnd, in packets */ - short s_smxw; /* == tcp max_sndwnd */ - /* difference of two spp_seq's can be - no bigger than a short */ - u_short s_swl1; /* == tcp snd_wl1 */ - u_short s_swl2; /* == tcp snd_wl2 */ - int s_cwmx; /* max allowable cwnd */ - int s_ssthresh; /* s_cwnd size threshhold for - * slow start exponential-to- - * linear switch */ -/* transmit timing stuff - * srtt and rttvar are stored as fixed point, for convenience in smoothing. - * srtt has 3 bits to the right of the binary point, rttvar has 2. - */ - short s_idle; /* time idle */ - short s_timer[SPPT_NTIMERS]; /* timers */ - short s_rxtshift; /* log(2) of rexmt exp. backoff */ - short s_rxtcur; /* current retransmit value */ - u_short s_rtseq; /* packet being timed */ - short s_rtt; /* timer for round trips */ - short s_srtt; /* averaged timer */ - short s_rttvar; /* variance in round trip time */ - char s_force; /* which timer expired */ - char s_dupacks; /* counter to intuit xmt loss */ - -/* out of band data */ - char s_oobflags; -#define SF_SOOB 0x08 /* sending out of band data */ -#define SF_IOOB 0x10 /* receiving out of band data */ - char s_iobc; /* input characters */ -/* debug stuff */ - u_short s_want; /* Last candidate for sending */ - char s_outx; /* exit taken from spp_output */ - char s_inx; /* exit taken from spp_input */ - u_short s_flags2; /* more flags for testing */ -#define SF_NEWCALL 0x100 /* for new_recvmsg */ -#define SO_NEWCALL 10 /* for new_recvmsg */ -}; - -#define nstosppcb(np) ((struct sppcb *)(np)->nsp_pcb) -#define sotosppcb(so) (nstosppcb(sotonspcb(so))) - -struct sppstat { - long spps_connattempt; /* connections initiated */ - long spps_accepts; /* connections accepted */ - long spps_connects; /* connections established */ - long spps_drops; /* connections dropped */ - long spps_conndrops; /* embryonic connections dropped */ - long spps_closed; /* conn. closed (includes drops) */ - long spps_segstimed; /* segs where we tried to get rtt */ - long spps_rttupdated; /* times we succeeded */ - long spps_delack; /* delayed acks sent */ - long spps_timeoutdrop; /* conn. dropped in rxmt timeout */ - long spps_rexmttimeo; /* retransmit timeouts */ - long spps_persisttimeo; /* persist timeouts */ - long spps_keeptimeo; /* keepalive timeouts */ - long spps_keepprobe; /* keepalive probes sent */ - long spps_keepdrops; /* connections dropped in keepalive */ - - long spps_sndtotal; /* total packets sent */ - long spps_sndpack; /* data packets sent */ - long spps_sndbyte; /* data bytes sent */ - long spps_sndrexmitpack; /* data packets retransmitted */ - long spps_sndrexmitbyte; /* data bytes retransmitted */ - long spps_sndacks; /* ack-only packets sent */ - long spps_sndprobe; /* window probes sent */ - long spps_sndurg; /* packets sent with URG only */ - long spps_sndwinup; /* window update-only packets sent */ - long spps_sndctrl; /* control (SYN|FIN|RST) packets sent */ - long spps_sndvoid; /* couldn't find requested packet*/ - - long spps_rcvtotal; /* total packets received */ - long spps_rcvpack; /* packets received in sequence */ - long spps_rcvbyte; /* bytes received in sequence */ - long spps_rcvbadsum; /* packets received with ccksum errs */ - long spps_rcvbadoff; /* packets received with bad offset */ - long spps_rcvshort; /* packets received too short */ - long spps_rcvduppack; /* duplicate-only packets received */ - long spps_rcvdupbyte; /* duplicate-only bytes received */ - long spps_rcvpartduppack; /* packets with some duplicate data */ - long spps_rcvpartdupbyte; /* dup. bytes in part-dup. packets */ - long spps_rcvoopack; /* out-of-order packets received */ - long spps_rcvoobyte; /* out-of-order bytes received */ - long spps_rcvpackafterwin; /* packets with data after window */ - long spps_rcvbyteafterwin; /* bytes rcvd after window */ - long spps_rcvafterclose; /* packets rcvd after "close" */ - long spps_rcvwinprobe; /* rcvd window probe packets */ - long spps_rcvdupack; /* rcvd duplicate acks */ - long spps_rcvacktoomuch; /* rcvd acks for unsent data */ - long spps_rcvackpack; /* rcvd ack packets */ - long spps_rcvackbyte; /* bytes acked by rcvd acks */ - long spps_rcvwinupd; /* rcvd window update packets */ -}; -struct spp_istat { - short hdrops; - short badsum; - short badlen; - short slotim; - short fastim; - short nonucn; - short noconn; - short notme; - short wrncon; - short bdreas; - short gonawy; - short notyet; - short lstdup; - struct sppstat newstats; -}; - -#ifdef _KERNEL -struct spp_istat spp_istat; - -/* Following was struct sppstat sppstat; */ -#ifndef sppstat -#define sppstat spp_istat.newstats -#endif - -u_short spp_iss; -extern struct sppcb *spp_close(), *spp_disconnect(), - *spp_usrclosed(), *spp_timers(), *spp_drop(); -#endif - -#define SPP_ISSINCR 128 -/* - * SPP sequence numbers are 16 bit integers operated - * on with modular arithmetic. These macros can be - * used to compare such integers. - */ -#ifdef sun -short xnsCbug; -#define SSEQ_LT(a,b) ((xnsCbug = (short)((a)-(b))) < 0) -#define SSEQ_LEQ(a,b) ((xnsCbug = (short)((a)-(b))) <= 0) -#define SSEQ_GT(a,b) ((xnsCbug = (short)((a)-(b))) > 0) -#define SSEQ_GEQ(a,b) ((xnsCbug = (short)((a)-(b))) >= 0) -#else -#define SSEQ_LT(a,b) (((short)((a)-(b))) < 0) -#define SSEQ_LEQ(a,b) (((short)((a)-(b))) <= 0) -#define SSEQ_GT(a,b) (((short)((a)-(b))) > 0) -#define SSEQ_GEQ(a,b) (((short)((a)-(b))) >= 0) -#endif - -#endif |