Exemple #1
0
 def do(self, args):
     if args.operate == "add" or args.operate == "a":
         password = Password()
         password.mark = str(args.mark)
         if args.url:
             password.url = str(args.url)
         if args.intro:
             password.intro = str(args.intro)
         if args.release:
             password.version = int(args.release)
         if args.length:
             password.length = int(args.length)
         if args.type:
             password.type = args.type
         if args.no_password or self.config.get("option", "add_without_mpw") == "1":
             self.daemon.add(password)
             return
         master_password = getpass.getpass("Please input your master password:"******"option", "mpw_check") == "1":
             if self.daemon.check_master_password(master_password) != 1:
                 print("Master Password Error. Please check or set your master password.")
                 return
         pw_id = self.daemon.add(password)
         result = self.daemon.get(master_password, [pw_id])
         self.print_password(result)
         return
     if args.operate == "del" or args.operate == "d":
         self.daemon.remove(args.id)
         return
     if args.operate == "ls" or args.operate == "l":
         if not args.mark:
             keyword = ""
         else:
             keyword = args.mark
         passwords = self.daemon.search(keyword)
         passwords = self.daemon.get("", [value.id for value in passwords])
         self.print_password(passwords, keyword, False)
         return
     if args.operate == "get" or args.operate == "g":
         master_password = getpass.getpass("Please input your master password:"******"option", "mpw_check") == "1":
             if self.daemon.check_master_password(master_password) != 1:
                 print("Master Password Error. Please check or set your master password.")
                 return
         if not args.mark:
             keyword = ""
         else:
             keyword = args.mark
         passwords = self.daemon.search(keyword)
         passwords = self.daemon.get(master_password, [value.id for value in passwords])
         self.print_password(passwords, keyword, True)
         return
     if not args.operate:
         if args.set_master_password:
             master_password = getpass.getpass("Please input your master password:"******"Please retype your master password:"******"Password didn't match. Please try again.")
                 return
             self.daemon.generate_master_password_check(master_password)
         return