diff options
author | Ulrich Drepper <drepper@redhat.com> | 2000-01-24 02:22:13 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 2000-01-24 02:22:13 +0000 |
commit | c1301d9a76ee8da9aa2f1961d57fdf1763e44d57 (patch) | |
tree | 0d4e141c5f472e4181f943cfc5305032db689315 /sunrpc/rpc | |
parent | 3356ac25545b2de0464e04662e602b65c0706b8c (diff) | |
download | glibc-c1301d9a76ee8da9aa2f1961d57fdf1763e44d57.tar.gz glibc-c1301d9a76ee8da9aa2f1961d57fdf1763e44d57.tar.xz glibc-c1301d9a76ee8da9aa2f1961d57fdf1763e44d57.zip |
Update.
2000-01-23 Philip Blundell <philb@gnu.org> Add basic support for RPC over IPv6: * sunrpc/rpc/svc.h (struct SVCXPRT): Use `struct sockaddr_storage' for remote address. (svcudp6_create, svcudp6_bufcreate, svctcp6_create): New prototypes. * sunrpc/rpc/clnt.h (clnttcp6_create, clntudp6_create, clntudp6_bufcreate): New prototypes. * inet/netinet/in.h (bindresport6): Likewise. * sunrpc/Makefile (routines): Add svc_tcp6, svc_udp6, bindrsvprt6. * sunrpc/Versions: Add svcfd6_create, svctcp6_create, svcudp6_create, svcudp6_bufcreate, svcudp6_enablecache, bindresvport6 for GLIBC_2.2. * sunrpc/rpc_main.c: Support `tcp6' and `udp6' transport types. * sunrpc/rpc_svcout.c: Likewise. * sunrpc/svc_tcp.c (rendezvous_request): Use memcpy rather than simple assignment when copying addresses. * sunrpc/svc_udp.c (cache_get): Likewise. * sunrpc/svc_unix.c (rendezvous_request): Likewise. * sunrpc/bindrsvprt6.c, sunrpc/clnt_tcp6.c, sunrpc/clnt_udp6.c, sunrpc/svc_tcp6.c, sunrpc/svc_udp6.c: New files. 2000-01-05 Philip Blundell <philb@gnu.org> * sysdeps/unix/sysv/linux/arm/mmap64.S: Correct check for ENOSYS. 2000-01-23 Andreas Jaeger <aj@suse.de> * sysdeps/unix/sysv/linux/i386/fxstat.c (__fxstat): Pass right parameter to fstat calls. 2000-01-18 Roland McGrath <roland@baalperazim.frob.com> * sysdeps/generic/bits/socket.h (__ss_aligntype, struct sockaddr_storage): Make these like Linux version, replacing old type name `__ss_align'. 2000-01-05 Roland McGrath <roland@baalperazim.frob.com> * sysdeps/generic/lseek64.c (__libc_lseek64): Renamed from __lseek64. (__lseek64, lseek64): Make these weak aliases for __libc_lseek64. * sysdeps/mach/hurd/lseek.c (__libc_lseek): Renamed from __lseek. (__lseek, lseek): Make these weak aliases for __libc_lseek. * sysdeps/mach/hurd/fcntl.c (__libc_fcntl): Renamed from __fcntl. (__fcntl, fcntl): Make these weak aliases for __libc_fcntl. * sysdeps/mach/hurd/open.c (__libc_open): Renamed from __open. (__open, open): Make these weak aliases for __libc_open. * sysdeps/generic/bits/socket.h (enum __socket_type): Remove trailing comma. (anonymous enum for MSG_*): Likewise. (anonymous enum for SO_*): Likewise. 2000-01-23 Ulrich Drepper <drepper@cygnus.com> * string/bits/string2.h: Fix typo (__GNU_SOURCE -> __USE_GNU) (PR libc/1553).
Diffstat (limited to 'sunrpc/rpc')
-rw-r--r-- | sunrpc/rpc/clnt.h | 48 | ||||
-rw-r--r-- | sunrpc/rpc/svc.h | 15 |
2 files changed, 62 insertions, 1 deletions
diff --git a/sunrpc/rpc/clnt.h b/sunrpc/rpc/clnt.h index 47bd0b5d78..39519a8e38 100644 --- a/sunrpc/rpc/clnt.h +++ b/sunrpc/rpc/clnt.h @@ -342,6 +342,54 @@ extern CLIENT *clntudp_bufcreate (struct sockaddr_in *__raddr, /* + * TCP/IPv6 based rpc + * CLIENT * + * clnttcp6_create(raddr, prog, vers, sockp, sendsz, recvsz) + * struct sockaddr_in6 *raddr; + * u_long prog; + * u_long version; + * register int *sockp; + * u_int sendsz; + * u_int recvsz; + */ +extern CLIENT *clnttcp6_create __P ((struct sockaddr_in6 *__raddr, + u_long __prog, u_long __version, + int *__sockp, u_int __sendsz, + u_int __recvsz)); + +/* + * UDP/IPv6 based rpc. + * CLIENT * + * clntudp6_create(raddr, program, version, wait, sockp) + * struct sockaddr_in6 *raddr; + * u_long program; + * u_long version; + * struct timeval wait_resend; + * int *sockp; + * + * Same as above, but you specify max packet sizes. + * CLIENT * + * clntudp6_bufcreate(raddr, program, version, wait, sockp, sendsz, recvsz) + * struct sockaddr_in6 *raddr; + * u_long program; + * u_long version; + * struct timeval wait_resend; + * int *sockp; + * u_int sendsz; + * u_int recvsz; + */ +extern CLIENT *clntudp6_create __P ((struct sockaddr_in6 *__raddr, + u_long __program, u_long __version, + struct timeval __wait_resend, + int *__sockp)); +extern CLIENT *clntudp6_bufcreate __P ((struct sockaddr_in6 *__raddr, + u_long __program, u_long __version, + struct timeval __wait_resend, + int *__sockp, u_int __sendsz, + u_int __recvsz)); + + +/* * AF_UNIX based rpc * CLIENT * * clntunix_create(raddr, prog, vers, sockp, sendsz, recvsz) diff --git a/sunrpc/rpc/svc.h b/sunrpc/rpc/svc.h index 8ceec30a11..2af6dce195 100644 --- a/sunrpc/rpc/svc.h +++ b/sunrpc/rpc/svc.h @@ -92,7 +92,7 @@ struct SVCXPRT { /* destroy this struct */ } *xp_ops; int xp_addrlen; /* length of remote address */ - struct sockaddr_in xp_raddr; /* remote address */ + struct sockaddr_storage xp_raddr; /* remote address */ struct opaque_auth xp_verf; /* raw response verifier */ caddr_t xp_p1; /* private */ caddr_t xp_p2; /* private */ @@ -304,6 +304,19 @@ extern SVCXPRT *svctcp_create (int __sock, u_int __sendsize, u_int __recvsize) /* + * IPv6/Udp based rpc. + */ +extern SVCXPRT *svcudp6_create (int __sock) __THROW; +extern SVCXPRT *svcudp6_bufcreate (int __sock, u_int __sendsz, + u_int __recvsz) __THROW; + +/* + * IPv6/Tcp based rpc. + */ +extern SVCXPRT *svctcp6_create (int __sock, u_int __sendsize, + u_int __recvsize) __THROW; + +/* * Unix based rpc. */ extern SVCXPRT *svcunix_create (int __sock, u_int __sendsize, u_int __recvsize, |