From: Alan T. DeKok Date: Sun, 28 Jan 2024 16:49:56 +0000 (-0500) Subject: don't modify slen on return X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=80a4e9d958974c414db3429e82a49f2e95d4f997;p=thirdparty%2Ffreeradius-server.git don't modify slen on return --- diff --git a/src/protocols/dhcpv4/encode.c b/src/protocols/dhcpv4/encode.c index 06defb4769c..68470fc48fb 100644 --- a/src/protocols/dhcpv4/encode.c +++ b/src/protocols/dhcpv4/encode.c @@ -774,7 +774,7 @@ ssize_t fr_dhcpv4_encode_foreign(fr_dbuff_t *dbuff, fr_pair_list_t const *list) */ while (fr_dcursor_current(&cursor) != NULL) { slen = fr_dhcpv4_encode_option(&work_dbuff, &cursor, &(fr_dhcpv4_ctx_t){ .root = fr_dict_root(dict_dhcpv4) }); - if (slen <= 0) return slen - fr_dbuff_used(&work_dbuff); + if (slen < 0) return slen; } FR_PROTO_TRACE("Foreign option is %zu byte(s)", fr_dbuff_used(&work_dbuff)); diff --git a/src/protocols/dhcpv6/encode.c b/src/protocols/dhcpv6/encode.c index 2d4f48addb7..cf3cb67d3e9 100644 --- a/src/protocols/dhcpv6/encode.c +++ b/src/protocols/dhcpv6/encode.c @@ -731,7 +731,7 @@ ssize_t fr_dhcpv6_encode_foreign(fr_dbuff_t *dbuff, fr_pair_list_t const *list) */ while (fr_dcursor_current(&cursor) != NULL) { slen = fr_dhcpv6_encode_option(&work_dbuff, &cursor, &(fr_dhcpv6_encode_ctx_t){ .root = fr_dict_root(dict_dhcpv6) }); - if (slen <= 0) return slen - fr_dbuff_used(&work_dbuff); + if (slen < 0) return slen; } FR_PROTO_TRACE("Foreign option is %zu byte(s)", fr_dbuff_used(&work_dbuff));