I really wanted to try this, but it won't build on newer node versions as it doesn't use nan.
[root@mx1 nfqueue]# npm install nfqueue
> [email protected] install /root/nfqueue/node_modules/nfqueue
> node-gyp rebuild
make: Entering directory `/root/nfqueue/node_modules/nfqueue/build'
CXX(target) Release/obj.target/nfqueue/src/node_nfqueue.o
../src/node_nfqueue.cpp:32:34: error: expected class-name before ‘{’ token
class nfqueue : node::ObjectWrap {
^
../src/node_nfqueue.cpp:42:36: error: ‘Arguments’ does not name a type
static Handle<Value> New(const Arguments& args);
^
../src/node_nfqueue.cpp:42:47: warning: ISO C++ forbids declaration of ‘args’ with no type [-fpermissive]
static Handle<Value> New(const Arguments& args);
^
../src/node_nfqueue.cpp:43:37: error: ‘Arguments’ does not name a type
static Handle<Value> Open(const Arguments& args);
^
../src/node_nfqueue.cpp:43:48: warning: ISO C++ forbids declaration of ‘args’ with no type [-fpermissive]
static Handle<Value> Open(const Arguments& args);
^
../src/node_nfqueue.cpp:44:37: error: ‘Arguments’ does not name a type
static Handle<Value> Read(const Arguments& args);
^
../src/node_nfqueue.cpp:44:48: warning: ISO C++ forbids declaration of ‘args’ with no type [-fpermissive]
static Handle<Value> Read(const Arguments& args);
^
../src/node_nfqueue.cpp:45:40: error: ‘Arguments’ does not name a type
static Handle<Value> Verdict(const Arguments& args);
^
../src/node_nfqueue.cpp:45:51: warning: ISO C++ forbids declaration of ‘args’ with no type [-fpermissive]
static Handle<Value> Verdict(const Arguments& args);
^
../src/node_nfqueue.cpp:47:27: error: ‘uv_poll_t’ has not been declared
static void PollAsync(uv_poll_t* handle, int status, int events);
^
../src/node_nfqueue.cpp:58:3: error: ‘uv_poll_t’ does not name a type
uv_poll_t poll;
^
../src/node_nfqueue.cpp: In static member function ‘static void nfqueue::Init(v8::Handle<v8::Object>)’:
../src/node_nfqueue.cpp:66:58: error: no matching function for call to ‘v8::FunctionTemplate::New(v8::Handle<v8::Value> (&)(const int&))’
Local<FunctionTemplate> tpl = FunctionTemplate::New(New);
^
../src/node_nfqueue.cpp:66:58: note: candidate is:
In file included from /root/.node-gyp/1.8.4/src/node.h:42:0,
from ../src/node_nfqueue.cpp:20:
/root/.node-gyp/1.8.4/deps/v8/include/v8.h:3842:34: note: static v8::Local<v8::FunctionTemplate> v8::FunctionTemplate::New(v8::Isolate*, v8::FunctionCallback, v8::Handle<v8::Value>, v8::Handle<v8::Signature>, int)
static Local<FunctionTemplate> New(
^
/root/.node-gyp/1.8.4/deps/v8/include/v8.h:3842:34: note: no known conversion for argument 1 from ‘v8::Handle<v8::Value>(const int&)’ to ‘v8::Isolate*’
../src/node_nfqueue.cpp:67:21: error: ‘NewSymbol’ is not a member of ‘v8::String’
tpl->SetClassName(String::NewSymbol("NFQueue"));
^
../src/node_nfqueue.cpp:70:33: error: ‘NewSymbol’ is not a member of ‘v8::String’
tpl->PrototypeTemplate()->Set(String::NewSymbol("open"), FunctionTemplate::New(Open)->GetFunction());
^
../src/node_nfqueue.cpp:70:86: error: no matching function for call to ‘v8::FunctionTemplate::New(v8::Handle<v8::Value> (&)(const int&))’
tpl->PrototypeTemplate()->Set(String::NewSymbol("open"), FunctionTemplate::New(Open)->GetFunction());
^
../src/node_nfqueue.cpp:70:86: note: candidate is:
In file included from /root/.node-gyp/1.8.4/src/node.h:42:0,
from ../src/node_nfqueue.cpp:20:
/root/.node-gyp/1.8.4/deps/v8/include/v8.h:3842:34: note: static v8::Local<v8::FunctionTemplate> v8::FunctionTemplate::New(v8::Isolate*, v8::FunctionCallback, v8::Handle<v8::Value>, v8::Handle<v8::Signature>, int)
static Local<FunctionTemplate> New(
^
/root/.node-gyp/1.8.4/deps/v8/include/v8.h:3842:34: note: no known conversion for argument 1 from ‘v8::Handle<v8::Value>(const int&)’ to ‘v8::Isolate*’
../src/node_nfqueue.cpp:71:33: error: ‘NewSymbol’ is not a member of ‘v8::String’
tpl->PrototypeTemplate()->Set(String::NewSymbol("read"), FunctionTemplate::New(Read)->GetFunction());
^
../src/node_nfqueue.cpp:71:86: error: no matching function for call to ‘v8::FunctionTemplate::New(v8::Handle<v8::Value> (&)(const int&))’
tpl->PrototypeTemplate()->Set(String::NewSymbol("read"), FunctionTemplate::New(Read)->GetFunction());
^
../src/node_nfqueue.cpp:71:86: note: candidate is:
In file included from /root/.node-gyp/1.8.4/src/node.h:42:0,
from ../src/node_nfqueue.cpp:20:
/root/.node-gyp/1.8.4/deps/v8/include/v8.h:3842:34: note: static v8::Local<v8::FunctionTemplate> v8::FunctionTemplate::New(v8::Isolate*, v8::FunctionCallback, v8::Handle<v8::Value>, v8::Handle<v8::Signature>, int)
static Local<FunctionTemplate> New(
^
/root/.node-gyp/1.8.4/deps/v8/include/v8.h:3842:34: note: no known conversion for argument 1 from ‘v8::Handle<v8::Value>(const int&)’ to ‘v8::Isolate*’
../src/node_nfqueue.cpp:72:33: error: ‘NewSymbol’ is not a member of ‘v8::String’
tpl->PrototypeTemplate()->Set(String::NewSymbol("setVerdict"), FunctionTemplate::New(Verdict)->GetFunction());
^
../src/node_nfqueue.cpp:72:95: error: no matching function for call to ‘v8::FunctionTemplate::New(v8::Handle<v8::Value> (&)(const int&))’
tpl->PrototypeTemplate()->Set(String::NewSymbol("setVerdict"), FunctionTemplate::New(Verdict)->GetFunction());
^
../src/node_nfqueue.cpp:72:95: note: candidate is:
In file included from /root/.node-gyp/1.8.4/src/node.h:42:0,
from ../src/node_nfqueue.cpp:20:
/root/.node-gyp/1.8.4/deps/v8/include/v8.h:3842:34: note: static v8::Local<v8::FunctionTemplate> v8::FunctionTemplate::New(v8::Isolate*, v8::FunctionCallback, v8::Handle<v8::Value>, v8::Handle<v8::Signature>, int)
static Local<FunctionTemplate> New(
^
/root/.node-gyp/1.8.4/deps/v8/include/v8.h:3842:34: note: no known conversion for argument 1 from ‘v8::Handle<v8::Value>(const int&)’ to ‘v8::Isolate*’
../src/node_nfqueue.cpp:74:61: error: no matching function for call to ‘v8::Persistent<v8::Function>::New(v8::Local<v8::Function>)’
constructor = Persistent<Function>::New(tpl->GetFunction());
^
../src/node_nfqueue.cpp:74:61: note: candidate is:
In file included from /root/.node-gyp/1.8.4/src/node.h:42:0,
from ../src/node_nfqueue.cpp:20:
/root/.node-gyp/1.8.4/deps/v8/include/v8.h:6481:4: note: static T* v8::PersistentBase<T>::New(v8::Isolate*, T*) [with T = v8::Function]
T* PersistentBase<T>::New(Isolate* isolate, T* that) {
^
/root/.node-gyp/1.8.4/deps/v8/include/v8.h:6481:4: note: candidate expects 2 arguments, 1 provided
../src/node_nfqueue.cpp:75:16: error: ‘NewSymbol’ is not a member of ‘v8::String’
exports->Set(String::NewSymbol("NFQueue"), constructor);
^
../src/node_nfqueue.cpp: At global scope:
../src/node_nfqueue.cpp:78:34: error: ‘Arguments’ does not name a type
Handle<Value> nfqueue::New(const Arguments& args) {
^
../src/node_nfqueue.cpp:78:45: warning: ISO C++ forbids declaration of ‘args’ with no type [-fpermissive]
Handle<Value> nfqueue::New(const Arguments& args) {
^
In file included from /root/.node-gyp/1.8.4/src/node.h:42:0,
from ../src/node_nfqueue.cpp:20:
/root/.node-gyp/1.8.4/deps/v8/include/v8.h: In static member function ‘static v8::Handle<v8::Value> nfqueue::New(const int&)’:
/root/.node-gyp/1.8.4/deps/v8/include/v8.h:879:13: error: ‘v8::HandleScope::HandleScope()’ is protected
V8_INLINE HandleScope() {}
^
../src/node_nfqueue.cpp:79:15: error: within this context
HandleScope scope;
^
../src/node_nfqueue.cpp:82:21: error: ‘class nfqueue’ has no member named ‘Wrap’
nfqueue_instance->Wrap(args.This());
^
../src/node_nfqueue.cpp:82:31: error: request for member ‘This’ in ‘args’, which is of non-class type ‘const int’
nfqueue_instance->Wrap(args.This());
^
../src/node_nfqueue.cpp:84:15: error: request for member ‘This’ in ‘args’, which is of non-class type ‘const int’
return args.This();
^
../src/node_nfqueue.cpp: At global scope:
../src/node_nfqueue.cpp:87:35: error: ‘Arguments’ does not name a type
Handle<Value> nfqueue::Open(const Arguments& args) {
^
../src/node_nfqueue.cpp:87:46: warning: ISO C++ forbids declaration of ‘args’ with no type [-fpermissive]
Handle<Value> nfqueue::Open(const Arguments& args) {
^
In file included from /root/.node-gyp/1.8.4/src/node.h:42:0,
from ../src/node_nfqueue.cpp:20:
/root/.node-gyp/1.8.4/deps/v8/include/v8.h: In static member function ‘static v8::Handle<v8::Value> nfqueue::Open(const int&)’:
/root/.node-gyp/1.8.4/deps/v8/include/v8.h:879:13: error: ‘v8::HandleScope::HandleScope()’ is protected
V8_INLINE HandleScope() {}
^
../src/node_nfqueue.cpp:88:15: error: within this context
HandleScope scope;
^
../src/node_nfqueue.cpp:90:18: error: ‘ObjectWrap’ has not been declared
nfqueue* obj = ObjectWrap::Unwrap<nfqueue>(args.This());
^
../src/node_nfqueue.cpp:90:44: error: expected primary-expression before ‘>’ token
nfqueue* obj = ObjectWrap::Unwrap<nfqueue>(args.This());
^
../src/node_nfqueue.cpp:90:51: error: request for member ‘This’ in ‘args’, which is of non-class type ‘const int’
nfqueue* obj = ObjectWrap::Unwrap<nfqueue>(args.This());
^
../src/node_nfqueue.cpp:92:14: error: invalid types ‘const int[int]’ for array subscript
if (!args[0]->IsNumber()) {
^
../src/node_nfqueue.cpp:93:41: error: ‘New’ is not a member of ‘v8::String’
ThrowException(Exception::TypeError(String::New("Bad queue number")));
^
../src/node_nfqueue.cpp:93:73: error: ‘ThrowException’ was not declared in this scope
ThrowException(Exception::TypeError(String::New("Bad queue number")));
^
../src/node_nfqueue.cpp:94:18: error: ‘class v8::HandleScope’ has no member named ‘Close’
return scope.Close(Undefined());
^
../src/node_nfqueue.cpp:94:34: error: too few arguments to function ‘v8::Handle<v8::Primitive> v8::Undefined(v8::Isolate*)’
return scope.Close(Undefined());
^
In file included from /root/.node-gyp/1.8.4/src/node.h:42:0,
from ../src/node_nfqueue.cpp:20:
/root/.node-gyp/1.8.4/deps/v8/include/v8.h:324:28: note: declared here
friend Handle<Primitive> Undefined(Isolate* isolate);
^
../src/node_nfqueue.cpp:97:40: error: invalid types ‘const int[int]’ for array subscript
if (!node::Buffer::HasInstance(args[1])) {
^
../src/node_nfqueue.cpp:98:41: error: ‘New’ is not a member of ‘v8::String’
ThrowException(Exception::TypeError(String::New("2nd argument must be a Buffer instance")));
^
../src/node_nfqueue.cpp:98:95: error: ‘ThrowException’ was not declared in this scope
ThrowException(Exception::TypeError(String::New("2nd argument must be a Buffer instance")));
^
../src/node_nfqueue.cpp:99:18: error: ‘class v8::HandleScope’ has no member named ‘Close’
return scope.Close(Undefined());
^
../src/node_nfqueue.cpp:99:34: error: too few arguments to function ‘v8::Handle<v8::Primitive> v8::Undefined(v8::Isolate*)’
return scope.Close(Undefined());
^
In file included from /root/.node-gyp/1.8.4/src/node.h:42:0,
from ../src/node_nfqueue.cpp:20:
/root/.node-gyp/1.8.4/deps/v8/include/v8.h:324:28: note: declared here
friend Handle<Primitive> Undefined(Isolate* isolate);
^
../src/node_nfqueue.cpp:103:36: error: invalid types ‘const int[int]’ for array subscript
Local<Object> buffer_obj = args[1]->ToObject();
^
../src/node_nfqueue.cpp:114:41: error: ‘New’ is not a member of ‘v8::String’
ThrowException(Exception::TypeError(String::New("Unable to open queue")));
^
../src/node_nfqueue.cpp:114:77: error: ‘ThrowException’ was not declared in this scope
ThrowException(Exception::TypeError(String::New("Unable to open queue")));
^
../src/node_nfqueue.cpp:115:18: error: ‘class v8::HandleScope’ has no member named ‘Close’
return scope.Close(Undefined());
^
../src/node_nfqueue.cpp:115:34: error: too few arguments to function ‘v8::Handle<v8::Primitive> v8::Undefined(v8::Isolate*)’
return scope.Close(Undefined());
^
In file included from /root/.node-gyp/1.8.4/src/node.h:42:0,
from ../src/node_nfqueue.cpp:20:
/root/.node-gyp/1.8.4/deps/v8/include/v8.h:324:28: note: declared here
friend Handle<Primitive> Undefined(Isolate* isolate);
^
../src/node_nfqueue.cpp:119:41: error: ‘New’ is not a member of ‘v8::String’
ThrowException(Exception::TypeError(String::New("Unable to unbind queue")));
^
../src/node_nfqueue.cpp:119:79: error: ‘ThrowException’ was not declared in this scope
ThrowException(Exception::TypeError(String::New("Unable to unbind queue")));
^
../src/node_nfqueue.cpp:120:18: error: ‘class v8::HandleScope’ has no member named ‘Close’
return scope.Close(Undefined());
^
../src/node_nfqueue.cpp:120:34: error: too few arguments to function ‘v8::Handle<v8::Primitive> v8::Undefined(v8::Isolate*)’
return scope.Close(Undefined());
^
In file included from /root/.node-gyp/1.8.4/src/node.h:42:0,
from ../src/node_nfqueue.cpp:20:
/root/.node-gyp/1.8.4/deps/v8/include/v8.h:324:28: note: declared here
friend Handle<Primitive> Undefined(Isolate* isolate);
^
../src/node_nfqueue.cpp:124:54: error: invalid types ‘const int[int]’ for array subscript
obj->qhandle = nfq_create_queue(obj->handle, args[0]->Uint32Value(), &nf_callback, (void*)obj);
^
../src/node_nfqueue.cpp:127:41: error: ‘New’ is not a member of ‘v8::String’
ThrowException(Exception::TypeError(String::New("Unable to create queue")));
^
../src/node_nfqueue.cpp:127:79: error: ‘ThrowException’ was not declared in this scope
ThrowException(Exception::TypeError(String::New("Unable to create queue")));
^
../src/node_nfqueue.cpp:128:18: error: ‘class v8::HandleScope’ has no member named ‘Close’
return scope.Close(Undefined());
^
../src/node_nfqueue.cpp:128:34: error: too few arguments to function ‘v8::Handle<v8::Primitive> v8::Undefined(v8::Isolate*)’
return scope.Close(Undefined());
^
In file included from /root/.node-gyp/1.8.4/src/node.h:42:0,
from ../src/node_nfqueue.cpp:20:
/root/.node-gyp/1.8.4/deps/v8/include/v8.h:324:28: note: declared here
friend Handle<Primitive> Undefined(Isolate* isolate);
^
../src/node_nfqueue.cpp:132:41: error: ‘New’ is not a member of ‘v8::String’
ThrowException(Exception::TypeError(String::New("Unable to set queue mode")));
^
../src/node_nfqueue.cpp:132:81: error: ‘ThrowException’ was not declared in this scope
ThrowException(Exception::TypeError(String::New("Unable to set queue mode")));
^
../src/node_nfqueue.cpp:133:18: error: ‘class v8::HandleScope’ has no member named ‘Close’
return scope.Close(Undefined());
^
../src/node_nfqueue.cpp:133:34: error: too few arguments to function ‘v8::Handle<v8::Primitive> v8::Undefined(v8::Isolate*)’
return scope.Close(Undefined());
^
In file included from /root/.node-gyp/1.8.4/src/node.h:42:0,
from ../src/node_nfqueue.cpp:20:
/root/.node-gyp/1.8.4/deps/v8/include/v8.h:324:28: note: declared here
friend Handle<Primitive> Undefined(Isolate* isolate);
^
../src/node_nfqueue.cpp:139:41: error: ‘New’ is not a member of ‘v8::String’
ThrowException(Exception::TypeError(String::New("Unable to open an interface table handle")));
^
../src/node_nfqueue.cpp:139:97: error: ‘ThrowException’ was not declared in this scope
ThrowException(Exception::TypeError(String::New("Unable to open an interface table handle")));
^
../src/node_nfqueue.cpp:140:18: error: ‘class v8::HandleScope’ has no member named ‘Close’
return scope.Close(Undefined());
^
../src/node_nfqueue.cpp:140:34: error: too few arguments to function ‘v8::Handle<v8::Primitive> v8::Undefined(v8::Isolate*)’
return scope.Close(Undefined());
^
In file included from /root/.node-gyp/1.8.4/src/node.h:42:0,
from ../src/node_nfqueue.cpp:20:
/root/.node-gyp/1.8.4/deps/v8/include/v8.h:324:28: note: declared here
friend Handle<Primitive> Undefined(Isolate* isolate);
^
../src/node_nfqueue.cpp:144:16: error: ‘class v8::HandleScope’ has no member named ‘Close’
return scope.Close(Undefined());
^
../src/node_nfqueue.cpp:144:32: error: too few arguments to function ‘v8::Handle<v8::Primitive> v8::Undefined(v8::Isolate*)’
return scope.Close(Undefined());
^
In file included from /root/.node-gyp/1.8.4/src/node.h:42:0,
from ../src/node_nfqueue.cpp:20:
/root/.node-gyp/1.8.4/deps/v8/include/v8.h:324:28: note: declared here
friend Handle<Primitive> Undefined(Isolate* isolate);
^
../src/node_nfqueue.cpp: At global scope:
../src/node_nfqueue.cpp:147:35: error: ‘Arguments’ does not name a type
Handle<Value> nfqueue::Read(const Arguments& args) {
^
../src/node_nfqueue.cpp:147:46: warning: ISO C++ forbids declaration of ‘args’ with no type [-fpermissive]
Handle<Value> nfqueue::Read(const Arguments& args) {
^
../src/node_nfqueue.cpp: In static member function ‘static v8::Handle<v8::Value> nfqueue::Read(const int&)’:
../src/node_nfqueue.cpp:148:18: error: ‘ObjectWrap’ has not been declared
nfqueue* obj = ObjectWrap::Unwrap<nfqueue>(args.This());
^
../src/node_nfqueue.cpp:148:44: error: expected primary-expression before ‘>’ token
nfqueue* obj = ObjectWrap::Unwrap<nfqueue>(args.This());
^
../src/node_nfqueue.cpp:148:51: error: request for member ‘This’ in ‘args’, which is of non-class type ‘const int’
nfqueue* obj = ObjectWrap::Unwrap<nfqueue>(args.This());
^
../src/node_nfqueue.cpp:150:54: error: invalid types ‘const int[int]’ for array subscript
Handle<Function> cb = Handle<Function>::Cast(args[0]);
^
../src/node_nfqueue.cpp:151:47: error: no matching function for call to ‘v8::Persistent<v8::Function>::New(v8::Handle<v8::Function>&)’
obj->callback = Persistent<Function>::New(cb);
^
../src/node_nfqueue.cpp:151:47: note: candidate is:
In file included from /root/.node-gyp/1.8.4/src/node.h:42:0,
from ../src/node_nfqueue.cpp:20:
/root/.node-gyp/1.8.4/deps/v8/include/v8.h:6481:4: note: static T* v8::PersistentBase<T>::New(v8::Isolate*, T*) [with T = v8::Function]
T* PersistentBase<T>::New(Isolate* isolate, T* that) {
^
/root/.node-gyp/1.8.4/deps/v8/include/v8.h:6481:4: note: candidate expects 2 arguments, 1 provided
../src/node_nfqueue.cpp:154:10: error: ‘struct RecvBaton’ has no member named ‘poll’
baton->poll.data = baton;
^
../src/node_nfqueue.cpp:157:39: error: ‘uv_default_loop’ was not declared in this scope
uv_poll_init_socket(uv_default_loop(), &baton->poll, nfq_fd(obj->handle));
^
../src/node_nfqueue.cpp:157:50: error: ‘struct RecvBaton’ has no member named ‘poll’
uv_poll_init_socket(uv_default_loop(), &baton->poll, nfq_fd(obj->handle));
^
../src/node_nfqueue.cpp:157:75: error: ‘uv_poll_init_socket’ was not declared in this scope
uv_poll_init_socket(uv_default_loop(), &baton->poll, nfq_fd(obj->handle));
^
../src/node_nfqueue.cpp:158:25: error: ‘struct RecvBaton’ has no member named ‘poll’
uv_poll_start(&baton->poll, UV_READABLE, PollAsync);
^
../src/node_nfqueue.cpp:158:31: error: ‘UV_READABLE’ was not declared in this scope
uv_poll_start(&baton->poll, UV_READABLE, PollAsync);
^
../src/node_nfqueue.cpp:158:53: error: ‘uv_poll_start’ was not declared in this scope
uv_poll_start(&baton->poll, UV_READABLE, PollAsync);
^
../src/node_nfqueue.cpp:160:20: error: too few arguments to function ‘v8::Handle<v8::Primitive> v8::Undefined(v8::Isolate*)’
return Undefined();
^
In file included from /root/.node-gyp/1.8.4/src/node.h:42:0,
from ../src/node_nfqueue.cpp:20:
/root/.node-gyp/1.8.4/deps/v8/include/v8.h:324:28: note: declared here
friend Handle<Primitive> Undefined(Isolate* isolate);
^
../src/node_nfqueue.cpp: At global scope:
../src/node_nfqueue.cpp:163:25: error: variable or field ‘PollAsync’ declared void
void nfqueue::PollAsync(uv_poll_t* handle, int status, int events) {
^
../src/node_nfqueue.cpp:163:25: error: ‘uv_poll_t’ was not declared in this scope
../src/node_nfqueue.cpp:163:36: error: ‘handle’ was not declared in this scope
void nfqueue::PollAsync(uv_poll_t* handle, int status, int events) {
^
../src/node_nfqueue.cpp:163:44: error: expected primary-expression before ‘int’
void nfqueue::PollAsync(uv_poll_t* handle, int status, int events) {
^
../src/node_nfqueue.cpp:163:56: error: expected primary-expression before ‘int’
void nfqueue::PollAsync(uv_poll_t* handle, int status, int events) {
^
../src/node_nfqueue.cpp: In static member function ‘static int nfqueue::nf_callback(nfq_q_handle*, nfgenmsg*, nfq_data*, void*)’:
../src/node_nfqueue.cpp:195:33: error: no matching function for call to ‘v8::Object::New()’
Local<Object> p = Object::New();
^
../src/node_nfqueue.cpp:195:33: note: candidate is:
In file included from /root/.node-gyp/1.8.4/src/node.h:42:0,
from ../src/node_nfqueue.cpp:20:
/root/.node-gyp/1.8.4/deps/v8/include/v8.h:2710:24: note: static v8::Local<v8::Object> v8::Object::New(v8::Isolate*)
static Local<Object> New(Isolate* isolate);
^
/root/.node-gyp/1.8.4/deps/v8/include/v8.h:2710:24: note: candidate expects 1 argument, 0 provided
../src/node_nfqueue.cpp:196:10: error: ‘NewSymbol’ is not a member of ‘v8::String’
p->Set(String::NewSymbol("len"), Number::New(payload_len));
^
../src/node_nfqueue.cpp:196:59: error: no matching function for call to ‘v8::Number::New(int&)’
p->Set(String::NewSymbol("len"), Number::New(payload_len));
^
../src/node_nfqueue.cpp:196:59: note: candidate is:
In file included from /root/.node-gyp/1.8.4/src/node.h:42:0,
from ../src/node_nfqueue.cpp:20:
/root/.node-gyp/1.8.4/deps/v8/include/v8.h:2310:24: note: static v8::Local<v8::Number> v8::Number::New(v8::Isolate*, double)
static Local<Number> New(Isolate* isolate, double value);
^
/root/.node-gyp/1.8.4/deps/v8/include/v8.h:2310:24: note: candidate expects 2 arguments, 1 provided
../src/node_nfqueue.cpp:197:10: error: ‘NewSymbol’ is not a member of ‘v8::String’
p->Set(String::NewSymbol("id"), Number::New(id));
^
../src/node_nfqueue.cpp:197:49: error: no matching function for call to ‘v8::Number::New(int&)’
p->Set(String::NewSymbol("id"), Number::New(id));
^
../src/node_nfqueue.cpp:197:49: note: candidate is:
In file included from /root/.node-gyp/1.8.4/src/node.h:42:0,
from ../src/node_nfqueue.cpp:20:
/root/.node-gyp/1.8.4/deps/v8/include/v8.h:2310:24: note: static v8::Local<v8::Number> v8::Number::New(v8::Isolate*, double)
static Local<Number> New(Isolate* isolate, double value);
^
/root/.node-gyp/1.8.4/deps/v8/include/v8.h:2310:24: note: candidate expects 2 arguments, 1 provided
../src/node_nfqueue.cpp:198:10: error: ‘NewSymbol’ is not a member of ‘v8::String’
p->Set(String::NewSymbol("nfmark"), Number::New(nfq_get_nfmark(nfad)));
^
../src/node_nfqueue.cpp:198:71: error: no matching function for call to ‘v8::Number::New(u_int32_t)’
p->Set(String::NewSymbol("nfmark"), Number::New(nfq_get_nfmark(nfad)));
^
../src/node_nfqueue.cpp:198:71: note: candidate is:
In file included from /root/.node-gyp/1.8.4/src/node.h:42:0,
from ../src/node_nfqueue.cpp:20:
/root/.node-gyp/1.8.4/deps/v8/include/v8.h:2310:24: note: static v8::Local<v8::Number> v8::Number::New(v8::Isolate*, double)
static Local<Number> New(Isolate* isolate, double value);
^
/root/.node-gyp/1.8.4/deps/v8/include/v8.h:2310:24: note: candidate expects 2 arguments, 1 provided
../src/node_nfqueue.cpp:200:12: error: ‘NewSymbol’ is not a member of ‘v8::String’
p->Set(String::NewSymbol("timestamp"), Number::New(tv.tv_sec));
^
../src/node_nfqueue.cpp:200:65: error: no matching function for call to ‘v8::Number::New(__time_t&)’
p->Set(String::NewSymbol("timestamp"), Number::New(tv.tv_sec));
^
../src/node_nfqueue.cpp:200:65: note: candidate is:
In file included from /root/.node-gyp/1.8.4/src/node.h:42:0,
from ../src/node_nfqueue.cpp:20:
/root/.node-gyp/1.8.4/deps/v8/include/v8.h:2310:24: note: static v8::Local<v8::Number> v8::Number::New(v8::Isolate*, double)
static Local<Number> New(Isolate* isolate, double value);
^
/root/.node-gyp/1.8.4/deps/v8/include/v8.h:2310:24: note: candidate expects 2 arguments, 1 provided
../src/node_nfqueue.cpp:201:10: error: ‘NewSymbol’ is not a member of ‘v8::String’
p->Set(String::NewSymbol("indev"), Number::New(nfq_get_indev(nfad)));
^
../src/node_nfqueue.cpp:201:69: error: no matching function for call to ‘v8::Number::New(u_int32_t)’
p->Set(String::NewSymbol("indev"), Number::New(nfq_get_indev(nfad)));
^
../src/node_nfqueue.cpp:201:69: note: candidate is:
In file included from /root/.node-gyp/1.8.4/src/node.h:42:0,
from ../src/node_nfqueue.cpp:20:
/root/.node-gyp/1.8.4/deps/v8/include/v8.h:2310:24: note: static v8::Local<v8::Number> v8::Number::New(v8::Isolate*, double)
static Local<Number> New(Isolate* isolate, double value);
^
/root/.node-gyp/1.8.4/deps/v8/include/v8.h:2310:24: note: candidate expects 2 arguments, 1 provided
../src/node_nfqueue.cpp:202:10: error: ‘NewSymbol’ is not a member of ‘v8::String’
p->Set(String::NewSymbol("physindev"), Number::New(nfq_get_physindev(nfad)));
^
../src/node_nfqueue.cpp:202:77: error: no matching function for call to ‘v8::Number::New(u_int32_t)’
p->Set(String::NewSymbol("physindev"), Number::New(nfq_get_physindev(nfad)));
^
../src/node_nfqueue.cpp:202:77: note: candidate is:
In file included from /root/.node-gyp/1.8.4/src/node.h:42:0,
from ../src/node_nfqueue.cpp:20:
/root/.node-gyp/1.8.4/deps/v8/include/v8.h:2310:24: note: static v8::Local<v8::Number> v8::Number::New(v8::Isolate*, double)
static Local<Number> New(Isolate* isolate, double value);
^
/root/.node-gyp/1.8.4/deps/v8/include/v8.h:2310:24: note: candidate expects 2 arguments, 1 provided
../src/node_nfqueue.cpp:203:10: error: ‘NewSymbol’ is not a member of ‘v8::String’
p->Set(String::NewSymbol("outdev"), Number::New(nfq_get_outdev(nfad)));
^
../src/node_nfqueue.cpp:203:71: error: no matching function for call to ‘v8::Number::New(u_int32_t)’
p->Set(String::NewSymbol("outdev"), Number::New(nfq_get_outdev(nfad)));
^
../src/node_nfqueue.cpp:203:71: note: candidate is:
In file included from /root/.node-gyp/1.8.4/src/node.h:42:0,
from ../src/node_nfqueue.cpp:20:
/root/.node-gyp/1.8.4/deps/v8/include/v8.h:2310:24: note: static v8::Local<v8::Number> v8::Number::New(v8::Isolate*, double)
static Local<Number> New(Isolate* isolate, double value);
^
/root/.node-gyp/1.8.4/deps/v8/include/v8.h:2310:24: note: candidate expects 2 arguments, 1 provided
../src/node_nfqueue.cpp:204:10: error: ‘NewSymbol’ is not a member of ‘v8::String’
p->Set(String::NewSymbol("physoutdev"), Number::New(nfq_get_physoutdev(nfad)));
^
../src/node_nfqueue.cpp:204:79: error: no matching function for call to ‘v8::Number::New(u_int32_t)’
p->Set(String::NewSymbol("physoutdev"), Number::New(nfq_get_physoutdev(nfad)));
^
../src/node_nfqueue.cpp:204:79: note: candidate is:
In file included from /root/.node-gyp/1.8.4/src/node.h:42:0,
from ../src/node_nfqueue.cpp:20:
/root/.node-gyp/1.8.4/deps/v8/include/v8.h:2310:24: note: static v8::Local<v8::Number> v8::Number::New(v8::Isolate*, double)
static Local<Number> New(Isolate* isolate, double value);
^
/root/.node-gyp/1.8.4/deps/v8/include/v8.h:2310:24: note: candidate expects 2 arguments, 1 provided
../src/node_nfqueue.cpp:206:10: error: ‘NewSymbol’ is not a member of ‘v8::String’
p->Set(String::NewSymbol("indev_name"), String::New(devname));
^
../src/node_nfqueue.cpp:206:43: error: ‘New’ is not a member of ‘v8::String’
p->Set(String::NewSymbol("indev_name"), String::New(devname));
^
../src/node_nfqueue.cpp:208:10: error: ‘NewSymbol’ is not a member of ‘v8::String’
p->Set(String::NewSymbol("physintdev_name"), String::New(devname));
^
../src/node_nfqueue.cpp:208:48: error: ‘New’ is not a member of ‘v8::String’
p->Set(String::NewSymbol("physintdev_name"), String::New(devname));
^
../src/node_nfqueue.cpp:210:10: error: ‘NewSymbol’ is not a member of ‘v8::String’
p->Set(String::NewSymbol("outdev_name"), String::New(devname));
^
../src/node_nfqueue.cpp:210:44: error: ‘New’ is not a member of ‘v8::String’
p->Set(String::NewSymbol("outdev_name"), String::New(devname));
^
../src/node_nfqueue.cpp:212:10: error: ‘NewSymbol’ is not a member of ‘v8::String’
p->Set(String::NewSymbol("physoutdev_name"), String::New(devname));
^
../src/node_nfqueue.cpp:212:48: error: ‘New’ is not a member of ‘v8::String’
p->Set(String::NewSymbol("physoutdev_name"), String::New(devname));
^
../src/node_nfqueue.cpp:216:37: error: base operand of ‘->’ has non-pointer type ‘v8::Persistent<v8::Function>’
Local<Value> ret = queue->callback->Call(Context::GetCurrent()->Global(), 1, argv);
^
../src/node_nfqueue.cpp:216:44: error: ‘GetCurrent’ is not a member of ‘v8::Context’
Local<Value> ret = queue->callback->Call(Context::GetCurrent()->Global(), 1, argv);
^
../src/node_nfqueue.cpp: At global scope:
../src/node_nfqueue.cpp:221:38: error: ‘Arguments’ does not name a type
Handle<Value> nfqueue::Verdict(const Arguments& args) {
^
../src/node_nfqueue.cpp:221:49: warning: ISO C++ forbids declaration of ‘args’ with no type [-fpermissive]
Handle<Value> nfqueue::Verdict(const Arguments& args) {
^
../src/node_nfqueue.cpp: In static member function ‘static v8::Handle<v8::Value> nfqueue::Verdict(const int&)’:
../src/node_nfqueue.cpp:222:18: error: ‘ObjectWrap’ has not been declared
nfqueue* obj = ObjectWrap::Unwrap<nfqueue>(args.This());
^
../src/node_nfqueue.cpp:222:44: error: expected primary-expression before ‘>’ token
nfqueue* obj = ObjectWrap::Unwrap<nfqueue>(args.This());
^
../src/node_nfqueue.cpp:222:51: error: request for member ‘This’ in ‘args’, which is of non-class type ‘const int’
nfqueue* obj = ObjectWrap::Unwrap<nfqueue>(args.This());
^
../src/node_nfqueue.cpp:226:18: error: request for member ‘Length’ in ‘args’, which is of non-class type ‘const int’
if (!args[args.Length() - 1]->IsNull()) {
^
../src/node_nfqueue.cpp:227:40: error: request for member ‘Length’ in ‘args’, which is of non-class type ‘const int’
Local<Object> buff_obj = args[args.Length() - 1]->ToObject();
^
../src/node_nfqueue.cpp:235:12: error: request for member ‘Length’ in ‘args’, which is of non-class type ‘const int’
if (args.Length() == 3) {
^
../src/node_nfqueue.cpp:236:41: error: invalid types ‘const int[int]’ for array subscript
nfq_set_verdict(obj->qhandle, args[0]->Uint32Value(), args[1]->Uint32Value(), buff_length, buff_data);
^
../src/node_nfqueue.cpp:236:65: error: invalid types ‘const int[int]’ for array subscript
nfq_set_verdict(obj->qhandle, args[0]->Uint32Value(), args[1]->Uint32Value(), buff_length, buff_data);
^
../src/node_nfqueue.cpp:237:19: error: request for member ‘Length’ in ‘args’, which is of non-class type ‘const int’
} else if (args.Length() == 4) {
^
../src/node_nfqueue.cpp:238:42: error: invalid types ‘const int[int]’ for array subscript
nfq_set_verdict2(obj->qhandle, args[0]->Uint32Value(), args[1]->Uint32Value(), args[2]->Uint32Value(), buff_length, buff_data);
^
../src/node_nfqueue.cpp:238:66: error: invalid types ‘const int[int]’ for array subscript
nfq_set_verdict2(obj->qhandle, args[0]->Uint32Value(), args[1]->Uint32Value(), args[2]->Uint32Value(), buff_length, buff_data);
^
../src/node_nfqueue.cpp:238:90: error: invalid types ‘const int[int]’ for array subscript
nfq_set_verdict2(obj->qhandle, args[0]->Uint32Value(), args[1]->Uint32Value(), args[2]->Uint32Value(), buff_length, buff_data);
^
../src/node_nfqueue.cpp:241:20: error: too few arguments to function ‘v8::Handle<v8::Primitive> v8::Undefined(v8::Isolate*)’
return Undefined();
^
In file included from /root/.node-gyp/1.8.4/src/node.h:42:0,
from ../src/node_nfqueue.cpp:20:
/root/.node-gyp/1.8.4/deps/v8/include/v8.h:324:28: note: declared here
friend Handle<Primitive> Undefined(Isolate* isolate);
^
../src/node_nfqueue.cpp: In static member function ‘static v8::Handle<v8::Value> nfqueue::New(const int&)’:
../src/node_nfqueue.cpp:85:1: warning: control reaches end of non-void function [-Wreturn-type]
}
^
../src/node_nfqueue.cpp: In static member function ‘static v8::Handle<v8::Value> nfqueue::Open(const int&)’:
../src/node_nfqueue.cpp:145:1: warning: control reaches end of non-void function [-Wreturn-type]
}
^
../src/node_nfqueue.cpp: In static member function ‘static v8::Handle<v8::Value> nfqueue::Read(const int&)’:
../src/node_nfqueue.cpp:161:1: warning: control reaches end of non-void function [-Wreturn-type]
}
^
../src/node_nfqueue.cpp: In static member function ‘static v8::Handle<v8::Value> nfqueue::Verdict(const int&)’:
../src/node_nfqueue.cpp:242:1: warning: control reaches end of non-void function [-Wreturn-type]
}
^
make: *** [Release/obj.target/nfqueue/src/node_nfqueue.o] Error 1
make: Leaving directory `/root/nfqueue/node_modules/nfqueue/build'
gyp ERR! build error
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack at ChildProcess.onExit (/usr/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:269:23)
gyp ERR! stack at emitTwo (events.js:87:13)
gyp ERR! stack at ChildProcess.emit (events.js:169:7)
gyp ERR! stack at Process.ChildProcess._handle.onexit (child_process.js:1009:12)
gyp ERR! System Linux 3.10.0-229.7.2.el7.x86_64
gyp ERR! command "/usr/bin/iojs" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /root/nfqueue/node_modules/nfqueue
gyp ERR! node -v v1.8.4
gyp ERR! node-gyp -v v1.0.3
gyp ERR! not ok
npm ERR! Linux 3.10.0-229.7.2.el7.x86_64
npm ERR! argv "/usr/bin/iojs" "/usr/bin/npm" "install" "nfqueue"
npm ERR! node v1.8.4
npm ERR! npm v2.9.0
npm ERR! code ELIFECYCLE
npm ERR! [email protected] install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the [email protected] install script 'node-gyp rebuild'.
npm ERR! This is most likely a problem with the nfqueue package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! node-gyp rebuild
npm ERR! You can get their info via:
npm ERR! npm owner ls nfqueue
npm ERR! There is likely additional logging output above.
npm ERR! Please include the following file with any support request:
npm ERR! /root/nfqueue/npm-debug.log