]> git.ipfire.org Git - thirdparty/freeradius-server.git/commitdiff
go to next VP on skip
authorAlan T. DeKok <aland@freeradius.org>
Sun, 11 Aug 2024 20:19:18 +0000 (16:19 -0400)
committerAlan T. DeKok <aland@freeradius.org>
Sun, 11 Aug 2024 20:19:18 +0000 (16:19 -0400)
src/protocols/radius/encode.c

index 2c3b438e5adc89e324820039cac78dcc43b483f9..f122b6be7b82e886f2f99e9c567d99323c9a4843 100644 (file)
@@ -479,6 +479,7 @@ static ssize_t encode_value(fr_dbuff_t *dbuff,
         *      be written.
         */
        if (fr_dbuff_used(&value_dbuff) == 0) {
+       return_0:
                vp = fr_dcursor_next(cursor);
                fr_proto_da_stack_build(da_stack, vp ? vp->da : NULL);
                return 0;
@@ -504,7 +505,7 @@ static ssize_t encode_value(fr_dbuff_t *dbuff,
        case FLAG_ENCRYPT_TUNNEL_PASSWORD:
                if (packet_ctx->disallow_tunnel_passwords) {
                        fr_strerror_const("Attributes with 'encrypt=2' set cannot go into this packet.");
-                       return 0;
+                       goto return_0;
                }
 
                /*
@@ -575,7 +576,7 @@ static ssize_t encode_value(fr_dbuff_t *dbuff,
                (void) fr_dbuff_out(&msb, &src);
                if (msb != 0) {
                        fr_strerror_const("Integer overflow for tagged uint32 attribute");
-                       return 0;
+                       goto return_0;
                }
                fr_dbuff_set(&dest, &value_start);
                fr_dbuff_in(&dest, packet_ctx->tag);