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);
+}