From: Greg Hudson Date: Wed, 29 Jun 2016 21:12:47 +0000 (-0400) Subject: Add ulog_fini() X-Git-Tag: krb5-1.15-beta1~101 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=eb24cc9ca32998eb370ffd6c93dcf7d62c770e5a;p=thirdparty%2Fkrb5.git Add ulog_fini() Add a function to unmap and free the iprop logging resources attached to a krb5_context. --- diff --git a/src/include/kdb_log.h b/src/include/kdb_log.h index bb0847ca11..25b823674a 100644 --- a/src/include/kdb_log.h +++ b/src/include/kdb_log.h @@ -77,6 +77,7 @@ update_status_t ulog_get_sno_status(krb5_context context, const kdb_last_t *last); krb5_error_code ulog_get_last(krb5_context context, kdb_last_t *last_out); krb5_error_code ulog_set_last(krb5_context context, const kdb_last_t *last); +void ulog_fini(krb5_context context); typedef struct kdb_hlog { uint32_t kdb_hmagic; /* Log header magic # */ diff --git a/src/lib/kdb/kdb_log.c b/src/lib/kdb/kdb_log.c index 99cda59360..766d3002a3 100644 --- a/src/lib/kdb/kdb_log.c +++ b/src/lib/kdb/kdb_log.c @@ -672,3 +672,16 @@ ulog_set_last(krb5_context context, const kdb_last_t *last) unlock_ulog(context); return 0; } + +void +ulog_fini(krb5_context context) +{ + kdb_log_context *log_ctx = context->kdblog_context; + + if (log_ctx == NULL) + return; + if (log_ctx->ulog != NULL) + munmap(log_ctx->ulog, MAXLOGLEN); + free(log_ctx); + context->kdblog_context = NULL; +} diff --git a/src/lib/kdb/libkdb5.exports b/src/lib/kdb/libkdb5.exports index 130f8d830a..f7b3061d4a 100644 --- a/src/lib/kdb/libkdb5.exports +++ b/src/lib/kdb/libkdb5.exports @@ -95,6 +95,7 @@ ulog_free_entries xdr_kdb_last_t xdr_kdb_incr_result_t xdr_kdb_fullresync_result_t +ulog_fini ulog_get_entries ulog_get_last ulog_get_sno_status