From 131a081871933513aaf37dbd9528d4a074da8eb2 Mon Sep 17 00:00:00 2001 From: Johan Danielsson Date: Sat, 21 Mar 1998 22:12:04 +0000 Subject: [PATCH] Verify that error_code is in the range [0,127]. git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@4640 ec53bebd-3082-4978-b11e-865c3cabbd6b --- lib/krb5/mk_error.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/lib/krb5/mk_error.c b/lib/krb5/mk_error.c index ed2e5dc26..9059ef89d 100644 --- a/lib/krb5/mk_error.c +++ b/lib/krb5/mk_error.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997 Kungliga Tekniska Högskolan + * Copyright (c) 1997, 1998 Kungliga Tekniska Högskolan * (Royal Institute of Technology, Stockholm, Sweden). * All rights reserved. * @@ -64,6 +64,12 @@ krb5_mk_error(krb5_context context, if(ctime) { msg.ctime = &ctime; } + /* Make sure we only send `protocol' error codes */ + if(error_code < KRB5KDC_ERR_NONE || error_code >= KRB5_ERR_RCSID) { + if(e_text == NULL) + e_text = krb5_get_err_text(context, error_code); + error_code = KRB5KRB_ERR_GENERIC; + } msg.error_code = error_code - KRB5KDC_ERR_NONE; if (e_text) msg.e_text = (general_string*)&e_text;