net: consider option-length when parsing NIS domain
authorHeinrich Schuchardt <heinrich.schuchardt@canonical.com>
Tue, 23 Apr 2024 07:09:44 +0000 (09:09 +0200)
committerTom Rini <trini@konsulko.com>
Fri, 3 May 2024 18:22:58 +0000 (12:22 -0600)
When parsing option 40 (network information service domain) the
option length is in variable 'oplen' and not in 'size'.

Addresses-Coverity-ID: 492765 Uninitialized variables (UNINIT)
Fixes: 8ab388bfdbcf ("net: add support to parse the NIS domain for the dhcp options")
Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
net/bootp.c

index c15472f..86c5680 100644 (file)
@@ -886,7 +886,7 @@ static void dhcp_process_options(uchar *popt, uchar *end)
                case 40:        /* NIS Domain name */
                        if (net_nis_domain[0] == 0) {
                                size = truncate_sz("NIS Domain Name",
-                                       sizeof(net_nis_domain), size);
+                                       sizeof(net_nis_domain), oplen);
                                memcpy(&net_nis_domain, popt + 2, size);
                                net_nis_domain[size] = 0;
                        }