summaryrefslogtreecommitdiff
path: root/Build/source/utils/asymptote/patches/cygwin_xdr.patch
diff options
context:
space:
mode:
Diffstat (limited to 'Build/source/utils/asymptote/patches/cygwin_xdr.patch')
-rw-r--r--Build/source/utils/asymptote/patches/cygwin_xdr.patch385
1 files changed, 0 insertions, 385 deletions
diff --git a/Build/source/utils/asymptote/patches/cygwin_xdr.patch b/Build/source/utils/asymptote/patches/cygwin_xdr.patch
deleted file mode 100644
index b0ece108abf..00000000000
--- a/Build/source/utils/asymptote/patches/cygwin_xdr.patch
+++ /dev/null
@@ -1,385 +0,0 @@
-diff -rub rpc.broken/auth.h rpc/auth.h
---- rpc.broken/auth.h 2005-03-10 14:32:50.001000000 -0700
-+++ rpc/auth.h 2010-05-04 18:46:19.890625000 -0700
-@@ -62,7 +62,7 @@
- AUTH_FAILED=7 /* some unknown reason */
- };
-
--#if (mc68000 || sparc || vax || i386)
-+#if (mc68000 || sparc || vax || __i386__)
- typedef u_long u_int32; /* 32-bit unsigned integers */
- #endif
-
-diff -rub rpc.broken/svc.h rpc/svc.h
---- rpc.broken/svc.h 2005-03-10 14:32:51.001000000 -0700
-+++ rpc/svc.h 2010-05-04 18:46:47.343750000 -0700
-@@ -37,6 +37,8 @@
- #ifndef __SVC_HEADER__
- #define __SVC_HEADER__
-
-+#include <netinet/in.h>
-+
- /*
- * This interface must manage two items concerning remote procedure calling:
- *
-diff -rub rpc.broken/xdr.h rpc/xdr.h
---- rpc.broken/xdr.h 2005-03-10 14:32:52.001000000 -0700
-+++ rpc/xdr.h 2010-05-04 18:46:19.906250000 -0700
-@@ -1,4 +1,3 @@
--/* @(#)xdr.h 2.2 88/07/29 4.0 RPCSRC */
- /*
- * Sun RPC is a product of Sun Microsystems, Inc. and is provided for
- * unrestricted use provided that this legend is included on all tape
-@@ -27,7 +26,6 @@
- * 2550 Garcia Avenue
- * Mountain View, California 94043
- */
--/* @(#)xdr.h 1.19 87/04/22 SMI */
-
- /*
- * xdr.h, External Data Representation Serialization Routines.
-@@ -35,8 +33,17 @@
- * Copyright (C) 1984, Sun Microsystems, Inc.
- */
-
--#ifndef __XDR_HEADER__
--#define __XDR_HEADER__
-+#ifndef _RPC_XDR_H
-+#define _RPC_XDR_H 1
-+
-+#include <features.h>
-+#include <sys/types.h>
-+#include <rpc/types.h>
-+
-+/* We need FILE. */
-+#include <stdio.h>
-+
-+__BEGIN_DECLS
-
- /*
- * XDR provides a conventional way for converting between C data
-@@ -74,17 +81,66 @@
- * request.
- */
- enum xdr_op {
-- XDR_ENCODE=0,
-- XDR_DECODE=1,
-- XDR_FREE=2
-+ XDR_ENCODE = 0,
-+ XDR_DECODE = 1,
-+ XDR_FREE = 2
- };
-
- /*
- * This is the number of bytes per unit of external data.
- */
- #define BYTES_PER_XDR_UNIT (4)
-+/*
-+ * This only works if the above is a power of 2. But it's defined to be
-+ * 4 by the appropriate RFCs. So it will work. And it's normally quicker
-+ * than the old routine.
-+ */
-+#if 1
-+#define RNDUP(x) (((x) + BYTES_PER_XDR_UNIT - 1) & ~(BYTES_PER_XDR_UNIT - 1))
-+#else /* this is the old routine */
- #define RNDUP(x) ((((x) + BYTES_PER_XDR_UNIT - 1) / BYTES_PER_XDR_UNIT) \
- * BYTES_PER_XDR_UNIT)
-+#endif
-+
-+/*
-+ * The XDR handle.
-+ * Contains operation which is being applied to the stream,
-+ * an operations vector for the particular implementation (e.g. see xdr_mem.c),
-+ * and two private fields for the use of the particular implementation.
-+ */
-+typedef struct XDR XDR;
-+struct XDR
-+ {
-+ enum xdr_op x_op; /* operation; fast additional param */
-+ struct xdr_ops
-+ {
-+ bool_t (*x_getlong) (XDR *__xdrs, long *__lp);
-+ /* get a long from underlying stream */
-+ bool_t (*x_putlong) (XDR *__xdrs, __const long *__lp);
-+ /* put a long to " */
-+ bool_t (*x_getbytes) (XDR *__xdrs, caddr_t __addr, u_int __len);
-+ /* get some bytes from " */
-+ bool_t (*x_putbytes) (XDR *__xdrs, __const char *__addr, u_int __len);
-+ /* put some bytes to " */
-+ u_int (*x_getpostn) (__const XDR *__xdrs);
-+ /* returns bytes off from beginning */
-+ bool_t (*x_setpostn) (XDR *__xdrs, u_int __pos);
-+ /* lets you reposition the stream */
-+ int32_t *(*x_inline) (XDR *__xdrs, u_int __len);
-+ /* buf quick ptr to buffered data */
-+ void (*x_destroy) (XDR *__xdrs);
-+ /* free privates of this xdr_stream */
-+ bool_t (*x_getint32) (XDR *__xdrs, int32_t *__ip);
-+ /* get a int from underlying stream */
-+ bool_t (*x_putint32) (XDR *__xdrs, __const int32_t *__ip);
-+ /* put a int to " */
-+ }
-+ *x_ops;
-+ caddr_t x_public; /* users' data */
-+ caddr_t x_private; /* pointer to private data */
-+ caddr_t x_base; /* private used for position info */
-+ u_int x_handy; /* extra private word */
-+ };
-
- /*
- * A xdrproc_t exists for each data type which is to be encoded or decoded.
-@@ -95,41 +151,29 @@
- * allocate dynamic storage of the appropriate size and return it.
- * bool_t (*xdrproc_t)(XDR *, caddr_t *);
- */
--typedef bool_t (*xdrproc_t)();
-+typedef bool_t (*xdrproc_t) (XDR *, void *,...);
-
--/*
-- * The XDR handle.
-- * Contains operation which is being applied to the stream,
-- * an operations vector for the paticular implementation (e.g. see xdr_mem.c),
-- * and two private fields for the use of the particular impelementation.
-- */
--typedef struct {
-- enum xdr_op x_op; /* operation; fast additional param */
-- struct xdr_ops {
-- bool_t (*x_getlong)(); /* get a long from underlying stream */
-- bool_t (*x_putlong)(); /* put a long to " */
-- bool_t (*x_getbytes)();/* get some bytes from " */
-- bool_t (*x_putbytes)();/* put some bytes to " */
-- u_int (*x_getpostn)();/* returns bytes off from beginning */
-- bool_t (*x_setpostn)();/* lets you reposition the stream */
-- long * (*x_inline)(); /* buf quick ptr to buffered data */
-- void (*x_destroy)(); /* free privates of this xdr_stream */
-- } *x_ops;
-- caddr_t x_public; /* users' data */
-- caddr_t x_private; /* pointer to private data */
-- caddr_t x_base; /* private used for position info */
-- int x_handy; /* extra private word */
--} XDR;
-
- /*
- * Operations defined on a XDR handle
- *
- * XDR *xdrs;
-+ * int32_t *int32p;
- * long *longp;
- * caddr_t addr;
- * u_int len;
- * u_int pos;
- */
-+#define XDR_GETINT32(xdrs, int32p) \
-+ (*(xdrs)->x_ops->x_getint32)(xdrs, int32p)
-+#define xdr_getint32(xdrs, int32p) \
-+ (*(xdrs)->x_ops->x_getint32)(xdrs, int32p)
-+
-+#define XDR_PUTINT32(xdrs, int32p) \
-+ (*(xdrs)->x_ops->x_putint32)(xdrs, int32p)
-+#define xdr_putint32(xdrs, int32p) \
-+ (*(xdrs)->x_ops->x_putint32)(xdrs, int32p)
-+
- #define XDR_GETLONG(xdrs, longp) \
- (*(xdrs)->x_ops->x_getlong)(xdrs, longp)
- #define xdr_getlong(xdrs, longp) \
-@@ -166,11 +210,15 @@
- (*(xdrs)->x_ops->x_inline)(xdrs, len)
-
- #define XDR_DESTROY(xdrs) \
-+ do { \
- if ((xdrs)->x_ops->x_destroy) \
-- (*(xdrs)->x_ops->x_destroy)(xdrs)
-+ (*(xdrs)->x_ops->x_destroy)(xdrs); \
-+ } while (0)
- #define xdr_destroy(xdrs) \
-+ do { \
- if ((xdrs)->x_ops->x_destroy) \
-- (*(xdrs)->x_ops->x_destroy)(xdrs)
-+ (*(xdrs)->x_ops->x_destroy)(xdrs); \
-+ } while (0)
-
- /*
- * Support struct for discriminated unions.
-@@ -183,13 +231,14 @@
- * If there is no match and no default routine it is an error.
- */
- #define NULL_xdrproc_t ((xdrproc_t)0)
--struct xdr_discrim {
-+struct xdr_discrim
-+{
- int value;
- xdrproc_t proc;
- };
-
- /*
-- * In-line routines for fast encode/decode of primitve data types.
-+ * Inline routines for fast encode/decode of primitive data types.
- * Caveat emptor: these use single memory cycles to get the
- * data from the underlying buffer, and will fail to operate
- * properly if the data is not aligned. The standard way to use these
-@@ -203,73 +252,122 @@
- * N.B. and frozen for all time: each data type here uses 4 bytes
- * of external representation.
- */
--#define IXDR_GET_LONG(buf) ((long)ntohl((u_long)*(buf)++))
--#define IXDR_PUT_LONG(buf, v) (*(buf)++ = (long)htonl((u_long)v))
-+
-+#define IXDR_GET_INT32(buf) ((int32_t)ntohl((uint32_t)*(buf)++))
-+#define IXDR_PUT_INT32(buf, v) (*(buf)++ = (int32_t)htonl((uint32_t)(v)))
-+#define IXDR_GET_U_INT32(buf) ((uint32_t)IXDR_GET_INT32(buf))
-+#define IXDR_PUT_U_INT32(buf, v) IXDR_PUT_INT32(buf, (int32_t)(v))
-+
-+/* WARNING: The IXDR_*_LONG defines are removed by Sun for new platforms
-+ * and shouldn't be used any longer. Code which use this defines or longs
-+ * in the RPC code will not work on 64bit Solaris platforms !
-+ */
-+#define IXDR_GET_LONG(buf) ((long)IXDR_GET_U_INT32(buf))
-+#define IXDR_PUT_LONG(buf, v) ((long)IXDR_PUT_INT32(buf, (long)(v)))
-+#define IXDR_GET_U_LONG(buf) ((u_long)IXDR_GET_LONG(buf))
-+#define IXDR_PUT_U_LONG(buf, v) IXDR_PUT_LONG(buf, (long)(v))
-+
-
- #define IXDR_GET_BOOL(buf) ((bool_t)IXDR_GET_LONG(buf))
- #define IXDR_GET_ENUM(buf, t) ((t)IXDR_GET_LONG(buf))
--#define IXDR_GET_U_LONG(buf) ((u_long)IXDR_GET_LONG(buf))
- #define IXDR_GET_SHORT(buf) ((short)IXDR_GET_LONG(buf))
- #define IXDR_GET_U_SHORT(buf) ((u_short)IXDR_GET_LONG(buf))
-
--#define IXDR_PUT_BOOL(buf, v) IXDR_PUT_LONG((buf), ((long)(v)))
--#define IXDR_PUT_ENUM(buf, v) IXDR_PUT_LONG((buf), ((long)(v)))
--#define IXDR_PUT_U_LONG(buf, v) IXDR_PUT_LONG((buf), ((long)(v)))
--#define IXDR_PUT_SHORT(buf, v) IXDR_PUT_LONG((buf), ((long)(v)))
--#define IXDR_PUT_U_SHORT(buf, v) IXDR_PUT_LONG((buf), ((long)(v)))
-+#define IXDR_PUT_BOOL(buf, v) IXDR_PUT_LONG(buf, (long)(v))
-+#define IXDR_PUT_ENUM(buf, v) IXDR_PUT_LONG(buf, (long)(v))
-+#define IXDR_PUT_SHORT(buf, v) IXDR_PUT_LONG(buf, (long)(v))
-+#define IXDR_PUT_U_SHORT(buf, v) IXDR_PUT_LONG(buf, (long)(v))
-
- /*
- * These are the "generic" xdr routines.
-- */
--extern bool_t xdr_void();
--extern bool_t xdr_int();
--extern bool_t xdr_u_int();
--extern bool_t xdr_long();
--extern bool_t xdr_u_long();
--extern bool_t xdr_short();
--extern bool_t xdr_u_short();
--extern bool_t xdr_int64_t();
--extern bool_t xdr_u_int64_t();
--extern bool_t xdr_bool();
--extern bool_t xdr_enum();
--extern bool_t xdr_array();
--extern bool_t xdr_bytes();
--extern bool_t xdr_opaque();
--extern bool_t xdr_string();
--extern bool_t xdr_union();
--extern bool_t xdr_char();
--extern bool_t xdr_u_char();
--extern bool_t xdr_vector();
--extern bool_t xdr_float();
--extern bool_t xdr_double();
--extern bool_t xdr_reference();
--extern bool_t xdr_pointer();
--extern bool_t xdr_wrapstring();
-+ * None of these can have const applied because it's not possible to
-+ * know whether the call is a read or a write to the passed parameter
-+ * also, the XDR structure is always updated by some of these calls.
-+ */
-+extern bool_t xdr_void (void);
-+extern bool_t xdr_short (XDR *__xdrs, short *__sp);
-+extern bool_t xdr_u_short (XDR *__xdrs, u_short *__usp);
-+extern bool_t xdr_int (XDR *__xdrs, int *__ip);
-+extern bool_t xdr_u_int (XDR *__xdrs, u_int *__up);
-+extern bool_t xdr_long (XDR *__xdrs, long *__lp);
-+extern bool_t xdr_u_long (XDR *__xdrs, u_long *__ulp);
-+extern bool_t xdr_int8_t (XDR *__xdrs, int8_t *__ip);
-+extern bool_t xdr_uint8_t (XDR *__xdrs, uint8_t *__up);
-+extern bool_t xdr_int16_t (XDR *__xdrs, int16_t *__ip);
-+extern bool_t xdr_uint16_t (XDR *__xdrs, uint16_t *__up);
-+extern bool_t xdr_int32_t (XDR *__xdrs, int32_t *__ip);
-+extern bool_t xdr_uint32_t (XDR *__xdrs, uint32_t *__up);
-+extern bool_t xdr_int64_t (XDR *__xdrs, int64_t *__ip);
-+extern bool_t xdr_uint64_t (XDR *__xdrs, uint64_t *__up);
-+extern bool_t xdr_bool (XDR *__xdrs, bool_t *__bp);
-+extern bool_t xdr_enum (XDR *__xdrs, enum_t *__ep);
-+extern bool_t xdr_array (XDR * _xdrs, caddr_t *__addrp, u_int *__sizep,
-+ u_int __maxsize, u_int __elsize, xdrproc_t __elproc)
-+ ;
-+extern bool_t xdr_bytes (XDR *__xdrs, char **__cpp, u_int *__sizep,
-+ u_int __maxsize);
-+extern bool_t xdr_opaque (XDR *__xdrs, caddr_t __cp, u_int __cnt);
-+extern bool_t xdr_string (XDR *__xdrs, char **__cpp, u_int __maxsize);
-+extern bool_t xdr_union (XDR *__xdrs, enum_t *__dscmp, char *__unp,
-+ __const struct xdr_discrim *__choices,
-+ xdrproc_t dfault);
-+extern bool_t xdr_char (XDR *__xdrs, char *__cp);
-+extern bool_t xdr_u_char (XDR *__xdrs, u_char *__cp);
-+extern bool_t xdr_vector (XDR *__xdrs, char *__basep, u_int __nelem,
-+ u_int __elemsize, xdrproc_t __xdr_elem);
-+extern bool_t xdr_float (XDR *__xdrs, float *__fp);
-+extern bool_t xdr_double (XDR *__xdrs, double *__dp);
-+extern bool_t xdr_reference (XDR *__xdrs, caddr_t *__xpp, u_int __size,
-+ xdrproc_t __proc);
-+extern bool_t xdr_pointer (XDR *__xdrs, char **__objpp,
-+ u_int __obj_size, xdrproc_t __xdr_obj);
-+extern bool_t xdr_wrapstring (XDR *__xdrs, char **__cpp);
-+extern u_long xdr_sizeof (xdrproc_t, void *);
-
- /*
- * Common opaque bytes objects used by many rpc protocols;
- * declared here due to commonality.
- */
- #define MAX_NETOBJ_SZ 1024
--struct netobj {
-+struct netobj
-+{
- u_int n_len;
- char *n_bytes;
- };
- typedef struct netobj netobj;
--extern bool_t xdr_netobj();
-+extern bool_t xdr_netobj (XDR *__xdrs, struct netobj *__np);
-
- /*
- * These are the public routines for the various implementations of
- * xdr streams.
- */
--extern void xdrmem_create(); /* XDR using memory buffers */
--extern void xdrstdio_create(); /* XDR using stdio library */
--extern void xdrrec_create(); /* XDR pseudo records for tcp */
--extern bool_t xdrrec_endofrecord(); /* make end of xdr record */
--extern bool_t xdrrec_skiprecord(); /* move to beginning of next record */
--extern bool_t xdrrec_eof(); /* true if no more input */
-+
-+/* XDR using memory buffers */
-+extern void xdrmem_create (XDR *__xdrs, __const caddr_t __addr,
-+ u_int __size, enum xdr_op __xop);
-+
-+/* XDR using stdio library */
-+extern void xdrstdio_create (XDR *__xdrs, FILE *__file, enum xdr_op __xop)
-+ ;
-+
-+/* XDR pseudo records for tcp */
-+extern void xdrrec_create (XDR *__xdrs, u_int __sendsize,
-+ u_int __recvsize, caddr_t __tcp_handle,
-+ int (*__readit) (char *, char *, int),
-+ int (*__writeit) (char *, char *, int));
-+
-+/* make end of xdr record */
-+extern bool_t xdrrec_endofrecord (XDR *__xdrs, bool_t __sendnow);
-+
-+/* move to beginning of next record */
-+extern bool_t xdrrec_skiprecord (XDR *__xdrs);
-+
-+/* true if no more input */
-+extern bool_t xdrrec_eof (XDR *__xdrs);
-
- /* free memory buffers for xdr */
--extern void xdr_free(xdrproc_t proc, char *objp);
-+extern void xdr_free (xdrproc_t __proc, char *__objp);
-+
-+__END_DECLS
-
--#endif /* !__XDR_HEADER__ */
-+#endif /* rpc/xdr.h */