projects/iolib/iolib.git
18 months agofix make-socket.2 test on windows hlavaty-master
Tomas Hlavaty [Thu, 27 Oct 2011 13:20:30 +0000] 
fix make-socket.2 test on windows

18 months agoMerge remote-tracking branch 'origin/master' into winapi
Tomas Hlavaty [Thu, 27 Oct 2011 12:51:06 +0000] 
Merge remote-tracking branch 'origin/master' into winapi

19 months agoShadow IOLIB.SOCKETS:ACCEPT-CONNECTION in package IOLIB.TRIVIAL-SOCKETS otherwise...
Stelian Ionescu [Fri, 30 Sep 2011 00:23:35 +0000] 
Shadow IOLIB.SOCKETS:ACCEPT-CONNECTION in package IOLIB.TRIVIAL-SOCKETS otherwise it will get redefined

Bug reported by occonore on #lisp

20 months agowinapi-asdf1 asdf1 compatible for winapi system hlavaty-winapi
Tomas Hlavaty [Thu, 22 Sep 2011 12:21:49 +0000] 
winapi-asdf1 asdf1 compatible for winapi system

20 months agoULONGLONG not usable on allegro
Tomas Hlavaty [Thu, 22 Sep 2011 12:16:03 +0000] 
ULONGLONG not usable on allegro

20 months agoLockFileEx, UnlockFile, UnlockFileEx implemented
Tomas Hlavaty [Fri, 16 Sep 2011 12:03:16 +0000] 
LockFileEx, UnlockFile, UnlockFileEx implemented

20 months agowith-overlapped-timeout implemented
Tomas Hlavaty [Fri, 16 Sep 2011 12:02:17 +0000] 
with-overlapped-timeout implemented

20 months agoCreateMutexA, ReleaseMutex, acquire-one-mutex implemented
Tomas Hlavaty [Fri, 16 Sep 2011 12:01:41 +0000] 
CreateMutexA, ReleaseMutex, acquire-one-mutex implemented

20 months agoWaitForMultipleObjects doesnt error on WAIT_ABANDONED anymore
Tomas Hlavaty [Fri, 16 Sep 2011 11:57:45 +0000] 
WaitForMultipleObjects doesnt error on WAIT_ABANDONED anymore

20 months agomove winapi %IP_ADDR_STRING inside file to fix compilation issue
Tomas Hlavaty [Wed, 14 Sep 2011 13:57:02 +0000] 
move winapi %IP_ADDR_STRING inside file to fix compilation issue

20 months agoRUN-PROGRAM: slurp output streams before reaping the process exit status, thus avoidi...
Stelian Ionescu [Wed, 7 Sep 2011 11:44:59 +0000] 
RUN-PROGRAM: slurp output streams before reaping the process exit status, thus avoiding deadlocks

20 months agoUse clockid_t instead of lfp_clockid_t
Stelian Ionescu [Mon, 5 Sep 2011 23:30:45 +0000] 
Use clockid_t instead of lfp_clockid_t

20 months agoRemove direct use of environ, use function lfp_get_environ
Stelian Ionescu [Mon, 5 Sep 2011 17:45:12 +0000] 
Remove direct use of environ, use function lfp_get_environ

Deprecate ISYS:*ENVIRON* too, better use ISYS:OS-ENVIRON

21 months agoFix CONSTANT-FORM-VALUE on CCL
Stelian Ionescu [Mon, 15 Aug 2011 21:02:19 +0000] 
Fix CONSTANT-FORM-VALUE on CCL

21 months agoSpecify complete signature of ISYS:SIZEOF in DEFFOLDABLE
Stelian Ionescu [Mon, 15 Aug 2011 21:01:25 +0000] 
Specify complete signature of ISYS:SIZEOF in DEFFOLDABLE

21 months agoImprove %DEFFOLDABLE and CONSTANTP
Stelian Ionescu [Mon, 15 Aug 2011 20:59:57 +0000] 
Improve %DEFFOLDABLE and CONSTANTP

21 months agoAdd CONSTANT-FORM-VALUE to IOLIB.BASE
Stelian Ionescu [Mon, 15 Aug 2011 20:59:06 +0000] 
Add CONSTANT-FORM-VALUE to IOLIB.BASE

21 months agoDefine JOIN and JOIN* in null lexenv
Stelian Ionescu [Mon, 15 Aug 2011 19:49:47 +0000] 
Define JOIN and JOIN* in null lexenv

21 months agofix wait-for-multiple-objects in winapi
Tomas Hlavaty [Mon, 15 Aug 2011 12:38:03 +0000] 
fix wait-for-multiple-objects in winapi

21 months agonew winapi error codes
Tomas Hlavaty [Mon, 15 Aug 2011 12:37:36 +0000] 
new winapi error codes

21 months agofix %winapi-error to indicate unknown errors
Tomas Hlavaty [Mon, 15 Aug 2011 12:37:20 +0000] 
fix %winapi-error to indicate unknown errors

21 months agowinapi fix SIZE_T cant be pointer
Tomas Hlavaty [Fri, 12 Aug 2011 13:46:44 +0000] 
winapi fix SIZE_T cant be pointer

21 months agowinapi fix GROUP HANDLE is a pointer now
Tomas Hlavaty [Fri, 12 Aug 2011 13:46:17 +0000] 
winapi fix GROUP HANDLE is a pointer now

21 months agowinapi LocalFree implemented
Tomas Hlavaty [Fri, 12 Aug 2011 13:19:03 +0000] 
winapi LocalFree implemented

21 months agowinapi attempt for DnsQueryConfig
Tomas Hlavaty [Fri, 12 Aug 2011 13:18:47 +0000] 
winapi attempt for DnsQueryConfig

21 months agowinapi GetNetworkParams implemented
Tomas Hlavaty [Fri, 12 Aug 2011 12:39:40 +0000] 
winapi GetNetworkParams implemented

21 months agowinapi GetPerAdapterInfo implemented
Tomas Hlavaty [Fri, 12 Aug 2011 11:42:48 +0000] 
winapi GetPerAdapterInfo implemented

21 months agonew winapi types added
Tomas Hlavaty [Fri, 12 Aug 2011 11:38:37 +0000] 
new winapi types added

21 months agoadd code arg to %winapi-error function
Tomas Hlavaty [Fri, 12 Aug 2011 11:36:53 +0000] 
add code arg to %winapi-error function

21 months agowinapi dns constants added
Tomas Hlavaty [Fri, 12 Aug 2011 10:45:13 +0000] 
winapi dns constants added

21 months agoGetInterfaceInfo fix
Tomas Hlavaty [Thu, 11 Aug 2011 13:33:12 +0000] 
GetInterfaceInfo fix

21 months agowinapi port to 64 bit windows 7
Tomas Hlavaty [Thu, 11 Aug 2011 13:30:28 +0000] 
winapi port to 64 bit windows 7

21 months agoconvenience comments added
Tomas Hlavaty [Thu, 11 Aug 2011 12:13:00 +0000] 
convenience comments added

21 months agofix *protocols-file* location on windows (windows 7)
Tomas Hlavaty [Wed, 10 Aug 2011 17:08:01 +0000] 
fix *protocols-file* location on windows (windows 7)

21 months agofix ewouldblock in %write-octets-from-foreign-memory
Tomas Hlavaty [Tue, 2 Aug 2011 15:50:01 +0000] 
fix ewouldblock in %write-octets-from-foreign-memory

21 months agoforgot timeout argument on posix read-fn and write-fn
Tomas Hlavaty [Tue, 2 Aug 2011 15:32:49 +0000] 
forgot timeout argument on posix read-fn and write-fn

21 months agoforgot #+win32 in iolib.usocket
Tomas Hlavaty [Tue, 2 Aug 2011 14:54:33 +0000] 
forgot #+win32 in iolib.usocket

21 months agoMerge branches 'winapi' and 'zwinapi' into winapi
Tomas Hlavaty [Tue, 2 Aug 2011 14:04:49 +0000] 
Merge branches 'winapi' and 'zwinapi' into winapi

Conflicts:
README
src/iolib.multiplex.asd
src/iolib.sockets.asd
src/iolib.syscalls.asd
src/iolib.zstreams.asd
src/sockets/address.lisp
src/sockets/base-sockets.lisp
src/sockets/dns/lookup.lisp
src/sockets/make-socket.lisp
src/sockets/socket-methods.lisp
src/streams/gray/fd-mixin.lisp
src/streams/gray/pkgdcl.lisp
src/streams/zeta/conditions.lisp
src/streams/zeta/ffi-functions-unix.lisp
src/syscalls/pkgdcl.lisp
tests/sockets.lisp
tests/streams.lisp

21 months agoFix export of ICMP types
Stelian Ionescu [Thu, 28 Jul 2011 17:29:38 +0000] 
Fix export of ICMP types

21 months agoAllow passing a FOREIGN-POINTER to SEND-TO
Stelian Ionescu [Thu, 28 Jul 2011 15:18:07 +0000] 
Allow passing a FOREIGN-POINTER to SEND-TO

21 months agoMake CLOSE of DUAL-CHANNEL-FD-MIXIN a primary method
Stelian Ionescu [Thu, 28 Jul 2011 15:16:17 +0000] 
Make CLOSE of DUAL-CHANNEL-FD-MIXIN a primary method

21 months agoWhitespace
Stelian Ionescu [Wed, 27 Jul 2011 21:57:48 +0000] 
Whitespace

21 months agoExport IP protocol constants
Stelian Ionescu [Wed, 27 Jul 2011 21:57:40 +0000] 
Export IP protocol constants

21 months agoCosmetic change
Stelian Ionescu [Mon, 25 Jul 2011 00:36:06 +0000] 
Cosmetic change

21 months agoAdd enum ICMP-TIME-EXCEEDED, export constants of all ICMP enums
Stelian Ionescu [Mon, 25 Jul 2011 00:35:06 +0000] 
Add enum ICMP-TIME-EXCEEDED, export constants of all ICMP enums

21 months agoBetter names for some of the ICMP types
Stelian Ionescu [Mon, 25 Jul 2011 00:27:00 +0000] 
Better names for some of the ICMP types

21 months agoAdd socket option ICMP_FILTER and relative FFI enums
Stelian Ionescu [Mon, 25 Jul 2011 00:23:38 +0000] 
Add socket option ICMP_FILTER and relative FFI enums

21 months agoAdd socket option IP_RECVERR and associated struct sock_extended_err
Stelian Ionescu [Sun, 24 Jul 2011 23:46:54 +0000] 
Add socket option IP_RECVERR and associated struct sock_extended_err

21 months agoRequire IP_HDRINCL
Stelian Ionescu [Sun, 24 Jul 2011 23:46:10 +0000] 
Require IP_HDRINCL

21 months agoAdd raw sockets
Stelian Ionescu [Sun, 24 Jul 2011 23:35:58 +0000] 
Add raw sockets

21 months agoRefactor socket initialization
Stelian Ionescu [Sun, 24 Jul 2011 20:27:25 +0000] 
Refactor socket initialization

21 months agoACCEPT-CONNECTION only makes sense on passive sockets
Stelian Ionescu [Sun, 24 Jul 2011 18:37:34 +0000] 
ACCEPT-CONNECTION only makes sense on passive sockets

21 months agoRefactor CLOSE on sockets
Stelian Ionescu [Sun, 24 Jul 2011 17:42:12 +0000] 
Refactor CLOSE on sockets

21 months agoRemove most methods specialized on ACTIVE-SOCKET and PASSIVE-SOCKET
Stelian Ionescu [Sun, 24 Jul 2011 17:23:11 +0000] 
Remove most methods specialized on ACTIVE-SOCKET and PASSIVE-SOCKET

We should let the OS signal errors in case of invalid operations like
listening on a connected sockets

21 months agoOne more optional constant
Stelian Ionescu [Sun, 24 Jul 2011 14:16:16 +0000] 
One more optional constant

22 months agoRemove duplicate definitions of socket option constants
Stelian Ionescu [Sat, 23 Jul 2011 23:17:52 +0000] 
Remove duplicate definitions of socket option constants

22 months agoAdd IP_HDRINCL socket option
Stelian Ionescu [Sat, 23 Jul 2011 23:15:22 +0000] 
Add IP_HDRINCL socket option

22 months agoMake a few constants optional instead of using reader conditionals
Stelian Ionescu [Sat, 23 Jul 2011 23:01:09 +0000] 
Make a few constants optional instead of using reader conditionals

22 months agoWhitespace
Stelian Ionescu [Sat, 23 Jul 2011 23:00:34 +0000] 
Whitespace

22 months agoMake sure that OPEN-STREAM-P works on stream sockets.
Stelian Ionescu [Wed, 6 Jul 2011 22:44:28 +0000] 
Make sure that OPEN-STREAM-P works on stream sockets.

Primary methods on SOCKET and DUAL-CHANNEL-GRAY-STREAM were preventing
the one on FUNDAMENTAL-STREAM from being executed, so I removed them
and reworked the other :AROUND methods a little bit.

Thanks to Daniel Rebelo de Oliveira for reporting this bug.

22 months agoFix docstring of IOLIB.MULTIPLEX:WAIT-UNTIL-FD-READY
Stelian Ionescu [Mon, 27 Jun 2011 13:13:59 +0000] 
Fix docstring of IOLIB.MULTIPLEX:WAIT-UNTIL-FD-READY

TIMEOUT is a REAL, not an INTEGER

23 months agoAdd IOLIB.CONF as compile-time dependency to all other systems except IOLIB.ASDF
Stelian Ionescu [Tue, 14 Jun 2011 14:46:06 +0000] 
Add IOLIB.CONF as compile-time dependency to all other systems except IOLIB.ASDF

2 years agoMark SIGPOLL as optional because it's not present on OSX
Stelian Ionescu [Mon, 9 May 2011 17:05:01 +0000] 
Mark SIGPOLL as optional because it's not present on OSX

2 years agoFix typo
Stelian Ionescu [Mon, 9 May 2011 17:04:13 +0000] 
Fix typo

2 years agoRe-export GET-MONOTONIC-TIME from IOLIB.OS
Stelian Ionescu [Tue, 3 May 2011 16:16:46 +0000] 
Re-export GET-MONOTONIC-TIME from IOLIB.OS

2 years agoCosmetic fix
Stelian Ionescu [Tue, 3 May 2011 13:44:47 +0000] 
Cosmetic fix

2 years agoFix test LOOKUP-SERVICE.2: SunOS doesn't have ssh/udp, use domain instead
Stelian Ionescu [Tue, 15 Mar 2011 17:05:57 +0000] 
Fix test LOOKUP-SERVICE.2: SunOS doesn't have ssh/udp, use domain instead

2 years agoGrammatical fix
Stelian Ionescu [Sun, 13 Mar 2011 19:28:25 +0000] 
Grammatical fix

2 years agoRemove unused variables
Stelian Ionescu [Sat, 12 Mar 2011 01:19:36 +0000] 
Remove unused variables

2 years agoCosmetic changes
Stelian Ionescu [Sat, 12 Mar 2011 01:15:16 +0000] 
Cosmetic changes

2 years agoFix printing of closed streams
Stelian Ionescu [Tue, 22 Feb 2011 14:28:06 +0000] 
Fix printing of closed streams

2 years agoSOCKET-CONNECTED-P: ignore EINVAL as well
Stelian Ionescu [Tue, 15 Feb 2011 23:51:38 +0000] 
SOCKET-CONNECTED-P: ignore EINVAL as well

On OSX, getpeername(2) returns EINVAL on disconnected sockets, so
ignore EINVAL too
Thanks to Greg Pfeil for reporting this problem

2 years agoFix typo: lfp_stopsig -> lfp_wstopsig
Stelian Ionescu [Thu, 3 Feb 2011 20:29:21 +0000] 
Fix typo: lfp_stopsig -> lfp_wstopsig

2 years agoWITH-C-ENVIRONMENT: initialize pointer array to NULLs
Stelian Ionescu [Tue, 1 Feb 2011 21:02:24 +0000] 
WITH-C-ENVIRONMENT: initialize pointer array to NULLs

2 years agoALLOCATE-ENV: the number of elements is HASH-TABLE-COUNT not HASH-TABLE-SIZE
Stelian Ionescu [Tue, 1 Feb 2011 15:48:20 +0000] 
ALLOCATE-ENV: the number of elements is HASH-TABLE-COUNT not HASH-TABLE-SIZE

2 years agoWITH-ARGV: initialized pointer array to NULLs
Stelian Ionescu [Tue, 1 Feb 2011 15:46:35 +0000] 
WITH-ARGV: initialized pointer array to NULLs

2 years agoPROCESS-STATUS: return translated status also when the process has finished
Stelian Ionescu [Sat, 29 Jan 2011 11:06:40 +0000] 
PROCESS-STATUS: return translated status also when the process has finished

2 years agoMerge PROCESS-WAIT into PROCESS-STATUS, add PROCESS-ACTIVEP
Stelian Ionescu [Fri, 28 Jan 2011 16:16:27 +0000] 
Merge PROCESS-WAIT into PROCESS-STATUS, add PROCESS-ACTIVEP

Also use a dedicated stream type for processes, which handles EIO as end-of-file

2 years agoFix printing of DUAL-CHANNEL-GRAY-STREAM instances
Stelian Ionescu [Fri, 28 Jan 2011 16:13:00 +0000] 
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

2 years agoKeep standard streams unbound in a PROCESS instance if not connected
Stelian Ionescu [Thu, 27 Jan 2011 16:07:58 +0000] 
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*

2 years agoAdd keyword arg EXTERNAL-FORMAT to CREATE-PROCESS and RUN-PROGRAM
Stelian Ionescu [Wed, 26 Jan 2011 19:48:30 +0000] 
Add keyword arg EXTERNAL-FORMAT to CREATE-PROCESS and RUN-PROGRAM

2 years agoCREATE-PROCESS: update doc
Stelian Ionescu [Tue, 25 Jan 2011 22:23:43 +0000] 
CREATE-PROCESS: update doc

2 years agoAdd type BOOLEAN and its constructor to IOLIB.CL
Stelian Ionescu [Tue, 25 Jan 2011 22:21:32 +0000] 
Add type BOOLEAN and its constructor to IOLIB.CL

2 years agoMove use of WITH-PTY inside WITH-REDIRECTIONS
Stelian Ionescu [Tue, 25 Jan 2011 22:16:12 +0000] 
Move use of WITH-PTY inside WITH-REDIRECTIONS

2 years agoCREATE-PROCESS: add support for PTYs
David Lichteblau [Tue, 25 Jan 2011 19:19:07 +0000] 
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

2 years agoWrap lfp_openpt() instead of posix_openpt() and lfp_ptsname() instead of ptsname()
Stelian Ionescu [Tue, 25 Jan 2011 19:17:29 +0000] 
Wrap lfp_openpt() instead of posix_openpt() and lfp_ptsname() instead of ptsname()

2 years agoBetter WITH-LFP-SPAWN-ARGUMENTS
Stelian Ionescu [Sat, 22 Jan 2011 23:02:11 +0000] 
Better WITH-LFP-SPAWN-ARGUMENTS

2 years agoRemove fork of SPLIT-SEQUENCE and add a dependency on the external one
Stelian Ionescu [Wed, 19 Jan 2011 16:31:53 +0000] 
Remove fork of SPLIT-SEQUENCE and add a dependency on the external one

2 years agoStyle fix
Stelian Ionescu [Fri, 14 Jan 2011 17:35:10 +0000] 
Style fix

2 years agoRUN-PROGRAM: redirect STDERR to a pipe by default
Stelian Ionescu [Fri, 14 Jan 2011 00:25:43 +0000] 
RUN-PROGRAM: redirect STDERR to a pipe by default

2 years agoRUN-PROGRAM: close the standard input
Stelian Ionescu [Fri, 14 Jan 2011 00:18:34 +0000] 
RUN-PROGRAM: close the standard input

2 years agoCREATE-PROCESS: redirect standard descriptors to pipes by default
Stelian Ionescu [Fri, 14 Jan 2011 00:18:26 +0000] 
CREATE-PROCESS: redirect standard descriptors to pipes by default

2 years agoCREATE-PROCESS: remove the possibility of using :STDOUT as value of keyarg STDERR
Stelian Ionescu [Fri, 14 Jan 2011 00:14:17 +0000] 
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

2 years agoReturn processed exit status from PROCESS-WAIT instead of the raw status
Stelian Ionescu [Thu, 13 Jan 2011 16:19:42 +0000] 
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

2 years agoAdd and export ISYS:WTERMSIG*
Stelian Ionescu [Thu, 13 Jan 2011 16:15:34 +0000] 
Add and export ISYS:WTERMSIG*

ISYS:WTERMSIG* returns the signal as keyword

2 years agoFix WITH-C-ENVIRONMENT: erroneous use of HASH-TABLE-SIZE instead of HASH-TABLE-COUNT
Stelian Ionescu [Thu, 13 Jan 2011 12:13:11 +0000] 
Fix WITH-C-ENVIRONMENT: erroneous use of HASH-TABLE-SIZE instead of HASH-TABLE-COUNT

2 years agoReturn process object from PROCESS-KILL
Stelian Ionescu [Wed, 12 Jan 2011 01:24:45 +0000] 
Return process object from PROCESS-KILL

2 years agoMinor change in CREATE-PROCESS
Stelian Ionescu [Wed, 12 Jan 2011 01:12:33 +0000] 
Minor change in CREATE-PROCESS

2 years agoRemove keyarg SEARCH of CREATE-PROCESS and always use lfp_spawnp()
Stelian Ionescu [Wed, 12 Jan 2011 01:03:21 +0000] 
Remove keyarg SEARCH of CREATE-PROCESS and always use lfp_spawnp()

2 years agoRUN-PROGRAM's "environment" keyarg now defaults to T, just like CREATE-PROCESS
Stelian Ionescu [Wed, 12 Jan 2011 00:56:20 +0000] 
RUN-PROGRAM's "environment" keyarg now defaults to T, just like CREATE-PROCESS