4 releases (breaking)
Uses old Rust 2015
0.4.0 | Mar 3, 2016 |
---|---|
0.3.0 | Mar 1, 2016 |
0.2.0 | Feb 5, 2016 |
0.1.0 | Feb 1, 2016 |
#10 in #rotor
20KB
448 lines
Rotor DNS
A pure-rust asynchronous domain name system resolver library.
Status: | Pre-alpha |
---|---|
Documentation: | http://tailhook.github.com/rotor-dns/ |
The library based on resolv-conf and dns-parser and mostly provides only asynchronous layer on top of rotor.
The plan, is to implement good absractions:
- Resolve SRV and fall back to regular host name
- Subscribe to the domain name, not just resolve
The subscription should work as follows:
- Resolve name by normal means
- Sleep almost a TTL time (get some time to resolve)
- Re-resolve name
- Check if current connection is connected to one of the names resolved
- Reconnect if needed
- If new connection is successful drop the old one
The steps 4-6 above are obviously a protocol handler's job. But we should provide good abstractions to do that.
License
Licensed under either of
- Apache License, Version 2.0, (./LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (./LICENSE-MIT or http://opensource.org/licenses/MIT) at your option.
Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.
Dependencies
~4.5MB
~83K SLoC