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.
15 #ifndef __MACTCPCOMMONTYPES__
16 #include <MacTCPCommonTypes.h>
20 #define TCPPassiveOpen 31
21 #define TCPActiveOpen 32
23 #define TCPNoCopyRcv 35
24 #define TCPRcvBfrReturn 36
29 #define TCPExtendedStat 41
31 #define TCPGlobalInfo 43
44 typedef enum TCPEventCode TCPEventCode;
46 enum TCPTerminationReason {
50 TCPULPTimeoutTerminate,
57 // typedef TCPTerminationReason TCPTerminationReason;
59 typedef pascal void (*TCPNotifyProcPtr)(StreamPtr tcpStream, unsigned short eventCode, Ptr userDataPtr, unsigned short terminReason, struct ICMPReport *icmpMsg);
62 uppTCPNotifyProcInfo = kPascalStackBased
63 | STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(StreamPtr)))
64 | STACK_ROUTINE_PARAMETER(2, SIZE_CODE(sizeof(unsigned short)))
65 | STACK_ROUTINE_PARAMETER(3, SIZE_CODE(sizeof(Ptr)))
66 | STACK_ROUTINE_PARAMETER(4, SIZE_CODE(sizeof(unsigned short)))
67 | STACK_ROUTINE_PARAMETER(5, SIZE_CODE(sizeof(struct ICMPReport*)))
70 #if USESROUTINEDESCRIPTORS
71 typedef UniversalProcPtr TCPNotifyUPP;
73 #define CallTCPNotifyProc(userRoutine, tcpStream, eventCode, userDataPtr, terminReason, icmpMsg) \
74 CallUniversalProc((UniversalProcPtr)userRoutine, uppTCPNotifyProcInfo, tcpStream, eventCode, userDataPtr, terminReason, icmpMsg)
75 #define NewTCPNotifyProc(userRoutine) \
76 (TCPNotifyUPP) NewRoutineDescriptor((ProcPtr)userRoutine, uppTCPNotifyProcInfo, GetCurrentISA())
78 typedef TCPNotifyProcPtr TCPNotifyUPP;
80 #define CallTCPNotifyProc(userRoutine, tcpStream, eventCode, userDataPtr, terminReason, icmpMsg) \
81 (*userRoutine)(tcpStream, eventCode, userDataPtr, terminReason, icmpMsg)
82 #define NewTCPNotifyProc(userRoutine) \
83 (TCPNotifyUPP)(userRoutine)
86 typedef TCPNotifyProcPtr TCPNotifyProc;
88 typedef void (*TCPIOCompletionProcPtr)(struct TCPiopb *iopb);
91 uppTCPIOCompletionProcInfo = kCStackBased
92 | STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(struct TCPiopb*)))
95 #if USESROUTINEDESCRIPTORS
96 typedef UniversalProcPtr TCPIOCompletionUPP;
98 #define CallTCPIOCompletionProc(userRoutine, iopb) \
99 CallUniversalProc((UniversalProcPtr)userRoutine, uppTCPIOCompletionProcInfo, iopb)
100 #define NewTCPIOCompletionProc(userRoutine) \
101 (TCPIOCompletionUPP) NewRoutineDescriptor((ProcPtr)userRoutine, uppTCPIOCompletionProcInfo, GetCurrentISA())
103 typedef TCPIOCompletionProcPtr TCPIOCompletionUPP;
105 #define CallTCPIOCompletionProc(userRoutine, iopb) \
107 #define NewTCPIOCompletionProc(userRoutine) \
108 (TCPIOCompletionUPP)(userRoutine)
111 typedef TCPIOCompletionProcPtr TCPIOCompletionProc;
113 typedef unsigned short tcp_port;
115 typedef unsigned char byte;
117 enum { /* ValidityFlags */
119 timeoutAction = 0x40,
120 typeOfService = 0x20,
124 enum { /* TOSFlags */
130 #if defined(powerc) || defined (__powerc)
131 #pragma options align=mac68k
135 unsigned long rcvBuffLen;
136 TCPNotifyUPP notifyProc;
139 #if defined(powerc) || defined(__powerc)
140 #pragma options align=reset
143 typedef struct TCPCreatePB TCPCreatePB;
145 #if defined(powerc) || defined (__powerc)
146 #pragma options align=mac68k
149 byte ulpTimeoutValue;
150 byte ulpTimeoutAction;
152 byte commandTimeoutValue;
166 #if defined(powerc) || defined(__powerc)
167 #pragma options align=reset
170 typedef struct TCPOpenPB TCPOpenPB;
172 #if defined(powerc) || defined (__powerc)
173 #pragma options align=mac68k
176 byte ulpTimeoutValue;
177 byte ulpTimeoutAction;
182 unsigned long sendFree;
183 unsigned short sendLength;
186 #if defined(powerc) || defined(__powerc)
187 #pragma options align=reset
190 typedef struct TCPSendPB TCPSendPB;
192 #if defined(powerc) || defined (__powerc)
193 #pragma options align=mac68k
195 struct TCPReceivePB {
196 byte commandTimeoutValue;
201 unsigned short rcvBuffLen;
203 unsigned short rdsLength;
204 unsigned short secondTimeStamp;
207 #if defined(powerc) || defined(__powerc)
208 #pragma options align=reset
211 typedef struct TCPReceivePB TCPReceivePB;
213 #if defined(powerc) || defined (__powerc)
214 #pragma options align=mac68k
217 byte ulpTimeoutValue;
218 byte ulpTimeoutAction;
222 #if defined(powerc) || defined(__powerc)
223 #pragma options align=reset
226 typedef struct TCPClosePB TCPClosePB;
228 #if defined(powerc) || defined (__powerc)
229 #pragma options align=mac68k
232 unsigned short value;
233 unsigned long counter;
235 #if defined(powerc) || defined(__powerc)
236 #pragma options align=reset
239 typedef struct HistoBucket HistoBucket;
241 #define NumOfHistoBuckets 7
243 #if defined(powerc) || defined (__powerc)
244 #pragma options align=mac68k
246 struct TCPConnectionStats {
247 unsigned long dataPktsRcvd;
248 unsigned long dataPktsSent;
249 unsigned long dataPktsResent;
250 unsigned long bytesRcvd;
251 unsigned long bytesRcvdDup;
252 unsigned long bytesRcvdPastWindow;
253 unsigned long bytesSent;
254 unsigned long bytesResent;
255 unsigned short numHistoBuckets;
256 struct HistoBucket sentSizeHisto[NumOfHistoBuckets];
257 unsigned short lastRTT;
258 unsigned short tmrSRTT;
259 unsigned short rttVariance;
260 unsigned short tmrRTO;
262 byte sourchQuenchRcvd;
264 #if defined(powerc) || defined(__powerc)
265 #pragma options align=reset
268 typedef struct TCPConnectionStats TCPConnectionStats;
270 #if defined(powerc) || defined (__powerc)
271 #pragma options align=mac68k
274 byte ulpTimeoutValue;
275 byte ulpTimeoutAction;
283 byte connectionState;
284 unsigned short sendWindow;
285 unsigned short rcvWindow;
286 unsigned short amtUnackedData;
287 unsigned short amtUnreadData;
288 Ptr securityLevelPtr;
289 unsigned long sendUnacked;
290 unsigned long sendNext;
291 unsigned long congestionWindow;
292 unsigned long rcvNext;
294 unsigned long lastRTT;
295 unsigned long sendMaxSegSize;
296 struct TCPConnectionStats *connStatPtr;
299 #if defined(powerc) || defined(__powerc)
300 #pragma options align=reset
303 typedef struct TCPStatusPB TCPStatusPB;
305 #if defined(powerc) || defined (__powerc)
306 #pragma options align=mac68k
311 #if defined(powerc) || defined(__powerc)
312 #pragma options align=reset
315 typedef struct TCPAbortPB TCPAbortPB;
317 #if defined(powerc) || defined (__powerc)
318 #pragma options align=mac68k
321 unsigned long tcpRtoA;
322 unsigned long tcpRtoMin;
323 unsigned long tcpRtoMax;
324 unsigned long tcpMaxSegSize;
325 unsigned long tcpMaxConn;
326 unsigned long tcpMaxWindow;
328 #if defined(powerc) || defined(__powerc)
329 #pragma options align=reset
332 typedef struct TCPParam TCPParam;
334 #if defined(powerc) || defined (__powerc)
335 #pragma options align=mac68k
338 unsigned long tcpConnAttempts;
339 unsigned long tcpConnOpened;
340 unsigned long tcpConnAccepted;
341 unsigned long tcpConnClosed;
342 unsigned long tcpConnAborted;
343 unsigned long tcpOctetsIn;
344 unsigned long tcpOctetsOut;
345 unsigned long tcpOctetsInDup;
346 unsigned long tcpOctetsRetrans;
347 unsigned long tcpInputPkts;
348 unsigned long tcpOutputPkts;
349 unsigned long tcpDupPkts;
350 unsigned long tcpRetransPkts;
352 #if defined(powerc) || defined(__powerc)
353 #pragma options align=reset
356 typedef struct TCPStats TCPStats;
358 #if defined(powerc) || defined (__powerc)
359 #pragma options align=mac68k
361 struct TCPGlobalInfoPB {
362 struct TCPParam *tcpParamPtr;
363 struct TCPStats *tcpStatsPtr;
364 StreamPtr *tcpCDBTable[1];
366 unsigned short maxTCPConnections;
368 #if defined(powerc) || defined(__powerc)
369 #pragma options align=reset
372 typedef struct TCPGlobalInfoPB TCPGlobalInfoPB;
374 #if defined(powerc) || defined (__powerc)
375 #pragma options align=mac68k
379 TCPIOCompletionProc ioCompletion;
387 struct TCPCreatePB create;
388 struct TCPOpenPB open;
389 struct TCPSendPB send;
390 struct TCPReceivePB receive;
391 struct TCPClosePB close;
392 struct TCPAbortPB abort;
393 struct TCPStatusPB status;
394 struct TCPGlobalInfoPB globalInfo;
397 #if defined(powerc) || defined(__powerc)
398 #pragma options align=reset
401 typedef struct TCPiopb TCPiopb;