]> git.dujemihanovic.xyz Git - u-boot.git/commitdiff
net: lwip: wget: fix legacy syntax
authorJerome Forissier <jerome.forissier@linaro.org>
Tue, 26 Nov 2024 14:45:06 +0000 (15:45 +0100)
committerTom Rini <trini@konsulko.com>
Sat, 30 Nov 2024 17:52:47 +0000 (11:52 -0600)
Commit 356011f7ac25 ("lwip: fix code style issues") has inadvertently
broken the support for the legacy syntax:

 => wget 192.168.0.16:test.bin
 invalid uri, no file path
 Invalid URL. Use http(s)://

The reason is two calls to strncpy() were replaced by strlcpy() without
paying attention to the fact that they are not equivalent in the present
case. Since we are using a character counter (n) and since we do not
depend on having a properly null-terminated string at each step in the
parsing, strlcpy() is not justified and strncpy() is the right tool for
the job. So use it again.

Reported-by: Tom Rini <trini@konsulko.com>
Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org>
net/lwip/wget.c

index 062aa7c44f012beb06f161abbc385c01b6691bbd..5501ffdd0043c61ab905b15b2741602161d23194 100644 (file)
@@ -161,7 +161,7 @@ static int parse_legacy_arg(char *arg, char *nurl, size_t rem)
 
        if (rem < n)
                return -1;
-       strlcpy(p, server, n);
+       strncpy(p, server, n);
        p += n;
        rem -= n;
        if (rem < 1)
@@ -172,7 +172,7 @@ static int parse_legacy_arg(char *arg, char *nurl, size_t rem)
        n = strlen(path);
        if (rem < n)
                return -1;
-       strlcpy(p, path, n);
+       strncpy(p, path, n);
        p += n;
        rem -= n;
        if (rem < 1)