4 Copyright: © 1984-1993 by Apple Computer, Inc., all rights reserved.
7 This file was auto generated by the interfacer tool. Modifications
8 must be made to the master file.
12 #ifndef __ADDRESSXLATION__
13 #define __ADDRESSXLATION__
15 #ifndef __MACTCPCOMMONTYPES__
16 #include "MacTCPCommonTypes.h"
19 #define NUM_ALT_ADDRS 4
21 #if defined(powerc) || defined (__powerc)
22 #pragma options align=mac68k
27 unsigned long addr[NUM_ALT_ADDRS];
29 #if defined(powerc) || defined(__powerc)
30 #pragma options align=reset
33 typedef struct hostInfo hostInfo;
44 typedef enum AddrClasses AddrClasses;
46 #if defined(powerc) || defined (__powerc)
47 #pragma options align=mac68k
53 #if defined(powerc) || defined(__powerc)
54 #pragma options align=reset
57 typedef struct HInfoRec HInfoRec;
59 #if defined(powerc) || defined (__powerc)
60 #pragma options align=mac68k
63 unsigned short preference;
66 #if defined(powerc) || defined(__powerc)
67 #pragma options align=reset
70 typedef struct MXRec MXRec;
72 #if defined(powerc) || defined (__powerc)
73 #pragma options align=mac68k
79 unsigned long addr[NUM_ALT_ADDRS];
80 struct HInfoRec hinfo;
84 #if defined(powerc) || defined(__powerc)
85 #pragma options align=reset
88 typedef struct returnRec returnRec;
90 #if defined(powerc) || defined (__powerc)
91 #pragma options align=mac68k
93 struct cacheEntryRecord {
96 unsigned short cacheClass;
103 #if defined(powerc) || defined(__powerc)
104 #pragma options align=reset
107 typedef struct cacheEntryRecord cacheEntryRecord;
113 typedef pascal void (*EnumResultProcPtr)(struct cacheEntryRecord *cacheEntryRecordPtr, char *userDataPtr);
116 uppEnumResultProcInfo = kPascalStackBased
117 | STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(struct cacheEntryRecord*)))
118 | STACK_ROUTINE_PARAMETER(2, SIZE_CODE(sizeof(char*)))
121 #if USESROUTINEDESCRIPTORS
122 typedef UniversalProcPtr EnumResultUPP;
124 #define CallEnumResultProc(userRoutine, cacheEntryRecordPtr, userDataPtr) \
125 CallUniversalProc((UniversalProcPtr)userRoutine, uppEnumResultProcInfo, cacheEntryRecordPtr, userDataPtr)
126 #define NewEnumResultProc(userRoutine) \
127 (EnumResultUPP) NewRoutineDescriptor((ProcPtr)userRoutine, uppEnumResultProcInfo, GetCurrentISA())
129 typedef EnumResultProcPtr EnumResultUPP;
131 #define CallEnumResultProc(userRoutine, cacheEntryRecordPtr, userDataPtr) \
132 (*userRoutine)(cacheEntryRecordPtr, userDataPtr)
133 #define NewEnumResultProc(userRoutine) \
134 (EnumResultUPP)(userRoutine)
137 typedef pascal void (*ResultProcPtr)(struct hostInfo *hostInfoPtr, char *userDataPtr);
140 uppResultProcInfo = kPascalStackBased
141 | STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(struct hostInfo*)))
142 | STACK_ROUTINE_PARAMETER(2, SIZE_CODE(sizeof(char*)))
145 #if USESROUTINEDESCRIPTORS
146 typedef UniversalProcPtr ResultUPP;
148 #define CallResultProc(userRoutine, hostInfoPtr, userDataPtr) \
149 CallUniversalProc((UniversalProcPtr)userRoutine, uppResultProcInfo, hostInfoPtr, userDataPtr)
150 #define NewResultProc(userRoutine) \
151 (ResultUPP) NewRoutineDescriptor((ProcPtr)userRoutine, uppResultProcInfo, GetCurrentISA())
153 typedef ResultProcPtr ResultUPP;
155 #define CallResultProc(userRoutine, hostInfoPtr, userDataPtr) \
156 (*userRoutine)(hostInfoPtr, userDataPtr)
157 #define NewResultProc(userRoutine) \
158 (ResultUPP)(userRoutine)
161 typedef pascal void (*ResultProc2ProcPtr)(struct returnRec *returnRecPtr, char *userDataPtr);
164 uppResultProc2ProcInfo = kPascalStackBased
165 | STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(struct returnRec*)))
166 | STACK_ROUTINE_PARAMETER(2, SIZE_CODE(sizeof(char*)))
169 #if USESROUTINEDESCRIPTORS
170 typedef UniversalProcPtr ResultProc2UPP;
172 #define CallResultProc2Proc(userRoutine, returnRecPtr, userDataPtr) \
173 CallUniversalProc((UniversalProcPtr)userRoutine, uppResultProc2ProcInfo, returnRecPtr, userDataPtr)
174 #define NewResultProc2Proc(userRoutine) \
175 (ResultProc2UPP) NewRoutineDescriptor((ProcPtr)userRoutine, uppResultProc2ProcInfo, GetCurrentISA())
177 typedef ResultProc2ProcPtr ResultProc2UPP;
179 #define CallResultProc2Proc(userRoutine, returnRecPtr, userDataPtr) \
180 (*userRoutine)(returnRecPtr, userDataPtr)
181 #define NewResultProc2Proc(userRoutine) \
182 (ResultProc2UPP)(userRoutine)
185 typedef ResultProc2ProcPtr ResultProc2Ptr;
187 extern OSErr OpenResolver(char *fileName);
188 extern OSErr StrToAddr(char *hostName, struct hostInfo *hostInfoPtr, ResultUPP ResultProc, char *userDataPtr);
189 extern OSErr AddrToStr(unsigned long addr, char *addrStr);
190 extern OSErr EnumCache(EnumResultUPP enumResultProc, char *userDataPtr);
191 extern OSErr AddrToName(ip_addr addr, struct hostInfo *hostInfoPtr, ResultUPP ResultProc, char *userDataPtr);
192 extern OSErr HInfo(char *hostName, struct returnRec *returnRecPtr, ResultProc2Ptr resultProc, char *userDataPtr);
193 extern OSErr MXInfo(char *hostName, struct returnRec *returnRecPtr, ResultProc2Ptr resultProc, char *userDataPtr);
194 extern OSErr CloseResolver(void);