Changeset 4828
- Timestamp:
- Jun 27, 2006, 10:36:18 AM (15 years ago)
- Location:
- trunk/ccl/level-1
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/ccl/level-1/l1-sockets.lisp
r4605 r4828 158 158 (require "X8664-LINUX-SYSCALLS") 159 159 #+darwin-target 160 (require "DARWIN-SYSCALLS")) 160 (require "DARWIN-SYSCALLS") 161 #+freebsdx8664-target 162 (require "X8664-FREEBSD-SYSCALLS") 163 ) 161 164 162 165 (define-condition socket-error (simple-stream-error) … … 708 711 (or (eql res (- #$ENETDOWN)) 709 712 (eql res (- #+linux-target #$EPROTO 710 #+ darwin-target#$EPROTOTYPE))713 #+(or darwin-target freebsd-target) #$EPROTOTYPE)) 711 714 (eql res (- #$ENOPROTOOPT)) 712 715 (eql res (- #$EHOSTDOWN)) 713 716 (eql res (- #+linux-target #$ENONET 714 #+ darwin-target#$ENETDOWN))717 #+(or darwin-target freebsd-target) #$ENETDOWN)) 715 718 (eql res (- #$EHOSTUNREACH)) 716 719 (eql res (- #$EOPNOTSUPP)) … … 1030 1033 (with-cstrs ((name string)) 1031 1034 (rlet ((addr :in_addr)) 1032 (let* ((result (#_inet_aton name addr))) 1035 (let* ((result #+freebsd-target (#___inet_aton name addr) 1036 #-freebsd-target (#_inet_aton name addr))) 1033 1037 (unless (eql result 0) 1034 1038 (pref addr :in_addr.s_addr)))))) 1035 1039 1036 1040 (defun c_socket (domain type protocol) 1037 # +(or darwinppc-target linuxx8664-target)1041 #-linuxppc-target 1038 1042 (syscall syscalls::socket domain type protocol) 1039 1043 #+linuxppc-target … … 1082 1086 1083 1087 (defun c_bind (sockfd sockaddr addrlen) 1084 #+(or darwinppc-target linuxx8664-target )1085 (progn 1086 #+ darwinppc-target1088 #+(or darwinppc-target linuxx8664-target freebsd-target) 1089 (progn 1090 #+(or darwinppc-target freebsd-target) 1087 1091 (setf (pref sockaddr :sockaddr_in.sin_len) addrlen) 1088 1092 (syscall syscalls::bind sockfd sockaddr addrlen)) … … 1103 1107 1104 1108 (defun c_connect (sockfd addr len) 1105 #+(or darwinppc-target linuxx8664-target )1109 #+(or darwinppc-target linuxx8664-target freebsd-target) 1106 1110 (syscall syscalls::connect sockfd addr len) 1107 1111 #+linuxppc-target … … 1121 1125 1122 1126 (defun c_listen (sockfd backlog) 1123 #+(or darwinppc-target linuxx8664-target )1127 #+(or darwinppc-target linuxx8664-target freebsd-target) 1124 1128 (syscall syscalls::listen sockfd backlog) 1125 1129 #+linuxppc-target … … 1137 1141 1138 1142 (defun c_accept (sockfd addrp addrlenp) 1139 #+(or darwinppc-target linuxx8664-target )1143 #+(or darwinppc-target linuxx8664-target freebsd-target) 1140 1144 (syscall syscalls::accept sockfd addrp addrlenp) 1141 1145 #+linuxppc-target … … 1155 1159 1156 1160 (defun c_getsockname (sockfd addrp addrlenp) 1157 #+(or darwinppc-target linuxx8664-target )1161 #+(or darwinppc-target linuxx8664-target freebsd-target) 1158 1162 (syscall syscalls::getsockname sockfd addrp addrlenp) 1159 1163 #+linuxppc-target … … 1173 1177 1174 1178 (defun c_getpeername (sockfd addrp addrlenp) 1175 #+(or darwinppc-target linuxx8664-target )1179 #+(or darwinppc-target linuxx8664-target freebsd-target) 1176 1180 (syscall syscalls::getpeername sockfd addrp addrlenp) 1177 1181 #+linuxppc-target … … 1191 1195 1192 1196 (defun c_socketpair (domain type protocol socketsptr) 1193 #+(or darwinppc-target linuxx8664-target )1197 #+(or darwinppc-target linuxx8664-target freebsd-target) 1194 1198 (syscall syscalls::socketpair domain type protocol socketsptr) 1195 1199 #+linuxppc-target … … 1213 1217 1214 1218 (defun c_sendto (sockfd msgptr len flags addrp addrlen) 1215 #+(or darwinppc-target linuxx8664-target )1219 #+(or darwinppc-target linuxx8664-target freebsd-target) 1216 1220 (syscall syscalls::sendto sockfd msgptr len flags addrp addrlen) 1217 1221 #+linuxppc-target … … 1237 1241 1238 1242 (defun c_recvfrom (sockfd bufptr len flags addrp addrlenp) 1239 #+(or darwinppc-target linuxx8664-target )1243 #+(or darwinppc-target linuxx8664-target freebsd-target) 1240 1244 (syscall syscalls::recvfrom sockfd bufptr len flags addrp addrlenp) 1241 1245 #+linuxppc-target … … 1261 1265 1262 1266 (defun c_shutdown (sockfd how) 1263 #+(or darwinppc-target linuxx8664-target )1267 #+(or darwinppc-target linuxx8664-target freebsd-target) 1264 1268 (syscall syscalls::shutdown sockfd how) 1265 1269 #+linuxppc-target … … 1277 1281 1278 1282 (defun c_setsockopt (sockfd level optname optvalp optlen) 1279 #+(or darwinppc-target linuxx8664-target )1283 #+(or darwinppc-target linuxx8664-target freebsd-target) 1280 1284 (syscall syscalls::setsockopt sockfd level optname optvalp optlen) 1281 1285 #+linuxppc-target … … 1299 1303 1300 1304 (defun c_getsockopt (sockfd level optname optvalp optlenp) 1301 #+(or darwinppc-target linuxx8664-target )1305 #+(or darwinppc-target linuxx8664-target freebsd-target) 1302 1306 (syscall syscalls::getsockopt sockfd level optname optvalp optlenp) 1303 1307 #+linuxppc-target … … 1321 1325 1322 1326 (defun c_sendmsg (sockfd msghdrp flags) 1323 #+(or darwinppc-target linuxx8664-target )1327 #+(or darwinppc-target linuxx8664-target freebsd-target) 1324 1328 (syscall syscalls::sendmsg sockfd msghdrp flags) 1325 1329 #+linuxppc-target … … 1339 1343 1340 1344 (defun c_recvmsg (sockfd msghdrp flags) 1341 #+(or darwinppc-target linuxx8664-target )1345 #+(or darwinppc-target linuxx8664-target freebsd-target) 1342 1346 (syscall syscalls::recvmsg sockfd msghdrp flags) 1343 1347 #+linuxppc-target -
trunk/ccl/level-1/l1-streams.lisp
r4628 r4828 24 24 (require "X8664-LINUX-SYSCALLS") 25 25 #+darwin-target 26 (require "DARWIN-SYSCALLS")) 26 (require "DARWIN-SYSCALLS") 27 #+freebsdx8664-target 28 (require "X8664-FREEBSD-SYSCALLS")) 27 29 28 30 ;;; -
trunk/ccl/level-1/linux-files.lisp
r4689 r4828 23 23 (require "X8664-LINUX-SYSCALLS") 24 24 #+darwin-target 25 (require "DARWIN-SYSCALLS")) 25 (require "DARWIN-SYSCALLS") 26 #+(and freebsd-target x8664-target) 27 (require "X8664-FREEBSD-SYSCALLS") 28 ) 26 29 27 30 … … 186 189 ) 187 190 191 #-freebsd-target 188 192 (defun setenv (key value &optional (overwrite t)) 189 193 "Set the value of the environment variable named by name, in the OS … … 218 222 #+linux-target 219 223 (pref stat :stat.st_mtim.tv_sec) 220 # +darwinppc-target224 #-linux-target 221 225 (pref stat :stat.st_mtimespec.tv_sec) 222 226 (pref stat :stat.st_ino) … … 231 235 #+linux-target 232 236 (#_ __xstat #$_STAT_VER_LINUX cname stat) 233 # +darwinppc-target237 #-linux-target 234 238 (syscall syscalls::stat cname stat) 235 239 stat))) … … 239 243 #+linux-target 240 244 (#_ __fxstat #$_STAT_VER_LINUX fd stat) 241 #+ darwinppc-target245 #+(or darwinppc-target freebsd-target) 242 246 (syscall syscalls::fstat fd stat) 243 247 stat)) … … 248 252 #+linux-target 249 253 (#_ __lxstat #$_STAT_VER_LINUX cname stat) 250 # +darwinppc-target254 #-linux-target 251 255 (syscall syscalls::lstat cname stat) 252 256 stat))) … … 288 292 (if (eql 0 result) 289 293 (%get-cstring (%inc-ptr buf (* #+linux-target #$_UTSNAME_LENGTH 290 #+darwinppc-target #$_SYS_NAMELEN idx))) 294 #+darwinppc-target #$_SYS_NAMELEN 295 #+freebsd-target #$SYS_NMLN idx))) 291 296 "unknown")) 292 297 … … 301 306 (%stack-block ((buf (* #$_SYS_NAMELEN 5))) 302 307 (%uts-string (#_uname buf) idx buf))) 308 309 #+freebsd-target 310 (defun %uname (idx) 311 (%stack-block ((buf (* #$SYS_NMLN 5))) 312 (%uts-string (#___xuname #$SYS_NMLN buf) idx buf))) 303 313 304 314 (defun fd-dup (fd) … … 434 444 by uid. This value comes from the OS user database, not from the $HOME 435 445 environment variable. Returns NIL if there is no user with the ID uid." 436 (with-macptrs ((pw (#_getpwuid userid))) 437 (unless (%null-ptr-p pw) 438 (without-interrupts 439 (%get-cstring (pref pw :passwd.pw_dir)))))) 446 (rlet ((pwd :passwd) 447 (result :address)) 448 (do* ((buflen 512 (* 2 buflen))) 449 () 450 (%stack-block ((buf buflen)) 451 (let* ((err (#_getpwuid_r userid pwd buf buflen result))) 452 (if (eql 0 err) 453 (return (%get-cstring (pref pwd :passwd.pw_dir))) 454 (unless (eql err #$ERANGE) 455 (return nil)))))))) 440 456 441 457 (defun %delete-file (name) … … 1097 1113 (whitespacep (schar line matchlen))) 1098 1114 (incf ncpu))))))) 1099 1)))) 1115 1) 1116 #+freebsd-target 1117 (%stack-block ((ret (record-length :uint)) 1118 (mib (* (record-length :uint)))) 1119 (setf (%get-unsigned-long mib 0) 1120 #$CTL_HW 1121 (%get-unsigned-long mib (record-length :uint)) 1122 #$HW_NCPU) 1123 (rlet ((oldsize :uint (record-length :uint))) 1124 (if (eql 0 (#_sysctl mib 2 ret oldsize (%null-ptr) 0)) 1125 (pref ret :uint) 1126 1))) 1127 )))
Note: See TracChangeset
for help on using the changeset viewer.