diff options
author | Joel Sherrill <joel.sherrill@OARcorp.com> | 2002-06-25 14:52:37 +0000 |
---|---|---|
committer | Joel Sherrill <joel.sherrill@OARcorp.com> | 2002-06-25 14:52:37 +0000 |
commit | 411e387c27b183eb53c9563a8decfb02af73dfd0 (patch) | |
tree | 8787b53c4df78702fa6a77cc722ee830ada6a3f7 /c/src/librpc/src/rpc/clnt_generic.c | |
parent | 2002-06-19 Ralf Corsepius <corsepiu@faw.uni-ulm.de> (diff) | |
download | rtems-411e387c27b183eb53c9563a8decfb02af73dfd0.tar.bz2 |
2002-06-25 Joel Sherrill <joel@OARcorp.com>
* Per PR233, moved librpc to exec. Ralf will patch after move.
The patches associated with this PR are out of date.
./include/rpc/.cvsignore, ./include/rpc/Makefile.am,
./include/rpc/auth.h, ./include/rpc/auth_des.h,
./include/rpc/auth_unix.h, ./include/rpc/clnt.h,
./include/rpc/des.h, ./include/rpc/des_crypt.h,
./include/rpc/pmap_clnt.h, ./include/rpc/pmap_prot.h,
./include/rpc/pmap_rmt.h, ./include/rpc/rpc.h,
./include/rpc/rpc_com.h, ./include/rpc/rpc_msg.h,
./include/rpc/svc.h, ./include/rpc/svc_auth.h,
./include/rpc/types.h, ./include/rpc/xdr.h,
./include/.cvsignore, ./include/Makefile.am,
./include/rpcsvc/.cvsignore, ./include/rpcsvc/Makefile.am,
./include/rpcsvc/bootparam_prot.x, ./include/rpcsvc/crypt.x,
./include/rpcsvc/key_prot.x, ./include/rpcsvc/klm_prot.x,
./include/rpcsvc/mount.x, ./include/rpcsvc/nfs_prot.x,
./include/rpcsvc/nis.x, ./include/rpcsvc/nis_cache.x,
./include/rpcsvc/nis_callback.x, ./include/rpcsvc/nis_db.h,
./include/rpcsvc/nis_object.x, ./include/rpcsvc/nis_tags.h,
./include/rpcsvc/nislib.h, ./include/rpcsvc/nlm_prot.x,
./include/rpcsvc/pmap_prot.x, ./include/rpcsvc/rex.x,
./include/rpcsvc/rnusers.x, ./include/rpcsvc/rquota.x,
./include/rpcsvc/rstat.x, ./include/rpcsvc/rwall.x,
./include/rpcsvc/sm_inter.x, ./include/rpcsvc/spray.x,
./include/rpcsvc/yp.x, ./include/rpcsvc/yp_prot.h,
./include/rpcsvc/ypclnt.h, ./include/rpcsvc/yppasswd.x,
./include/rpcsvc/ypupdate_prot.x, ./include/rpcsvc/ypxfrd.x,
./.cvsignore, ./Makefile.am, ./README_RTEMS,
./configure.ac, ./src/rpc/PSD.doc/.cvsignore,
./src/rpc/PSD.doc/Makefile.am, ./src/rpc/PSD.doc/nfs.rfc.ms,
./src/rpc/PSD.doc/rpc.prog.ms, ./src/rpc/PSD.doc/rpc.rfc.ms,
./src/rpc/PSD.doc/rpcgen.ms, ./src/rpc/PSD.doc/xdr.nts.ms,
./src/rpc/PSD.doc/xdr.rfc.ms, ./src/rpc/.cvsignore,
./src/rpc/DISCLAIMER, ./src/rpc/Makefile.am,
./src/rpc/README, ./src/rpc/auth_des.c,
./src/rpc/auth_none.c, ./src/rpc/auth_time.c,
./src/rpc/auth_unix.c, ./src/rpc/authdes_prot.c,
./src/rpc/authunix_prot.c, ./src/rpc/bindresvport.3,
./src/rpc/bindresvport.c, ./src/rpc/clnt_generic.c,
./src/rpc/clnt_perror.c, ./src/rpc/clnt_raw.c,
./src/rpc/clnt_simple.c, ./src/rpc/clnt_tcp.c,
./src/rpc/clnt_udp.c, ./src/rpc/clnt_unix.c,
./src/rpc/crypt_client.c, ./src/rpc/des_crypt.3,
./src/rpc/des_crypt.c, ./src/rpc/des_soft.c,
./src/rpc/get_myaddress.c, ./src/rpc/getpublickey.c,
./src/rpc/getrpcent.3, ./src/rpc/getrpcent.c,
./src/rpc/getrpcport.3, ./src/rpc/getrpcport.c,
./src/rpc/key_call.c, ./src/rpc/key_prot_xdr.c,
./src/rpc/netname.c, ./src/rpc/netnamer.c,
./src/rpc/pmap_clnt.c, ./src/rpc/pmap_getmaps.c,
./src/rpc/pmap_getport.c, ./src/rpc/pmap_prot.c,
./src/rpc/pmap_prot2.c, ./src/rpc/pmap_rmt.c,
./src/rpc/publickey.3, ./src/rpc/publickey.5,
./src/rpc/rpc.3, ./src/rpc/rpc.5, ./src/rpc/rpc_callmsg.c,
./src/rpc/rpc_commondata.c, ./src/rpc/rpc_dtablesize.c,
./src/rpc/rpc_prot.c, ./src/rpc/rpc_secure.3,
./src/rpc/rpcdname.c, ./src/rpc/rstat.1,
./src/rpc/rstat_svc.8, ./src/rpc/rtems_portmapper.c,
./src/rpc/rtems_rpc.c, ./src/rpc/rtime.3, ./src/rpc/rtime.c,
./src/rpc/svc.c, ./src/rpc/svc_auth.c,
./src/rpc/svc_auth_des.c, ./src/rpc/svc_auth_unix.c,
./src/rpc/svc_raw.c, ./src/rpc/svc_run.c,
./src/rpc/svc_simple.c, ./src/rpc/svc_tcp.c,
./src/rpc/svc_udp.c, ./src/rpc/svc_unix.c,
./src/xdr/.cvsignore, ./src/xdr/Makefile.am, ./src/xdr/xdr.3,
./src/xdr/xdr.c, ./src/xdr/xdr_array.c,
./src/xdr/xdr_float.c, ./src/xdr/xdr_mem.c,
./src/xdr/xdr_rec.c, ./src/xdr/xdr_reference.c,
./src/xdr/xdr_sizeof.c, ./src/xdr/xdr_stdio.c,
./src/.cvsignore, ./src/Makefile.am: Moved to exec.
Diffstat (limited to 'c/src/librpc/src/rpc/clnt_generic.c')
-rw-r--r-- | c/src/librpc/src/rpc/clnt_generic.c | 141 |
1 files changed, 0 insertions, 141 deletions
diff --git a/c/src/librpc/src/rpc/clnt_generic.c b/c/src/librpc/src/rpc/clnt_generic.c deleted file mode 100644 index d387fae4c0..0000000000 --- a/c/src/librpc/src/rpc/clnt_generic.c +++ /dev/null @@ -1,141 +0,0 @@ -/* - * Sun RPC is a product of Sun Microsystems, Inc. and is provided for - * unrestricted use provided that this legend is included on all tape - * media and as a part of the software program in whole or part. Users - * may copy or modify Sun RPC without charge, but are not authorized - * to license or distribute it to anyone else except as part of a product or - * program developed by the user. - * - * SUN RPC IS PROVIDED AS IS WITH NO WARRANTIES OF ANY KIND INCLUDING THE - * WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS FOR A PARTICULAR - * PURPOSE, OR ARISING FROM A COURSE OF DEALING, USAGE OR TRADE PRACTICE. - * - * Sun RPC is provided with no support and without any obligation on the - * part of Sun Microsystems, Inc. to assist in its use, correction, - * modification or enhancement. - * - * SUN MICROSYSTEMS, INC. SHALL HAVE NO LIABILITY WITH RESPECT TO THE - * INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY SUN RPC - * OR ANY PART THEREOF. - * - * In no event will Sun Microsystems, Inc. be liable for any lost revenue - * or profits or other special, indirect and consequential damages, even if - * Sun has been advised of the possibility of such damages. - * - * Sun Microsystems, Inc. - * 2550 Garcia Avenue - * Mountain View, California 94043 - */ - -#if defined(LIBC_SCCS) && !defined(lint) -/*static char *sccsid = "from: @(#)clnt_generic.c 1.4 87/08/11 (C) 1987 SMI";*/ -/*static char *sccsid = "from: @(#)clnt_generic.c 2.2 88/08/01 4.0 RPCSRC";*/ -static char *rcsid = "$FreeBSD: src/lib/libc/rpc/clnt_generic.c,v 1.9 1999/08/28 00:00:35 peter Exp $"; -#endif - -/* - * Copyright (C) 1987, Sun Microsystems, Inc. - */ -#include <rpc/rpc.h> -#include <sys/socket.h> -#include <sys/errno.h> -#include <netdb.h> -#include <string.h> - -/* - * Generic client creation: takes (hostname, program-number, protocol) and - * returns client handle. Default options are set, which the user can - * change using the rpc equivalent of ioctl()'s. - */ -CLIENT * -clnt_create(hostname, prog, vers, proto) - char *hostname; - u_long prog; - u_long vers; - char *proto; -{ - struct hostent *h; - struct protoent *p; - struct sockaddr_in sin; -#ifndef __rtems__ - struct sockaddr_un sun; -#endif - int sock; - struct timeval tv; - CLIENT *client; - -#ifndef __rtems__ - if (!strcmp(proto, "unix")) { - bzero((char *)&sun, sizeof(sun)); - sun.sun_family = AF_UNIX; - strcpy(sun.sun_path, hostname); - sun.sun_len = sizeof(sun.sun_len) + sizeof(sun.sun_family) + - strlen(sun.sun_path) + 1; - sock = RPC_ANYSOCK; - client = clntunix_create(&sun, prog, vers, &sock, 0, 0); - if (client == NULL) - return(NULL); - tv.tv_sec = 25; - tv.tv_usec = 0; - clnt_control(client, CLSET_TIMEOUT, &tv); - return(client); - } -#endif - - h = gethostbyname(hostname); - if (h == NULL) { - rpc_createerr.cf_stat = RPC_UNKNOWNHOST; - return (NULL); - } - if (h->h_addrtype != AF_INET) { - /* - * Only support INET for now - */ - rpc_createerr.cf_stat = RPC_SYSTEMERROR; - rpc_createerr.cf_error.re_errno = EAFNOSUPPORT; - return (NULL); - } - memset(&sin, 0, sizeof(sin)); - sin.sin_len = sizeof(struct sockaddr_in); - sin.sin_family = h->h_addrtype; - sin.sin_port = 0; - memcpy((char*)&sin.sin_addr, h->h_addr, h->h_length); - p = getprotobyname(proto); - if (p == NULL) { - rpc_createerr.cf_stat = RPC_UNKNOWNPROTO; - rpc_createerr.cf_error.re_errno = EPFNOSUPPORT; - return (NULL); - } - sock = RPC_ANYSOCK; - switch (p->p_proto) { - case IPPROTO_UDP: - tv.tv_sec = 5; - tv.tv_usec = 0; - client = clntudp_create(&sin, prog, vers, tv, &sock); - if (client == NULL) { - return (NULL); - } -#if 0 /* XXX do we need this? */ - tv.tv_sec = 25; - tv.tv_usec = 0; - clnt_control(client, CLSET_TIMEOUT, &tv); -#endif - break; - case IPPROTO_TCP: - client = clnttcp_create(&sin, prog, vers, &sock, 0, 0); - if (client == NULL) { - return (NULL); - } -#if 0 /* XXX do we need this? */ - tv.tv_sec = 25; - tv.tv_usec = 0; - clnt_control(client, CLSET_TIMEOUT, &tv); -#endif - break; - default: - rpc_createerr.cf_stat = RPC_SYSTEMERROR; - rpc_createerr.cf_error.re_errno = EPFNOSUPPORT; - return (NULL); - } - return (client); -} |