Pretty print.
[kopensolaris-gnu/glibc.git] / resolv / netdb.h
index 41faa75..fdfc056 100644 (file)
@@ -21,8 +21,8 @@
    system calls).  */
 
 #ifndef        _NETDB_H
-
 #define        _NETDB_H        1
+
 #include <features.h>
 
 /* This is necessary to make this include file properly replace the
@@ -364,6 +364,39 @@ extern int getnetgrent_r __P ((char **__hostp, char **__userp,
 #endif /* misc */
 
 
+#ifdef __USE_BSD
+/* Call `rshd' at port RPORT on remote machine *AHOST to execute CMD.
+   The local user is LOCUSER, on the remote machine the command is
+   executed as REMUSER.  In *FD2P the descriptor to the socket for the
+   connection is returned.  The caller must have the right to use a
+   reserved port.  When the function returns *AHOST contains the
+   official host name.  */
+extern int rcmd __P ((char **__ahost, unsigned short int __rport,
+                     __const char *__locuser, __const char *__remuser,
+                     __const char *__cmd, int *__fd2p));
+
+/* Call `rexecd' at port RPORT on remote machine *AHOST to execute
+   CMD.  The process runs at the remote machine using the ID of user
+   NAME whose cleartext password is PASSWD.  In *FD2P the descriptor
+   to the socket for the connection is returned.  When the function
+   returns *AHOST contains the official host name.  */
+extern int rexec __P ((char **__ahost, int __rport, __const char *__name,
+                      __const char *__pass, __const char *__cmd,
+                      int *__fd2p));
+
+/* Check whether user REMUSER on system RHOST is allowed to login as LOCUSER.
+   If SUSER is not zero the user tries to become superuser.  Return 0 if
+   it is possible.  */
+extern int ruserok __P ((__const char *__rhost, int __suser,
+                        __const char *__remuser, __const char *__locuser));
+
+/* Try to allocate reserved port, returning a descriptor for a socket opened
+   at this port or -1 if unsuccessful.  The search for an available port
+   will start at ALPORT and continues with lower numbers.  */
+extern int rresvport __P ((int *__alport));
+#endif
+
+
 /* Extension from POSIX.1g.  */
 #ifdef __USE_POSIX
 /* Structure to contain information about address of a service provider.  */
@@ -380,30 +413,30 @@ struct addrinfo
 };
 
 /* Possible values for `ai_flags' field in `addrinfo' structure.  */
-#define        AI_PASSIVE      1       /* Socket address is intended for `bind'.  */
-#define        AI_CANONNAME    2       /* Request for canonical name.  */
+# define AI_PASSIVE    1       /* Socket address is intended for `bind'.  */
+# define AI_CANONNAME  2       /* Request for canonical name.  */
 
 /* Error values for `getaddrinfo' function.  */
-#define        EAI_BADFLAGS    -1      /* Invalid value for `ai_flags' field.  */
-#define        EAI_NONAME      -2      /* NAME or SERVICE is unknown.  */
-#define        EAI_AGAIN       -3      /* Temporary failure in name resolution.  */
-#define        EAI_FAIL        -4      /* Non-recoverable failure in name res.  */
-#define        EAI_NODATA      -5      /* No address associated with NAME.  */
-#define        EAI_FAMILY      -6      /* `ai_family' not supported.  */
-#define        EAI_SOCKTYPE    -7      /* `ai_socktype' not supported.  */
-#define        EAI_SERVICE     -8      /* SERVICE not supported for `ai_socktype'.  */
-#define        EAI_ADDRFAMILY  -9      /* Address family for NAME not supported.  */
-#define        EAI_MEMORY      -10     /* Memory allocation failure.  */
-#define        EAI_SYSTEM      -11     /* System error returned in `errno'.  */
-
-#define NI_MAXHOST      1025
-#define NI_MAXSERV      32
-
-#define NI_NUMERICHOST 1
-#define NI_NUMERICSERV 2
-#define NI_NOFQDN 4
-#define NI_NAMEREQD 8
-#define NI_DGRAM 16
+# define EAI_BADFLAGS  -1      /* Invalid value for `ai_flags' field.  */
+# define EAI_NONAME    -2      /* NAME or SERVICE is unknown.  */
+# define EAI_AGAIN     -3      /* Temporary failure in name resolution.  */
+# define EAI_FAIL      -4      /* Non-recoverable failure in name res.  */
+# define EAI_NODATA    -5      /* No address associated with NAME.  */
+# define EAI_FAMILY    -6      /* `ai_family' not supported.  */
+# define EAI_SOCKTYPE  -7      /* `ai_socktype' not supported.  */
+# define EAI_SERVICE   -8      /* SERVICE not supported for `ai_socktype'.  */
+# define EAI_ADDRFAMILY        -9      /* Address family for NAME not supported.  */
+# define EAI_MEMORY    -10     /* Memory allocation failure.  */
+# define EAI_SYSTEM    -11     /* System error returned in `errno'.  */
+
+# define NI_MAXHOST      1025
+# define NI_MAXSERV      32
+
+# define NI_NUMERICHOST 1
+# define NI_NUMERICSERV 2
+# define NI_NOFQDN 4
+# define NI_NAMEREQD 8
+# define NI_DGRAM 16
 
 /* Translate name of a service location and/or a service name to set of
    socket addresses.  */
@@ -413,6 +446,16 @@ extern int getaddrinfo __P ((__const char *__name, __const char *__service,
 
 /* Free `addrinfo' structure AI including associated storage.  */
 extern void freeaddrinfo __P ((struct addrinfo *__ai));
+
+/* Convert error return from getaddrinfo() to a string.  */
+extern char *gai_strerror __P  ((int __ecode));
+
+/* Translate a socket address to a location and service name.  */
+extern int getnameinfo __P ((__const struct sockaddr *__sa, size_t __salen,
+                            char *__host, size_t __hostlen,
+                            char *__serv, size_t __servlen,
+                            int __flags));
+
 #endif /* POSIX */
 
 __END_DECLS