[klibc] [PATCH] Fix the inet_pton implementation
Donny Xia
xiadong.main at gmail.com
Mon Feb 26 17:24:38 PST 2024
The function inet_pton should read from src but it actually reads
from dst.
Signed-off-by: Donny Xia <xiadong.main at gmail.com>
---
usr/klibc/inet/inet_pton.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/usr/klibc/inet/inet_pton.c b/usr/klibc/inet/inet_pton.c
index 19fe16e0..2df6b677 100644
--- a/usr/klibc/inet/inet_pton.c
+++ b/usr/klibc/inet/inet_pton.c
@@ -38,7 +38,7 @@ int inet_pton(int af, const char *src, void *dst)
/* A double colon will increment colons by 2,
dcolons by 1 */
- for (p = dst; *p; p++) {
+ for (p = src; *p; p++) {
if (p[0] == ':') {
colons++;
if (p[1] == ':')
@@ -54,7 +54,7 @@ int inet_pton(int af, const char *src, void *dst)
memset(d, 0, sizeof(struct in6_addr));
i = 0;
- for (p = dst; *p; p++) {
+ for (p = src; *p; p++) {
if (*p == ':') {
if (p[1] == ':') {
i += (8 - colons);
--
2.44.0.rc1.240.g4c46232300-goog
More information about the klibc
mailing list