From sionescu at cddr.org Sat Jan 1 23:01:33 2011 From: sionescu at cddr.org (Stelian Ionescu) Date: Sun, 02 Jan 2011 00:01:33 +0100 Subject: [iolib-devel] FORK & EXECV in IOLib In-Reply-To: References: Message-ID: <1293922893.31413.4.camel@blackhole> On Sun, 2010-12-26 at 03:28 +0800, Desmond O. Chang wrote: > Hi all, > > I try to load cl-popen which depends on IOLib, but it's failed. CCL > says FORK & EXECV are not exported from IOLIB.SYSCALLS, and they don't > have function definitions. I've found that they have been removed. > Is it a "bug" or "feature"? Should cl-popen define them by itself? I added them back, but I'd advise you to use iolib.os:create-process instead -- Stelian Ionescu a.k.a. fe[nl]ix Quidquid latine dictum sit, altum videtur. http://common-lisp.net/project/iolib -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 198 bytes Desc: This is a digitally signed message part URL: From sionescu at cddr.org Sat Jan 1 22:55:55 2011 From: sionescu at cddr.org (Stelian Ionescu) Date: Sat, 01 Jan 2011 23:55:55 +0100 Subject: [iolib-devel] IOLib merge requests In-Reply-To: References: Message-ID: <1293922555.31413.3.camel@blackhole> On Fri, 2010-12-17 at 01:30 +0300, Heka Treep wrote: > I think my request (about logging facility) is not clear. So, I > attached two patches to this post. First adds a FFI for `sendfile' > system call on Linux, and second adds support for `openlog', `syslog', > `closelog' and `setlogmask' syscalls (also it include a simple > `with-log' macro in the IOLIB.OS package). I've merged the syslog patch(with a few modifications) and sendfile as well, although after adding them to libfixposix, so make sure you have an up-to-date version of LFP :) -- Stelian Ionescu a.k.a. fe[nl]ix Quidquid latine dictum sit, altum videtur. http://common-lisp.net/project/iolib -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 198 bytes Desc: This is a digitally signed message part URL: From sionescu at cddr.org Sat Jan 1 22:54:23 2011 From: sionescu at cddr.org (Stelian Ionescu) Date: Sat, 01 Jan 2011 23:54:23 +0100 Subject: [iolib-devel] IOLib merge requests In-Reply-To: References: Message-ID: <1293922463.31413.1.camel@blackhole> On Wed, 2010-12-01 at 14:38 +0300, marsijanin wrote: > Hi Stelian! > > On gitorious IOLib repo there are two merge requests: one add logging > facility, and the other (which is mine) termios api support. The first > one is four month old. I assumed, that it is because of nobody use > gitorious web interface, so that merge requests are still unknown to you. > > Could you, please, tell us about you plans on that merge requests. I'm reviewing iolib.serial and will be merging it as soon as possible. Sorry for making you wait this long -- Stelian Ionescu a.k.a. fe[nl]ix Quidquid latine dictum sit, altum videtur. http://common-lisp.net/project/iolib -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 198 bytes Desc: This is a digitally signed message part URL: From sionescu at common-lisp.net Sun Jan 2 10:00:08 2011 From: sionescu at common-lisp.net (Stelian Ionescu) Date: Sun, 02 Jan 2011 05:00:08 -0500 Subject: [iolib-devel] New patches: 1-Jan-2011 Message-ID: commit 7291060fcc4740a13bbe05e6ec60cb52df0bd3ba Author: Stelian Ionescu Date: Sun Jan 2 01:04:13 2011 +0100 CREATE-PROCESS: allow setting the current directory of the new process src/os/create-process-unix.lisp | 10 ++++++---- src/os/ffi-functions-unix.lisp | 6 ++++++ src/os/pkgdcl.lisp | 3 ++- 3 files changed, 14 insertions(+), 5 deletions(-) commit 98b22c5362e4c1e59180fa130af92fb7988cdffe Author: Stelian Ionescu Date: Sun Jan 2 01:00:20 2011 +0100 Remove unused lfp_spawnattr_* functions src/os/ffi-functions-unix.lisp | 36 ------------------------------------ 1 files changed, 0 insertions(+), 36 deletions(-) commit bcd70d8f39312f3e696f46ffd8805d4464dafa63 Author: Stelian Ionescu Date: Sun Jan 2 00:40:31 2011 +0100 Implement lfp_spawn() attributes setuid, setgid and resetids in create-process src/os/create-process-unix.lisp | 15 +++++++++++++-- 1 files changed, 13 insertions(+), 2 deletions(-) commit b90290084ff407e5bc3fed8be8b3b2a25c92b798 Author: Heka Treep Date: Sat Jan 1 23:41:55 2011 +0100 Add support for syslog(3) src/syscalls/ffi-functions-unix.lisp | 46 ++++++++++++++++++++ src/syscalls/ffi-types-unix.lisp | 76 ++++++++++++++++++++++++++++++++++ src/syscalls/pkgdcl.lisp | 49 +++++++++++++++++++++- 3 files changed, 170 insertions(+), 1 deletions(-) commit 9d1a3cdf3258866bbb004f475736b2d5d4a8b19b Author: Stelian Ionescu Date: Sat Jan 1 23:30:41 2011 +0100 Fix comments src/syscalls/ffi-types-unix.lisp | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit 3d7cf5f71af72a468c78fa5243ab648d6633a459 Author: Stelian Ionescu Date: Sat Jan 1 19:36:58 2011 +0100 Fix another include src/os/ffi-types-unix.lisp | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit f4586378157e09d80cfe4960ffa6bf1e5cf071b9 Author: Stelian Ionescu Date: Sat Jan 1 18:49:54 2011 +0100 Fix includes src/syscalls/ffi-types-unix.lisp | 12 ++++++------ 1 files changed, 6 insertions(+), 6 deletions(-) An updated tarball of IOLib's source can be downloaded here: http://common-lisp.net/project/iolib/files/snapshots/iolib-20110101.tar.gz Main repository: http://gitorious.org/iolib/iolib Backup 1: http://common-lisp.net/gitweb?p=projects/iolib/iolib.git Backup 2: http://repo.or.cz/w/iolib.git From sionescu at common-lisp.net Tue Jan 4 10:00:08 2011 From: sionescu at common-lisp.net (Stelian Ionescu) Date: Tue, 04 Jan 2011 05:00:08 -0500 Subject: [iolib-devel] New patches: 3-Jan-2011 Message-ID: commit 1b1a90954f0f23fc1efe2dfee0f5e086c1aa78e8 Author: Stelian Ionescu Date: Mon Jan 3 21:26:27 2011 +0100 Add comment src/os/create-process-unix.lisp | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) commit 0e0fd3397d13272c9d0be5f70b0865d80bcb7eb5 Author: Stelian Ionescu Date: Mon Jan 3 15:21:37 2011 +0100 Remove last argument of isys:select, following LFP src/multiplex/backend-select.lisp | 3 +-- src/syscalls/ffi-functions-unix.lisp | 3 +-- 2 files changed, 2 insertions(+), 4 deletions(-) An updated tarball of IOLib's source can be downloaded here: http://common-lisp.net/project/iolib/files/snapshots/iolib-20110103.tar.gz Main repository: http://gitorious.org/iolib/iolib Backup 1: http://common-lisp.net/gitweb?p=projects/iolib/iolib.git Backup 2: http://repo.or.cz/w/iolib.git From dochang at gmail.com Tue Jan 4 23:26:19 2011 From: dochang at gmail.com (Desmond O. Chang) Date: Wed, 5 Jan 2011 07:26:19 +0800 Subject: [iolib-devel] FORK & EXECV in IOLib In-Reply-To: <1293922893.31413.4.camel@blackhole> References: <1293922893.31413.4.camel@blackhole> Message-ID: Hi Stelian, On Sun, Jan 2, 2011 at 07:01, Stelian Ionescu wrote: > On Sun, 2010-12-26 at 03:28 +0800, Desmond O. Chang wrote: >> Hi all, >> >> I try to load cl-popen which depends on IOLib, but it's failed. ?CCL >> says FORK & EXECV are not exported from IOLIB.SYSCALLS, and they don't >> have function definitions. ?I've found that they have been removed. >> Is it a "bug" or "feature"? ?Should cl-popen define them by itself? > > I added them back, but I'd advise you to use iolib.os:create-process > instead Thank you. I have found it and dropped cl-popen now. PS, I've sent a merge request on gitorious. It'll fix 2 bugs about compilation. Thanks, Des From sionescu at cddr.org Tue Jan 4 23:49:49 2011 From: sionescu at cddr.org (Stelian Ionescu) Date: Wed, 05 Jan 2011 00:49:49 +0100 Subject: [iolib-devel] FORK & EXECV in IOLib In-Reply-To: References: <1293922893.31413.4.camel@blackhole> Message-ID: <1294184989.7264.3.camel@blackhole> On Wed, 2011-01-05 at 07:26 +0800, Desmond O. Chang wrote: > Hi Stelian, > > On Sun, Jan 2, 2011 at 07:01, Stelian Ionescu wrote: > > On Sun, 2010-12-26 at 03:28 +0800, Desmond O. Chang wrote: > >> Hi all, > >> > >> I try to load cl-popen which depends on IOLib, but it's failed. CCL > >> says FORK & EXECV are not exported from IOLIB.SYSCALLS, and they don't > >> have function definitions. I've found that they have been removed. > >> Is it a "bug" or "feature"? Should cl-popen define them by itself? > > > > I added them back, but I'd advise you to use iolib.os:create-process > > instead > > Thank you. I have found it and dropped cl-popen now. > > PS, I've sent a merge request on gitorious. It'll fix 2 bugs about > compilation. Fixes merged, thanks :) Btw, on what OS did you get the NULL-related failure ? -- Stelian Ionescu a.k.a. fe[nl]ix Quidquid latine dictum sit, altum videtur. http://common-lisp.net/project/iolib -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 198 bytes Desc: This is a digitally signed message part URL: From sionescu at common-lisp.net Wed Jan 12 10:00:07 2011 From: sionescu at common-lisp.net (Stelian Ionescu) Date: Wed, 12 Jan 2011 05:00:07 -0500 Subject: [iolib-devel] New patches: 11-Jan-2011 Message-ID: commit 2df5ec6e022737b5788b0e26305d736b3c503590 Author: Stelian Ionescu Date: Wed Jan 12 02:24:45 2011 +0100 Return process object from PROCESS-KILL src/os/create-process-unix.lisp | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-) commit 8da04a6d7829111dd6fb4f008c10358340f83b1a Author: Stelian Ionescu Date: Wed Jan 12 02:12:33 2011 +0100 Minor change in CREATE-PROCESS src/os/create-process-unix.lisp | 6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) commit 935044dddc58c65a0070916e542729f5c23a1e94 Author: Stelian Ionescu Date: Wed Jan 12 02:03:21 2011 +0100 Remove keyarg SEARCH of CREATE-PROCESS and always use lfp_spawnp() src/os/create-process-unix.lisp | 11 +++-------- 1 files changed, 3 insertions(+), 8 deletions(-) commit e07e8198a73b78be999f1dac7e036f39350f29b8 Author: Stelian Ionescu Date: Wed Jan 12 01:56:20 2011 +0100 RUN-PROGRAM's "environment" keyarg now defaults to T, just like CREATE-PROCESS src/os/create-process-unix.lisp | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit fe77d80ac1edc90d43ffa56519d1e85be826b064 Author: Stelian Ionescu Date: Tue Jan 11 20:28:42 2011 +0100 Coalesce parameters "program" and "arguments" of CREATE-PROCESS and RUN-PROGRAM src/os/create-process-unix.lisp | 45 +++++++++++++++++++-------------------- 1 files changed, 22 insertions(+), 23 deletions(-) commit 530e9c03499d88c12124be26bb8d2ead3d3c403c Author: Stelian Ionescu Date: Tue Jan 11 14:37:57 2011 +0100 Move a few functions src/os/create-process-unix.lisp | 17 +++++++++-------- 1 files changed, 9 insertions(+), 8 deletions(-) An updated tarball of IOLib's source can be downloaded here: http://common-lisp.net/project/iolib/files/snapshots/iolib-20110111.tar.gz Main repository: http://gitorious.org/iolib/iolib Backup 1: http://common-lisp.net/gitweb?p=projects/iolib/iolib.git Backup 2: http://repo.or.cz/w/iolib.git From sionescu at common-lisp.net Fri Jan 14 10:00:07 2011 From: sionescu at common-lisp.net (Stelian Ionescu) Date: Fri, 14 Jan 2011 05:00:07 -0500 Subject: [iolib-devel] New patches: 13-Jan-2011 Message-ID: commit 2e8f4ebf1575b0db50c52fd83f712438c0fd841f Author: Stelian Ionescu Date: Fri Jan 14 01:25:43 2011 +0100 RUN-PROGRAM: redirect STDERR to a pipe by default src/os/create-process-unix.lisp | 6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) commit 34479cb56602c8d136f26ee98b6dc070edbe0ee6 Author: Stelian Ionescu Date: Fri Jan 14 01:18:34 2011 +0100 RUN-PROGRAM: close the standard input src/os/create-process-unix.lisp | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) commit a8dbd8c8c62e5b8829b990f267c7685de7ecde7c Author: Stelian Ionescu Date: Fri Jan 14 01:18:26 2011 +0100 CREATE-PROCESS: redirect standard descriptors to pipes by default src/os/create-process-unix.lisp | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 9bf82fc51cee21a82f7d48f37b9c8511de6339a2 Author: Stelian Ionescu Date: Fri Jan 14 01:14:17 2011 +0100 CREATE-PROCESS: remove the possibility of using :STDOUT as value of keyarg STDERR It's better to use the constant +STDOUT+ and not have :STDOUT as special case src/os/create-process-unix.lisp | 17 ++++++----------- src/os/pkgdcl.lisp | 3 +++ 2 files changed, 9 insertions(+), 11 deletions(-) commit fa4b9ba38a1c400eb65cf3ec959314686a9f09a4 Author: Stelian Ionescu Date: Thu Jan 13 17:19:42 2011 +0100 Return processed exit status from PROCESS-WAIT instead of the raw status PROCESS-WAIT now returns the exit code if the program exited normally, otherwise two values when the program was terminated by a signal: the signal as keyword and a boolean indicating whether there was a coredump src/os/create-process-unix.lisp | 17 ++++++++++++++--- src/os/pkgdcl.lisp | 1 + 2 files changed, 15 insertions(+), 3 deletions(-) commit 9fe5dc057d0b3076bef204c793c831fa2f4f6d1b Author: Stelian Ionescu Date: Thu Jan 13 17:15:34 2011 +0100 Add and export ISYS:WTERMSIG* ISYS:WTERMSIG* returns the signal as keyword src/syscalls/ffi-functions-unix.lisp | 3 +++ src/syscalls/pkgdcl.lisp | 2 +- 2 files changed, 4 insertions(+), 1 deletions(-) commit 2224db49022771065bb0ad62521acf5d5f82e987 Author: Stelian Ionescu Date: Thu Jan 13 13:13:11 2011 +0100 Fix WITH-C-ENVIRONMENT: erroneous use of HASH-TABLE-SIZE instead of HASH-TABLE-COUNT src/os/os-unix.lisp | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) An updated tarball of IOLib's source can be downloaded here: http://common-lisp.net/project/iolib/files/snapshots/iolib-20110113.tar.gz Main repository: http://gitorious.org/iolib/iolib Backup 1: http://common-lisp.net/gitweb?p=projects/iolib/iolib.git Backup 2: http://repo.or.cz/w/iolib.git From sionescu at common-lisp.net Thu Jan 20 10:00:13 2011 From: sionescu at common-lisp.net (Stelian Ionescu) Date: Thu, 20 Jan 2011 05:00:13 -0500 Subject: [iolib-devel] New patches: 19-Jan-2011 Message-ID: commit 34757792f2fb77678d7627910f949e3ca6f76220 Author: Stelian Ionescu Date: Wed Jan 19 17:31:53 2011 +0100 Remove fork of SPLIT-SEQUENCE and add a dependency on the external one src/base/pkgdcl.lisp | 4 +- src/base/split-sequence.lisp | 118 ------------------------------------------ src/iolib.base.asd | 5 +- tests/base.lisp | 30 ----------- 4 files changed, 3 insertions(+), 154 deletions(-) commit ec5e5b3925a84d52c8700bf781fec4727f58d720 Author: Stelian Ionescu Date: Fri Jan 14 18:35:10 2011 +0100 Style fix src/new-cl/pkgdcl.lisp | 10 +++++----- 1 files changed, 5 insertions(+), 5 deletions(-) An updated tarball of IOLib's source can be downloaded here: http://common-lisp.net/project/iolib/files/snapshots/iolib-20110119.tar.gz Main repository: http://gitorious.org/iolib/iolib Backup 1: http://common-lisp.net/gitweb?p=projects/iolib/iolib.git Backup 2: http://repo.or.cz/w/iolib.git From sionescu at common-lisp.net Wed Jan 26 10:00:06 2011 From: sionescu at common-lisp.net (Stelian Ionescu) Date: Wed, 26 Jan 2011 05:00:06 -0500 Subject: [iolib-devel] New patches: 25-Jan-2011 Message-ID: commit 2b9abf3f70b569f9af6986d81421a8a3b27f2248 Author: Stelian Ionescu Date: Tue Jan 25 23:23:43 2011 +0100 CREATE-PROCESS: update doc src/os/create-process-unix.lisp | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-) commit 920b3c2591a686a5aa45f8265d34fa71a97f9f9c Author: Stelian Ionescu Date: Tue Jan 25 23:21:32 2011 +0100 Add type BOOLEAN and its constructor to IOLIB.CL src/iolib.base.asd | 3 ++- src/new-cl/pkgdcl.lisp | 5 +++-- src/new-cl/types.lisp | 12 ++++++++++++ 3 files changed, 17 insertions(+), 3 deletions(-) commit 5efa71b57eb4517490bf03dfd0214270ec4de3f0 Author: Stelian Ionescu Date: Tue Jan 25 23:16:12 2011 +0100 Move use of WITH-PTY inside WITH-REDIRECTIONS src/os/create-process-unix.lisp | 36 ++++++++++++++++++------------------ 1 files changed, 18 insertions(+), 18 deletions(-) commit 3ad9fc2c3360b19f729788ae936a0f6efb85562a Author: David Lichteblau Date: Tue Jan 25 20:19:07 2011 +0100 CREATE-PROCESS: add support for PTYs Add a new keyword argument NEW-SESSION to CREATE-PROCESS and allows :PTY as value of :STDIN, :STDOUT or :STDERR in which case a new PTY is allocated for the process and used as its controlling TTY src/os/create-process-unix.lisp | 104 +++++++++++++++++++++++++++------------ src/os/ffi-functions-unix.lisp | 23 ++++++-- 2 files changed, 89 insertions(+), 38 deletions(-) commit 2a765ff2ef16a7c6ecd3ed2d023f5405d219f4cc Author: Stelian Ionescu Date: Tue Jan 25 20:17:29 2011 +0100 Wrap lfp_openpt() instead of posix_openpt() and lfp_ptsname() instead of ptsname() src/syscalls/ffi-functions-unix.lisp | 14 ++++++++++---- src/syscalls/pkgdcl.lisp | 2 +- 2 files changed, 11 insertions(+), 5 deletions(-) commit cb14ecc9f070acd94050b15aa89891bbc75dc126 Author: Stelian Ionescu Date: Sun Jan 23 00:02:11 2011 +0100 Better WITH-LFP-SPAWN-ARGUMENTS src/os/create-process-unix.lisp | 12 ++++++------ 1 files changed, 6 insertions(+), 6 deletions(-) An updated tarball of IOLib's source can be downloaded here: http://common-lisp.net/project/iolib/files/snapshots/iolib-20110125.tar.gz Main repository: http://gitorious.org/iolib/iolib Backup 1: http://common-lisp.net/gitweb?p=projects/iolib/iolib.git Backup 2: http://repo.or.cz/w/iolib.git From sionescu at common-lisp.net Sat Jan 29 10:00:10 2011 From: sionescu at common-lisp.net (Stelian Ionescu) Date: Sat, 29 Jan 2011 05:00:10 -0500 Subject: [iolib-devel] New patches: 28-Jan-2011 Message-ID: commit ca1bc39f11d42662aafcef87d4d6cc78d53a4f87 Author: Stelian Ionescu Date: Fri Jan 28 17:16:27 2011 +0100 Merge PROCESS-WAIT into PROCESS-STATUS, add PROCESS-ACTIVEP Also use a dedicated stream type for processes, which handles EIO as end-of-file src/os/create-process-unix.lisp | 86 ++++++++++++++++++++++++++------------- src/os/pkgdcl.lisp | 4 +- 2 files changed, 59 insertions(+), 31 deletions(-) commit c7ec540deaba0d2cda50a4a268b393747e8bcb1f Author: Stelian Ionescu Date: Fri Jan 28 17:13:00 2011 +0100 Fix printing of DUAL-CHANNEL-GRAY-STREAM instances Print the actual type not "DUAL-CHANNEL-GRAY-STREAM", as the class may be a subclass of DUAL-CHANNEL-GRAY-STREAM src/streams/gray/gray-stream-methods.lisp | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit dd0d40e5633e12a2427badd92b4deb2daf2c1202 Author: Stelian Ionescu Date: Thu Jan 27 17:07:58 2011 +0100 Keep standard streams unbound in a PROCESS instance if not connected Using NIL instead causes undesired effects with READ-LINE: (read-line (process-stdout p)) would use *standard-input* src/os/create-process-unix.lisp | 36 ++++++++++++++++++++++-------------- 1 files changed, 22 insertions(+), 14 deletions(-) commit b18f7691687d3be397e4fd4d9cb1533851dbd5b8 Author: Stelian Ionescu Date: Wed Jan 26 20:48:30 2011 +0100 Add keyword arg EXTERNAL-FORMAT to CREATE-PROCESS and RUN-PROGRAM src/os/create-process-unix.lisp | 24 ++++++++++++++++-------- 1 files changed, 16 insertions(+), 8 deletions(-) An updated tarball of IOLib's source can be downloaded here: http://common-lisp.net/project/iolib/files/snapshots/iolib-20110128.tar.gz Main repository: http://gitorious.org/iolib/iolib Backup 1: http://common-lisp.net/gitweb?p=projects/iolib/iolib.git Backup 2: http://repo.or.cz/w/iolib.git From sionescu at common-lisp.net Sun Jan 30 10:00:05 2011 From: sionescu at common-lisp.net (Stelian Ionescu) Date: Sun, 30 Jan 2011 05:00:05 -0500 Subject: [iolib-devel] New patches: 29-Jan-2011 Message-ID: commit a41fc30f985941068779e815d2dcac3796d70e15 Author: Stelian Ionescu Date: Sat Jan 29 12:06:40 2011 +0100 PROCESS-STATUS: return translated status also when the process has finished src/os/create-process-unix.lisp | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) An updated tarball of IOLib's source can be downloaded here: http://common-lisp.net/project/iolib/files/snapshots/iolib-20110129.tar.gz Main repository: http://gitorious.org/iolib/iolib Backup 1: http://common-lisp.net/gitweb?p=projects/iolib/iolib.git Backup 2: http://repo.or.cz/w/iolib.git