gridcoin-community/Gridcoin-Research

net: guard remaining free-function g_connman dereferences (AddressCurrentlyConnected) (follow-up to #2558)

クローズ

#3,068 opened on 2026/06/15

 (0 件のコメント) (0 件のリアクション) (0 人の担当者)HTML (179 件のフォーク)batch import
enhancementgood first issue

Repository metrics

Stars
 (575 個のスター)
PR merge metrics
 (平均マージ 5d 8h) (30d で 100 merged PRs)

説明

Follow-up to #2558.

Gap

Most external g_connman consumers use the established if (g_connman) guard (covering the early-startup / shutdown-teardown window where the unique_ptr is null). One free function still dereferences it unguarded:

  • AddressCurrentlyConnected(const CService& addr)src/net.cpp:337 — calls g_connman->GetAddrMan().Connected(addr) with no guard. Reachable during the shutdown window after g_connman.reset().

Fix

Add the if (g_connman) guard (or route the call through a CConnman member). While here, audit for any other unguarded free-function g_connman dereferences.

Severity

LOW — shutdown-window only; the window is narrow. Good-first-issue-sized hardening.

Note: the other site flagged in the stack review (ConnectNode) is already resolved — it was promoted to a CConnman member in the #2558 stack, so it no longer dereferences g_connman as a free function.

コントリビューターガイド