Ryan Dahl
f1391f33cd
Add missing require('fs')
2010-11-01 14:56:21 -07:00
Chandra Sekar S
2b08bacd56
Removed range read optimization as it doesn't work with libeio.
2010-11-01 08:28:57 -07:00
Ryan Dahl
5e11b8a937
De-indent dns.lookup
2010-10-30 13:31:51 -07:00
Ryan Dahl
9c2969253b
Make sure watcher.set() isn't being called when active
2010-10-30 12:52:53 -07:00
Ryan Dahl
7a48fd8455
Handle null values in clearTimeout
2010-10-29 00:00:43 -07:00
Ryan Dahl
1eb547fec1
Lazy load modules in net.js
2010-10-28 13:15:53 -07:00
Ryan Dahl
5171da5a6c
Remove a little redundancy
2010-10-28 13:11:42 -07:00
Ryan Dahl
65dced730f
Handle one more onReadable call from crypto
...
MUST get rid of this calledByIOWatcher stuff. Hopefully will be able to when
securepair stuff lands.
2010-10-28 12:34:48 -07:00
Ryan Dahl
73cfda12bb
Abstract out a Server.prototype.pause method
2010-10-28 11:42:22 -07:00
Ryan Dahl
ad61d77fa3
Abstract out net.Server.prototype._rejectPending
...
Does the same timeout action for maxConnections as it does for EMFILE.
2010-10-28 11:33:35 -07:00
Jonas Pfenniger
74d0a077ec
Module-level EMFILE handling
...
All net servers now share the same dummy socket. The ulimit warning is
throttled for all servers.
2010-10-28 11:12:59 -07:00
isaacs
987cbbc191
Handle cyclic links smarter in fs.realpath
...
Rather than aborting in the face of *any* repeated link in a given path,
instead only abort if such a cycle actually makes a given path unresolvable.
Test for this by doing a normal stat. Still use the seenLinks object to
cache link contents so as to cut own a little bit on readlink calls.
Also add a pathological test that fails without the change to fs.js.
2010-10-27 17:02:42 -07:00
Ryan Dahl
67652ddf27
Refactor callbacks in net.Stream for fewer closures
2010-10-27 16:43:16 -07:00
Ryan Dahl
38dde9684f
Add extra anti-DoS tech to net.Server
2010-10-27 12:09:16 -07:00
Ryan Dahl
ac54272218
Gracefully handle EMFILE
...
Implementing a tip from Marc Lehmann:
http://pod.tst.eu/http://cvs.schmorp.de/libev/ev.pod#The_special_problem_of_accept_ing_wh
Keep an extra FD around for every server. When you hit EMFILE, destroy that
FD, accept a connection, close it; in this way you can clear the connection
queue and let people know that you're overload.
No more timeout needed.
2010-10-27 02:12:25 -07:00
Tim-Smart
79ecc8e9b7
Style changes.
2010-10-26 18:47:46 -07:00
Ryan Dahl
bc47353bbe
Use the timer list for setTimeout
2010-10-26 14:53:18 -07:00
Ryan Dahl
79944006e2
Move setTimeout and friends into timers module
2010-10-26 14:53:17 -07:00
Ryan Dahl
5cc29b80f2
Move idle timers into its own module
2010-10-26 14:53:17 -07:00
Ryan Dahl
72aee8216c
Fix permissions on http.js
2010-10-26 11:31:01 -07:00
Ryan Dahl
2470d2ee92
allowHalfOpen disabled by default
...
Users too often would forget to add
socket.on('end', function () {
socket.end();
});
Which is a mistake. Therefore we default to this behavior and
only optionally let people handle the 'end' case themselves.
2010-10-26 01:10:18 -07:00
Ryan Dahl
583c07bf8b
fix style
2010-10-25 17:30:08 -07:00
Paul Querna
97977640bd
Set the readable variables on the read/write streams
...
and add more debug() calls to make it easier to see the flow
2010-10-25 17:28:21 -07:00
Paul Querna
1128c0bf67
Add SecurePair for handling of a ssl/tls stream.
2010-10-25 17:26:58 -07:00
Micheil Smith
8da020d39e
Update node_net.cc to make us of node_constants.cc
...
also affects dgram which uses a constant from node_net.cc
2010-10-25 12:14:47 -07:00
Ryan Dahl
0ac2ef924f
Do not spin on aceept() with EMFILE
...
When a server hit EMFILE it would continue to try to accept new connections
from the queue. This patch introduces a timeout of one second where it will
stop trying to accept new files. After the second is over it tries again.
This is a rather serious bug that has been effecting many highly concurrent
programs. It was introduced in 4593c0, version v0.2.0.
TODO: A test for this situation. Currently I test it like this
termA% cd projects/node
termA% ulimit -n 256
termA% ./node benchmark/idle_server.js
termB% cd projects/node
termB% ./node benchmark/idle_clients.js
And watch how the server process behaves.
2010-10-23 12:28:20 -07:00
Ryan Dahl
9bf2975f78
Make sure Error object on exec() gets killed member
...
Also default to SIGTERM for destruction when exceeding timeout or buffer on
exec()
2010-10-23 11:37:40 -07:00
Ryan Dahl
d9a5edb2b0
Fix test-net-eaddrinuse
2010-10-23 11:22:24 -07:00
Jorge Chamorro Bieling
99e19aa398
Remove unneeded function wrappers
2010-10-21 17:11:59 -07:00
Ryan Dahl
6570cd99e5
Fix execFile timeouts, improve tests
...
It seems that a parent will not get a SIGCHLD if the child is killed by the
parent? It's unclear, so make 'exit' callback manually.
2010-10-20 19:20:52 -07:00
Ryan Dahl
5a98fa4809
ChildProcesses cannot be killed if pid is missing
2010-10-20 17:55:25 -07:00
isaacs
bfc6b51d95
The cwdRequire hack is no longer necessary with the require.resolve refactor.
2010-10-20 15:22:02 -07:00
Aaron Heckmann
bd8e4f656e
Prevents child_process.exec timeouts from throwing when the child was previously killed.
2010-10-20 12:46:51 -07:00
isaacs
226eff5104
Add require.resolve.
...
Also, hack the repl so that it works as expected there, too.
2010-10-20 12:12:07 -07:00
Johan Euphrosine
5d400cfd3a
net listen should emit eaddrinuse error
2010-10-18 17:00:13 -07:00
Mark Nottingham
b14eeb3c1e
Fix expect/continue keepalive
2010-10-18 15:38:46 -07:00
Sami Samhuri
56df0cbf93
new api for defining repl commands
2010-10-18 13:46:54 -07:00
Ryan Dahl
cf1db4f304
base64 decode should handle whitespace
2010-10-18 11:34:35 -07:00
Peteris Krumins
a6ee3bac85
Add EventEmitter.prototype.once
2010-10-16 20:43:09 -07:00
Joshua Peek
73b29d79b9
Don't flush net writeQueue on end() if its still connecting
2010-10-13 02:37:53 -07:00
Ryan Dahl
6691aca229
Allow people to set backlog. Need a better API.
2010-10-13 01:47:29 -07:00
Ryan Dahl
901d5fd0d2
Don't require events in fs.js
2010-10-11 16:40:28 -07:00
Ryan Dahl
32aadd9400
fs.ReadStream and fs.WriteStream derive from stream.Stream
2010-10-11 16:39:40 -07:00
Ryan Dahl
8139bb24c1
Add destroy methods to HTTP messages
...
needs tests (particularly for pipeline situations)
2010-10-11 16:36:14 -07:00
Micheil Smith
d2c47b4f87
Removed deprecated methods from lib/path.js
2010-10-11 16:21:21 -07:00
Micheil Smith
a3604cf233
Removed deprecated methods from lib/net.js
2010-10-11 16:20:08 -07:00
Micheil Smith
0e1a581916
Removed deprecated methods from lib/http.js
2010-10-11 16:20:08 -07:00
Micheil Smith
7bfefb5250
Removed deprecated methods from lib/fs.js
2010-10-11 16:20:08 -07:00
Micheil Smith
83db91be41
Removed deprecated alias to lib/fs.js
2010-10-11 16:20:04 -07:00
Micheil Smith
c1aa8ea944
Removed deprecated events.Promise
2010-10-11 16:16:18 -07:00