diff --git a/account/mkusercert.in b/account/mkusercert.in
index ab7138e5308594d3826f58e8fcd319c7e4eda1dc..420ad94ccfe36f4968c2d2d175ddd12ae38b74ee 100755
--- a/account/mkusercert.in
+++ b/account/mkusercert.in
@@ -207,7 +207,10 @@ if (defined($options{"c"}) || defined($options{"C"})) {
     if (defined($options{"c"})) {
 	$old_password = $options{"c"};
     }
-    elsif ($target_user->SSLPassPhrase(1, \$old_password) == 0) {
+    elsif ($target_user->SSLPassPhrase(1, \$old_password)) {
+	$old_password = undef;
+    }
+    if (defined($old_password)) {
 	#
 	# Make sure its all escaped since any printable char is allowed.
 	#