#include <NetworkNamespaceContext.h>
◆ NetworkNamespaceContext()
| inet::NetworkNamespaceContext::NetworkNamespaceContext |
( |
const char * |
networkNamespace | ) |
|
18 if (networkNamespace !=
nullptr && *networkNamespace !=
'\0') {
20 oldNs = open(
"/proc/self/ns/net", O_RDONLY);
21 std::string namespaceAsString =
"/var/run/netns/";
22 namespaceAsString += networkNamespace;
23 newNs = open(namespaceAsString.c_str(), O_RDONLY);
25 throw cRuntimeError(
"Cannot open network namespace");
26 if (setns(
newNs, 0) == -1)
27 throw cRuntimeError(
"Cannot change network namespace");
29 throw cRuntimeError(
"Network namespaces are only supported on Linux");
◆ ~NetworkNamespaceContext()
| inet::NetworkNamespaceContext::~NetworkNamespaceContext |
( |
| ) |
|
◆ newNs
| int inet::NetworkNamespaceContext::newNs = -1 |
|
protected |
◆ oldNs
| int inet::NetworkNamespaceContext::oldNs = -1 |
|
protected |
The documentation for this class was generated from the following files: