gridcoin-community/Gridcoin-Research

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

Fermée

#3 068 ouverte le 15 juin 2026

 (0 commentaire) (0 réaction) (0 personne assignée)HTML (179 forks)batch import
enhancementgood first issue

Métriques du dépôt

Stars
 (575 étoiles)
Métriques de merge PR
 (Merge moyen 5j 8h) (100 PRs mergées en 30 j)

Description

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.

Guide contributeur