Björn Lindqvist
eaca04de3b
libc: several vocabs now need to depend on libc
2014-04-02 12:13:00 -05:00
Björn Lindqvist
753b2f0177
io.files: make wait-for-fd generic and dispatch depending on backend
...
do-ssl-accept need to call wait-for-fd so it needs to be generic. On
windows it's a noop but on unix it will wait for the fd.
2014-04-02 12:12:49 -05:00
Björn Lindqvist
5f38df7741
io.sockets.secure.windows: reading and writing from ssl sockets
...
Unified the drain and refill generics and put their definition in
io.files. They are now used by both the windows and unix ssl backend
for io. Windows ssl kind of works now, but the error cases are not
implemented correctly.
2014-04-02 12:12:14 -05:00
Doug Coleman
f4834ce51c
io.backend.unix: Nobody uses (refill), remove it.
2013-02-05 09:35:51 -08:00
John Benediktsson
1a3e8a2994
io.backend: fix docs to show nanoseconds instead of micros.
2012-08-01 12:08:18 -07:00
Joe Groff
943596575a
use radix literals
2011-11-23 19:03:40 -08:00
Joe Groff
9443f30b7d
io.backend.unix: hints on M\ fd refill
...
Trims some low-order dispatch overhead for #376 .
2011-11-09 16:32:47 -08:00
Joe Groff
feb8c6149a
io.backend: start signal thread after io-backend
...
The c-io-backend can't handle input-ports and raises an error during bootstrap.
2011-11-08 11:54:54 -08:00
Joe Groff
fc7c175c9f
new module unix.signals: app-level signal handlers
...
example:
IN: scratchpad USING: unix.ffi unix.signals ;
Loading resource:basis/unix/signals/signals.factor
IN: scratchpad [ V{ "Me not that kind of orc!" "Me busy, leave me alone!" "Work work" "Zug zug" } pop print flush ] SIGINFO add-signal-handler
IN: scratchpad load: 0.60 cmd: factor 41541 running 0.28u 0.16s
Zug zug
load: 0.71 cmd: factor 41541 running 0.28u 0.16s
Work work
load: 0.71 cmd: factor 41541 running 0.28u 0.16s
Me busy, leave me alone!
load: 0.73 cmd: factor 41541 running 0.28u 0.16s
Me not that kind of orc!
2011-11-08 10:21:49 -08:00
Joe Groff
8337b08d0d
io.backend.unix: startup hook for signal-pipe
2011-11-08 08:42:48 -08:00
Joe Groff
ed24890dce
io.backend.unix: init-signal-pipe function
...
Currently just reads off signal numbers and drops them.
2011-11-08 08:42:48 -08:00
Joe Groff
67cccc63b3
formatting
2011-10-17 21:23:36 -07:00
Joe Groff
863ab575e3
io.ports: stream-seekable? and stream-length
...
io.files.windows, io.backend.unix: platform-specific backends for those methods
2011-10-17 21:23:08 -07:00
Erik Charlebois
662bc3b07b
Fix bugs in unix ffi usage
2011-05-23 23:36:14 -04:00
Slava Pestov
75560699ea
Move <ref>, deref and little-endian? from alien.c-types to alien.data, remove <c-object>
2010-12-25 16:55:36 -08:00
Doug Coleman
1f57dc326e
Remove many uses of <int> and *int etc
2010-10-25 12:49:12 -05:00
Slava Pestov
76d2b83685
Add unless-disposed combinator to clean up some repetition, and fix bogus error reported from timer thread if an I/O operation with a set timeout fails on Windows
2010-08-23 21:12:24 -05:00
Slava Pestov
949712243f
io.backend.unix: make timeouts work on stdin once Doug fixes alarms
2010-05-21 19:09:15 -04:00
Slava Pestov
f1e19aabdb
threads: simplify 'suspend' combinator
2010-03-28 08:29:53 -04:00
Slava Pestov
4893ebf183
Small cleanups
2010-02-16 04:04:09 +13:00
Doug Coleman
7c40fc1a36
unix-system-call io-error -> unix-system-call drop
...
make unix.ffi, unix.ffi.linux unportable
fix spacing in io.cpp before refactoring
2010-01-23 09:07:35 -06:00
Doug Coleman
8d952277a2
Handle EINTR in a lot of cases where it wasn't handled before. Split off unix into unix.ffi and unix.
2010-01-22 12:59:24 -06:00
Doug Coleman
07fcb43a06
Make unix-system-call retry the call immediately upon hitting EINTR. Use unix-system-call wherever EAGAIN or EINPROGRESS are not handled. Handle EINTR if connect returns it.
2010-01-22 12:59:17 -06:00
Slava Pestov
ffd7de02d6
Update a few places that used string C type names to use words; fixes some deploy tests
2009-11-20 03:21:48 -06:00
Doug Coleman
ed1636a0c0
fix stream-tell
2009-10-03 19:26:59 -05:00
Doug Coleman
098fd0248a
support limited-streams correctly for seekable streams
2009-10-03 18:27:09 -05:00
Slava Pestov
46045c882e
Disposables are now registered in a global disposables set. To take advantage of this, subclass disposable instead of providing a disposed slot and call new-disposable instead of new. tools.disposables defines two words, 'disposable.' and 'leaks', to help track down resource lifetime problems
2009-08-24 02:26:13 -05:00
Slava Pestov
96b1ae86a4
Clean up init-stdio implementations and move io.streams.null to basis
2009-05-12 03:35:48 -05:00
Slava Pestov
1951d739a0
Stack effect declarations are mandatory on all words now
...
define-temp now takes an effect parameter
Fix compiler bug that Dan found
Stricter enforcement of * effects
Move compile-call from compiler.units to compiler
2009-02-23 20:27:05 -06:00
Doug Coleman
16312f6711
clean up stream-seek with some suggestions from slava
2009-02-08 10:35:30 -06:00
Doug Coleman
959ef7a737
better error handling for backends
2009-02-07 11:24:12 -06:00
Doug Coleman
bc0521f88a
make seeking support the full lseek options, add seeking on output ports, remove seeking from decoders..
2009-02-07 10:30:51 -06:00
Doug Coleman
f6f716c4e3
unix support for stream seeking
2009-02-07 01:03:12 -06:00
Doug Coleman
43a91efde9
rename err_no to errno, clear_err_no to clear-errno, move them to libc, update usages
2009-02-06 18:22:28 -06:00
Doug Coleman
f9cd01683c
fix unix bootstrap
2009-01-29 21:26:27 -06:00
Doug Coleman
b21e40fe95
fix windows backend
2009-01-29 21:03:16 -06:00
Slava Pestov
c5160d76e9
Merge qualified, alias, symbols, constants into core
2008-12-17 18:10:01 -06:00
Slava Pestov
50e214c152
io.files split up and general refactoring work in progress
2008-12-14 20:03:00 -06:00