summaryrefslogtreecommitdiffstats
path: root/src/include/krb5/AddressXlation.h
diff options
context:
space:
mode:
authorJohn Gilmore <gnu@toad.com>1995-03-29 02:12:14 +0000
committerJohn Gilmore <gnu@toad.com>1995-03-29 02:12:14 +0000
commitc2fb281de3dcbc03e65a33cbb05adaaef5b3f45a (patch)
treee679b4874d52ef34eace0816bb210c074d4289ac /src/include/krb5/AddressXlation.h
parent87acb0f2471655640df7aaaa07ef53f27bc02f62 (diff)
downloadkrb5-c2fb281de3dcbc03e65a33cbb05adaaef5b3f45a.tar.gz
krb5-c2fb281de3dcbc03e65a33cbb05adaaef5b3f45a.tar.xz
krb5-c2fb281de3dcbc03e65a33cbb05adaaef5b3f45a.zip
* k5-errors.h: Rename errors.h (which duplicated a standard Mac
header name, causing a problem). * AddressXlation.h, GetMyIPAddr.h, MacTCPCommonTypes.h, TCPPB.h, UDPPB.h: Add MacTCP header files. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@5293 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src/include/krb5/AddressXlation.h')
-rw-r--r--src/include/krb5/AddressXlation.h102
1 files changed, 102 insertions, 0 deletions
diff --git a/src/include/krb5/AddressXlation.h b/src/include/krb5/AddressXlation.h
new file mode 100644
index 000000000..b73055b98
--- /dev/null
+++ b/src/include/krb5/AddressXlation.h
@@ -0,0 +1,102 @@
+/*
+ AddressXlation.h
+ MacTCP name to address translation routines.
+
+ Copyright Apple Computer, Inc. 1988-91
+ All rights reserved
+
+*/
+#ifndef __ADDRESSXLATION__
+#define __ADDRESSXLATION__
+
+#ifndef __MACTCPCOMMONTYPES__
+#include "MacTCPCommonTypes.h"
+#endif
+
+#define NUM_ALT_ADDRS 4
+
+typedef struct hostInfo {
+ long rtnCode;
+ char cname[255];
+ unsigned long addr[NUM_ALT_ADDRS];
+};
+
+typedef enum AddrClasses {
+ A = 1,
+ NS,
+ CNAME = 5,
+ HINFO = 13,
+ MX = 15,
+ lastClass = 32767
+} AddrClasses;
+
+typedef struct HInfoRec {
+ char cpuType[30];
+ char osType[30];
+ };
+
+typedef struct MXRec {
+ unsigned short preference;
+ char exchange[255];
+ };
+
+typedef struct returnRec {
+ long rtnCode;
+ char cname[255];
+ union {
+ unsigned long addr[NUM_ALT_ADDRS];
+ struct HInfoRec hinfo;
+ struct MXRec mx;
+ } rdata;
+};
+
+typedef struct cacheEntryRecord {
+ char *cname;
+ unsigned short type;
+ unsigned short cacheClass;
+ unsigned long ttl;
+ union {
+ char *name;
+ ip_addr addr;
+ } rdata;
+};
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#ifdef THINK_C
+
+ typedef ProcPtr EnumResultProcPtr;
+ typedef ProcPtr ResultProcPtr;
+ typedef ProcPtr ResultProc2Ptr;
+
+#else
+
+ typedef pascal void (*EnumResultProcPtr)(struct cacheEntryRecord *cacheEntryRecordPtr, char *userDataPtr);
+ typedef pascal void (*ResultProcPtr)(struct hostInfo *hostInfoPtr, char *userDataPtr);
+ typedef pascal void (*ResultProc2Ptr)(struct returnRec *returnRecPtr, char *userDataPtr);
+
+#endif
+
+extern OSErr OpenResolver(char *fileName);
+
+extern OSErr StrToAddr(char *hostName, struct hostInfo *hostInfoPtr, ResultProcPtr ResultProc, char *userDataPtr);
+
+extern OSErr AddrToStr(unsigned long addr, char *addrStr);
+
+extern OSErr EnumCache(EnumResultProcPtr enumResultProc, char *userDataPtr);
+
+extern OSErr AddrToName(ip_addr addr, struct hostInfo *hostInfoPtr, ResultProcPtr ResultProc, char *userDataPtr);
+
+extern OSErr HInfo(char *hostName, struct returnRec *returnRecPtr, ResultProc2Ptr resultProc, char *userDataPtr);
+
+extern OSErr MXInfo(char *hostName, struct returnRec *returnRecPtr, ResultProc2Ptr resultProc, char *userDataPtr);
+
+extern OSErr CloseResolver(void);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* __ADDRESSXLATION__ */