]> git.ipfire.org Git - thirdparty/krb5.git/commitdiff
Document kpropd -t and fix it in iprop mode
authorGreg Hudson <ghudson@mit.edu>
Wed, 8 Apr 2015 21:35:56 +0000 (17:35 -0400)
committerGreg Hudson <ghudson@mit.edu>
Mon, 13 Apr 2015 21:48:08 +0000 (17:48 -0400)
If kpropd is asked to run just once, don't exit after starting a full
resync; we want to wait for the fullprop child to process the request,
and then request incremental updates afterwards.  Also don't exit from
do_standalone() in the fullprop child, in case multiple full resyncs
are required to get the database up to date.

Document the -t flag in kpropd.rst.

ticket: 8161

doc/admin/admin_commands/kpropd.rst
src/slave/kpropd.c

index 465d4f52e64d66d8f5d2fb7766878d63d286bd28..5e01e2f14bc1d6f7ef74f7ffcf829a3e8e23cd63 100644 (file)
@@ -15,6 +15,7 @@ SYNOPSIS
 [**-p** *kdb5_util_prog*]
 [**-P** *port*]
 [**-d**]
+[**-t**]
 
 DESCRIPTION
 -----------
@@ -89,6 +90,12 @@ OPTIONS
     it will run in the foreground and print out debugging messages
     during the database propagation.
 
+**-t**
+    In standalone mode without incremental propagation, exit after one
+    dump file is received.  In incremental propagation mode, exit as
+    soon as the database is up to date, or if the master returns an
+    error.
+
 **-P**
     Allow for an alternate port number for kpropd to listen on.  This
     is only useful in combination with the **-S** option.
index 1bac58e2a1a97a72bef42d13d7f86bccb0dd472e..13831560b760564e3ae13c7341a80177473a9dff 100644 (file)
@@ -444,7 +444,7 @@ do_standalone()
              * process that it should poll for incremental updates. */
             if (fullprop_child == 0)
                 kill(getppid(), SIGUSR1);
-            if (runonce)
+            else if (runonce)
                 exit(0);
         }
     }
@@ -963,7 +963,7 @@ reinit:
             break;
         }
 
-        if (runonce == 1)
+        if (runonce == 1 && incr_ret->ret != UPDATE_FULL_RESYNC_NEEDED)
             goto done;
 
         /*