Skip to content

rtnl bug #374

Description

@systemcrash

This documented example does not work as is. Is it because the symbols are exported under .const?

import { error, request, listener, RTM_GETROUTE, RTM_NEWROUTE, RTM_DELROUTE, AF_INET } from 'rtnl';
 
// Send a netlink request
let response = request(RTM_GETROUTE, 0, { family: AF_INET });
 
// Create a listener for route changes
let routeListener = listener((msg) => {
    print('Received route message:', msg, '\n');
}, [RTM_NEWROUTE, RTM_DELROUTE]);

result ❌

Reference error: Module does not export RTM_GETROUTE
In rtnl.uc, line 1, byte 1:

 `import { error, request, listener, RTM_GETROUTE, RTM_NEWROUTE, RTM_DELROUTE, AF_INET } from 'rtnl';`
  ^-- Near here

Changing to:

import * as rtnl from 'rtnl';

// Send a netlink request
let response = rtnl.request(rtnl.const.RTM_GETROUTE, 0, { family: AF_INET });

// Create a listener for route changes
let routeListener = rtnl.listener((msg) => {
    print('Received route message:', msg, '\n');
}, [rtnl.const.RTM_NEWROUTE, rtnl.const.RTM_DELROUTE]);

result OK ✅

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions