for connected embedded systems
![]() |
![]() |
![]() |
![]() |
npm-qnet-compat.so
Native QNX Neutrino network manager -- backward-compatible version
![]() |
This manager is going to be deprecated in future editions. It's currently included because it's compatible with QNX Neutrino 6.2. |
Syntax:
io-net ... -p qnet [option[,option]...]
Options:
![]() |
Use commas (,) to separate the options (not spaces). |
- align_fault=enX
- Overwrite Qnet's misaligned-access detection. The value of X is
one of:
- 1
- Don't allow misaligned access.
- -1
- Allow misaligned access.
- bind=en[X]|ip[X]
- Encapsulate the Qnet packet into an ip or ethernet packet. By default, Qnet uses bind=en. If you specify a full interface name (e.g. bind=en0), then only that interface is used.
- host=hostname
- Change the hostname of the machine.
- mapany=map_uid
- Map any incoming user ID to map_uid and map its group ID to the group ID of map_uid.
- maproot=map_uid
- If the incoming user ID is 0, map it to map_uid and map its group ID to the group ID of map_uid.
- mount=directory[:[.]domain]
- A network directory. The default directory is /net. The default domain is either the hostname domain, if it has one, or the directory with the slashes changed to dots and reversed. For example, /net/outside/canada has a domain of canada.outside.net. The first mount is the default directory and domain that the local hostname will resolve to.
- padding=n
- Add n padding bytes between the link layer header and the Qnet packet header, to make the packet (and its payload) aligned. All nodes in the network running npm-qnet-compat.so must specify the same option argument in order to communicate. Default is no padding (padding=0).
- resolve=resolver[:resolver_parameter]
- Add to the resolver list for mountpoints that follow.
The following values for resolver are built into the network manager:
- ndp -- Node Discovery Protocol for broadcasting name resolution requests on the LAN (similar to the TCP/IP ARP protocol). This is the default.
- dns -- Take the node name, add a dot (.) followed by the node domain, and send the result to the TCP/IP gethostbyname() function.
- file -- The optional resolver_parameter is
the name of the file to use; the default is /etc/qnet_hosts.
The format of the file is:
#comment ... This is a comment line host.domain addr1[,addr2] ......
The host.domain represents a QNET FQDN. The addr1 (and optional addr2) are the interface addresses for the FQDN. For bind=en QNET, the format of an address is xx:xx:xx:xx:xx:xx (the MAC address); for bind=ip QNET, the format of an address is a.b.c.d in IP dotted notation.
If you specify something else for resolver, Qnet attempts to load nr-resolver.so. The default name resolver is ndp. For queries how to create nr-resolver.so, please contact QNX support.
Description:
The npm-qnet-compat.so interface implements native QNX Neutrino networking. It's the original Qnet stack.
If you want to use this version of Qnet, make /lib/dll/npm-qnet.so a symbolic link to npm-qnet-compat.so. By default, npm-qnet.so is a symbolic link to npm-qnet-l4_lite.so.
![]() |
When you specify two or more resolve= options
in a series, the resolvers form a list of lookups for the
directory specified in the subsequent mount=
options.
You may notice that the list of resolvers is terminated by a mount= option. Any resolve= options placed after a mount= option form a new list -- they don't add to the previous list. For example, the following line: resolve=a,resolve=b,mount=x,mount=y,resolve=c,mount=z specifies that:
|
Files:
- /dev/io-net
- The directory where, by default, drivers and protocol modules add entries. For more information, the documentation for io-net.
- /etc/system/config/useqnet
- If this file exists, your system is using the default startup files, and io-net is running when your system starts up, the system automatically loads the Qnet module that /lib/dll/npm-qnet.so points to (npm-qnet-l4_lite.so by default). For more information, see the Controlling How Neutrino Starts chapter of the Neutrino User's Guide.
Caveats:
Qnet doesn't support networking processors of different endianness. If you need cross-endian file access, consider using NFS.
Don't use the options bind=en and resolve=dns together; that combination is invalid.
See also:
io-net, npm-qnet.so, npm-qnet-l4_lite.so
"Network drivers (devn-*)" and "Network protocol modules (npm-*)" in the Utilities Summary
Using Qnet for Transparent Distributed Processing in the Neutrino User's Guide
Native Networking (Qnet) in System Architecture
Transparent Distributed Processing Using Qnet in the Neutrino Programmer's Guide
![]() |
![]() |
![]() |
![]() |

![[Previous]](../prev.gif)
![[Contents]](../contents.gif)
![[Index]](../keyword_index.gif)
![[Next]](../next.gif)
