CVS commit: src/sys/rump/net/lib/libnetinet
Module Name:src Committed By: pooka Date: Thu Mar 13 02:07:42 UTC 2014 Modified Files: src/sys/rump/net/lib/libnetinet: Makefile Added Files: src/sys/rump/net/lib/libnetinet: netinet_component.c Removed Files: src/sys/rump/net/lib/libnetinet: component.c Log Message: rename component.c - netinet_component.c To generate a diff of this commit: cvs rdiff -u -r1.4 -r1.5 src/sys/rump/net/lib/libnetinet/Makefile cvs rdiff -u -r1.10 -r0 src/sys/rump/net/lib/libnetinet/component.c cvs rdiff -u -r0 -r1.1 src/sys/rump/net/lib/libnetinet/netinet_component.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/rump/net/lib/libnetinet/Makefile diff -u src/sys/rump/net/lib/libnetinet/Makefile:1.4 src/sys/rump/net/lib/libnetinet/Makefile:1.5 --- src/sys/rump/net/lib/libnetinet/Makefile:1.4 Fri Dec 11 16:34:50 2009 +++ src/sys/rump/net/lib/libnetinet/Makefile Thu Mar 13 02:07:42 2014 @@ -1,9 +1,9 @@ -# $NetBSD: Makefile,v 1.4 2009/12/11 16:34:50 pooka Exp $ +# $NetBSD: Makefile,v 1.5 2014/03/13 02:07:42 pooka Exp $ # LIB= rumpnet_netinet -SRCS= component.c +SRCS= netinet_component.c .include bsd.lib.mk .include bsd.klinks.mk Added files: Index: src/sys/rump/net/lib/libnetinet/netinet_component.c diff -u /dev/null src/sys/rump/net/lib/libnetinet/netinet_component.c:1.1 --- /dev/null Thu Mar 13 02:07:42 2014 +++ src/sys/rump/net/lib/libnetinet/netinet_component.c Thu Mar 13 02:07:42 2014 @@ -0,0 +1,94 @@ +/* $NetBSD: netinet_component.c,v 1.1 2014/03/13 02:07:42 pooka Exp $ */ + +/* + * Copyright (c) 2009 Antti Kantee. All Rights Reserved. + * + * Development of this software was supported by The Nokia Foundation + * + * 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. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``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 AUTHOR 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. + */ + +#include sys/cdefs.h +__KERNEL_RCSID(0, $NetBSD: netinet_component.c,v 1.1 2014/03/13 02:07:42 pooka Exp $); + +#include sys/param.h +#include sys/domain.h +#include sys/protosw.h +#include sys/socketvar.h + +#include net/if.h +#include net/netisr.h +#include netinet/in.h +#include netinet/in_var.h +#include netinet/ip_var.h +#include netinet/if_inarp.h + +#include rump_private.h +#include rump_net_private.h + +int carpattach(int); + +RUMP_COMPONENT(RUMP_COMPONENT_NET) +{ + extern struct domain arpdomain, inetdomain; + + DOMAINADD(arpdomain); + DOMAINADD(inetdomain); + + carpattach(1); + + rump_netisr_register(NETISR_IP, ipintr); + rump_netisr_register(NETISR_ARP, arpintr); +} + +RUMP_COMPONENT(RUMP_COMPONENT_NET_IFCFG) +{ + struct ifaliasreq ia; + struct sockaddr_in *sin; + struct socket *so; + int error; + + if ((error = socreate(AF_INET, so, SOCK_DGRAM, 0, curlwp, NULL)) != 0) + panic(lo0 config: cannot create socket); + + /* configure 127.0.0.1 for lo0 */ + memset(ia, 0, sizeof(ia)); + strcpy(ia.ifra_name, lo0); + sin = (struct sockaddr_in *)ia.ifra_addr; + sin-sin_family = AF_INET; + sin-sin_len = sizeof(struct sockaddr_in); + sin-sin_addr.s_addr = inet_addr(127.0.0.1); + + sin = (struct sockaddr_in *)ia.ifra_mask; + sin-sin_family = AF_INET; + sin-sin_len = sizeof(struct sockaddr_in); + sin-sin_addr.s_addr = inet_addr(255.0.0.0); + + sin = (struct sockaddr_in *)ia.ifra_broadaddr; + sin-sin_family = AF_INET; + sin-sin_len = sizeof(struct sockaddr_in); + sin-sin_addr.s_addr = inet_addr(127.255.255.255); + + in_control(so, SIOCAIFADDR, ia, lo0ifp, curlwp); + if_up(lo0ifp); + soclose(so); +}
CVS commit: src/sys/rump/net/lib/libnetinet
Module Name:src Committed By: pooka Date: Sun Jun 30 16:04:36 UTC 2013 Modified Files: src/sys/rump/net/lib/libnetinet: component.c Log Message: Raise lo0 so that ipv6 config gets done for it. Requested and tested by Justin Cormack. To generate a diff of this commit: cvs rdiff -u -r1.5 -r1.6 src/sys/rump/net/lib/libnetinet/component.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/rump/net/lib/libnetinet/component.c diff -u src/sys/rump/net/lib/libnetinet/component.c:1.5 src/sys/rump/net/lib/libnetinet/component.c:1.6 --- src/sys/rump/net/lib/libnetinet/component.c:1.5 Tue Jan 11 09:24:06 2011 +++ src/sys/rump/net/lib/libnetinet/component.c Sun Jun 30 16:04:36 2013 @@ -1,4 +1,4 @@ -/* $NetBSD: component.c,v 1.5 2011/01/11 09:24:06 pooka Exp $ */ +/* $NetBSD: component.c,v 1.6 2013/06/30 16:04:36 pooka Exp $ */ /* * Copyright (c) 2009 Antti Kantee. All Rights Reserved. @@ -28,7 +28,7 @@ */ #include sys/cdefs.h -__KERNEL_RCSID(0, $NetBSD: component.c,v 1.5 2011/01/11 09:24:06 pooka Exp $); +__KERNEL_RCSID(0, $NetBSD: component.c,v 1.6 2013/06/30 16:04:36 pooka Exp $); #include sys/param.h #include sys/domain.h @@ -84,5 +84,6 @@ RUMP_COMPONENT(RUMP_COMPONENT_NET_IFCFG) sin-sin_addr.s_addr = inet_addr(127.255.255.255); in_control(so, SIOCAIFADDR, ia, lo0ifp, curlwp); + if_up(lo0ifp); soclose(so); }
CVS commit: src/sys/rump/net/lib/libnetinet
Module Name:src Committed By: pooka Date: Sat Jun 1 11:02:42 UTC 2013 Modified Files: src/sys/rump/net/lib/libnetinet: Makefile.inc Log Message: default portalgo to random_start, for less connections from port 65535 To generate a diff of this commit: cvs rdiff -u -r1.9 -r1.10 src/sys/rump/net/lib/libnetinet/Makefile.inc Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/rump/net/lib/libnetinet/Makefile.inc diff -u src/sys/rump/net/lib/libnetinet/Makefile.inc:1.9 src/sys/rump/net/lib/libnetinet/Makefile.inc:1.10 --- src/sys/rump/net/lib/libnetinet/Makefile.inc:1.9 Sat Jun 1 10:54:24 2013 +++ src/sys/rump/net/lib/libnetinet/Makefile.inc Sat Jun 1 11:02:42 2013 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile.inc,v 1.9 2013/06/01 10:54:24 pooka Exp $ +# $NetBSD: Makefile.inc,v 1.10 2013/06/01 11:02:42 pooka Exp $ # .PATH: ${.CURDIR}/../../../../netinet ${.CURDIR}/../../../../netinet6 @@ -27,6 +27,9 @@ SRCS+= udp_usrreq.c CPPFLAGS+= -I${.CURDIR}/opt -I${.CURDIR}/../libnet/opt +CPPFLAGS+= -DPORTALGO_INET4_DEFAULT=PORTALGO_RANDOM_START +CPPFLAGS+= -DPORTALGO_INET6_DEFAULT=PORTALGO_RANDOM_START + # TCP debugging #SRCS+= tcp_debug.c #CPPFLAGS+= -DTCP_DEBUG
CVS commit: src/sys/rump/net/lib/libnetinet
Module Name:src Committed By: pooka Date: Sun Jan 9 12:22:35 UTC 2011 Modified Files: src/sys/rump/net/lib/libnetinet: component.c Log Message: Autoconfigure 127.0.0.1 for lo0. (testing bind/connect/etc. is now possible on a virgin rump kernel without the need to ifconfig anything) To generate a diff of this commit: cvs rdiff -u -r1.3 -r1.4 src/sys/rump/net/lib/libnetinet/component.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/rump/net/lib/libnetinet/component.c diff -u src/sys/rump/net/lib/libnetinet/component.c:1.3 src/sys/rump/net/lib/libnetinet/component.c:1.4 --- src/sys/rump/net/lib/libnetinet/component.c:1.3 Tue Aug 10 21:50:10 2010 +++ src/sys/rump/net/lib/libnetinet/component.c Sun Jan 9 12:22:34 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: component.c,v 1.3 2010/08/10 21:50:10 pooka Exp $ */ +/* $NetBSD: component.c,v 1.4 2011/01/09 12:22:34 pooka Exp $ */ /* * Copyright (c) 2009 Antti Kantee. All Rights Reserved. @@ -28,11 +28,16 @@ */ #include sys/cdefs.h -__KERNEL_RCSID(0, $NetBSD: component.c,v 1.3 2010/08/10 21:50:10 pooka Exp $); +__KERNEL_RCSID(0, $NetBSD: component.c,v 1.4 2011/01/09 12:22:34 pooka Exp $); #include sys/param.h #include sys/domain.h #include sys/protosw.h +#include sys/socketvar.h + +#include net/if.h +#include netinet/in.h +#include netinet/in_var.h #include rump_private.h #include rump_net_private.h @@ -49,3 +54,35 @@ carpattach(1); } + +RUMP_COMPONENT(RUMP_COMPONENT_NET_IF) +{ + struct ifaliasreq ia; + struct sockaddr_in *sin; + struct socket *so; + int error; + + if ((error = socreate(AF_INET, so, SOCK_DGRAM, 0, curlwp, NULL)) != 0) + panic(lo0 config: cannot create socket); + + /* configure 127.0.0.1 for lo0 */ + memset(ia, 0, sizeof(ia)); + strcpy(ia.ifra_name, lo0); + sin = (struct sockaddr_in *)ia.ifra_addr; + sin-sin_family = AF_INET; + sin-sin_len = sizeof(struct sockaddr_in); + sin-sin_addr.s_addr = inet_addr(127.0.0.1); + + sin = (struct sockaddr_in *)ia.ifra_mask; + sin-sin_family = AF_INET; + sin-sin_len = sizeof(struct sockaddr_in); + sin-sin_addr.s_addr = inet_addr(255.0.0.0); + + sin = (struct sockaddr_in *)ia.ifra_broadaddr; + sin-sin_family = AF_INET; + sin-sin_len = sizeof(struct sockaddr_in); + sin-sin_addr.s_addr = inet_addr(127.255.255.255); + + in_control(so, SIOCAIFADDR, ia, lo0ifp, curlwp); + soclose(so); +}