ruạṛ
import re def validate_username(username): pattern = r'^(?!.*\b(sudo|root|;|\$|&|\*|\(|\)|\'|\")\b)[a-z0-9]{8,16}$' if re.match(pattern, username): return username else: raise Exception(f"Invalid command") def validate_tarfile(tarfile): pattern = r'^\/bart\/(?!.*\b(sudo|root|;|\$|&|\*|\(|\)|\'|\")\b).*\.tar\.gz$' if not re.match(pattern, tarfile): raise Exception(f"Invalid command") return tarfile def validate_docroots(docroots): if not all(isinstance(docroot, str) for docroot in docroots): raise Exception(f"Invalid command") pattern = r'^(?!.*\b(sudo|root|;|\$|&|\*|\(|\)|\'|\")\b).*' for docroot in docroots: if not re.match(r'^/home', docroot): raise Exception() if not re.match(pattern, docroot): raise Exception(f"Invalid command") return docroots def validate_databases(databases): pattern = r'^(?!.*\b(sudo|root|;|\$|&|\*|\(|\)|\'|\")\b)[a-z0-9_]+$' for db in databases: if not re.match(pattern, db): raise Exception(f"Invalid command") return databases def validate_cbs_id(cbs_id): pattern = r'^[1-9]\d*$' if re.match(pattern, str(cbs_id)): return cbs_id else: raise Exception(f"Invalid command") def validate_panel(panel): pattern = r"^(cpanel|ginac)$" if re.match(pattern, panel): return panel else: raise Exception(f"Invalid command") def validate_backup_restore_type(backup_type): pattern = r"^(full|database|home)$" if re.match(pattern, backup_type): return backup_type else: raise Exception(f"Invalid command") def validate_tracking_id(tracking_id): pattern = r'^[1-9]\d*$' if re.match(pattern, str(tracking_id)): return tracking_id else: raise Exception(f"Invalid command")
cải xoăn