summaryrefslogtreecommitdiffstats
path: root/crypto/heimdal/lib/krb5/get_in_tkt.c
diff options
context:
space:
mode:
authornectar <nectar@FreeBSD.org>2002-02-19 15:46:56 +0000
committernectar <nectar@FreeBSD.org>2002-02-19 15:46:56 +0000
commit69a91bec14ec3ad49d1c8a82c40a796755f9e4a3 (patch)
tree85ecf91fd00875cec4b93111d3a8ed9eec9cddfe /crypto/heimdal/lib/krb5/get_in_tkt.c
parent8db4cdb3da4228a5d93635e43825e2e8a2f66db7 (diff)
downloadFreeBSD-src-69a91bec14ec3ad49d1c8a82c40a796755f9e4a3.zip
FreeBSD-src-69a91bec14ec3ad49d1c8a82c40a796755f9e4a3.tar.gz
Import of Heimdal Kerberos from KTH repository circa 2002/02/17.
Diffstat (limited to 'crypto/heimdal/lib/krb5/get_in_tkt.c')
-rw-r--r--crypto/heimdal/lib/krb5/get_in_tkt.c20
1 files changed, 13 insertions, 7 deletions
diff --git a/crypto/heimdal/lib/krb5/get_in_tkt.c b/crypto/heimdal/lib/krb5/get_in_tkt.c
index bb023b1..aa72bbc 100644
--- a/crypto/heimdal/lib/krb5/get_in_tkt.c
+++ b/crypto/heimdal/lib/krb5/get_in_tkt.c
@@ -33,12 +33,12 @@
#include "krb5_locl.h"
-RCSID("$Id: get_in_tkt.c,v 1.100 2001/05/14 06:14:48 assar Exp $");
+RCSID("$Id: get_in_tkt.c,v 1.103 2002/01/06 23:10:06 assar Exp $");
krb5_error_code
krb5_init_etype (krb5_context context,
unsigned *len,
- int **val,
+ krb5_enctype **val,
const krb5_enctype *etypes)
{
int i;
@@ -58,7 +58,7 @@ krb5_init_etype (krb5_context context,
for (i = 0; tmp[i]; ++i)
;
*len = i;
- *val = malloc(i * sizeof(int));
+ *val = malloc(i * sizeof(**val));
if (i != 0 && *val == NULL) {
ret = ENOMEM;
krb5_set_error_string(context, "malloc: out of memory");
@@ -370,14 +370,14 @@ add_padata(krb5_context context,
krb5_principal client,
krb5_key_proc key_proc,
krb5_const_pointer keyseed,
- int *enctypes,
+ krb5_enctype *enctypes,
unsigned netypes,
krb5_salt *salt)
{
krb5_error_code ret;
PA_DATA *pa2;
krb5_salt salt2;
- int *ep;
+ krb5_enctype *ep;
int i;
if(salt == NULL) {
@@ -386,7 +386,7 @@ add_padata(krb5_context context,
salt = &salt2;
}
if (!enctypes) {
- enctypes = (int *)context->etypes; /* XXX */
+ enctypes = context->etypes;
netypes = 0;
for (ep = enctypes; *ep != ETYPE_NULL; ep++)
netypes++;
@@ -505,8 +505,13 @@ init_as_req (krb5_context context,
if (addrs)
ret = krb5_copy_addresses(context, addrs, a->req_body.addresses);
- else
+ else {
ret = krb5_get_all_client_addrs (context, a->req_body.addresses);
+ if(ret == 0 && a->req_body.addresses->len == 0) {
+ free(a->req_body.addresses);
+ a->req_body.addresses = NULL;
+ }
+ }
if (ret)
return ret;
}
@@ -726,6 +731,7 @@ krb5_get_in_cred(krb5_context context,
done = 0;
preauth = my_preauth;
krb5_free_error_contents(context, &error);
+ krb5_clear_error_string(context);
continue;
}
if(ret_as_reply)
OpenPOWER on IntegriCloud