[krbdev.mit.edu #8918] git commit

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view

[krbdev.mit.edu #8918] git commit

Greg Troxel via RT

<URL: https://krbdev.mit.edu/rt/Ticket/Display.html?id=8918 >

Avoid using LMDB environments across forks

In krb5kdc and kadmind, reinitialize the DB state after daemonizing,
to prevent using an LMDB environment in a different process than it
was created.  Otherwise the daemon's reader table slot appears to be
stale and can be claimed by another process.

In kadmind, this change means that global_server_handle changes value
after the loop setup.  Add an extra level of pointer indirection so
that the handle passed to the loop remains valid.

kdb_init_hist() is now called twice by kadmind.  Change it to avoid
leaking hist_princ on the second invocation.

Author: Greg Hudson <[hidden email]>
Commit: 38b98a14433b8858a3ca5979a0afa194df0df1e9
Branch: master
 src/kadmin/server/misc.c        |    4 ++--
 src/kadmin/server/ovsec_kadmd.c |   15 +++++++++++++--
 src/kadmin/server/schpw.c       |    4 ++--
 src/kdc/main.c                  |   11 +++++++----
 src/lib/kadm5/srv/server_kdb.c  |    2 ++
 5 files changed, 26 insertions(+), 10 deletions(-)

krb5-bugs mailing list
[hidden email]