def post(self): if self.get_secure_cookie("AuthUsername") == '': self.render("NotPermitted.html") return p= Permission(self.database) original= self.get_argument("original") if p.verifyUserToGuestPermission(self.get_secure_cookie("AuthUsername"), original, 4) == 0: self.redirect('/') return new= self.get_secure_cookie("AuthUsername")+'_'+str(self.get_argument("new")) diskname=conf.images_dir+'/'+new+'.qcow' cmd = "virt-clone -o %s -n %s -f %s --connect=qemu+ssh://127.0.0.1/system " % (original, new, diskname) try: commands.getstatusoutput(cmd) self.cursor.execute("SELECT CreateGuest('%s', '%s')" % (new, self.get_secure_cookie("AuthUsername"))) except: self.database.rollback() else: self.cursor.execute("SELECT CreateGuest('%s', '%s')" % (new, self.get_secure_cookie("AuthUsername"))) self.database.commit() self.redirect('/guest/%s/' % str(new))
def post(self, guest): if self.get_secure_cookie("AuthUsername") == '': self.render("NotPermitted.html") return p= Permission(self.database) guest=urllib.unquote(guest) if p.verifyUserToGuestPermission(self.get_secure_cookie("AuthUsername"), guest, 3) == 0: self.render("NotPermitted.html") return act= self.request.arguments['act'] perm = ['0','0','0','0','0','0','0','0'] for i in act: if i == 'show': perm[7]='1' if i == 'run': perm[6]='1' if i == 'delete': perm[5]='1' if i == 'clone' : perm[4]='1' if i == 'chmod': perm[3]='1' perm= int(''.join(perm),2) user= self.get_argument('user') tmpcursor=self.database.cursor() self.cursor.execute("DELETE FROM acl_g2u WHERE guest='%s' AND username='******'; " % (guest, user)) if perm > 0: tmpcursor.execute("INSERT INTO acl_g2u VALUES ('%s', '%s', %s); " % ( user, guest, str(perm))) self.database.commit() self.redirect('/guest/%s/' % guest)
def get(self, name, disk): if self.get_secure_cookie("AuthUsername") == '': self.render("NotPermitted.html") return p= Permission(self.database) name=urllib.unquote(name) if p.verifyUserToGuestPermission(self.get_secure_cookie("AuthUsername"), name, 6) == 0: self.render("NotPermitted.html") return try: vm = lvconn.lookupByName(name) xml = vm.XMLDesc(1) xml = minidom.parseString(xml) os = xml.getElementsByTagName("os") os= os[0] disks= xml.getElementsByTagName("disk") for dsk in disks: if dsk.getAttribute('device')==disk: disks.removeChild(dsk) print dsk.getAttribute('device') if vm.isActive(): vm.destroy() vm.undefine() new = lvconn.defineXML( xml.toxml()) new.create() except: print("err") pass self.redirect('/guest/'+name+'/')
def get(self, name, disk): if self.get_secure_cookie("AuthUsername") == '': self.render("NotPermitted.html") return p= Permission(self.database) name=urllib.unquote(name) if p.verifyUserToGuestPermission(self.get_secure_cookie("AuthUsername"), name, 6) == 0: self.render("NotPermitted.html") return try: vm = lvconn.lookupByName(name) xml = vm.XMLDesc(1) xml = minidom.parseString(xml) os = xml.getElementsByTagName("os") os= os[0] devices = xml.getElementsByTagName("devices") devices= devices[0] boot = xml.getElementsByTagName("boot") for tmpboot in boot: os.removeChild(tmpboot) boot = xml.createElement("boot") if disk=="disk": disk="hd" boot.setAttribute("dev", disk) os.appendChild(boot) if vm.isActive(): vm.destroy() vm.undefine() new = lvconn.defineXML( xml.toxml()) new.create() except: print("err") pass self.redirect('/guest/'+name+'/')
def get(self, name): if self.get_secure_cookie("AuthUsername") == '': self.render("NotPermitted.html") return p= Permission(self.database) name=urllib.unquote(name) if p.verifyUserToGuestPermission(self.get_secure_cookie("AuthUsername"), name, 3) == 0: self.render("NotPermitted.html") return guest = lvconn.lookupByName(name) guest.destroy() self.redirect("/guest/"+name+"/")
def get(self, name): if self.get_secure_cookie("AuthUsername") == '': self.render("NotPermitted.html") return name=urllib.unquote(name) p= Permission(self.database) if p.verifyUserToGuestPermission(self.get_secure_cookie("AuthUsername"), name, 6) == 0: self.render("NotPermitted.html") return try: vm = lvconn.lookupByName(name) vm.create() state = vm.info()[0] except: state = "0" self.redirect('/guest/'+name+'/')
def get(self, name): if self.get_secure_cookie("AuthUsername") == '': self.render("NotPermitted.html") return p= Permission(self.database) name=urllib.unquote(name) if p.verifyUserToGuestPermission(self.get_secure_cookie("AuthUsername"), name, 5) == 0: self.render("NotPermitted.html") return try: vm = lvconn.lookupByName(name) if vm.isActive(): vm.destroy() vm.undefine() self.cursor.execute("DELETE FROM guest WHERE name = '%s'; " % str(name)) except: self.database.rollback() else: self.database.commit() folder = conf.images_dir cmd = "rm -f %s/%s.qcow " % (folder, name ) commands.getstatusoutput(cmd) self.redirect('/guests/')