summaryrefslogtreecommitdiffstats
path: root/install/tools/ipa-server-install
diff options
context:
space:
mode:
authorMartin Kosek <mkosek@redhat.com>2011-10-06 08:22:08 +0200
committerMartin Kosek <mkosek@redhat.com>2011-10-06 08:28:34 +0200
commit45212301f2406be96117e9a7604b95849a57f85b (patch)
treecd219a2e8c575e4642608faf4e2c0df2b28ee0c6 /install/tools/ipa-server-install
parent5de97801aab2e8e4fd41b8ab4e914e6ca0b1f781 (diff)
downloadfreeipa-45212301f2406be96117e9a7604b95849a57f85b.tar.gz
freeipa-45212301f2406be96117e9a7604b95849a57f85b.tar.xz
freeipa-45212301f2406be96117e9a7604b95849a57f85b.zip
Install tools crash when password prompt is interrupted
When getpass.getpass() function is interrupted via CTRL+D, EOFError exception is thrown. Most of the install tools are not prepared for this event and crash with this exception. Make sure that it is handled properly and nice error message is printed. https://fedorahosted.org/freeipa/ticket/1916
Diffstat (limited to 'install/tools/ipa-server-install')
-rwxr-xr-xinstall/tools/ipa-server-install7
1 files changed, 7 insertions, 0 deletions
diff --git a/install/tools/ipa-server-install b/install/tools/ipa-server-install
index cf00d5fac..fe91fe5b7 100755
--- a/install/tools/ipa-server-install
+++ b/install/tools/ipa-server-install
@@ -642,6 +642,8 @@ def main():
# This will override any settings passed in on the cmdline
if ipautil.file_exists(ANSWER_CACHE):
dm_password = read_password("Directory Manager", confirm=False)
+ if dm_password is None:
+ sys.exit("\nDirectory Manager password required")
options._update_loose(read_cache(dm_password))
if options.external_cert_file:
@@ -807,6 +809,9 @@ def main():
if not options.dm_password:
dm_password = read_dm_password()
+
+ if dm_password is None:
+ sys.exit("\nDirectory Manager password required")
else:
dm_password = options.dm_password
@@ -817,6 +822,8 @@ def main():
if not options.admin_password:
admin_password = read_admin_password()
+ if admin_password is None:
+ sys.exit("\nIPA admin password required")
else:
admin_password = options.admin_password