diff options
author | Ken Raeburn <raeburn@mit.edu> | 2008-06-23 23:43:27 +0000 |
---|---|---|
committer | Ken Raeburn <raeburn@mit.edu> | 2008-06-23 23:43:27 +0000 |
commit | 52feff78c7fa85b2654809fc0a0844b0c9eb631e (patch) | |
tree | 0ab69c8078ef3275b99a3ad27f3592b607e43f70 | |
parent | fa65fb7978448e8fc6a3d15d7ab937ae83302c8a (diff) | |
download | krb5-sun-iprop.tar.gz |
On failures other than bad parameters in the config file, sleep andsun-iprop
then try again, rather than exiting. This includes the case of not
being able to reach a KDC to get credentials.
git-svn-id: svn://anonsvn.mit.edu/krb5/branches/sun-iprop@20463 dc483132-0cff-0310-8789-dd5450dbe970
-rw-r--r-- | src/slave/kpropd.c | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/src/slave/kpropd.c b/src/slave/kpropd.c index 82de726b5..fd46819a1 100644 --- a/src/slave/kpropd.c +++ b/src/slave/kpropd.c @@ -632,13 +632,21 @@ reinit: (void) sleep(backoff_time); goto reinit; } else { + if (retval == KADM5_BAD_CLIENT_PARAMS || + retval == KADM5_BAD_SERVER_PARAMS) { + com_err(progname, retval, + _("while initializing %s interface"), + progname); + + usage(); + } + reinit_cnt++; com_err(progname, retval, - _("while initializing %s interface"), + _("while initializing %s interface, retrying"), progname); - if (retval == KADM5_BAD_CLIENT_PARAMS || - retval == KADM5_BAD_SERVER_PARAMS) - usage(); - exit(1); + backoff_time = backoff_from_master(&reinit_cnt); + sleep(backoff_time); + goto reinit; } } |