X-Git-Url: http://git.dolda2000.com/gitweb/?p=doldaconnect.git;a=blobdiff_plain;f=lib%2Fuimisc.c;fp=lib%2Fuimisc.c;h=2aa6fd3598162c1c8ddb2f63d0d56c90b56c4684;hp=92d1074814ebe7e8636f92b24b4eba0fddb6ee1b;hb=e385389c27864344dd096e0d236014f1a616b05b;hpb=44a3601c187ff9fc2a6c70e2c1d72c8e31a3c930 diff --git a/lib/uimisc.c b/lib/uimisc.c index 92d1074..2aa6fd3 100644 --- a/lib/uimisc.c +++ b/lib/uimisc.c @@ -237,6 +237,7 @@ static void process_krb5(struct dc_response *resp, struct logindata *data) krb5_data k5d; krb5_ap_rep_enc_part *repl; char *buf; + size_t kdl; krb = data->mechdata; switch(resp->code) @@ -257,7 +258,8 @@ static void process_krb5(struct dc_response *resp, struct logindata *data) case 1: if((ires = dc_interpret(resp)) != NULL) { - k5d.data = hexdecode(icswcstombs(ires->argv[0].val.str, NULL, NULL), &k5d.length); + k5d.data = hexdecode(icswcstombs(ires->argv[0].val.str, NULL, NULL), &kdl); + k5d.length = kdl; if(!krb->valid) { if((ret = krb5_rd_rep(krb->context, krb->authcon, &k5d, &repl)) != 0)