import resource
import vserverimpl
-import cpulimit, bwlimit
+import cpulimit
+import plnode.bwlimit as bwlimit
from vserverimpl import DLIMIT_INF
from vserverimpl import VC_LIM_KEEP
def get_prefix_from_capabilities(self, capabilities, prefix):
split_caps = capabilities.split(',')
- return ",".join(["%s" % (c) for c in split_caps if c.startswith(prefix.upper()) or c.startswith(prefix.lower())])
+ return ",".join(["%s" % (c[len(prefix):]) for c in split_caps if c.startswith(prefix.upper()) or c.startswith(prefix.lower())])
def get_bcaps_from_capabilities(self, capabilities):
return self.get_prefix_from_capabilities(capabilities, "cap_")
for ip in addresses:
vserverimpl.netadd(self.ctx, ip)
- def set_ipaddresses_config(self, addresses):
+ def set_ipaddresses_config(self, addresses, add_loopback=True):
ip_addresses = addresses.split(",")
# add looopback interface
- if not ip_addresses.__contains__("127.0.0.1"):
+ if not ip_addresses.__contains__("127.0.0.1") and add_loopback:
ip_addresses.append("127.0.0.1")
i = 0
# create emtpy nodev files to silent "No device specified for" warnings
self.config.update("interfaces/%d/nodev" % i, "")
i += 1
- while self.config.unset("interfaces/%d/ip" % i) and self.config.update("interfaces/%d/nodev" % i):
+ while self.config.unset("interfaces/%d/ip" % i) and self.config.update("interfaces/%d/nodev" % i, ""):
i += 1
self.set_ipaddresses(ip_addresses)
vm_id = pwd.getpwnam(vm_name)[2]
return ctor(vm_name, vm_id)
-
-
-def close_nonstandard_fds():
- """Close all open file descriptors other than 0, 1, and 2."""
- _SC_OPEN_MAX = 4
- for fd in range(3, os.sysconf(_SC_OPEN_MAX)):
- try: os.close(fd)
- except OSError: pass # most likely an fd that isn't open
-