This is an automated email from the ASF dual-hosted git repository.

xiaoxiang pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/nuttx.git

commit b293c722bd31921ef13189c6f8780b5128d60a97
Author: Zhe Weng <[email protected]>
AuthorDate: Wed Sep 25 17:32:05 2024 +0800

    tools/gdb: Make netstats work without socket import
    
    We may get normal IPv4 address print like 10.10.0.1:5001 and a longer
    IPv6 like fc000000000000000000000000000001:5001
    
    Signed-off-by: Zhe Weng <[email protected]>
---
 tools/gdb/nuttxgdb/net.py | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/tools/gdb/nuttxgdb/net.py b/tools/gdb/nuttxgdb/net.py
index 55e9100391..96fa9d25fb 100644
--- a/tools/gdb/nuttxgdb/net.py
+++ b/tools/gdb/nuttxgdb/net.py
@@ -60,7 +60,12 @@ def inet_ntop(domain, addr):
     """Convert a network address to a string"""
 
     addr_len = 16 if domain == AF_INET6 else 4
-    return socket.inet_ntop(domain, utils.get_bytes(addr, addr_len))
+    if socket:
+        return socket.inet_ntop(domain, utils.get_bytes(addr, addr_len))
+    else:
+        separator = "." if domain == AF_INET else ""
+        fmt = "%d" if domain == AF_INET else "%02x"
+        return separator.join([fmt % byte for byte in utils.get_bytes(addr, 
addr_len)])
 
 
 def socket_for_each_entry(proto):
@@ -111,7 +116,7 @@ class NetStats(gdb.Command):
     """
 
     def __init__(self):
-        if utils.get_symbol_value("CONFIG_NET") and socket:
+        if utils.get_symbol_value("CONFIG_NET"):
             super().__init__("netstats", gdb.COMMAND_USER)
 
     def iob_stats(self):

Reply via email to