Udiff kadm_host_srv_names.c
--- /net/etna.eng/build7/semery/mit2/webrev/usr/src/lib/krb5/kadm5/kadm_host_srv_names.c- Wed Sep 8 17:00:04 2004
+++ kadm_host_srv_names.c Wed Sep 8 13:40:44 2004
@@ -1,11 +1,11 @@
/*
* Copyright 2004 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
*/
-#pragma ident "@(#)kadm_host_srv_names.c 1.6 04/09/08 SMI"
+#pragma ident "@(#)kadm_host_srv_names.c 1.5 04/03/16 SMI"
/*
* lib/kad5/kadm_host_srv_names.c
*/
@@ -118,5 +118,32 @@
*host_service_name = name;
return (KADM5_OK);
}
+/*
+ * Get the host base service name for the kiprop principal. Returns
+ * KADM5_OK on success. Caller must free the storage allocated
+ * for host_service_name.
+ */
+kadm5_ret_t kadm5_get_kiprop_host_srv_name(krb5_context context,
+ const char *realm,
+ char **host_service_name) {
+ kadm5_ret_t ret;
+ char *name;
+ char *host;
+
+
+ if (ret = kadm5_get_master(context, realm, &host))
+ return (ret);
+
+ name = malloc(strlen(KADM5_KIPROP_HOST_SERVICE) + strlen(host) + 2);
+ if (name == NULL) {
+ free(host);
+ return (ENOMEM);
+ }
+ sprintf(name, "%s@%s", KADM5_KIPROP_HOST_SERVICE, host);
+ free(host);
+ *host_service_name = name;
+
+ return (KADM5_OK);
+}