]> gitweb.factorcode.org Git - factor.git/blob - basis/unix/ffi/bsd/macosx/macosx.factor
5a6775f2148289034ff41e499ebc0aee5ba45b72
[factor.git] / basis / unix / ffi / bsd / macosx / macosx.factor
1 USING: alien alien.c-types alien.libraries alien.syntax
2 classes.struct combinators kernel system unix unix.time
3 unix.types vocabs vocabs.loader ;
4 IN: unix.ffi
5
6 CONSTANT: FD_SETSIZE 1024
7
8 CONSTANT: AF_INET6 30
9 ALIAS: PF_INET6 AF_INET6
10
11 STRUCT: addrinfo
12     { flags int }
13     { family int } 
14     { socktype int }
15     { protocol int }
16     { addrlen socklen_t }
17     { canonname c-string }
18     { addr void* }
19     { next addrinfo* } ;
20
21 CONSTANT: _UTX_USERSIZE 256
22 CONSTANT: _UTX_LINESIZE 32
23 CONSTANT: _UTX_IDSIZE 4
24 CONSTANT: _UTX_HOSTSIZE 256
25     
26 STRUCT: utmpx
27     { ut_user { char _UTX_USERSIZE } }
28     { ut_id   { char _UTX_IDSIZE   } }
29     { ut_line { char _UTX_LINESIZE } }
30     { ut_pid  pid_t }
31     { ut_type short }
32     { ut_tv   timeval }
33     { ut_host { char _UTX_HOSTSIZE } }
34     { ut_pad  { uint 16 } } ;
35
36 CONSTANT: __DARWIN_MAXPATHLEN 1024
37 CONSTANT: __DARWIN_MAXNAMELEN 255
38 CONSTANT: __DARWIN_MAXNAMELEN+1 256
39
40 STRUCT: dirent
41     { d_ino ino_t }
42     { d_reclen __uint16_t }
43     { d_type __uint8_t }
44     { d_namlen __uint8_t }
45     { d_name { char __DARWIN_MAXNAMELEN+1 } } ;
46
47 CONSTANT: EPERM 1
48 CONSTANT: ENOENT 2
49 CONSTANT: ESRCH 3
50 CONSTANT: EINTR 4
51 CONSTANT: EIO 5
52 CONSTANT: ENXIO 6
53 CONSTANT: E2BIG 7
54 CONSTANT: ENOEXEC 8
55 CONSTANT: EBADF 9
56 CONSTANT: ECHILD 10
57 CONSTANT: EDEADLK 11
58 CONSTANT: ENOMEM 12
59 CONSTANT: EACCES 13
60 CONSTANT: EFAULT 14
61 CONSTANT: ENOTBLK 15
62 CONSTANT: EBUSY 16
63 CONSTANT: EEXIST 17
64 CONSTANT: EXDEV 18
65 CONSTANT: ENODEV 19
66 CONSTANT: ENOTDIR 20
67 CONSTANT: EISDIR 21
68 CONSTANT: EINVAL 22
69 CONSTANT: ENFILE 23
70 CONSTANT: EMFILE 24
71 CONSTANT: ENOTTY 25
72 CONSTANT: ETXTBSY 26
73 CONSTANT: EFBIG 27
74 CONSTANT: ENOSPC 28
75 CONSTANT: ESPIPE 29
76 CONSTANT: EROFS 30
77 CONSTANT: EMLINK 31
78 CONSTANT: EPIPE 32
79 CONSTANT: EDOM 33
80 CONSTANT: ERANGE 34
81 CONSTANT: EAGAIN 35
82 ALIAS: EWOULDBLOCK EAGAIN
83 CONSTANT: EINPROGRESS 36
84 CONSTANT: EALREADY 37
85 CONSTANT: ENOTSOCK 38
86 CONSTANT: EDESTADDRREQ 39
87 CONSTANT: EMSGSIZE 40
88 CONSTANT: EPROTOTYPE 41
89 CONSTANT: ENOPROTOOPT 42
90 CONSTANT: EPROTONOSUPPORT 43
91 CONSTANT: ESOCKTNOSUPPORT 44
92 CONSTANT: ENOTSUP 45
93 CONSTANT: EPFNOSUPPORT 46
94 CONSTANT: EAFNOSUPPORT 47
95 CONSTANT: EADDRINUSE 48
96 CONSTANT: EADDRNOTAVAIL 49
97 CONSTANT: ENETDOWN 50
98 CONSTANT: ENETUNREACH 51
99 CONSTANT: ENETRESET 52
100 CONSTANT: ECONNABORTED 53
101 CONSTANT: ECONNRESET 54
102 CONSTANT: ENOBUFS 55
103 CONSTANT: EISCONN 56
104 CONSTANT: ENOTCONN 57
105 CONSTANT: ESHUTDOWN 58
106 CONSTANT: ETOOMANYREFS 59
107 CONSTANT: ETIMEDOUT 60
108 CONSTANT: ECONNREFUSED 61
109 CONSTANT: ELOOP 62
110 CONSTANT: ENAMETOOLONG 63
111 CONSTANT: EHOSTDOWN 64
112 CONSTANT: EHOSTUNREACH 65
113 CONSTANT: ENOTEMPTY 66
114 CONSTANT: EPROCLIM 67
115 CONSTANT: EUSERS 68
116 CONSTANT: EDQUOT 69
117 CONSTANT: ESTALE 70
118 CONSTANT: EREMOTE 71
119 CONSTANT: EBADRPC 72
120 CONSTANT: ERPCMISMATCH 73
121 CONSTANT: EPROGUNAVAIL 74
122 CONSTANT: EPROGMISMATCH 75
123 CONSTANT: EPROCUNAVAIL 76
124 CONSTANT: ENOLCK 77
125 CONSTANT: ENOSYS 78
126 CONSTANT: EFTYPE 79
127 CONSTANT: EAUTH 80
128 CONSTANT: ENEEDAUTH 81
129 CONSTANT: EPWROFF 82
130 CONSTANT: EDEVERR 83
131 CONSTANT: EOVERFLOW 84
132 CONSTANT: EBADEXEC 85
133 CONSTANT: EBADARCH 86
134 CONSTANT: ESHLIBVERS 87
135 CONSTANT: EBADMACHO 88
136 CONSTANT: ECANCELED 89
137 CONSTANT: EIDRM 90
138 CONSTANT: ENOMSG 91
139 CONSTANT: EILSEQ 92
140 CONSTANT: ENOATTR 93
141 CONSTANT: EBADMSG 94
142 CONSTANT: EMULTIHOP 95
143 CONSTANT: ENODATA 96
144 CONSTANT: ENOLINK 97
145 CONSTANT: ENOSR 98
146 CONSTANT: ENOSTR 99
147 CONSTANT: EPROTO 100
148 CONSTANT: ETIME 101
149 CONSTANT: EOPNOTSUPP 102
150 CONSTANT: ENOPOLICY 103