From: Simon Wilkinson Date: Mon, 4 Jul 2011 09:03:50 +0000 (+0100) Subject: klog.krb5: Don't use ubik_PR_NameToID internal func X-Git-Tag: upstream/1.8.0_pre1^2~3488 X-Git-Url: https://git.michaelhowe.org/gitweb/?a=commitdiff_plain;h=2676143c035d19d02492d370382a74650b1e1496;p=packages%2Fo%2Fopenafs.git klog.krb5: Don't use ubik_PR_NameToID internal func ubik_PR_NameToID is a low level function which requires a large amount of setup from the caller. Instead, use pr_Initialize() and pr_SNameToId() which do all of the work in a library. Change-Id: I6b8d50c3d16eb258a4a81335790be2654c4fb191 Reviewed-on: http://gerrit.openafs.org/5082 Reviewed-by: Derrick Brashear Tested-by: Derrick Brashear --- diff --git a/src/aklog/klog.c b/src/aklog/klog.c index a447c5133..3a8eff62a 100644 --- a/src/aklog/klog.c +++ b/src/aklog/klog.c @@ -22,6 +22,7 @@ #include #include #include +#include #include @@ -212,43 +213,20 @@ whoami(struct ktc_token *atoken, struct ktc_principal *aclient, int *vicep) { - rx_securityIndex scIndex; int code; - int i; - struct ubik_client *ptconn = 0; - struct rx_securityClass *sc; - struct rx_connection *conns[MAXSERVERS+1]; - idlist lids[1]; - namelist lnames[1]; char tempname[PR_MAXNAMELEN + 1]; - memset(lnames, 0, sizeof *lnames); - memset(lids, 0, sizeof *lids); - scIndex = RX_SECIDX_KAD; - sc = rxkad_NewClientSecurityObject(rxkad_auth, - &atoken->sessionKey, atoken->kvno, - atoken->ticketLen, atoken->ticket); - for (i = 0; i < cellconfig->numServers; ++i) - conns[i] = rx_NewConnection(cellconfig->hostAddr[i].sin_addr.s_addr, - cellconfig->hostAddr[i].sin_port, PRSRV, sc, scIndex); - conns[i] = 0; - ptconn = 0; - if ((code = ubik_ClientInit(conns, &ptconn))) + code = pr_Initialize(0, AFSDIR_CLIENT_ETC_DIRPATH, cellconfig->name); + if (code) goto Failed; + if (*aclient->instance) snprintf (tempname, sizeof tempname, "%s.%s", aclient->name, aclient->instance); else snprintf (tempname, sizeof tempname, "%s", aclient->name); - lnames->namelist_len = 1; - lnames->namelist_val = (prname *) tempname; - code = ubik_PR_NameToID(ptconn, 0, lnames, lids); - if (lids->idlist_val) { - *vicep = *lids->idlist_val; - } + code = pr_SNameToId(tempname, vicep); Failed: - if (lids->idlist_val) free(lids->idlist_val); - if (ptconn) ubik_ClientDestroy(ptconn); return code; }