From: Arran Cudbard-Bell Date: Sun, 3 Dec 2017 22:09:02 +0000 (+0000) Subject: Pass in outlen correctly X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=bb517b4ca8e7e4b76a0347b43906dde95ce17483;p=thirdparty%2Ffreeradius-server.git Pass in outlen correctly --- diff --git a/src/modules/rlm_eap/lib/sim/encode.c b/src/modules/rlm_eap/lib/sim/encode.c index bf39bce58b8..d5238a43c27 100644 --- a/src/modules/rlm_eap/lib/sim/encode.c +++ b/src/modules/rlm_eap/lib/sim/encode.c @@ -729,9 +729,9 @@ static ssize_t encode_rfc_hdr(uint8_t *out, size_t outlen, fr_dict_attr_t const p += 2; /* Leave space for attr + len */ if (da->flags.array) { - slen = encode_array(p, end - p, tlv_stack, depth, cursor, encoder_ctx); + slen = encode_array(p, outlen - (p - out), tlv_stack, depth, cursor, encoder_ctx); } else { - slen = encode_value(p, end - p, tlv_stack, depth, cursor, encoder_ctx); + slen = encode_value(p, outlen - (p - out), tlv_stack, depth, cursor, encoder_ctx); } if (slen <= 0) return slen; p += slen;