github / github/codeql

False positive: This expression has no effect (because _function with multiple implementations_ has no external side effects [in incorrectly selected version]).

Offen
#20,684 5 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
C++ false-positive
Vorherrschende Sprache
CodeQL
Sterne
10.1k
Forks
2.1k
Ø Merge
2 T. 15 Std.
Gemergte PRs (30 T.)
141

Beschreibung

**Description of the false positive**

https://github.com/PowerDNS/pdns/pull/16363#discussion_r2455671092

> This expression has no effect (because sendUDPResponse has no external side effects).

codeql appears to have found https://github.com/PowerDNS/pdns/blob/dec9583d885713a0d0ecb55a74ef83cde5f8a235/pdns/dnsdistdist/test-dnsdist_cc.cc#L83 (which is indeed side effect free) instead of https://github.com/PowerDNS/pdns/blob/dec9583d885713a0d0ecb55a74ef83cde5f8a235/pdns/dnsdistdist/dnsdist.cc#L637 (which shouldn't be)

**Code samples or links to source code**

https://github.com/pieterlexis/pdns/blob/064c4c9f2ea60c59d4b0c1a95daad4e17cbe2ce4/pdns/dnsdistdist/dnsdist-udp.cc#L131

https://github.com/PowerDNS/pdns/blob/dec9583d885713a0d0ecb55a74ef83cde5f8a235/pdns/dnsdistdist/test-dnsdist_cc.cc#L83
https://github.com/PowerDNS/pdns/blob/dec9583d885713a0d0ecb55a74ef83cde5f8a235/pdns/dnsdistdist/dnsdist.cc#L637

**URL to the alert on GitHub code scanning (optional)**

I don't have access to this, but I'll see if I can get someone to provide it.

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

Start by comparing the linked call in pdns/dnsdistdist/dnsdist-udp.cc with the implementations in test-dnsdist_cc.cc and dnsdist.cc. Review the related CodeQL alert and the linked discussion to determine why the incorrect implementation is selected. Done means the cited false positive is resolved for the reported call and verified against those source locations.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
cpp
Bereich
security
Issue-Typ
Bug
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Muss geklärt werden
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.