1 /* @(#)netdb.h 2.1 88/07/29 3.9 RPCSRC */ 2 /* 3 * Copyright (c) 2010, Oracle America, Inc. 4 * Redistribution and use in source and binary forms, with or without 5 * modification, are permitted provided that the following conditions are 6 * met: 7 * 8 * * Redistributions of source code must retain the above copyright 9 * notice, this list of conditions and the following disclaimer. 10 * * Redistributions in binary form must reproduce the above 11 * copyright notice, this list of conditions and the following 12 * disclaimer in the documentation and/or other materials 13 * provided with the distribution. 14 * * Neither the name of the "Oracle America, Inc." nor the names of its 15 * contributors may be used to endorse or promote products derived 16 * from this software without specific prior written permission. 17 * 18 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 19 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 20 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 21 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 22 * COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 23 * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 24 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE 25 * GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 26 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 27 * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING 28 * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 29 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 30 */ 31 32 /* Cleaned up for GNU C library roland (at) gnu.ai.mit.edu: 33 added multiple inclusion protection and use of <sys/cdefs.h>. 34 In GNU this file is #include'd by <netdb.h>. */ 35 36 #ifndef _RPC_NETDB_H 37 #define _RPC_NETDB_H 1 38 39 #include <features.h> 40 41 #define __need_size_t 42 #include <stddef.h> 43 44 __BEGIN_DECLS 45 46 struct rpcent 47 { 48 char *r_name; /* Name of server for this rpc program. */ 49 char **r_aliases; /* Alias list. */ 50 int r_number; /* RPC program number. */ 51 }; 52 53 extern void setrpcent (int __stayopen) __THROW; 54 extern void endrpcent (void) __THROW; 55 extern struct rpcent *getrpcbyname (__const char *__name) __THROW; 56 extern struct rpcent *getrpcbynumber (int __number) __THROW; 57 extern struct rpcent *getrpcent (void) __THROW; 58 59 #ifdef __USE_MISC 60 extern int getrpcbyname_r (__const char *__name, struct rpcent *__result_buf, 61 char *__buffer, size_t __buflen, 62 struct rpcent **__result) __THROW; 63 64 extern int getrpcbynumber_r (int __number, struct rpcent *__result_buf, 65 char *__buffer, size_t __buflen, 66 struct rpcent **__result) __THROW; 67 68 extern int getrpcent_r (struct rpcent *__result_buf, char *__buffer, 69 size_t __buflen, struct rpcent **__result) __THROW; 70 #endif 71 72 __END_DECLS 73 74 #endif /* rpc/netdb.h */ 75