Browse Source

os: networkInterfaces include scopeid for ipv6

v0.11.12-release
Xidorn Quan 11 years ago
committed by Timothy J Fontaine
parent
commit
ae02992872
  1. 7
      src/node_os.cc

7
src/node_os.cc

@ -50,6 +50,7 @@ using v8::Context;
using v8::FunctionCallbackInfo; using v8::FunctionCallbackInfo;
using v8::Handle; using v8::Handle;
using v8::HandleScope; using v8::HandleScope;
using v8::Integer;
using v8::Local; using v8::Local;
using v8::Number; using v8::Number;
using v8::Object; using v8::Object;
@ -272,6 +273,12 @@ static void GetInterfaceAddresses(const FunctionCallbackInfo<Value>& args) {
o->Set(FIXED_ONE_BYTE_STRING(node_isolate, "mac"), o->Set(FIXED_ONE_BYTE_STRING(node_isolate, "mac"),
FIXED_ONE_BYTE_STRING(node_isolate, mac)); FIXED_ONE_BYTE_STRING(node_isolate, mac));
if (interfaces[i].address.address4.sin_family == AF_INET6) {
uint32_t scopeid = interfaces[i].address.address6.sin6_scope_id;
o->Set(FIXED_ONE_BYTE_STRING(node_isolate, "scopeid"),
Integer::NewFromUnsigned(scopeid));
}
const bool internal = interfaces[i].is_internal; const bool internal = interfaces[i].is_internal;
o->Set(FIXED_ONE_BYTE_STRING(node_isolate, "internal"), o->Set(FIXED_ONE_BYTE_STRING(node_isolate, "internal"),
internal ? True(node_isolate) : False(node_isolate)); internal ? True(node_isolate) : False(node_isolate));

Loading…
Cancel
Save