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/rtime.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/rtime.c')
-rw-r--r-- | c/src/librpc/src/rpc/rtime.c | 157 |
1 files changed, 0 insertions, 157 deletions
diff --git a/c/src/librpc/src/rpc/rtime.c b/c/src/librpc/src/rpc/rtime.c deleted file mode 100644 index ad83dee2dc..0000000000 --- a/c/src/librpc/src/rpc/rtime.c +++ /dev/null @@ -1,157 +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 - */ - -/* - * Copyright (c) 1988 by Sun Microsystems, Inc. - - */ - -/* - * rtime - get time from remote machine - * - * gets time, obtaining value from host - * on the udp/time socket. Since timeserver returns - * with time of day in seconds since Jan 1, 1900, must - * subtract seconds before Jan 1, 1970 to get - * what unix uses. - */ -#include <stdlib.h> -#include <string.h> -#include <unistd.h> -#include <errno.h> -#include <sys/types.h> -#include <sys/socket.h> -#include <sys/time.h> -#include <netinet/in.h> -#include <stdio.h> -#include <netdb.h> - -#if defined(LIBC_SCCS) && !defined(lint) -/* from: static char sccsid[] = "@(#)rtime.c 2.2 88/08/10 4.0 RPCSRC; from 1.8 88/02/08 SMI"; */ -static const char rcsid[] = "$FreeBSD: src/lib/libc/rpc/rtime.c,v 1.5 2000/01/27 23:06:41 jasone Exp $"; -#endif - -extern int _rpc_dtablesize __P(( void )); - -#define NYEARS (unsigned long)(1970 - 1900) -#define TOFFSET (unsigned long)(60*60*24*(365*NYEARS + (NYEARS/4))) - -static void do_close __P(( int )); - -int -rtime(addrp, timep, timeout) - struct sockaddr_in *addrp; - struct timeval *timep; - struct timeval *timeout; -{ - int s; - fd_set readfds; - int res; - unsigned long thetime; - struct sockaddr_in from; - int fromlen; - int type; - struct servent *serv; - - if (timeout == NULL) { - type = SOCK_STREAM; - } else { - type = SOCK_DGRAM; - } - s = socket(AF_INET, type, 0); - if (s < 0) { - return(-1); - } - addrp->sin_family = AF_INET; - - /* TCP and UDP port are the same in this case */ - if ((serv = getservbyname("time", "tcp")) == NULL) { - return(-1); - } - - addrp->sin_port = serv->s_port; - - if (type == SOCK_DGRAM) { - res = sendto(s, (char *)&thetime, sizeof(thetime), 0, - (struct sockaddr *)addrp, sizeof(*addrp)); - if (res < 0) { - do_close(s); - return(-1); - } - do { - FD_ZERO(&readfds); - FD_SET(s, &readfds); - res = select(_rpc_dtablesize(), &readfds, - (fd_set *)NULL, (fd_set *)NULL, timeout); - } while (res < 0 && errno == EINTR); - if (res <= 0) { - if (res == 0) { - errno = ETIMEDOUT; - } - do_close(s); - return(-1); - } - fromlen = sizeof(from); - res = recvfrom(s, (char *)&thetime, sizeof(thetime), 0, - (struct sockaddr *)&from, &fromlen); - do_close(s); - if (res < 0) { - return(-1); - } - } else { - if (connect(s, (struct sockaddr *)addrp, sizeof(*addrp)) < 0) { - do_close(s); - return(-1); - } - res = _RPC_read(s, (char *)&thetime, sizeof(thetime)); - do_close(s); - if (res < 0) { - return(-1); - } - } - if (res != sizeof(thetime)) { - errno = EIO; - return(-1); - } - thetime = ntohl(thetime); - timep->tv_sec = thetime - TOFFSET; - timep->tv_usec = 0; - return(0); -} - -static void -do_close(s) - int s; -{ - int save; - - save = errno; - (void)_RPC_close(s); - errno = save; -} |