summaryrefslogtreecommitdiffstats
path: root/src/util
diff options
context:
space:
mode:
authorGreg Hudson <ghudson@mit.edu>2013-09-28 14:56:22 -0400
committerGreg Hudson <ghudson@mit.edu>2013-09-28 14:57:18 -0400
commit1f1b76ab8937c2cb0273cc5d8a7ee806240e1879 (patch)
tree879d363dcb4b36abf40639f8eaff1a4cb96ffc31 /src/util
parentd7b94742daae85329067b126d0a4bc5b2ea7e4a0 (diff)
downloadkrb5-1f1b76ab8937c2cb0273cc5d8a7ee806240e1879.tar.gz
krb5-1f1b76ab8937c2cb0273cc5d8a7ee806240e1879.tar.xz
krb5-1f1b76ab8937c2cb0273cc5d8a7ee806240e1879.zip
Add "which" function to k5test
Add a utility function in k5test.py to look for a command in the executable path, and remove it from t_kdb.py.
Diffstat (limited to 'src/util')
-rw-r--r--src/util/k5test.py13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/util/k5test.py b/src/util/k5test.py
index 017aa0c7fb..aead832177 100644
--- a/src/util/k5test.py
+++ b/src/util/k5test.py
@@ -133,6 +133,9 @@ Scripts may use the following functions and variables:
added newline) in testlog, and write it to stdout if running
verbosely.
+* which(progname): Return the location of progname in the executable
+ path, or None if it is not found.
+
* password(name): Return a weakly random password based on name. The
password will be consistent across calls with the same name.
@@ -371,6 +374,16 @@ def output(msg, force_verbose=False):
sys.stdout.write(msg)
+# Return the location of progname in the executable path, or None if
+# it is not found.
+def which(progname):
+ for dir in os.environ["PATH"].split(os.pathsep):
+ path = os.path.join(dir, progname)
+ if os.access(path, os.X_OK):
+ return path
+ return None
+
+
def password(name):
"""Choose a weakly random password from name, consistent across calls."""
return name + str(os.getpid())