• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

c-ares / c-ares / 28590907030
90%

Build:
DEFAULT BRANCH: main
Ran 02 Jul 2026 12:46PM UTC
Jobs 1
Files 177
Run time 2min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

02 Jul 2026 12:43PM UTC coverage: 91.709% (-0.007%) from 91.716%
28590907030

push

github

web-flow
discard oversized UDP datagrams instead of truncating the length frame (#1161)

Defense-in-depth hardening for the UDP receive path.

read_conn_packets() prefixes each buffered UDP datagram with a 2-byte
length so read_answers() can later split the buffer back into messages.
The read buffer handed to recvfrom() comes from ares_buf_append_start(),
which grows in powers of two and so can be larger than 65535 bytes,
while count is written back through (unsigned short). If a datagram
larger than 65535 ever landed there, count & 0xFFFF would be stored and
the framing of everything buffered after it would desync.

This isn't reachable over standard UDP: max payload is 65507 (IPv4) /
65527 (IPv6), both below 65535. The only vector is IPv6 jumbograms (RFC
2675), which DNS never uses and which would still have to pass the
source-address check in ares_conn_read(). So this is purely hardening,
not a fix for an observed bug on real networks.

The guard rolls the datagram back to the iteration start and stops
reading, matching the existing short-read rollback just above. Only
ares_buf_* is used.

---------

Signed-off-by: Syed Mohammed Nayyar <jmestwa@gmail.com>

1 of 3 new or added lines in 1 file covered. (33.33%)

1 existing line in 1 file now uncovered.

23020 of 25101 relevant lines covered (91.71%)

12574.42 hits per line

Uncovered Changes

Lines Coverage ∆ File
2
82.89
-0.23% src/lib/ares_process.c

Coverage Regressions

Lines Coverage ∆ File
1
62.84
0.0% src/lib/record/ares_dns_mapping.c
Jobs
ID Job ID Ran Files Coverage
1 28590907030.1 02 Jul 2026 12:46PM UTC 935
61.08
GitHub Action Run
Source Files on build 28590907030
  • Tree
  • List 177
  • Changed 55
  • Source Changed 0
  • Coverage Changed 55
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • a7391815 on github
  • Prev Build on main (#28590072900)
  • Next Build on main (#28591205316)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc