[ruby-core:89421] [Ruby trunk Bug#15226] Resolv::DNS unable to handle responses larger than default size

From: tibor.repasi@...
Date: 2018-10-16 13:35:59 UTC
List: ruby-core #89421
Issue #15226 has been reported by rtib (Tibor Repasi).

----------------------------------------
Bug #15226: Resolv::DNS unable to handle responses larger than default size
https://bugs.ruby-lang.org/issues/15226

* Author: rtib (Tibor Repasi)
* Status: Open
* Priority: Normal
* Assignee: 
* Target version: 
* ruby -v: ruby 2.5.1p57 (2018-03-29 revision 63029) [x86_64-darwin18]
* Backport: 2.3: UNKNOWN, 2.4: UNKNOWN, 2.5: UNKNOWN
----------------------------------------
The actual implementation of Resolve::DNS defines [UDPSize = 512](https://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/lib/resolv.rb?view=markup#l288) as default. There is no way to initialize a Resolv::DNS instance having non-default UDPSize, as well all socket reads will be limited to this size. Also, queries responding with larger and/or fragmented packets will result in an empty set after timeout and no error is raised.

Currently, Resolv::DNS is therefore limited usable in use-cases when a DNS response is larger than 512 bytes.

Desirable would be to have UDPSize as configurable attribute, instead of a hard coded constant.



-- 
https://bugs.ruby-lang.org/

Unsubscribe: <mailto:[email protected]?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>

In This Thread

Prev Next