diff options
author | CoprDistGit <infra@openeuler.org> | 2024-08-05 02:45:17 +0000 |
---|---|---|
committer | CoprDistGit <infra@openeuler.org> | 2024-08-05 02:45:17 +0000 |
commit | 92ff4cdf8c84e91584dd6076aa5b3c774ab0a622 (patch) | |
tree | 6ba01d84d85f00b380477077d920c341c3570b09 /hplip-check-userperms.patch | |
parent | d8ce4006ffe8011c16c265205aa330c52a0de0c1 (diff) |
automatic import of hplipopeneuler24.03_LTS
Diffstat (limited to 'hplip-check-userperms.patch')
-rw-r--r-- | hplip-check-userperms.patch | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/hplip-check-userperms.patch b/hplip-check-userperms.patch new file mode 100644 index 0000000..9204c0b --- /dev/null +++ b/hplip-check-userperms.patch @@ -0,0 +1,33 @@ +diff --git a/base/password.py b/base/password.py +index bd68f2a..bff9f80 100644 +--- a/base/password.py ++++ b/base/password.py +@@ -157,6 +157,28 @@ class Password(object): + log.warn("%s distro is not found in AUTH_TYPES" % distro_name) + self.__authType = 'su' + ++ # check if caller is in wheel group - use 'su' if he isnt - ++ # or if the caller is root (just for showing 'root' username) ++ # in the prompt ++ import os ++ from grp import getgrnam ++ ++ user = os.getenv('USER') ++ ++ try: ++ members = getgrnam('wheel').gr_mem ++ except KeyError: ++ try: ++ members = getgrnam('sudo').gr_mem ++ except: ++ return ++ ++ if user in members: ++ self.__authType = 'sudo' ++ else: ++ self.__authType = 'su' ++ ++ + def __getPasswordDisplayString(self): + if self.__authType == "su": + return "Please enter the root/superuser password: " |