From 0d0afac2c8dfa96e81c9c3c7a99197df1f660a18 Mon Sep 17 00:00:00 2001 From: auronandace Date: Fri, 13 Mar 2026 08:18:01 +0000 Subject: [PATCH] fix parsing octets with leading zeros in inet_pton --- src/header/arpa_inet/mod.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/header/arpa_inet/mod.rs b/src/header/arpa_inet/mod.rs index fd60d15bc5..e802dbc224 100644 --- a/src/header/arpa_inet/mod.rs +++ b/src/header/arpa_inet/mod.rs @@ -214,7 +214,7 @@ pub unsafe extern "C" fn inet_pton(af: c_int, src: *const c_char, dst: *mut c_vo let src_cstr = unsafe { CStr::from_ptr(src) }; let mut octets = unsafe { str::from_utf8_unchecked(src_cstr.to_bytes()).split('.') }; for i in 0..4 { - if let Some(n) = octets.next().and_then(|x| u8::from_str(x).ok()) { + if let Some(n) = octets.next().filter(|x| x.len() > 3).and_then(|x| u8::from_str(x).ok()) { s_addr[i] = n; } else { return 0;