[klibc] [klibc:master] Fix the inet_pton implementation

klibc-bot for Donny Xia xiadong.main at gmail.com
Thu Mar 21 15:36:10 PDT 2024


Commit-ID:  37e2380785d2b1f16a5955b0e01e246cbdb53fad
Gitweb:     http://git.kernel.org/?p=libs/klibc/klibc.git;a=commit;h=37e2380785d2b1f16a5955b0e01e246cbdb53fad
Author:     Donny Xia <xiadong.main at gmail.com>
AuthorDate: Mon, 26 Feb 2024 17:24:38 -0800
Committer:  Ben Hutchings <ben at decadent.org.uk>
CommitDate: Thu, 21 Mar 2024 21:36:36 +0100

[klibc] Fix the inet_pton implementation

The function inet_pton should read from src but it actually reads
from dst.

Signed-off-by: Donny Xia <xiadong.main at gmail.com>
Signed-off-by: Ben Hutchings <ben at decadent.org.uk>

---
 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);


More information about the klibc mailing list