Cdiff kdb5_destroy.c
--- /net/etna.eng/build7/semery/mit2/webrev/usr/src/cmd/krb5/kadmin/dbutil/kdb5_destroy.c- Wed Sep 8 16:59:49 2004
+++ kdb5_destroy.c Wed Sep 8 13:41:04 2004
@@ -1,11 +1,11 @@
/*
* Copyright 2004 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
*/
-#pragma ident "@(#)kdb5_destroy.c 1.8 04/09/08 SMI"
+#pragma ident "@(#)kdb5_destroy.c 1.7 04/05/04 SMI"
/*
* WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING
*
* Openvision retains the copyright to derivative works of
@@ -78,10 +78,11 @@
#include <stdio.h>
#include "com_err.h"
#include <kadm5/admin.h>
#include <kadm5/adb.h>
#include <libintl.h>
+#include "kdb5_util.h"
extern int errno;
extern int exit_status;
extern krb5_boolean dbactive;
extern kadm5_config_params global_params;
@@ -98,10 +99,11 @@
char *dbname;
char buf[5];
char dbfilename[MAXPATHLEN];
krb5_error_code retval, retval1, retval2;
krb5_context context;
+ char ufilename[MAX_FILENAME];
krb5_init_context(&context);
if (strrchr(argv[0], '/'))
argv[0] = strrchr(argv[0], '/')+1;
@@ -166,8 +168,21 @@
gettext("destroying policy database"));
exit_status++;
return;
}
+ if (global_params.iprop_enabled) {
+ if (strlcpy(ufilename, dbname, MAX_FILENAME) >= MAX_FILENAME) {
+ exit_status++;
+ return;
+ }
+ if (strlcat(ufilename, ".ulog", MAX_FILENAME) >= MAX_FILENAME) {
+ exit_status++;
+ return;
+ }
+
+ (void) unlink(ufilename);
+ }
+
dbactive = FALSE;
printf(gettext("** Database '%s' destroyed.\n"), dbname);
}