rtsock.c (27504) | rtsock.c (28270) |
---|---|
1/* 2 * Copyright (c) 1988, 1991, 1993 3 * The Regents of the University of California. All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright --- 17 unchanged lines hidden (view full) --- 26 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 27 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 28 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 29 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 30 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 31 * SUCH DAMAGE. 32 * 33 * @(#)rtsock.c 8.5 (Berkeley) 11/2/94 | 1/* 2 * Copyright (c) 1988, 1991, 1993 3 * The Regents of the University of California. All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright --- 17 unchanged lines hidden (view full) --- 26 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 27 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 28 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 29 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 30 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 31 * SUCH DAMAGE. 32 * 33 * @(#)rtsock.c 8.5 (Berkeley) 11/2/94 |
34 * $Id: rtsock.c,v 1.30 1997/07/17 09:21:34 msmith Exp $ | 34 * $Id: rtsock.c,v 1.31 1997/07/18 11:44:24 julian Exp $ |
35 */ 36 37 38#include <sys/param.h> 39#include <sys/queue.h> 40#include <sys/systm.h> 41#include <sys/kernel.h> 42#include <sys/sysctl.h> --- 102 unchanged lines hidden (view full) --- 145 route_cb.any_count++; 146 soisconnected(so); 147 so->so_options |= SO_USELOOPBACK; 148 splx(s); 149 return 0; 150} 151 152static int | 35 */ 36 37 38#include <sys/param.h> 39#include <sys/queue.h> 40#include <sys/systm.h> 41#include <sys/kernel.h> 42#include <sys/sysctl.h> --- 102 unchanged lines hidden (view full) --- 145 route_cb.any_count++; 146 soisconnected(so); 147 so->so_options |= SO_USELOOPBACK; 148 splx(s); 149 return 0; 150} 151 152static int |
153rts_bind(struct socket *so, struct mbuf *nam, struct proc *p) | 153rts_bind(struct socket *so, struct sockaddr *nam, struct proc *p) |
154{ 155 int s, error; 156 s = splnet(); 157 error = raw_usrreqs.pru_bind(so, nam, p); /* xxx just EINVAL */ 158 splx(s); 159 return error; 160} 161 162static int | 154{ 155 int s, error; 156 s = splnet(); 157 error = raw_usrreqs.pru_bind(so, nam, p); /* xxx just EINVAL */ 158 splx(s); 159 return error; 160} 161 162static int |
163rts_connect(struct socket *so, struct mbuf *nam, struct proc *p) | 163rts_connect(struct socket *so, struct sockaddr *nam, struct proc *p) |
164{ 165 int s, error; 166 s = splnet(); 167 error = raw_usrreqs.pru_connect(so, nam, p); /* XXX just EINVAL */ 168 splx(s); 169 return error; 170} 171 --- 37 unchanged lines hidden (view full) --- 209 error = raw_usrreqs.pru_disconnect(so); 210 splx(s); 211 return error; 212} 213 214/* pru_listen is EOPNOTSUPP */ 215 216static int | 164{ 165 int s, error; 166 s = splnet(); 167 error = raw_usrreqs.pru_connect(so, nam, p); /* XXX just EINVAL */ 168 splx(s); 169 return error; 170} 171 --- 37 unchanged lines hidden (view full) --- 209 error = raw_usrreqs.pru_disconnect(so); 210 splx(s); 211 return error; 212} 213 214/* pru_listen is EOPNOTSUPP */ 215 216static int |
217rts_peeraddr(struct socket *so, struct mbuf *nam) | 217rts_peeraddr(struct socket *so, struct sockaddr **nam) |
218{ 219 int s, error; 220 s = splnet(); 221 error = raw_usrreqs.pru_peeraddr(so, nam); 222 splx(s); 223 return error; 224} 225 226/* pru_rcvd is EOPNOTSUPP */ 227/* pru_rcvoob is EOPNOTSUPP */ 228 229static int | 218{ 219 int s, error; 220 s = splnet(); 221 error = raw_usrreqs.pru_peeraddr(so, nam); 222 splx(s); 223 return error; 224} 225 226/* pru_rcvd is EOPNOTSUPP */ 227/* pru_rcvoob is EOPNOTSUPP */ 228 229static int |
230rts_send(struct socket *so, int flags, struct mbuf *m, struct mbuf *nam, | 230rts_send(struct socket *so, int flags, struct mbuf *m, struct sockaddr *nam, |
231 struct mbuf *control, struct proc *p) 232{ 233 int s, error; 234 s = splnet(); 235 error = raw_usrreqs.pru_send(so, flags, m, nam, control, p); 236 splx(s); 237 return error; 238} --- 6 unchanged lines hidden (view full) --- 245 int s, error; 246 s = splnet(); 247 error = raw_usrreqs.pru_shutdown(so); 248 splx(s); 249 return error; 250} 251 252static int | 231 struct mbuf *control, struct proc *p) 232{ 233 int s, error; 234 s = splnet(); 235 error = raw_usrreqs.pru_send(so, flags, m, nam, control, p); 236 splx(s); 237 return error; 238} --- 6 unchanged lines hidden (view full) --- 245 int s, error; 246 s = splnet(); 247 error = raw_usrreqs.pru_shutdown(so); 248 splx(s); 249 return error; 250} 251 252static int |
253rts_sockaddr(struct socket *so, struct mbuf *nam) | 253rts_sockaddr(struct socket *so, struct sockaddr **nam) |
254{ 255 int s, error; 256 s = splnet(); 257 error = raw_usrreqs.pru_sockaddr(so, nam); 258 splx(s); 259 return error; 260} 261 --- 734 unchanged lines hidden --- | 254{ 255 int s, error; 256 s = splnet(); 257 error = raw_usrreqs.pru_sockaddr(so, nam); 258 splx(s); 259 return error; 260} 261 --- 734 unchanged lines hidden --- |