Fix tests/can and tests/kdc
krb5_kdc_process_request() must return 0 when it produces a reply, and only return non-zero when it could not construct any kind of reply (e.g., ENOMEM, or -1 if no handler claimed responsibility for the request).
This commit is contained in:
@@ -2395,18 +2395,17 @@ out:
|
|||||||
* In case of a non proxy error, build an error message.
|
* In case of a non proxy error, build an error message.
|
||||||
*/
|
*/
|
||||||
if (ret != 0 && ret != HDB_ERR_NOT_FOUND_HERE && r->reply->length == 0)
|
if (ret != 0 && ret != HDB_ERR_NOT_FOUND_HERE && r->reply->length == 0)
|
||||||
/* We don't want to clobber the original error here... */
|
ret = _kdc_fast_mk_error(r, &error_method,
|
||||||
_kdc_fast_mk_error(r, &error_method,
|
r->armor_crypto,
|
||||||
r->armor_crypto,
|
&req->req_body,
|
||||||
&req->req_body,
|
ret, r->e_text,
|
||||||
ret, r->e_text,
|
r->server_princ,
|
||||||
r->server_princ,
|
r->client_princ ?
|
||||||
r->client_princ ?
|
&r->client_princ->name : NULL,
|
||||||
&r->client_princ->name : NULL,
|
r->client_princ ?
|
||||||
r->client_princ ?
|
&r->client_princ->realm : NULL,
|
||||||
&r->client_princ->realm : NULL,
|
NULL, NULL,
|
||||||
NULL, NULL,
|
r->reply);
|
||||||
r->reply);
|
|
||||||
|
|
||||||
free_EncTicketPart(&r->et);
|
free_EncTicketPart(&r->et);
|
||||||
free_EncKDCRepPart(&r->ek);
|
free_EncKDCRepPart(&r->ek);
|
||||||
|
@@ -25,4 +25,5 @@
|
|||||||
|
|
||||||
[logging]
|
[logging]
|
||||||
kdc = 0-/FILE:@objdir@/messages.log
|
kdc = 0-/FILE:@objdir@/messages.log
|
||||||
|
kdc-replay = 0-/FILE:@objdir@/messages.log
|
||||||
default = 0-/FILE:@objdir@/messages.log
|
default = 0-/FILE:@objdir@/messages.log
|
||||||
|
Reference in New Issue
Block a user