CVS commit: src/tests/fs/common/nfsrpc
Module Name:src Committed By: christos Date: Tue Mar 5 16:54:08 UTC 2013 Modified Files: src/tests/fs/common/nfsrpc: svc.c Log Message: use the proper fd_set. XXX: Instead of making a copy of the libc rpc files here we should re-use the files from libc, and use macros to provide the extra functionality needed here. SoC project? To generate a diff of this commit: cvs rdiff -u -r1.5 -r1.6 src/tests/fs/common/nfsrpc/svc.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tests/fs/common/nfsrpc/svc.c diff -u src/tests/fs/common/nfsrpc/svc.c:1.5 src/tests/fs/common/nfsrpc/svc.c:1.6 --- src/tests/fs/common/nfsrpc/svc.c:1.5 Tue Mar 5 00:39:54 2013 +++ src/tests/fs/common/nfsrpc/svc.c Tue Mar 5 11:54:08 2013 @@ -1,4 +1,4 @@ -/* $NetBSD: svc.c,v 1.5 2013/03/05 05:39:54 christos Exp $ */ +/* $NetBSD: svc.c,v 1.6 2013/03/05 16:54:08 christos Exp $ */ /* * Sun RPC is a product of Sun Microsystems, Inc. and is provided for @@ -35,7 +35,7 @@ static char *sccsid = @(#)svc.c 1.44 88/02/08 Copyr 1984 Sun Micro; static char *sccsid = @(#)svc.c 2.4 88/08/11 4.0 RPCSRC; #else -__RCSID($NetBSD: svc.c,v 1.5 2013/03/05 05:39:54 christos Exp $); +__RCSID($NetBSD: svc.c,v 1.6 2013/03/05 16:54:08 christos Exp $); #endif #endif @@ -204,7 +204,7 @@ xprt_register(SVCXPRT *xprt) goto out; } __svc_xports[sock] = xprt; - FD_SET(sock, svc_fdset); + FD_SET(sock, get_fdset()); *get_fdsetmax() = max(*get_fdsetmax(), sock); rwlock_unlock(svc_fd_lock); return (TRUE);
CVS commit: src/tests/fs/common/nfsrpc
Module Name:src Committed By: christos Date: Tue Mar 5 05:39:54 UTC 2013 Modified Files: src/tests/fs/common/nfsrpc: svc.c Log Message: catch up with libc. To generate a diff of this commit: cvs rdiff -u -r1.4 -r1.5 src/tests/fs/common/nfsrpc/svc.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tests/fs/common/nfsrpc/svc.c diff -u src/tests/fs/common/nfsrpc/svc.c:1.4 src/tests/fs/common/nfsrpc/svc.c:1.5 --- src/tests/fs/common/nfsrpc/svc.c:1.4 Thu Sep 23 05:38:14 2010 +++ src/tests/fs/common/nfsrpc/svc.c Tue Mar 5 00:39:54 2013 @@ -1,4 +1,4 @@ -/* $NetBSD: svc.c,v 1.4 2010/09/23 09:38:14 he Exp $ */ +/* $NetBSD: svc.c,v 1.5 2013/03/05 05:39:54 christos Exp $ */ /* * Sun RPC is a product of Sun Microsystems, Inc. and is provided for @@ -35,7 +35,7 @@ static char *sccsid = @(#)svc.c 1.44 88/02/08 Copyr 1984 Sun Micro; static char *sccsid = @(#)svc.c 2.4 88/08/11 4.0 RPCSRC; #else -__RCSID($NetBSD: svc.c,v 1.4 2010/09/23 09:38:14 he Exp $); +__RCSID($NetBSD: svc.c,v 1.5 2013/03/05 05:39:54 christos Exp $); #endif #endif @@ -180,9 +180,8 @@ get_fdsetmax() /* * Activate a transport handle. */ -void -xprt_register(xprt) - SVCXPRT *xprt; +bool_t +xprt_register(SVCXPRT *xprt) { int sock; @@ -194,18 +193,25 @@ xprt_register(xprt) if (__svc_xports == NULL) { __svc_xports = mem_alloc(FD_SETSIZE * sizeof(SVCXPRT *)); if (__svc_xports == NULL) { - warn(xprt_register); + warn(%s: out of memory, __func__); goto out; } memset(__svc_xports, '\0', FD_SETSIZE * sizeof(SVCXPRT *)); } - if (sock FD_SETSIZE) { - __svc_xports[sock] = xprt; - FD_SET(sock, get_fdset()); - *get_fdsetmax() = max(*get_fdsetmax(), sock); - } + if (sock = FD_SETSIZE) { + warnx(%s: socket descriptor %d too large for setsize %u, + __func__, sock, (unsigned)FD_SETSIZE); + goto out; + } + __svc_xports[sock] = xprt; + FD_SET(sock, svc_fdset); + *get_fdsetmax() = max(*get_fdsetmax(), sock); + rwlock_unlock(svc_fd_lock); + return (TRUE); + out: rwlock_unlock(svc_fd_lock); + return (FALSE); } void
CVS commit: src/tests/fs/common/nfsrpc
Module Name:src Committed By: mrg Date: Wed Jun 29 02:36:13 UTC 2011 Modified Files: src/tests/fs/common/nfsrpc: Makefile.inc Log Message: apply some -fno-strict-aliasing XXX -- someone please fix this properly. To generate a diff of this commit: cvs rdiff -u -r1.2 -r1.3 src/tests/fs/common/nfsrpc/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/tests/fs/common/nfsrpc/Makefile.inc diff -u src/tests/fs/common/nfsrpc/Makefile.inc:1.2 src/tests/fs/common/nfsrpc/Makefile.inc:1.3 --- src/tests/fs/common/nfsrpc/Makefile.inc:1.2 Tue Aug 3 17:24:45 2010 +++ src/tests/fs/common/nfsrpc/Makefile.inc Wed Jun 29 02:36:13 2011 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile.inc,v 1.2 2010/08/03 17:24:45 drochner Exp $ +# $NetBSD: Makefile.inc,v 1.3 2011/06/29 02:36:13 mrg Exp $ # # libc rpc using rump syscalls @@ -8,3 +8,6 @@ CPPFLAGS+= -DPORTMAP -D_REENTRANT -DRUMP_SYS_NETWORKING CPPFLAGS+= -DDEBUG -DLIBWRAP + +# XXX +CPPFLAGS.clnt_dg.c+= -fno-strict-aliasing
CVS commit: src/tests/fs/common/nfsrpc
Module Name:src Committed By: he Date: Thu Sep 23 09:38:14 UTC 2010 Modified Files: src/tests/fs/common/nfsrpc: clnt_bcast.c namespace.h rpc_generic.c rpcb_clnt.c svc.c svc_dg.c svc_vc.c Log Message: Do symbol renaming for these bits as well, so that we don't get link-time errors caused by conflicts with normal user-space libraries when we link statically. The tests still pass for i386 after this set of changes, and this now builds for sun2 (after a few more changes). To generate a diff of this commit: cvs rdiff -u -r1.1 -r1.2 src/tests/fs/common/nfsrpc/clnt_bcast.c \ src/tests/fs/common/nfsrpc/namespace.h \ src/tests/fs/common/nfsrpc/rpc_generic.c \ src/tests/fs/common/nfsrpc/rpcb_clnt.c \ src/tests/fs/common/nfsrpc/svc_dg.c cvs rdiff -u -r1.3 -r1.4 src/tests/fs/common/nfsrpc/svc.c cvs rdiff -u -r1.2 -r1.3 src/tests/fs/common/nfsrpc/svc_vc.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tests/fs/common/nfsrpc/clnt_bcast.c diff -u src/tests/fs/common/nfsrpc/clnt_bcast.c:1.1 src/tests/fs/common/nfsrpc/clnt_bcast.c:1.2 --- src/tests/fs/common/nfsrpc/clnt_bcast.c:1.1 Mon Jul 26 15:56:45 2010 +++ src/tests/fs/common/nfsrpc/clnt_bcast.c Thu Sep 23 09:38:14 2010 @@ -1,4 +1,4 @@ -/* $NetBSD: clnt_bcast.c,v 1.1 2010/07/26 15:56:45 pooka Exp $ */ +/* $NetBSD: clnt_bcast.c,v 1.2 2010/09/23 09:38:14 he Exp $ */ /* * Sun RPC is a product of Sun Microsystems, Inc. and is provided for @@ -39,7 +39,7 @@ #if 0 static char sccsid[] = @(#)clnt_bcast.c 1.15 89/04/21 Copyr 1988 Sun Micro; #else -__RCSID($NetBSD: clnt_bcast.c,v 1.1 2010/07/26 15:56:45 pooka Exp $); +__RCSID($NetBSD: clnt_bcast.c,v 1.2 2010/09/23 09:38:14 he Exp $); #endif #endif @@ -113,6 +113,11 @@ * also here it will get two responses ... inefficient and clumsy. */ +#ifdef __weak_alias +__weak_alias(rpc_broadcast_exp,_rpc_broadcast_exp) +__weak_alias(rpc_broadcast,_rpc_broadcast) +#endif + struct broadif { int index; struct sockaddr_storage broadaddr; Index: src/tests/fs/common/nfsrpc/namespace.h diff -u src/tests/fs/common/nfsrpc/namespace.h:1.1 src/tests/fs/common/nfsrpc/namespace.h:1.2 --- src/tests/fs/common/nfsrpc/namespace.h:1.1 Mon Jul 26 15:56:45 2010 +++ src/tests/fs/common/nfsrpc/namespace.h Thu Sep 23 09:38:14 2010 @@ -1,4 +1,4 @@ -/* $NetBSD: namespace.h,v 1.1 2010/07/26 15:56:45 pooka Exp $ */ +/* $NetBSD: namespace.h,v 1.2 2010/09/23 09:38:14 he Exp $ */ /*- * Copyright (c) 1997-2004 The NetBSD Foundation, Inc. @@ -52,4 +52,40 @@ #define svcraw_lock __rpc_svcraw_lock #define xprtlist_lock __rpc_xprtlist_lock +/* NFS server stuff */ +#define svc_dg_create _svc_dg_create + +#define rpc_broadcast _rpc_broadcast +#define rpc_broadcast_exp _rpc_broadcast_exp + +#define svc_fd_create _svc_fd_create +#define svc_vc_create _svc_vc_create +#define svc_getreq _svc_getreq +#define svc_getreqset _svc_getreqset +#define svc_getreq_common _svc_getreq_common +#define svc_register_svc_register +#define svc_reg _svc_reg +#define svc_unreg _svc_unreg +#define svc_sendreply _svc_sendreply +#define svc_unregister _svc_unregister +#define svcerr_auth _svcerr_auth +#define svcerr_decode _svcerr_decode +#define svcerr_noproc _svcerr_noproc +#define svcerr_noprog _svcerr_noprog +#define svcerr_progvers _svcerr_progvers +#define svcerr_systemerr_svcerr_systemerr +#define svcerr_weakauth _svcerr_weakauth +#define xprt_register _xprt_register +#define xprt_unregister _xprt_unregister +#define rpc_control _rpc_control + +#define taddr2uaddr _taddr2uaddr +#define uaddr2taddr _uaddr2taddr + +#define rpcb_set _rpcb_set +#define rpcb_unset _rpcb_unset +#define rpcb_getmaps _rpcb_getmaps +#define rpcb_taddr2uaddr _rpcb_taddr2uaddr +#define rpcb_uaddr2taddr _rpcb_uaddr2taddr + #endif /* _NAMESPACE_H_ */ Index: src/tests/fs/common/nfsrpc/rpc_generic.c diff -u src/tests/fs/common/nfsrpc/rpc_generic.c:1.1 src/tests/fs/common/nfsrpc/rpc_generic.c:1.2 --- src/tests/fs/common/nfsrpc/rpc_generic.c:1.1 Mon Jul 26 15:56:45 2010 +++ src/tests/fs/common/nfsrpc/rpc_generic.c Thu Sep 23 09:38:14 2010 @@ -1,4 +1,4 @@ -/* $NetBSD: rpc_generic.c,v 1.1 2010/07/26 15:56:45 pooka Exp $ */ +/* $NetBSD: rpc_generic.c,v 1.2 2010/09/23 09:38:14 he Exp $ */ /* * Sun RPC is a product of Sun Microsystems, Inc. and is provided for @@ -41,7 +41,7 @@ #include sys/cdefs.h #if defined(LIBC_SCCS) !defined(lint) -__RCSID($NetBSD: rpc_generic.c,v 1.1 2010/07/26 15:56:45 pooka Exp $); +__RCSID($NetBSD: rpc_generic.c,v 1.2 2010/09/23 09:38:14 he Exp $); #endif #include namespace.h @@ -69,6 +69,11 @@ #include rump/rump.h #include rump/rump_syscalls.h +#ifdef __weak_alias +__weak_alias(taddr2uaddr,_taddr2uaddr)
CVS commit: src/tests/fs/common/nfsrpc
Module Name:src Committed By: pooka Date: Mon Jul 26 17:53:21 UTC 2010 Modified Files: src/tests/fs/common/nfsrpc: svc.c Log Message: make unsignedness match To generate a diff of this commit: cvs rdiff -u -r1.1 -r1.2 src/tests/fs/common/nfsrpc/svc.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tests/fs/common/nfsrpc/svc.c diff -u src/tests/fs/common/nfsrpc/svc.c:1.1 src/tests/fs/common/nfsrpc/svc.c:1.2 --- src/tests/fs/common/nfsrpc/svc.c:1.1 Mon Jul 26 15:56:45 2010 +++ src/tests/fs/common/nfsrpc/svc.c Mon Jul 26 17:53:21 2010 @@ -1,4 +1,4 @@ -/* $NetBSD: svc.c,v 1.1 2010/07/26 15:56:45 pooka Exp $ */ +/* $NetBSD: svc.c,v 1.2 2010/07/26 17:53:21 pooka Exp $ */ /* * Sun RPC is a product of Sun Microsystems, Inc. and is provided for @@ -35,7 +35,7 @@ static char *sccsid = @(#)svc.c 1.44 88/02/08 Copyr 1984 Sun Micro; static char *sccsid = @(#)svc.c 2.4 88/08/11 4.0 RPCSRC; #else -__RCSID($NetBSD: svc.c,v 1.1 2010/07/26 15:56:45 pooka Exp $); +__RCSID($NetBSD: svc.c,v 1.2 2010/07/26 17:53:21 pooka Exp $); #endif #endif @@ -673,7 +673,7 @@ fd_set *readfds; { int bit, fd; - int32_t mask, *maskp; + uint32_t mask, *maskp; int sock; _DIAGASSERT(readfds != NULL);
CVS commit: src/tests/fs/common/nfsrpc
Module Name:src Committed By: pooka Date: Mon Jul 26 18:47:37 UTC 2010 Modified Files: src/tests/fs/common/nfsrpc: svc_vc.c Log Message: retire unwieldy casts To generate a diff of this commit: cvs rdiff -u -r1.1 -r1.2 src/tests/fs/common/nfsrpc/svc_vc.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tests/fs/common/nfsrpc/svc_vc.c diff -u src/tests/fs/common/nfsrpc/svc_vc.c:1.1 src/tests/fs/common/nfsrpc/svc_vc.c:1.2 --- src/tests/fs/common/nfsrpc/svc_vc.c:1.1 Mon Jul 26 15:56:45 2010 +++ src/tests/fs/common/nfsrpc/svc_vc.c Mon Jul 26 18:47:36 2010 @@ -1,4 +1,4 @@ -/* $NetBSD: svc_vc.c,v 1.1 2010/07/26 15:56:45 pooka Exp $ */ +/* $NetBSD: svc_vc.c,v 1.2 2010/07/26 18:47:36 pooka Exp $ */ /* * Sun RPC is a product of Sun Microsystems, Inc. and is provided for @@ -35,7 +35,7 @@ static char *sccsid = @(#)svc_tcp.c 1.21 87/08/11 Copyr 1984 Sun Micro; static char *sccsid = @(#)svc_tcp.c 2.2 88/08/01 4.0 RPCSRC; #else -__RCSID($NetBSD: svc_vc.c,v 1.1 2010/07/26 15:56:45 pooka Exp $); +__RCSID($NetBSD: svc_vc.c,v 1.2 2010/07/26 18:47:36 pooka Exp $); #endif #endif @@ -365,10 +365,10 @@ cd-maxrec = r-maxrec; if (cd-maxrec != 0) { - flags = rump_sys_fcntl(sock, F_GETFL, (void *)0); + flags = rump_sys_fcntl(sock, F_GETFL, 0); if (flags == -1) goto out; - if (rump_sys_fcntl(sock, F_SETFL, (void *)(flags | O_NONBLOCK)) == -1) + if (rump_sys_fcntl(sock, F_SETFL, flags | O_NONBLOCK) == -1) goto out; if (cd-recvsize cd-maxrec) cd-recvsize = cd-maxrec;
CVS commit: src/tests/fs/common/nfsrpc
Module Name:src Committed By: pooka Date: Mon Jul 26 18:51:03 UTC 2010 Modified Files: src/tests/fs/common/nfsrpc: svc.c Log Message: Add for-fun cast ... no, not really. casting is never fun. But now this code builds both on 5.0 and -current. To generate a diff of this commit: cvs rdiff -u -r1.2 -r1.3 src/tests/fs/common/nfsrpc/svc.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tests/fs/common/nfsrpc/svc.c diff -u src/tests/fs/common/nfsrpc/svc.c:1.2 src/tests/fs/common/nfsrpc/svc.c:1.3 --- src/tests/fs/common/nfsrpc/svc.c:1.2 Mon Jul 26 17:53:21 2010 +++ src/tests/fs/common/nfsrpc/svc.c Mon Jul 26 18:51:02 2010 @@ -1,4 +1,4 @@ -/* $NetBSD: svc.c,v 1.2 2010/07/26 17:53:21 pooka Exp $ */ +/* $NetBSD: svc.c,v 1.3 2010/07/26 18:51:02 pooka Exp $ */ /* * Sun RPC is a product of Sun Microsystems, Inc. and is provided for @@ -35,7 +35,7 @@ static char *sccsid = @(#)svc.c 1.44 88/02/08 Copyr 1984 Sun Micro; static char *sccsid = @(#)svc.c 2.4 88/08/11 4.0 RPCSRC; #else -__RCSID($NetBSD: svc.c,v 1.2 2010/07/26 17:53:21 pooka Exp $); +__RCSID($NetBSD: svc.c,v 1.3 2010/07/26 18:51:02 pooka Exp $); #endif #endif @@ -678,7 +678,7 @@ _DIAGASSERT(readfds != NULL); - maskp = readfds-fds_bits; + maskp = (uint32_t *)readfds-fds_bits; for (sock = 0; sock FD_SETSIZE; sock += NFDBITS) { for (mask = *maskp++; (bit = ffs(mask)) != 0; mask ^= (1 (bit - 1))) {