Mercurial > projects > dwt2
comparison org.eclipse.swt.win32.win32.x86/src/org/eclipse/swt/internal/mozilla/prio.d @ 0:6dd524f61e62
add dwt win and basic java stuff
author | Frank Benoit <benoit@tionex.de> |
---|---|
date | Mon, 02 Mar 2009 14:44:16 +0100 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
-1:000000000000 | 0:6dd524f61e62 |
---|---|
1 module org.eclipse.swt.internal.mozilla.prio; | |
2 | |
3 import org.eclipse.swt.internal.mozilla.Common; | |
4 import org.eclipse.swt.internal.mozilla.prtime; | |
5 import org.eclipse.swt.internal.mozilla.prinrval; | |
6 | |
7 extern (System): | |
8 | |
9 alias PRIntn PRDescIdentity; | |
10 alias void PRFilePrivate; | |
11 | |
12 struct PRFileDesc | |
13 { | |
14 PRIOMethods *methods; | |
15 PRFilePrivate *secret; | |
16 PRFileDesc *lower; | |
17 PRFileDesc *higher; | |
18 void function(PRFileDesc *fd)dtor; | |
19 PRDescIdentity identity; | |
20 } | |
21 | |
22 enum PRTransmitFileFlags | |
23 { | |
24 PR_TRANSMITFILE_KEEP_OPEN, | |
25 PR_TRANSMITFILE_CLOSE_SOCKET, | |
26 } | |
27 | |
28 const PR_AF_INET = 2; | |
29 const PR_AF_LOCAL = 1; | |
30 const PR_INADDR_LOOPBACK = 0x7f000001; | |
31 const PR_AF_UNSPEC = 0; | |
32 | |
33 union _N2 | |
34 { | |
35 PRUint8 [16]_S6_u8; | |
36 PRUint16 [8]_S6_u16; | |
37 PRUint32 [4]_S6_u32; | |
38 PRUint64 [2]_S6_u64; | |
39 } | |
40 | |
41 struct PRIPv6Addr | |
42 { | |
43 struct _N2{ | |
44 union | |
45 { | |
46 PRUint8 [16]_S6_u8; | |
47 PRUint16 [8]_S6_u16; | |
48 PRUint32 [4]_S6_u32; | |
49 PRUint64 [2]_S6_u64; | |
50 } | |
51 } | |
52 _N2 _S6_un; | |
53 } | |
54 | |
55 struct _N3 | |
56 { | |
57 PRUint16 family; | |
58 char [14]data; | |
59 } | |
60 | |
61 struct _N4 | |
62 { | |
63 PRUint16 family; | |
64 PRUint16 port; | |
65 PRUint32 ip; | |
66 char [8]pad; | |
67 } | |
68 | |
69 struct _N5 | |
70 { | |
71 PRUint16 family; | |
72 PRUint16 port; | |
73 PRUint32 flowinfo; | |
74 PRIPv6Addr ip; | |
75 PRUint32 scope_id; | |
76 } | |
77 | |
78 union PRNetAddr | |
79 { | |
80 struct _N3 | |
81 { | |
82 PRUint16 family; | |
83 char [14]data; | |
84 } | |
85 _N3 raw; | |
86 struct _N4 | |
87 { | |
88 PRUint16 family; | |
89 PRUint16 port; | |
90 PRUint32 ip; | |
91 char [8]pad; | |
92 } | |
93 _N4 inet; | |
94 struct _N5 | |
95 { | |
96 PRUint16 family; | |
97 PRUint16 port; | |
98 PRUint32 flowinfo; | |
99 PRIPv6Addr ip; | |
100 PRUint32 scope_id; | |
101 } | |
102 _N5 ipv6; | |
103 } | |
104 | |
105 enum PRSockOption | |
106 { | |
107 PR_SockOpt_Nonblocking, | |
108 PR_SockOpt_Linger, | |
109 PR_SockOpt_Reuseaddr, | |
110 PR_SockOpt_Keepalive, | |
111 PR_SockOpt_RecvBufferSize, | |
112 PR_SockOpt_SendBufferSize, | |
113 PR_SockOpt_IpTimeToLive, | |
114 PR_SockOpt_IpTypeOfService, | |
115 PR_SockOpt_AddMember, | |
116 PR_SockOpt_DropMember, | |
117 PR_SockOpt_McastInterface, | |
118 PR_SockOpt_McastTimeToLive, | |
119 PR_SockOpt_McastLoopback, | |
120 PR_SockOpt_NoDelay, | |
121 PR_SockOpt_MaxSegment, | |
122 PR_SockOpt_Broadcast, | |
123 PR_SockOpt_Last, | |
124 } | |
125 | |
126 struct PRLinger | |
127 { | |
128 PRBool polarity; | |
129 PRIntervalTime linger; | |
130 } | |
131 | |
132 struct PRMcastRequest | |
133 { | |
134 PRNetAddr mcaddr; | |
135 PRNetAddr ifaddr; | |
136 } | |
137 | |
138 union _N6 | |
139 { | |
140 PRUintn ip_ttl; | |
141 PRUintn mcast_ttl; | |
142 PRUintn tos; | |
143 PRBool non_blocking; | |
144 PRBool reuse_addr; | |
145 PRBool keep_alive; | |
146 PRBool mcast_loopback; | |
147 PRBool no_delay; | |
148 PRBool broadcast; | |
149 PRSize max_segment; | |
150 PRSize recv_buffer_size; | |
151 PRSize send_buffer_size; | |
152 PRLinger linger; | |
153 PRMcastRequest add_member; | |
154 PRMcastRequest drop_member; | |
155 PRNetAddr mcast_if; | |
156 } | |
157 | |
158 struct PRSocketOptionData | |
159 { | |
160 int option; | |
161 union _N6 | |
162 { | |
163 PRUintn ip_ttl; | |
164 PRUintn mcast_ttl; | |
165 PRUintn tos; | |
166 PRBool non_blocking; | |
167 PRBool reuse_addr; | |
168 PRBool keep_alive; | |
169 PRBool mcast_loopback; | |
170 PRBool no_delay; | |
171 PRBool broadcast; | |
172 PRSize max_segment; | |
173 PRSize recv_buffer_size; | |
174 PRSize send_buffer_size; | |
175 PRLinger linger; | |
176 PRMcastRequest add_member; | |
177 PRMcastRequest drop_member; | |
178 PRNetAddr mcast_if; | |
179 } | |
180 _N6 value; | |
181 } | |
182 | |
183 struct PRIOVec | |
184 { | |
185 char *iov_base; | |
186 int iov_len; | |
187 } | |
188 | |
189 enum PRDescType | |
190 { | |
191 PR_DESC_FILE = 1, | |
192 PR_DESC_SOCKET_TCP, | |
193 PR_DESC_SOCKET_UDP, | |
194 PR_DESC_LAYERED, | |
195 PR_DESC_PIPE, | |
196 } | |
197 | |
198 enum PRSeekWhence | |
199 { | |
200 PR_SEEK_SET, | |
201 PR_SEEK_CUR, | |
202 PR_SEEK_END, | |
203 } | |
204 | |
205 version(NON_XPCOM_GLUE){ | |
206 int PR_GetDescType(PRFileDesc *file); | |
207 } | |
208 | |
209 alias PRStatus function(PRFileDesc *fd)PRCloseFN; | |
210 alias PRInt32 function(PRFileDesc *fd, void *buf, PRInt32 amount)PRReadFN; | |
211 alias PRInt32 function(PRFileDesc *fd, void *buf, PRInt32 amount)PRWriteFN; | |
212 alias PRInt32 function(PRFileDesc *fd)PRAvailableFN; | |
213 alias PRInt64 function(PRFileDesc *fd)PRAvailable64FN; | |
214 alias PRStatus function(PRFileDesc *fd)PRFsyncFN; | |
215 alias PROffset32 function(PRFileDesc *fd, PROffset32 offset, int how)PRSeekFN; | |
216 alias PROffset64 function(PRFileDesc *fd, PROffset64 offset, int how)PRSeek64FN; | |
217 alias PRStatus function(PRFileDesc *fd, PRFileInfo *info)PRFileInfoFN; | |
218 alias PRStatus function(PRFileDesc *fd, PRFileInfo64 *info)PRFileInfo64FN; | |
219 alias PRInt32 function(PRFileDesc *fd, PRIOVec *iov, PRInt32 iov_size, PRIntervalTime timeout)PRWritevFN; | |
220 alias PRStatus function(PRFileDesc *fd, PRNetAddr *addr, PRIntervalTime timeout)PRConnectFN; | |
221 alias PRFileDesc * function(PRFileDesc *fd, PRNetAddr *addr, PRIntervalTime timeout)PRAcceptFN; | |
222 alias PRStatus function(PRFileDesc *fd, PRNetAddr *addr)PRBindFN; | |
223 alias PRStatus function(PRFileDesc *fd, PRIntn backlog)PRListenFN; | |
224 alias PRStatus function(PRFileDesc *fd, PRIntn how)PRShutdownFN; | |
225 alias PRInt32 function(PRFileDesc *fd, void *buf, PRInt32 amount, PRIntn flags, PRIntervalTime timeout)PRRecvFN; | |
226 alias PRInt32 function(PRFileDesc *fd, void *buf, PRInt32 amount, PRIntn flags, PRIntervalTime timeout)PRSendFN; | |
227 alias PRInt32 function(PRFileDesc *fd, void *buf, PRInt32 amount, PRIntn flags, PRNetAddr *addr, PRIntervalTime timeout)PRRecvfromFN; | |
228 alias PRInt32 function(PRFileDesc *fd, void *buf, PRInt32 amount, PRIntn flags, PRNetAddr *addr, PRIntervalTime timeout)PRSendtoFN; | |
229 alias PRInt16 function(PRFileDesc *fd, PRInt16 in_flags, PRInt16 *out_flags)PRPollFN; | |
230 alias PRInt32 function(PRFileDesc *sd, PRFileDesc **nd, PRNetAddr **raddr, void *buf, PRInt32 amount, PRIntervalTime t)PRAcceptreadFN; | |
231 alias PRInt32 function(PRFileDesc *sd, PRFileDesc *fd, void *headers, PRInt32 hlen, int flags, PRIntervalTime t)PRTransmitfileFN; | |
232 alias PRStatus function(PRFileDesc *fd, PRNetAddr *addr)PRGetsocknameFN; | |
233 alias PRStatus function(PRFileDesc *fd, PRNetAddr *addr)PRGetpeernameFN; | |
234 alias PRStatus function(PRFileDesc *fd, PRSocketOptionData *data)PRGetsocketoptionFN; | |
235 alias PRStatus function(PRFileDesc *fd, PRSocketOptionData *data)PRSetsocketoptionFN; | |
236 alias PRInt32 function(PRFileDesc *networkSocket, PRSendFileData *sendData, int flags, PRIntervalTime timeout)PRSendfileFN; | |
237 alias PRStatus function(PRFileDesc *fd, PRInt16 out_flags)PRConnectcontinueFN; | |
238 alias PRIntn function(PRFileDesc *fd)PRReservedFN; | |
239 | |
240 struct PRIOMethods | |
241 { | |
242 int file_type; | |
243 PRCloseFN close; | |
244 PRReadFN read; | |
245 PRWriteFN write; | |
246 PRAvailableFN available; | |
247 PRAvailable64FN available64; | |
248 PRFsyncFN fsync; | |
249 PRSeekFN seek; | |
250 PRSeek64FN seek64; | |
251 PRFileInfoFN fileInfo; | |
252 PRFileInfo64FN fileInfo64; | |
253 PRWritevFN writev; | |
254 PRConnectFN connect; | |
255 PRAcceptFN accept; | |
256 PRBindFN bind; | |
257 PRListenFN listen; | |
258 PRShutdownFN shutdown; | |
259 PRRecvFN recv; | |
260 PRSendFN send; | |
261 PRRecvfromFN recvfrom; | |
262 PRSendtoFN sendto; | |
263 PRPollFN poll; | |
264 PRAcceptreadFN acceptread; | |
265 PRTransmitfileFN transmitfile; | |
266 PRGetsocknameFN getsockname; | |
267 PRGetpeernameFN getpeername; | |
268 PRReservedFN reserved_fn_6; | |
269 PRReservedFN reserved_fn_5; | |
270 PRGetsocketoptionFN getsocketoption; | |
271 PRSetsocketoptionFN setsocketoption; | |
272 PRSendfileFN sendfile; | |
273 PRConnectcontinueFN connectcontinue; | |
274 PRReservedFN reserved_fn_3; | |
275 PRReservedFN reserved_fn_2; | |
276 PRReservedFN reserved_fn_1; | |
277 PRReservedFN reserved_fn_0; | |
278 } | |
279 | |
280 enum PRSpecialFD | |
281 { | |
282 PR_StandardInput, | |
283 PR_StandardOutput, | |
284 PR_StandardError, | |
285 } | |
286 | |
287 version(NON_XPCOM_GLUE) | |
288 { | |
289 PRFileDesc * PR_GetSpecialFD(int id); | |
290 PRDescIdentity PR_GetUniqueIdentity(char *layer_name); | |
291 char * PR_GetNameForIdentity(PRDescIdentity ident); | |
292 PRDescIdentity PR_GetLayersIdentity(PRFileDesc *fd); | |
293 PRFileDesc * PR_GetIdentitiesLayer(PRFileDesc *fd_stack, PRDescIdentity id); | |
294 PRIOMethods * PR_GetDefaultIOMethods(); | |
295 PRFileDesc * PR_CreateIOLayerStub(PRDescIdentity ident, PRIOMethods *methods); | |
296 PRFileDesc * PR_CreateIOLayer(PRFileDesc *fd); | |
297 PRStatus PR_PushIOLayer(PRFileDesc *fd_stack, PRDescIdentity id, PRFileDesc *layer); | |
298 PRFileDesc * PR_PopIOLayer(PRFileDesc *fd_stack, PRDescIdentity id); | |
299 } | |
300 | |
301 const PR_RDONLY = 0x01; | |
302 const PR_WRONLY = 0x02; | |
303 const PR_RDWR = 0x04; | |
304 const PR_CREATE_FILE = 0x08; | |
305 const PR_APPEND = 0x10; | |
306 const PR_TRUNCATE = 0x20; | |
307 const PR_SYNC = 0x40; | |
308 const PR_EXCL = 0x80; | |
309 | |
310 version(NON_XPCOM_GLUE) { | |
311 PRFileDesc * PR_Open(char *name, PRIntn flags, PRIntn mode); | |
312 } | |
313 | |
314 const PR_IRWXU = 00700; | |
315 const PR_IRUSR = 00400; | |
316 const PR_IWUSR = 00200; | |
317 const PR_IXUSR = 00100; | |
318 const PR_IRWXG = 00070; | |
319 const PR_IRGRP = 00040; | |
320 const PR_IWGRP = 00020; | |
321 const PR_IXGRP = 00010; | |
322 const PR_IRWXO = 00007; | |
323 const PR_IROTH = 00004; | |
324 const PR_IWOTH = 00002; | |
325 const PR_IXOTH = 00001; | |
326 | |
327 version(NON_XPCOM_GLUE) | |
328 { | |
329 PRFileDesc * PR_OpenFile(char *name, PRIntn flags, PRIntn mode); | |
330 PRStatus PR_Close(PRFileDesc *fd); | |
331 PRInt32 PR_Read(PRFileDesc *fd, void *buf, PRInt32 amount); | |
332 PRInt32 PR_Write(PRFileDesc *fd, void *buf, PRInt32 amount); | |
333 } | |
334 | |
335 const PR_MAX_IOVECTOR_SIZE = 16; | |
336 | |
337 version(NON_XPCOM_GLUE) | |
338 { | |
339 PRInt32 PR_Writev(PRFileDesc *fd, PRIOVec *iov, PRInt32 iov_size, PRIntervalTime timeout); | |
340 PRStatus PR_Delete(char *name); | |
341 } | |
342 | |
343 enum PRFileType | |
344 { | |
345 PR_FILE_FILE = 1, | |
346 PR_FILE_DIRECTORY, | |
347 PR_FILE_OTHER, | |
348 } | |
349 | |
350 struct PRFileInfo | |
351 { | |
352 int type; | |
353 PROffset32 size; | |
354 PRTime creationTime; | |
355 PRTime modifyTime; | |
356 } | |
357 | |
358 struct PRFileInfo64 | |
359 { | |
360 int type; | |
361 PROffset64 size; | |
362 PRTime creationTime; | |
363 PRTime modifyTime; | |
364 } | |
365 | |
366 version (NON_XPCOM_GLUE) | |
367 { | |
368 PRStatus PR_GetFileInfo(char *fn, PRFileInfo *info); | |
369 PRStatus PR_GetFileInfo64(char *fn, PRFileInfo64 *info); | |
370 PRStatus PR_GetOpenFileInfo(PRFileDesc *fd, PRFileInfo *info); | |
371 PRStatus PR_GetOpenFileInfo64(PRFileDesc *fd, PRFileInfo64 *info); | |
372 PRStatus PR_Rename(char *from, char *to); | |
373 } | |
374 | |
375 enum PRAccessHow | |
376 { | |
377 PR_ACCESS_EXISTS = 1, | |
378 PR_ACCESS_WRITE_OK, | |
379 PR_ACCESS_READ_OK, | |
380 } | |
381 | |
382 version(NON_XPCOM_GLUE) | |
383 { | |
384 PRStatus PR_Access(char *name, int how); | |
385 PROffset32 PR_Seek(PRFileDesc *fd, PROffset32 offset, int whence); | |
386 PROffset64 PR_Seek64(PRFileDesc *fd, PROffset64 offset, int whence); | |
387 PRInt32 PR_Available(PRFileDesc *fd); | |
388 PRInt64 PR_Available64(PRFileDesc *fd); | |
389 PRStatus PR_Sync(PRFileDesc *fd); | |
390 } | |
391 | |
392 struct PRDirEntry | |
393 { | |
394 char *name; | |
395 } | |
396 | |
397 alias void PRDir; | |
398 | |
399 version(NON_XPCOM_GLUE) { | |
400 PRDir * PR_OpenDir(char *name); | |
401 } | |
402 | |
403 enum PRDirFlags | |
404 { | |
405 PR_SKIP_NONE, | |
406 PR_SKIP_DOT, | |
407 PR_SKIP_DOT_DOT, | |
408 PR_SKIP_BOTH, | |
409 PR_SKIP_HIDDEN, | |
410 } | |
411 | |
412 version(NON_XPCOM_GLUE) | |
413 { | |
414 PRDirEntry * PR_ReadDir(PRDir *dir, int flags); | |
415 PRStatus PR_CloseDir(PRDir *dir); | |
416 PRStatus PR_MkDir(char *name, PRIntn mode); | |
417 PRStatus PR_MakeDir(char *name, PRIntn mode); | |
418 PRStatus PR_RmDir(char *name); | |
419 PRFileDesc * PR_NewUDPSocket(); | |
420 PRFileDesc * PR_NewTCPSocket(); | |
421 PRFileDesc * PR_OpenUDPSocket(PRIntn af); | |
422 PRFileDesc * PR_OpenTCPSocket(PRIntn af); | |
423 PRStatus PR_Connect(PRFileDesc *fd, PRNetAddr *addr, PRIntervalTime timeout); | |
424 PRStatus PR_ConnectContinue(PRFileDesc *fd, PRInt16 out_flags); | |
425 PRStatus PR_GetConnectStatus(PRPollDesc *pd); | |
426 PRFileDesc * PR_Accept(PRFileDesc *fd, PRNetAddr *addr, PRIntervalTime timeout); | |
427 PRStatus PR_Bind(PRFileDesc *fd, PRNetAddr *addr); | |
428 PRStatus PR_Listen(PRFileDesc *fd, PRIntn backlog); | |
429 } | |
430 | |
431 enum PRShutdownHow | |
432 { | |
433 PR_SHUTDOWN_RCV, | |
434 PR_SHUTDOWN_SEND, | |
435 PR_SHUTDOWN_BOTH, | |
436 } | |
437 | |
438 version(NON_XPCOM_GLUE) { | |
439 PRStatus PR_Shutdown(PRFileDesc *fd, int how); | |
440 } | |
441 | |
442 const PR_MSG_PEEK = 0x2; | |
443 | |
444 version(NON_XPCOM_GLUE) | |
445 { | |
446 PRInt32 PR_Recv(PRFileDesc *fd, void *buf, PRInt32 amount, PRIntn flags, PRIntervalTime timeout); | |
447 PRInt32 PR_Send(PRFileDesc *fd, void *buf, PRInt32 amount, PRIntn flags, PRIntervalTime timeout); | |
448 PRInt32 PR_RecvFrom(PRFileDesc *fd, void *buf, PRInt32 amount, PRIntn flags, PRNetAddr *addr, PRIntervalTime timeout); | |
449 PRInt32 PR_SendTo(PRFileDesc *fd, void *buf, PRInt32 amount, PRIntn flags, PRNetAddr *addr, PRIntervalTime timeout); | |
450 PRInt32 PR_TransmitFile(PRFileDesc *networkSocket, PRFileDesc *sourceFile, void *headers, PRInt32 hlen, int flags, PRIntervalTime timeout); | |
451 } | |
452 | |
453 struct PRSendFileData | |
454 { | |
455 PRFileDesc *fd; | |
456 PRUint32 file_offset; | |
457 PRSize file_nbytes; | |
458 void *header; | |
459 PRInt32 hlen; | |
460 void *trailer; | |
461 PRInt32 tlen; | |
462 } | |
463 | |
464 version(NON_XPCOM_GLUE) | |
465 { | |
466 PRInt32 PR_SendFile(PRFileDesc *networkSocket, PRSendFileData *sendData, int flags, PRIntervalTime timeout); | |
467 PRInt32 PR_AcceptRead(PRFileDesc *listenSock, PRFileDesc **acceptedSock, PRNetAddr **peerAddr, void *buf, PRInt32 amount, PRIntervalTime timeout); | |
468 PRStatus PR_NewTCPSocketPair(PRFileDesc **fds); | |
469 PRStatus PR_GetSockName(PRFileDesc *fd, PRNetAddr *addr); | |
470 PRStatus PR_GetPeerName(PRFileDesc *fd, PRNetAddr *addr); | |
471 PRStatus PR_GetSocketOption(PRFileDesc *fd, PRSocketOptionData *data); | |
472 PRStatus PR_SetSocketOption(PRFileDesc *fd, PRSocketOptionData *data); | |
473 PRStatus PR_SetFDInheritable(PRFileDesc *fd, PRBool inheritable); | |
474 PRFileDesc * PR_GetInheritedFD(char *name); | |
475 } | |
476 | |
477 enum PRFileMapProtect | |
478 { | |
479 PR_PROT_READONLY, | |
480 PR_PROT_READWRITE, | |
481 PR_PROT_WRITECOPY, | |
482 } | |
483 | |
484 alias void PRFileMap; | |
485 | |
486 version(NON_XPCOM_GLUE) | |
487 { | |
488 PRFileMap * PR_CreateFileMap(PRFileDesc *fd, PRInt64 size, int prot); | |
489 PRInt32 PR_GetMemMapAlignment(); | |
490 void * PR_MemMap(PRFileMap *fmap, PROffset64 offset, PRUint32 len); | |
491 PRStatus PR_MemUnmap(void *addr, PRUint32 len); | |
492 PRStatus PR_CloseFileMap(PRFileMap *fmap); | |
493 PRStatus PR_CreatePipe(PRFileDesc **readPipe, PRFileDesc **writePipe); | |
494 } | |
495 | |
496 struct PRPollDesc | |
497 { | |
498 PRFileDesc *fd; | |
499 PRInt16 in_flags; | |
500 PRInt16 out_flags; | |
501 } | |
502 | |
503 const PR_POLL_READ = 0x1; | |
504 const PR_POLL_WRITE = 0x2; | |
505 const PR_POLL_EXCEPT = 0x4; | |
506 const PR_POLL_ERR = 0x8; | |
507 const PR_POLL_NVAL = 0x10; | |
508 const PR_POLL_HUP = 0x20; | |
509 | |
510 version(NON_XPCOM_GLUE) | |
511 { | |
512 PRInt32 PR_Poll(PRPollDesc *pds, PRIntn npds, PRIntervalTime timeout); | |
513 PRFileDesc * PR_NewPollableEvent(); | |
514 PRStatus PR_DestroyPollableEvent(PRFileDesc *event); | |
515 PRStatus PR_SetPollableEvent(PRFileDesc *event); | |
516 PRStatus PR_WaitForPollableEvent(PRFileDesc *event); | |
517 } |