diff options
author | Sam Hartman <hartmans@mit.edu> | 2011-09-28 21:02:41 +0000 |
---|---|---|
committer | Sam Hartman <hartmans@mit.edu> | 2011-09-28 21:02:41 +0000 |
commit | 7679d12a91940657639c5550ba5e6c0fc65ba8af (patch) | |
tree | 7087532bac3616d5c1b64bf559921bebde00fc9f /src/windows/include/wshelper.h | |
parent | caef99b21536d9e8c2f9c637fcf020b4e082db5d (diff) | |
download | krb5-7679d12a91940657639c5550ba5e6c0fc65ba8af.tar.gz krb5-7679d12a91940657639c5550ba5e6c0fc65ba8af.tar.xz krb5-7679d12a91940657639c5550ba5e6c0fc65ba8af.zip |
Moved Windows specific include files to src/windows/include
Updated Windows specific Makefiles to search for header files in src/windows/include
Signed-off-by: Alexey Melnikov <aamelnikov@gmail.com>
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@25279 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src/windows/include/wshelper.h')
-rw-r--r-- | src/windows/include/wshelper.h | 148 |
1 files changed, 148 insertions, 0 deletions
diff --git a/src/windows/include/wshelper.h b/src/windows/include/wshelper.h new file mode 100644 index 000000000..1bd31f046 --- /dev/null +++ b/src/windows/include/wshelper.h @@ -0,0 +1,148 @@ +/*! \file wshelper.h + * WSHelper DNS/Hesiod Library + * + * This file contains the function declaration for: \n + * rgethostbyname() \n + * rgethostbyaddr() \n + * rgetservbyname() \n + * inet_aton() \n + * wsh_gethostname() \n + * wsh_getdomainname() \n \n + * and unsupported functions: \n + * gethinfobyname() \n + * getmxbyname() \n + * getrecordbyname() \n + * rrhost() \n + */ + +#ifndef _WSHELPER_ +#define _WSHELPER_ + +#include <winsock.h> +#include <mitwhich.h> +#include <resolv.h> +#include <hesiod.h> + +#ifdef __cplusplus +extern "C" { +#endif +/*! \fn struct hostent * WINAPI rgethostbyname(char *name) + * retrieves host information corresponding to a host name in the DNS database + * + * defined in gethna.c + * + * \param[in] name Pointer to the null-terminated name of the host to resolve. It can be a fully qualified host name such as x.mit.edu + * or it can be a simple host name such as x. If it is a simple host name, the default domain name is + * appended to do the search. + * \retval a pointer to the structure hostent. a structure allocated by the library. The hostent structure contains + * the results of a successful search for the host specified in the name parameter. The caller must never + * attempt to modify this structure or to free any of its components. Furthermore, only one copy of this + * structure is allocated per call per thread, so the application should copy any information it needs before + * issuing another rgethostbyname. + * NULL if the search has failed + * +*/ +struct hostent * WINAPI rgethostbyname(char *name); + +/*! \fn struct hostent * WINAPI rgethostbyaddr(char *addr, int len, int type) + * retrieves the host information corresponding to a network address in the DNS database + * + * defined in gethna.c + * + * \param[in] addr Pointer to an address in network byte order + * \param[in] len Length of the address, in bytes + * \param[in] type Type of the address, such as the AF_INET address family type (defined as TCP, + * UDP, and other associated Internet protocols). Address family types and their corresponding + * values are defined in the Winsock2.h header file. + * \retval returns a pointer to the hostent structure that contains the name and address corresponding + * to the given network address. The structure is allocated by the library. The caller must never + * attempt to modify this structure or to free any of its components. Furthermore, only one copy of this + * structure is allocated per call per thread, so the application should copy any information it needs before + * issuing another rgethostbyaddr. + * NULL if the search has failed + * +*/ +struct hostent * WINAPI rgethostbyaddr(char *addr, int len, int type); + +/*! \fn struct servent * WINAPI rgetservbyname(LPSTR name, LPSTR proto) + * retrieves service information corresponding to a service name and protocol. + * + * defined in gethna.c + * + * \param[in] name Pointer to a null-terminated service name. + * \param[in] proto pointer to a null-terminated protocol name. getservbyname should match both + * the name and the proto. + * \retval a pointer to the servent structure containing the name(s) and service number that match the name and proto + * parameters. The structure is allocated by the library. The caller must never + * attempt to modify this structure or to free any of its components. Furthermore, only one copy of this + * structure is allocated per call per thread, so the application should copy any information it needs before + * issuing another rgetservbyname. + * NULL if the search has failed + * + */ +struct servent * WINAPI rgetservbyname(LPSTR name, LPSTR proto); + +/*! \fn LPSTR WINAPI gethinfobyname(LPSTR name) + * unsupported + */ +LPSTR WINAPI gethinfobyname(LPSTR name); + +/*! \fn LPSTR WINAPI getmxbyname(LPSTR name) + * unsupported + */ +LPSTR WINAPI getmxbyname(LPSTR name); + +/*! \fn LPSTR WINAPI getrecordbyname(LPSTR name, int rectype) + * unsupported + */ +LPSTR WINAPI getrecordbyname(LPSTR name, int rectype); + +/*! \fn DWORD WINAPI rrhost( LPSTR lpHost ) + * unsupported + */ +DWORD WINAPI rrhost( LPSTR lpHost ); + +/*! \fn unsigned long WINAPI inet_aton(register const char *cp, struct in_addr *addr) + * converts a string containing an (Ipv4) Internet Protocol dotted address into a proper address for the in_addr structure + * + * defined in inetaton.c + * + * \param[in] cp Null-terminated character string representing a number expressed in the + * Internet standard ".'' (dotted) notation. + * \param[in, out] addr pointer to the in_addr structure. The s_addr memeber will be populated + * \retval Returns 1 if the address is valid, 0 if not. + */ +unsigned long WINAPI inet_aton(register const char *cp, struct in_addr *addr); + + +/*! \fn int WINAPI wsh_gethostname(char* name, int size) + * Gets the base part of the hostname + * + * defined in res_init.c + * + * \param[in, out] name pointer to a buffer that receives a null-terminated string containing the computer name + * \param[in] size specifies the size of the buffer, in chars (must be large + * enough to hold NULL-terminated host name) + * \retval return 0 ifsuccess, -1 on error. +*/ +int WINAPI wsh_gethostname(char* name, int size); + +/*! \fn int WINAPI wsh_getdomainname(char* name, int size) + * Gets the machine's domain name + * + * defined in res_init.c + * + * \param[in, out] name pointer to a buffer that receives a null-terminated string containing the domain name + * \param[in] size specifies the size of the buffer, in chars (must be large + * enough to hold NULL-terminated domain name) + * + * \retval return 0 ifsuccess, -1 on error. + */ +int WINAPI wsh_getdomainname(char* name, int size); + + +#ifdef __cplusplus +} +#endif + +#endif /* _WSHELPER_ */ |