Doug Coleman
2c82dfb51b
io.sockets: Windows doesn't recognize 0.0.0.0. Add a method for
...
resolve-localhost for Windows, and make the default ipv4 make-sockaddr use
127.0.0.1 since we are making a sockaddr for ipv4 anyway and 127.0.0.1 is
cross-platform. Fixes #85 .
2016-03-07 14:07:01 -08:00
John Benediktsson
ee134373f0
ip-parser: some cleanup, move ipv6 parsing here.
2016-03-05 09:51:37 -08:00
Benjamin Pollack
e707374085
Make <inet4> and <ipv4> use ip-parser:parse-ipv4
...
Fixes #1209
2016-03-05 09:11:56 -05:00
Doug Coleman
69d5a3a276
io.sockets: remove send-n-times, broadcast-n-times.
2016-02-20 18:37:08 -08:00
Doug Coleman
e4347f5254
io.sockets: Add more utility words for working with udp.
2016-02-19 19:21:13 -08:00
John Benediktsson
ceb75057da
change ERROR: words from throw-foo back to foo.
2015-08-13 16:13:05 -07:00
Doug Coleman
b6be8685c3
basis: ERROR: changes.
2015-08-13 03:20:39 -07:00
John Benediktsson
5d6632514a
io.sockets: make host-name a hook and throw correct errors.
2015-07-16 13:15:14 -07:00
John Benediktsson
3f362dfc99
destructors: change check-disposed not to drop the disposable.
2014-11-21 08:19:05 -08:00
John Benediktsson
24cb41aa13
io.sockets: don't need "0 or" for addrinfo.
2014-04-20 09:30:03 -07:00
Björn Lindqvist
e1206d5ef1
io.sockets: add word addrinfo-error to signal host lookup failures
...
If the getaddrinfo call fails, and you want to handle that failure in
a structured way, then you need a designated error type to know what
went wrong.
2014-04-20 09:29:31 -07:00
John Benediktsson
0a2fef0775
io.sockets: change protocol-port to handle ``f`` on all platforms.
2014-03-12 07:27:39 -07:00
Björn Lindqvist
7c179f876c
unix.ffi, windows.winsock: wraps for servent functions
2013-09-16 17:31:37 -07:00
Doug Coleman
bcc86baf45
io.sockets: Minor cleanup.
2012-08-26 00:04:53 -07:00
John Benediktsson
8343c88f4d
io.sockets: fix stack effect names.
2012-08-02 14:49:50 -07:00
Doug Coleman
1da8666a70
io.sockets.unix: Needs to still use namespaces. Clean up using lists.
2012-07-19 00:53:09 -07:00
John Benediktsson
f53f6993ec
io.sockets: fix stack effect for <broadcast>.
2012-05-29 15:47:15 -07:00
John Benediktsson
51fcae2d8b
io.sockets: adding "broadcast port", ideally would just be +broadcast+ or something, but this works.
2012-05-29 10:46:19 -07:00
Doug Coleman
3507b9bad7
classes:
...
- Allow methods to dispatch off union{ } and intersection{ } classes.
- Add not{ } anonymous-complement syntax.
- Define class-name for anonymous-union/intersection/complement and maybes, and clean up pprint.
- Change maybe: foo to maybe{ foo }
- Call sort-classes when making anonymous-union/anonymous-intersection classes so that they are canonicalized.
2012-05-03 19:45:30 -07:00
Joe Groff
255d024e51
io.sockets: remove unneeded USING: values
2011-11-29 09:46:51 -08:00
Doug Coleman
067f9830ef
classes.union: Define a maybe: word that makes a tuple that acts as an anonymous union for a type and f. Updated all the places we define UNION: ?foo foo POSTPONE: f ;. Fixes #416 and lots of headaches.
2011-11-22 01:56:13 -08:00
Doug Coleman
94db86a6db
Make "foo.private" require load foo instead.
...
Move require from vocabs.loader to vocabs. Update everything.
Fixes #201 .
2011-11-02 11:50:03 -07:00
Doug Coleman
f9257959fd
Rename class to class-of
2011-10-24 06:47:42 -05:00
John Benediktsson
fb2aab3545
Remove unused words. Fixes #132 .
2011-10-19 11:01:16 -07:00
Joe Groff
90e1002349
io.sockets: rename (receive) to (receive-unsafe)
2011-10-17 21:23:37 -07:00
Joe Groff
8fc0be3c2f
io.sockets: remove unix.ffi inserted by auto-use
2011-10-17 21:23:36 -07:00
Joe Groff
5d0ff43613
io.sockets: receive directly into byte array
2011-10-17 21:23:11 -07:00
Joe Groff
20e49c273f
io.sockets: receive-unsafe and receive-into
...
Analogous to read-unsafe/read-into for streams (and thereby TCP sockets), provide receive-unsafe and receive-into words for datagram sockets that receive into a caller-supplied buffer.
2011-10-17 21:23:11 -07:00
John Benediktsson
d7d1b6fea1
io.sockets: check ipv4 and ipv6 for valid address strings.
2011-08-19 14:19:09 -07:00
Slava Pestov
db29973ccb
io.sockets: fix unit test on Windows
2011-02-27 14:38:47 -08:00
Slava Pestov
266c6d32e7
io.sockets: add scope-id to ipv6 addrspecs, fixing a problem with connecting to localhost on Mac OS X (and other systems) where localhost is associated with a link-local address such as fe80::1
2011-02-25 22:33:28 -08:00
Doug Coleman
4ca9bd0bba
Remove usages of <void*> and *void*
2010-10-25 13:22:50 -05:00
Doug Coleman
1f57dc326e
Remove many uses of <int> and *int etc
2010-10-25 12:49:12 -05:00
Slava Pestov
89ae9d9638
Various cleanups for Doug's recent socket addressing change
...
- urls: now have a host/port slots again, add a new set-url-addr word
- http.server: fix host header parsing for IPv6 addresses
2010-10-06 23:00:38 -07:00
Doug Coleman
32f447d796
Since ip4/ip6 services can run on different ports, we must include which version of ip we're using instead of just a port. Make URL objects store an inet4/i nt6/inet object with host/port slots instead of storing host/port slots separately. Stricter error checking on inet4/inet6 tuple creation. Update lots of code related to the URL change.
2010-10-05 09:56:29 -05:00
Slava Pestov
2fb36ea1c5
io.sockets: minor cleanup
2010-09-24 01:17:33 -07:00
Doug Coleman
a2a598546f
Only return ipv4 addresses for binding to on linux.
2010-09-23 13:20:18 -05:00
Doug Coleman
2c42e616b4
Implement a raw port. Make ping only run on Windows and Mac because the other platforms require root privs.
2010-09-21 22:00:18 -05:00
Doug Coleman
7b0a50e7d2
Squashed commit of the following:
...
commit 90deaafa9db083ecdb9e0e30ad3694317e616399
Merge: f392dfd
32cf7bb
Author: Doug Coleman <doug.coleman@gmail.com>
Date: Tue Sep 21 00:33:37 2010 -0500
Merge branch 'icmp-ping' of git://github.com/mrjbq7/factor into icmp-ping2
commit 32cf7bb0e0b876309bce248944dfeca243f02594
Author: John Benediktsson <mrjbq7@gmail.com>
Date: Fri Sep 10 14:01:47 2010 -0700
ping: Adding a simple IPv4 ping implementation.
commit da0c5ce7acf1407256c3ac2b98ac5b68858878c1
Author: John Benediktsson <mrjbq7@gmail.com>
Date: Fri Sep 10 14:01:15 2010 -0700
io.sockets.icmp: Adding ICMP support.
commit 60fdf7e7d995d63c11be87e8e1398f7bdd593833
Author: John Benediktsson <mrjbq7@gmail.com>
Date: Fri Sep 10 14:00:48 2010 -0700
io.sockets: Adding protocol support for sockets.
commit 2f130f1f9e0e2ea44d798beaad244a9c33b0d86a
Author: John Benediktsson <mrjbq7@gmail.com>
Date: Fri Sep 10 14:00:28 2010 -0700
Adding getprotobyname().
2010-09-21 11:15:33 -05:00
Doug Coleman
140aa80379
Don't try to use ipv6 addresses if an OS can't bind to them
2010-09-20 23:53:18 -05:00
Doug Coleman
f791c8c5d2
Squashed commit of the following:
...
commit 197dbe9a6733775ac0ea19b3da4bd4dc3c85418c
Author: Doug Coleman <doug.coleman@gmail.com>
Date: Sat Sep 18 19:01:38 2010 -0500
Fix bootstrap, move privileges to windows.privileges
commit 521c622f8afb15bf42d263c738cb990560dc29cb
Author: Doug Coleman <doug.coleman@gmail.com>
Date: Sat Sep 18 18:26:30 2010 -0500
Hopefully fix bootstrap
commit eb3f22928b59758b9505430034044b5b94705da2
Author: Doug Coleman <doug.coleman@gmail.com>
Date: Sat Sep 18 18:19:05 2010 -0500
Remove wince from factor codebase
commit 619d6c99415f46208a7ede6a04b0ccda46b15360
Author: Doug Coleman <doug.coleman@gmail.com>
Date: Sat Sep 18 16:07:46 2010 -0500
Remove Windows CE from vm/
2010-09-19 19:13:25 -05:00
Slava Pestov
afbf4e9cb2
io.sockets: make addrspecs immutable
2010-09-04 18:49:27 -07:00
Slava Pestov
aa2f5ae13f
io.sockets: f 0 <inet4> should work
2010-09-04 15:41:12 -07:00
Slava Pestov
4fc792629e
io.sockets: clean up resolve-host
2010-09-04 14:42:05 -07:00
Slava Pestov
3d461046f0
io.sockets: factor out ipv4 and ipv6 classes for John Benediktsson's upcoming ICMP work)
2010-09-04 14:19:20 -07:00
Joe Groff
7844cbafab
missed a dead memory>struct in io.sockets
2010-02-22 19:09:03 -08:00
Doug Coleman
af96673458
Better fix for ipv6
2010-01-24 15:57:06 -06:00
Doug Coleman
ef5baa5b67
Handle IPv6 addresses of the form ::127.0.0.1
2010-01-24 15:40:34 -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
Slava Pestov
0612bc6177
Factor source files should not be executable
2009-11-21 17:50:43 -06:00