Frank Denis
75ab1ba774
linux: uclibc <0.9.32 doesn't have <ifaddrs.h>
...
uclibc didn't provide ifaddrs.h before version 0.9.32 It explicitly didn't
install it because (quoting) "the corresponding functionality is disabled". So,
fix libuv on uclibc < 0.9.32 by returning ENOSYS for uv_interface_addresses()
2012-02-18 00:12:45 +01:00
Frank Denis
372ed18986
Add more fixes for Dragonfly BSD.
2012-02-14 14:49:31 +01:00
Frank Denis
e19724912d
Fix libuv on OpenBSD. struct kproc2 doesn't exist any more.
2012-02-14 14:49:31 +01:00
Frank Denis
783753e57f
Remove unused variables on NetBSD.
2012-02-14 14:49:31 +01:00
Ben Noordhuis
4e1f2b1f64
Merge remote-tracking branch 'origin/v0.6'
2012-02-12 16:10:05 +01:00
Ben Noordhuis
c5aa86bd39
Remove uv_import() and uv_export().
...
Not needed anymore now that support for isolates has been removed from Node.
This commit reverts the following commits:
812e410 test: fix up stream import/export test
e34dc13 unix: implement uv_import() and uv_export()
d1a0e8e test: fix undefined macro error
2ce0058 import/export streams accross loops
2012-02-12 15:49:54 +01:00
Igor Zinkovsky
f9be43a564
support half-duplex pipes
2012-02-09 13:33:15 -08:00
Nathan Rajlich
dbc046cb7f
Add EXDEV to the errno map.
2012-02-06 21:32:16 +01:00
Ben Noordhuis
4a5f3bbd51
eio: don't use futimes() on linux
...
uclibc does not provide the syscall wrapper. Translate it into a direct utimesat
syscall if available, else fail with ENOSYS.
2012-02-06 20:35:56 +01:00
Maciej Małecki
3ff3626e52
unix: map ELOOP to UV_ELOOP
2012-02-03 22:20:14 +01:00
Ben Noordhuis
2f182f4451
unix: map ECONNABORTED
2012-02-03 16:20:24 +01:00
isaacs
243cfcd078
Merge remote-tracking branch 'ry/v0.6'
2012-01-31 18:00:59 -08:00
Brandon Philips
4cfda74de4
uv.h: add EPERM to errno map to fix regression
...
EPERM isn't mapped in so chown returns an unknown error. This is a
regression from 0.4.12.
philips:node/ (master*) $ cat chown.js
var fs = require('fs')
fs.chown("/tmp/foobar", 100, 100, function(er){ console.log(er);})
philips:node/ (master*) $ ls -la /tmp/foobar
total 0
drwxr-xr-x 2 root wheel 68 Jan 24 17:21 .
0.4
---
philips:node/ (master*) $ /usr/local/Cellar/node/0.4.12/bin/node chown.js
{ stack: [Getter/Setter],
arguments: undefined,
type: undefined,
message: 'EPERM, Operation not permitted \'/tmp/foobar\'',
errno: 1,
code: 'EPERM',
path: '/tmp/foobar' }
master
------
philips:node/ (master*) $ ./node chown.js
{ [Error: UNKNOWN, unknown error '/tmp/foobar'] errno: -1, code: 'UNKNOWN', path: '/tmp/foobar' }
AFTER
-----
philips:node/ (master*) $ ./node chown.js
{ [Error: EPERM, operation not permitted '/tmp/foobar'] errno: 49, code: 'EPERM', path: '/tmp/foobar' }
2012-01-31 16:37:26 -08:00
Ben Noordhuis
45d7bd88c9
unix: explain SO_REUSEADDR and SO_REUSEPORT
2012-01-31 16:52:27 +01:00
Ben Noordhuis
e34dc13496
unix: implement uv_import() and uv_export()
2012-01-30 21:44:47 +01:00
Ben Noordhuis
abdc3efffe
unix: add uv__dup()
2012-01-30 21:44:27 +01:00
Igor Zinkovsky
2ce0058251
import/export streams accross loops
2012-01-30 21:44:27 +01:00
Ben Noordhuis
cdb44df86d
unix: add UNREACHABLE() macro
...
Asserts and aborts when program flow reaches a place it shouldn't.
2012-01-30 21:44:27 +01:00
isaacs
98c0498dbc
unix: Remove assert in uv__pipe_accept
...
This assert unnecessarily prevents people from using the pipe_wrap
class in node to send file descriptors over sockets.
2012-01-30 11:28:54 -08:00
Ben Noordhuis
332b72e589
sunos: fix uv_udp_set_ttl and uv_udp_set_multicast_loop
...
It turns out that setsockopt(IP_TTL) *does* expect an int, whereas
setsockopt(IP_MULTICAST_LOOP) needs a char.
2012-01-28 01:19:49 +01:00
Ben Noordhuis
16124bb34e
sunos: fix uv_udp_set_ttl and uv_udp_multicast_ttl
...
The argument to setsockopt(IP_TTL|IP_MULTICAST_TTL) should be a char, not an int
like on other Unices.
2012-01-28 00:11:47 +01:00
Ben Noordhuis
3de0411591
Merge remote-tracking branch 'origin/v0.6'
2012-01-27 22:23:26 +01:00
Ben Noordhuis
9c76d0d742
unix: turn on SO_REUSEPORT for UDP sockets
...
Required on BSD-like systems for local UDP multicast. Without it, the bind()
call fails with EADDRINUSE.
2012-01-27 00:49:57 +01:00
Ben Noordhuis
b88bc43543
unix: implement uv_udp_set_multicast_loop()
2012-01-24 00:07:22 +01:00
Ben Noordhuis
e710fdb518
unix: implement uv_udp_set_ttl()
2012-01-24 00:07:22 +01:00
Maciej Małecki
24e6c7ec86
unix: map ENAMETOOLONG to UV_ENAMETOOLONG
...
With tests. Closes #295
2012-01-23 19:33:09 +01:00
Dan VerWeire
497b1ecd00
unix: add uv_udp_set_broadcast() and uv_udp_set_multicast_ttl()
2012-01-21 03:06:47 +01:00
Dan VerWeire
b674187c38
unix: set SO_REUSEADDR before binding
2012-01-21 03:06:43 +01:00
Ben Noordhuis
98f3446c43
unix: don't close kqueue fd in kqueue_fork()
...
The file descriptor is not inherited by the child process. Trying to close it is
not just useless, it's actively harmful - if the close() call succeeds, it will
have closed an altogether different file descriptor.
2012-01-19 14:48:41 +01:00
Ben Noordhuis
bf8ccfce18
unix: fix segfault in uv_guess_handle()
...
Fixes #293 .
2012-01-17 17:47:33 +01:00
Ben Noordhuis
0e6e4abedc
unix: fix udp recv_start refcount
...
Calling uv_udp_recv_start() should not bump the event loop's reference count.
Fixes failing test udp_ref2.
2012-01-14 01:44:27 +01:00
Ben Noordhuis
6d9c9a533f
Add uv_loop_refcount() function, debug tool.
2012-01-14 00:33:08 +01:00
Ben Noordhuis
a13584bec7
unix: remove unused #define
2012-01-13 15:59:53 +01:00
Ben Noordhuis
52fba1a38f
unix: fix compiler warning
2012-01-12 16:00:31 +01:00
Ben Noordhuis
803f5a096e
linux: fix build on older distros
2012-01-09 15:43:00 +01:00
Ben Noordhuis
38fc6ad839
unix: unref fs event watcher
...
Watchers were being ref-counted twice which wasn't harmful in itself but stopped
uv_unref() from working like you'd expect it to.
2012-01-02 10:42:27 +01:00
Ben Noordhuis
feb267e611
unix: it's legal for dlsym() to return NULL
...
A symbol name can map to NULL. Check dlerror() to see if a real error happened.
2011-12-18 16:49:40 +01:00
Ben Noordhuis
e9235a39f8
unix: the dl functions don't set errno
2011-12-18 16:47:06 +01:00
Ben Noordhuis
d808cf9023
linux: detect if inotify syscalls are supported
2011-12-16 15:50:27 +01:00
Ben Noordhuis
6b3075cd73
linux: improve kernel feature detection
...
Do not check for minimum kernel and glibc versions, just check that the kernel
headers export the syscall number and invoke the syscall directly. Effectively
bypasses glibc.
2011-12-16 15:16:31 +01:00
Shigeki Ohtsu
ba52023ef3
Fix missing increments of loop->counters
2011-12-12 18:01:26 +01:00
Ben Noordhuis
b89c31b936
unix: fix warning: return 0 in function returning void
2011-12-06 22:20:30 +01:00
Ben Noordhuis
0db3274f8a
unix: check UV_CLOSING flag in uv__write()
...
uv__write() runs after the read callbacks have fired. Said callbacks may have
closed the handle, handle that graciously.
2011-12-05 16:56:30 +01:00
Ben Noordhuis
34e95d1a4c
unix: make it safe to delete the default loop
...
Fixes a potential free() of non-malloc'ed memory.
2011-12-04 13:20:23 +01:00
Ben Noordhuis
248ca5d612
unix: translate ETIMEDOUT to UV_ETIMEDOUT
2011-12-03 23:31:02 +01:00
Igor Zinkovsky
60630dab0f
windows: enable pending pipe instances knob
2011-12-01 13:48:57 -08:00
Igor Zinkovsky
dceb3e65ca
uv_cwd + uv_chdir
2011-12-01 12:27:12 -08:00
Ben Noordhuis
96c230344d
linux: fix build when compiling with -std=c89 -pedantic
2011-11-23 19:05:46 +01:00
Ben Noordhuis
92c9e95721
unix: fix stray pointer free() when HAVE_FUTIMES=0
...
uv_fs_futime() failed to initialize req.path when HAVE_FUTIMES=0.
uv_fs_req_cleanup() later on tried to free the bogus pointer.
2011-11-22 00:00:52 +01:00
Shimon Doodkin
1b9d00fb42
cygwin: fix undefined _SC_PAGESIZE
...
unistd.h was not included, when tried to build node 0.5.9 had an error of:
_SC_PAGESIZE undefined
2011-11-20 15:02:16 +01:00