From: Helmut E. <e96...@st...> - 2004-01-31 18:08:34
Attachments:
interface.lisp.patch
constants.lisp.patch
|
Hi, I'd like to have a binding for fcntl(). We need that in SLIME. Attached are the patches for the posix contrib. Cheers, Helmut. |
From: Christophe R. <cs...@ca...> - 2004-02-01 16:39:19
|
Helmut Eller <e96...@st...> writes: > I'd like to have a binding for fcntl(). We need that in SLIME. > Attached are the patches for the posix contrib. Thanks. I've implemented a slightly different binding (inspired by Vincent Arkesteijn's ioctl()) in sbcl-0.8.7.36 -- there exist three possible variants for fcntl(), hidden behind a wrapper with signature sb-posix:fcntl (fd command &optional arg) where arg, if present, can be an integer, an alien pointer, or an int. Let me know if this doesn't work for you (I'm presuming that it's not terribly easy to test fcntl() in a regression test, but if it is possible to set up an elementary test or two in ten lines or so of code, that would be very helpful). Cheers, Christophe -- http://www-jcsu.jesus.cam.ac.uk/~csr21/ +44 1223 510 299/+44 7729 383 757 (set-pprint-dispatch 'number (lambda (s o) (declare (special b)) (format s b))) (defvar b "~&Just another Lisp hacker~%") (pprint #36rJesusCollegeCambridge) |
From: Helmut E. <e96...@st...> - 2004-02-02 16:50:32
|
Christophe Rhodes <cs...@ca...> writes: > Thanks. I've implemented a slightly different binding (inspired by > Vincent Arkesteijn's ioctl()) in sbcl-0.8.7.36 -- there exist three > possible variants for fcntl(), hidden behind a wrapper with signature > sb-posix:fcntl (fd command &optional arg) where arg, if present, can > be an integer, an alien pointer, or an int. Thanks. That works fine. > Let me know if this doesn't work for you (I'm presuming that it's not > terribly easy to test fcntl() in a regression test, but if it is > possible to set up an elementary test or two in ten lines or so of > code, that would be very helpful). Below is a very simple test. I wasn't able to produce a test involving O_ASYNC and SIGIO, but I discover that the F_GETFL was missing. Could you add F_GETFL to the constants? Thanks. (deftest fcntl.1 (let ((fd (sb-posix:open "/dev/null" sb-posix::o-nonblock))) (= (sb-posix:fcntl fd sb-posix::f-getfl) sb-posix::o-nonblock)) t) Helmut. |
From: Christophe R. <cs...@ca...> - 2004-02-02 17:16:41
|
Helmut Eller <e96...@st...> writes: > Below is a very simple test. I wasn't able to produce a test > involving O_ASYNC and SIGIO, but I discover that the F_GETFL was > missing. Could you add F_GETFL to the constants? Thanks. Merged in sbcl-0.8.7.39. Thank you. Cheers, Christophe -- http://www-jcsu.jesus.cam.ac.uk/~csr21/ +44 1223 510 299/+44 7729 383 757 (set-pprint-dispatch 'number (lambda (s o) (declare (special b)) (format s b))) (defvar b "~&Just another Lisp hacker~%") (pprint #36rJesusCollegeCambridge) |