#c-ares #dns #api-bindings

c-ares

A Rust wrapper for the c-ares library, for asynchronous DNS requests

65 releases (39 stable)

11.1.0 Oct 10, 2024
10.1.0 Jul 3, 2024
9.2.1 May 26, 2024
9.0.0 Feb 23, 2024
0.9.0 Jul 30, 2015

#1490 in Network programming

Download history 634/week @ 2025-01-20 1054/week @ 2025-01-27 1531/week @ 2025-02-03 1292/week @ 2025-02-10 1105/week @ 2025-02-17 654/week @ 2025-02-24 1114/week @ 2025-03-03 806/week @ 2025-03-10 639/week @ 2025-03-17 1046/week @ 2025-03-24 1032/week @ 2025-03-31 1341/week @ 2025-04-07 905/week @ 2025-04-14 760/week @ 2025-04-21 649/week @ 2025-04-28 1219/week @ 2025-05-05

3,654 downloads per month
Used in 10 crates (3 directly)

MIT license

2MB
47K SLoC

C 27K SLoC // 0.2% comments C++ 12K SLoC // 0.1% comments Rust 5.5K SLoC // 0.0% comments M4 1.5K SLoC // 0.4% comments Bitbake 312 SLoC // 0.0% comments Shell 119 SLoC // 0.2% comments Automake 110 SLoC // 0.3% comments Batch 8 SLoC // 0.5% comments

rust-c-ares

A Rust wrapper for the c-ares library, for asynchronous DNS requests.

Most users should likely prefer c-ares-resolver, which offers a much simpler API.

Crates.io Build Status

Documentation

  • API documentation is here.
  • There are some example programs here.

Setting the feature build-cmake will cause the c-ares library to be built using cmake. This is significantly faster than the default autotools build on unix platforms: so if it works for you, you should probably prefer it.

Contributing

Contributions are welcome. Please send pull requests!

Dependencies

~0.5–9.5MB
~83K SLoC