From: Steve Muir <smuir@cs.princeton.edu>
Date: Mon, 1 May 2006 21:53:02 +0000 (+0000)
Subject: Fix set_bwlimit() to accept parameters for limit-exempt class
X-Git-Tag: after-util-vserver-0_30_208-revert~21
X-Git-Url: http://git.onelab.eu/?a=commitdiff_plain;h=b9d666083f1c8e88c76bd3a54a59f4d9d6519460;p=util-vserver.git

Fix set_bwlimit() to accept parameters for limit-exempt class
---

diff --git a/python/vserver.py b/python/vserver.py
index f455e60..81e5203 100644
--- a/python/vserver.py
+++ b/python/vserver.py
@@ -105,14 +105,7 @@ class VServer:
         f.write(data)
         f.close()
 
-        # 'copy' original file, rename new to original
-        backup = filename + ".old"
-        try:
-            os.unlink(backup)
-        except OSError, ex:
-            if ex.errno != errno.ENOENT:
-                raise
-        os.link(filename, backup)
+        # replace old file with new
         os.rename(newfile, filename)
 
     def __do_chroot(self):
@@ -213,10 +206,13 @@ class VServer:
         ret = vserverimpl.getrlimit(self.ctx,6)
         return ret
 
-    def set_bwlimit(self, maxrate, minrate = 1, share = None, dev = "eth0"):
+    def set_bwlimit(self, minrate = bwlimit.bwmin, maxrate = None,
+                    exempt_min = None, exempt_max = None,
+                    share = None, dev = "eth0"):
 
-        if maxrate != 0:
-            bwlimit.on(self.ctx, dev, share, minrate, maxrate)
+        if minrate:
+            bwlimit.on(self.ctx, dev, share,
+                       minrate, maxrate, exempt_min, exempt_max)
         else:
             bwlimit.off(self.ctx, dev)