From: Greg Hudson Date: Fri, 22 Mar 2013 20:00:48 +0000 (-0400) Subject: Get rid of krb5_{get,free}_krbhst X-Git-Tag: krb5-1.12-alpha1~257 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=81fde7e475b02986c1aff88766cc48882004d5dc;p=thirdparty%2Fkrb5.git Get rid of krb5_{get,free}_krbhst These functions were always internal. They haven't been used since v5passwdd was eliminated in krb5 1.4. --- diff --git a/src/include/k5-int.h b/src/include/k5-int.h index cb8350f2d4..ed9f255a72 100644 --- a/src/include/k5-int.h +++ b/src/include/k5-int.h @@ -570,8 +570,6 @@ krb5_error_code krb5_unlock_file(krb5_context, int); krb5_error_code krb5_sendto_kdc(krb5_context, const krb5_data *, const krb5_data *, krb5_data *, int *, int); -krb5_error_code krb5_get_krbhst(krb5_context, const krb5_data *, char *** ); -krb5_error_code krb5_free_krbhst(krb5_context, char * const * ); krb5_error_code krb5_create_secure_file(krb5_context, const char * pathname); krb5_error_code krb5_sync_disk_file(krb5_context, FILE *fp); diff --git a/src/lib/krb5/libkrb5.exports b/src/lib/krb5/libkrb5.exports index 1656cfc502..de41959151 100644 --- a/src/lib/krb5/libkrb5.exports +++ b/src/lib/krb5/libkrb5.exports @@ -304,7 +304,6 @@ krb5_free_kdc_req krb5_free_keyblock krb5_free_keyblock_contents krb5_free_keytab_entry_contents -krb5_free_krbhst krb5_free_last_req krb5_free_octet_data krb5_free_pa_data @@ -376,7 +375,6 @@ krb5_get_init_creds_opt_set_responder krb5_get_init_creds_opt_set_salt krb5_get_init_creds_opt_set_tkt_life krb5_get_init_creds_password -krb5_get_krbhst krb5_get_notification_message krb5_get_permitted_enctypes krb5_get_profile diff --git a/src/lib/krb5/os/Makefile.in b/src/lib/krb5/os/Makefile.in index d95ece00b7..f013899bbd 100644 --- a/src/lib/krb5/os/Makefile.in +++ b/src/lib/krb5/os/Makefile.in @@ -22,9 +22,7 @@ STLIBOBJS= \ dnsglue.o \ dnssrv.o \ expand_path.o \ - free_krbhs.o \ full_ipadr.o \ - get_krbhst.o \ gen_port.o \ genaddrs.o \ gen_rname.o \ @@ -69,9 +67,7 @@ OBJS= \ $(OUTPRE)dnsglue.$(OBJEXT) \ $(OUTPRE)dnssrv.$(OBJEXT) \ $(OUTPRE)expand_path.$(OBJEXT) \ - $(OUTPRE)free_krbhs.$(OBJEXT) \ $(OUTPRE)full_ipadr.$(OBJEXT) \ - $(OUTPRE)get_krbhst.$(OBJEXT) \ $(OUTPRE)gen_port.$(OBJEXT) \ $(OUTPRE)genaddrs.$(OBJEXT) \ $(OUTPRE)gen_rname.$(OBJEXT) \ @@ -116,9 +112,7 @@ SRCS= \ $(srcdir)/dnsglue.c \ $(srcdir)/dnssrv.c \ $(srcdir)/expand_path.c \ - $(srcdir)/free_krbhs.c \ $(srcdir)/full_ipadr.c \ - $(srcdir)/get_krbhst.c \ $(srcdir)/gen_port.c \ $(srcdir)/genaddrs.c \ $(srcdir)/gen_rname.c \ @@ -205,7 +199,6 @@ check-unix:: check-unix-stdconf check-unix-locate check-unix-trace \ check-unix-stdconf:: t_std_conf KRB5_CONFIG=$(srcdir)/td_krb5.conf ; export KRB5_CONFIG ;\ $(KRB5_RUN_ENV) $(VALGRIND) ./t_std_conf -d -s NEW.DEFAULT.REALM -d \ - -k IGGY.ORG -k DEFAULT_REALM.TST \ -D DEFAULT_REALM.TST -r bad.idea -r itar.bad.idea \ -r really.BAD.IDEA. -r clipper.bad.idea -r KeYEsCrOW.BaD.IDea \ -r pgp.good.idea -r no_domain > test.out diff --git a/src/lib/krb5/os/free_krbhs.c b/src/lib/krb5/os/free_krbhs.c deleted file mode 100644 index 58a6c438fd..0000000000 --- a/src/lib/krb5/os/free_krbhs.c +++ /dev/null @@ -1,41 +0,0 @@ -/* -*- mode: c; c-basic-offset: 4; indent-tabs-mode: nil -*- */ -/* lib/krb5/os/free_krbhs.c */ -/* - * Copyright 1990,1991 by the Massachusetts Institute of Technology. - * All Rights Reserved. - * - * Export of this software from the United States of America may - * require a specific license from the United States Government. - * It is the responsibility of any person or organization contemplating - * export to obtain such a license before exporting. - * - * WITHIN THAT CONSTRAINT, permission to use, copy, modify, and - * distribute this software and its documentation for any purpose and - * without fee is hereby granted, provided that the above copyright - * notice appear in all copies and that both that copyright notice and - * this permission notice appear in supporting documentation, and that - * the name of M.I.T. not be used in advertising or publicity pertaining - * to distribution of the software without specific, written prior - * permission. Furthermore if you modify this software you must label - * your software as modified software and not distribute it in such a - * fashion that it might be confused with the original M.I.T. software. - * M.I.T. makes no representations about the suitability of - * this software for any purpose. It is provided "as is" without express - * or implied warranty. - */ - -#include "k5-int.h" - -/* Free the storage taken by a host list returned by krb5_get_krbhst. */ -krb5_error_code -krb5_free_krbhst(krb5_context context, char *const *hostlist) -{ - register char * const *cp; - - if (hostlist == NULL) - return 0; - for (cp = hostlist; *cp; cp++) - free(*cp); - free((char *)hostlist); - return 0; -} diff --git a/src/lib/krb5/os/get_krbhst.c b/src/lib/krb5/os/get_krbhst.c deleted file mode 100644 index d607366194..0000000000 --- a/src/lib/krb5/os/get_krbhst.c +++ /dev/null @@ -1,121 +0,0 @@ -/* -*- mode: c; c-basic-offset: 4; indent-tabs-mode: nil -*- */ -/* lib/krb5/os/get_krbhst.c */ -/* - * Copyright 1990,1991 by the Massachusetts Institute of Technology. - * All Rights Reserved. - * - * Export of this software from the United States of America may - * require a specific license from the United States Government. - * It is the responsibility of any person or organization contemplating - * export to obtain such a license before exporting. - * - * WITHIN THAT CONSTRAINT, permission to use, copy, modify, and - * distribute this software and its documentation for any purpose and - * without fee is hereby granted, provided that the above copyright - * notice appear in all copies and that both that copyright notice and - * this permission notice appear in supporting documentation, and that - * the name of M.I.T. not be used in advertising or publicity pertaining - * to distribution of the software without specific, written prior - * permission. Furthermore if you modify this software you must label - * your software as modified software and not distribute it in such a - * fashion that it might be confused with the original M.I.T. software. - * M.I.T. makes no representations about the suitability of - * this software for any purpose. It is provided "as is" without express - * or implied warranty. - */ - -#include "k5-int.h" -#include -#include - -/* - Figures out the Kerberos server names for the given realm, filling in a - pointer to an argv[] style list of names, terminated with a null pointer. - - If the realm is unknown, the filled-in pointer is set to NULL. - - The pointer array and strings pointed to are all in allocated storage, - and should be freed by the caller when finished. - - returns system errors -*/ - -/* - * Implementation: the server names for given realms are stored in a - * configuration file, - * named by krb5_config_file; the first token (on the first line) in - * this file is taken as the default local realm name. - * - * Each succeeding line has a realm name as the first token, and a server name - * as a second token. Additional tokens may be present on the line, but - * are ignored by this function. - * - * All lines which begin with the desired realm name will have the - * hostname added to the list returned. - */ - -krb5_error_code -krb5_get_krbhst(krb5_context context, const krb5_data *realm, char ***hostlist) -{ - char **values, **cpp, *cp; - const char *realm_kdc_names[4]; - krb5_error_code retval; - int i, count; - char **rethosts; - - rethosts = 0; - - realm_kdc_names[0] = KRB5_CONF_REALMS; - realm_kdc_names[1] = realm->data; - realm_kdc_names[2] = KRB5_CONF_KDC; - realm_kdc_names[3] = 0; - - if (context->profile == 0) - return KRB5_CONFIG_CANTOPEN; - - retval = profile_get_values(context->profile, realm_kdc_names, &values); - if (retval == PROF_NO_SECTION) - return KRB5_REALM_UNKNOWN; - if (retval == PROF_NO_RELATION) - return KRB5_CONFIG_BADFORMAT; - if (retval) - return retval; - - /* - * Do cleanup over the list. We allow for some extra field to be - * added to the kdc line later (maybe the port number) - */ - for (cpp = values; *cpp; cpp++) { - cp = strchr(*cpp, ' '); - if (cp) - *cp = 0; - cp = strchr(*cpp, '\t'); - if (cp) - *cp = 0; - cp = strchr(*cpp, ':'); - if (cp) - *cp = 0; - } - count = cpp - values; - rethosts = malloc(sizeof(char *) * (count + 1)); - if (!rethosts) { - retval = ENOMEM; - goto cleanup; - } - for (i = 0; i < count; i++) { - rethosts[i] = k5memdup0(values[i], strlen(values[i]), &retval); - if (rethosts[i] == NULL) - goto cleanup; - } - rethosts[count] = 0; -cleanup: - if (retval && rethosts) { - for (cpp = rethosts; *cpp; cpp++) - free(*cpp); - free(rethosts); - rethosts = 0; - } - profile_free_list(values); - *hostlist = rethosts; - return retval; -} diff --git a/src/lib/krb5/os/hst_realm.c b/src/lib/krb5/os/hst_realm.c index 7bfce5ef9e..599823ef4b 100644 --- a/src/lib/krb5/os/hst_realm.c +++ b/src/lib/krb5/os/hst_realm.c @@ -489,6 +489,12 @@ cleanup: krb5_error_code KRB5_CALLCONV krb5_free_host_realm(krb5_context context, char *const *realmlist) { - /* same format, so why duplicate code? */ - return krb5_free_krbhst(context, realmlist); + char *const *cp; + + if (realmlist == NULL) + return 0; + for (cp = realmlist; *cp; cp++) + free(*cp); + free((char *)realmlist); + return 0; } diff --git a/src/lib/krb5/os/ref_std_conf.out b/src/lib/krb5/os/ref_std_conf.out index 96349468c5..1e8f5fb91d 100644 --- a/src/lib/krb5/os/ref_std_conf.out +++ b/src/lib/krb5/os/ref_std_conf.out @@ -1,8 +1,6 @@ krb5_get_default_realm() returned 'DEFAULT.REALM.TST' krb5_set_default_realm(NEW.DEFAULT.REALM) krb5_get_default_realm() returned 'NEW.DEFAULT.REALM' -krb_get_krbhst(IGGY.ORG) returned: 'KERBEROS.IGGY.ORG' 'KERBEROS-B.IGGY.ORG' -krb_get_krbhst(DEFAULT_REALM.TST) returned: 'FIRST.KDC.HOST' 'SECOND.KDC.HOST' krb5_get_realm_domain(DEFAULT_REALM.TST) returned 'MIT.EDU' krb_get_host_realm(bad.idea) returned: 'US.GOV' krb_get_host_realm(itar.bad.idea) returned: 'NSA.GOV' diff --git a/src/lib/krb5/os/t_std_conf.c b/src/lib/krb5/os/t_std_conf.c index 74987b1573..e2ff5729ad 100644 --- a/src/lib/krb5/os/t_std_conf.c +++ b/src/lib/krb5/os/t_std_conf.c @@ -71,37 +71,6 @@ test_set_default_ccname(krb5_context ctx, char *ccname) printf("krb5_set_default_ccname(%s)\n", ccname); } -static void -test_get_krbhst(krb5_context ctx, char *realm) -{ - char **hostlist, **cpp; - krb5_data rlm; - krb5_error_code retval; - - rlm.data = realm; - rlm.length = strlen(realm); - retval = krb5_get_krbhst(ctx, &rlm, &hostlist); - if (retval) { - com_err("krb5_get_krbhst", retval, 0); - return; - } - printf("krb_get_krbhst(%s) returned:", realm); - if (hostlist == 0) { - printf(" (null)\n"); - return; - } - if (hostlist[0] == 0) { - printf(" (none)\n"); - krb5_free_krbhst(ctx, hostlist); - return; - } - for (cpp = hostlist; *cpp; cpp++) { - printf(" '%s'", *cpp); - } - krb5_free_krbhst(ctx, hostlist); - printf("\n"); -} - static void test_locate_kdc(krb5_context ctx, char *realm) { @@ -221,7 +190,7 @@ main(int argc, char **argv) exit(1); } - while ((c = getopt(argc, argv, "cdk:r:C:D:l:s:")) != -1) { + while ((c = getopt(argc, argv, "cdr:C:D:l:s:")) != -1) { switch (c) { case 'c': /* Get default ccname */ test_get_default_ccname(ctx); @@ -229,9 +198,6 @@ main(int argc, char **argv) case 'd': /* Get default realm */ test_get_default_realm(ctx); break; - case 'k': /* Get list of KDC's */ - test_get_krbhst(ctx, optarg); - break; case 'l': test_locate_kdc(ctx, optarg); break;