Perl 5.001
[p5sagit/p5-mst-13.2.git] / vms / sockadapt.h
index 60890bd..0d56285 100644 (file)
@@ -2,35 +2,57 @@
  *
  *  Authors: Charles Bailey  bailey@genetics.upenn.edu
  *           David Denholm  denholm@conmat.phys.soton.ac.uk
- *  Last Revised: 05-Oct-1994
+ *  Last Revised: 24-Feb-1995
  *
  *  This file should include any other header files and procide any
  *  declarations, typedefs, and prototypes needed by perl for TCP/IP
  *  operations.
  *
- *  This version is set up for perl5 with socketshr 0.9A TCP/IP support.
+ *  This version is set up for perl5 with socketshr 0.9D TCP/IP support.
  */
 
 #include <socketshr.h>
 
-/* we may not have socket.h etc, so lets just do these here  - div */
-/* built up from a variety of sources */
+/* we may not have netdb.h etc, so lets just do this here  - div */
 /* no harm doing this for all .c files - needed only by pp_sys.c */
 
-struct hostent {
-       char *h_name;
-       char *h_aliases;
-       int h_addrtype;
-       int h_length;
-       char **h_addr_list;
+struct hostent {
+    char       *h_name;        /* official name of host */
+    char       **h_aliases;    /* alias list */
+    int        h_addrtype;     /* host address type */
+    int        h_length;       /* length of address */
+    char       **h_addr_list;  /* address */
 };
+#ifdef h_addr
+#   undef h_addr
+#endif
 #define h_addr h_addr_list[0]
 
-struct sockaddr_in {
-       short sin_family;
-       unsigned short sin_port;
-       unsigned long sin_addr;
-       char sin_zero[8];
+struct protoent {
+    char       *p_name;        /* official protocol name */
+    char       **p_aliases;    /* alias list */
+    int        p_proto;        /* protocol # */
+};
+
+struct servent {
+    char       *s_name;        /* official service name */
+    char       **s_aliases;    /* alias list */
+    int        s_port;         /* port # */
+    char       *s_proto;       /* protocol to use */
+};
+
+struct in_addr {
+    unsigned long s_addr;
+};
+
+struct sockaddr {
+    unsigned short     sa_family;              /* address family */
+    char       sa_data[14];            /* up to 14 bytes of direct address */
+};
+
+struct timeval {
+    long tv_sec;
+    long tv_usec;
 };
 
 struct netent {
@@ -39,16 +61,3 @@ struct netent {
        int n_addrtype;
        long n_net;
 };
-
-struct  servent {
-        char    *s_name;        /* official service name */
-        char    **s_aliases;    /* alias list */
-        int     s_port;         /* port # */
-        char    *s_proto;       /* protocol to use */
-};
-
-struct  protoent {
-        char    *p_name;        /* official protocol name */
-        char    **p_aliases;    /* alias list */
-        int     p_proto;        /* protocol # */
-};