Browse Source

Most of node_net is not yet available on windows

v0.7.4-release
Bert Belder 14 years ago
parent
commit
a85a776268
  1. 28
      src/node_net.cc

28
src/node_net.cc

@ -68,10 +68,15 @@ static Persistent<FunctionTemplate> recv_msg_template;
String::New("Bad file descriptor argument"))); \
}
#ifdef __POSIX__
static inline bool SetCloseOnExec(int fd) {
return (fcntl(fd, F_SETFD, FD_CLOEXEC) != -1);
}
#endif // __POSIX__
static inline bool SetNonBlock(int fd) {
#ifdef __MINGW32__
@ -96,6 +101,8 @@ static inline bool SetSockFlags(int fd) {
}
#ifdef __POSIX__
// Creates nonblocking pipe
static Handle<Value> Pipe(const Arguments& args) {
HandleScope scope;
@ -116,7 +123,6 @@ static Handle<Value> Pipe(const Arguments& args) {
return scope.Close(a);
}
// Creates nonblocking socket pair
static Handle<Value> SocketPair(const Arguments& args) {
HandleScope scope;
@ -311,6 +317,8 @@ static Handle<Value> Bind(const Arguments& args) {
return Undefined();
}
#endif // __POSIX__
static Handle<Value> Close(const Arguments& args) {
HandleScope scope;
@ -325,6 +333,8 @@ static Handle<Value> Close(const Arguments& args) {
}
#ifdef __POSIX__
// t.shutdown(fd, "read"); -- SHUT_RD
// t.shutdown(fd, "write"); -- SHUT_WR
// t.shutdown(fd, "readwrite"); -- SHUT_RDWR
@ -535,6 +545,8 @@ static Handle<Value> SocketError(const Arguments& args) {
return scope.Close(Integer::New(error));
}
#endif // __POSIX__
// var bytesRead = t.read(fd, buffer, offset, length);
// returns null on EAGAIN or EINTR, raises an exception on all other errors
@ -580,6 +592,8 @@ static Handle<Value> Read(const Arguments& args) {
return scope.Close(Integer::New(bytes_read));
}
#ifdef __POSIX__
// var info = t.recvfrom(fd, buffer, offset, length, flags);
// info.size // bytes read
// info.port // from port
@ -736,6 +750,8 @@ static Handle<Value> RecvMsg(const Arguments& args) {
return scope.Close(Integer::New(bytes_read));
}
#endif // __POSIX__
// var bytesWritten = t.write(fd, buffer, offset, length);
// returns null on EAGAIN or EINTR, raises an exception on all other errors
@ -783,6 +799,8 @@ static Handle<Value> Write(const Arguments& args) {
}
#ifdef __POSIX__
// var bytes = sendmsg(fd, buf, off, len, fd, flags);
//
// Write a buffer with optional offset and length to the given file
@ -1301,6 +1319,8 @@ static Handle<Value> CreateErrnoException(const Arguments& args) {
return scope.Close(exception);
}
#endif // __POSIX__
void InitNet(Handle<Object> target) {
HandleScope scope;
@ -1308,6 +1328,7 @@ void InitNet(Handle<Object> target) {
NODE_SET_METHOD(target, "write", Write);
NODE_SET_METHOD(target, "read", Read);
#ifdef __POSIX__
NODE_SET_METHOD(target, "sendMsg", SendMsg);
NODE_SET_METHOD(target, "recvfrom", RecvFrom);
NODE_SET_METHOD(target, "sendto", SendTo);
@ -1317,7 +1338,11 @@ void InitNet(Handle<Object> target) {
target->Set(String::NewSymbol("recvMsg"), recv_msg_template->GetFunction());
NODE_SET_METHOD(target, "socket", Socket);
#endif //__POSIX__
NODE_SET_METHOD(target, "close", Close);
#ifdef __POSIX__
NODE_SET_METHOD(target, "shutdown", Shutdown);
NODE_SET_METHOD(target, "pipe", Pipe);
NODE_SET_METHOD(target, "socketpair", SocketPair);
@ -1337,6 +1362,7 @@ void InitNet(Handle<Object> target) {
NODE_SET_METHOD(target, "getaddrinfo", GetAddrInfo);
NODE_SET_METHOD(target, "isIP", IsIP);
NODE_SET_METHOD(target, "errnoException", CreateErrnoException);
#endif // __POSIX__
errno_symbol = NODE_PSYMBOL("errno");
syscall_symbol = NODE_PSYMBOL("syscall");

Loading…
Cancel
Save