mirror of
https://frontier.innolan.net/rainlance/c-ares.git
synced 2026-03-17 21:41:25 +00:00
made README the primary readme file
... and did README.cares to contain a historic reason etc.
This commit is contained in:
90
README
90
README
@ -1,46 +1,60 @@
|
|||||||
This is c-ares, a forked version of the original ares. The original ares
|
c-ares
|
||||||
README follows below, the c-ares specific details are in README.cares
|
======
|
||||||
|
|
||||||
====================================================================
|
This is c-ares, an asynchronous resolver library. It is intended for
|
||||||
|
applications which need to perform DNS queries without blocking, or need to
|
||||||
|
perform multiple DNS queries in parallel. The primary examples of such
|
||||||
|
applications are servers which communicate with multiple clients and programs
|
||||||
|
with graphical user interfaces.
|
||||||
|
|
||||||
This is ares, an asynchronous resolver library. It is intended for
|
The full source code is available in the 'c-ares' release archives, and in a
|
||||||
applications which need to perform DNS queries without blocking, or
|
git repository: http://github.com/bagder/c-ares
|
||||||
need to perform multiple DNS queries in parallel. The primary
|
|
||||||
examples of such applications are servers which communicate with
|
|
||||||
multiple clients and programs with graphical user interfaces.
|
|
||||||
|
|
||||||
This library implementation is not especially portable to crufty old
|
If you find bugs, correct flaws, have questions or have comments in general in
|
||||||
systems like SunOS 4. It assumes a compiler which can handle ANSI C
|
regard to c-ares (or by all means the original ares too), get in touch with us
|
||||||
syntax, a system malloc which properly handles realloc(NULL, foo) and
|
on the c-ares mailing list: http://cool.haxx.se/mailman/listinfo/c-ares
|
||||||
free(NULL), and a reasonably up-to-date <arpa/nameser.h>.
|
|
||||||
|
|
||||||
I have attempted to preserve the externally visible behavior of the
|
c-ares is of course distributed under the same MIT-style license as the
|
||||||
BIND resolver in nearly all respects. The API of the library is, of
|
original ares.
|
||||||
course, very different from the synchronous BIND API; instead of
|
|
||||||
invoking a function like res_send() and getting a return value back
|
|
||||||
indicating the number of bytes in the response, you invoke a function
|
|
||||||
like ares_send() and give it a callback function to invoke when the
|
|
||||||
response arrives. You then have to select() on the file descriptors
|
|
||||||
indicated by ares_fds(), with a timeout given by ares_timeout(). You
|
|
||||||
call ares_process() when select() returns.
|
|
||||||
|
|
||||||
Some features are missing from the current version of ares, relative
|
You'll find all c-ares details and news here:
|
||||||
to the BIND resolver:
|
|
||||||
|
|
||||||
* There is no IPV6 support. [not true for c-ares]
|
http://c-ares.haxx.se/
|
||||||
* There is no hostname verification.
|
|
||||||
* There is no logging of unexpected events.
|
|
||||||
* There is no debugging-oriented logging.
|
|
||||||
* There is no YP support.
|
|
||||||
|
|
||||||
libares requires an ANSI compiler to compile and use. To build the
|
|
||||||
library, just run "./configure" and "make". To install it, run "make
|
|
||||||
install". Run "./configure --help" to see a list of options you can
|
|
||||||
provide to configure to change how the library builds. libares has no
|
|
||||||
data files, so you can move the include file and library around freely
|
|
||||||
without leaving behind any dependencies on old paths. Building the
|
|
||||||
library will also build the "adig" program, a little toy for trying
|
|
||||||
out the library. It doesn't get installed.
|
|
||||||
|
|
||||||
libares is distributed at athena-dist.mit.edu:pub/ATHENA/ares. Please
|
NOTES FOR C-ARES HACKERS
|
||||||
send bug reports and comments to ghudson@mit.edu.
|
|
||||||
|
The following notes apply to c-ares version 1.7.0 and later.
|
||||||
|
|
||||||
|
* The distributed ares_build.h file is only intended to be used on systems
|
||||||
|
which can not run the also distributed configure script.
|
||||||
|
|
||||||
|
* The distributed ares_build.h file is generated as a copy of ares_build.h.dist
|
||||||
|
when the c-ares source code distribution archive file is originally created.
|
||||||
|
|
||||||
|
* If you check out from git on a non-configure platform, you must run the
|
||||||
|
appropriate buildconf* script to set up ares_build.h and other local files
|
||||||
|
before being able of compiling the library.
|
||||||
|
|
||||||
|
* On systems capable of running the configure script, the configure process
|
||||||
|
will overwrite the distributed ares_build.h file with one that is suitable
|
||||||
|
and specific to the library being configured and built, this new file is
|
||||||
|
generated from the ares_build.h.in template file.
|
||||||
|
|
||||||
|
* If you intend to distribute an already compiled c-ares library you _MUST_
|
||||||
|
also distribute along with it the generated ares_build.h which has been
|
||||||
|
used to compile it. Otherwise the library will be of no use for the users of
|
||||||
|
the library that you have built. It is _your_ responsability to provide this
|
||||||
|
file. No one at the c-ares project can know how you have built the library.
|
||||||
|
|
||||||
|
* File ares_build.h includes platform and configuration dependent info,
|
||||||
|
and must not be modified by anyone. Configure script generates it for you.
|
||||||
|
|
||||||
|
* We cannot assume anything else but very basic compiler features being
|
||||||
|
present. While c-ares requires an ANSI C compiler to build, some of the
|
||||||
|
earlier ANSI compilers clearly can't deal with some preprocessor operators.
|
||||||
|
|
||||||
|
* Newlines must remain unix-style for older compilers' sake.
|
||||||
|
|
||||||
|
* Comments must be written in the old-style /* unnested C-fashion */
|
||||||
|
|
||||||
|
|||||||
52
README.cares
52
README.cares
@ -10,54 +10,4 @@ within the curl project (hence the letter C) and it makes a nice pun. Also,
|
|||||||
c-ares is not API compatible with ares: a new name makes that more obvious to
|
c-ares is not API compatible with ares: a new name makes that more obvious to
|
||||||
the public.
|
the public.
|
||||||
|
|
||||||
The full source code is available in the 'c-ares' release archives, and in a
|
The original libares was distributed at athena-dist.mit.edu:pub/ATHENA/ares.
|
||||||
git repository: http://github.com/bagder/c-ares
|
|
||||||
|
|
||||||
If you find bugs, correct flaws, have questions or have comments in general in
|
|
||||||
regard to c-ares (or by all means the original ares too), get in touch with us
|
|
||||||
on the c-ares mailing list: http://cool.haxx.se/mailman/listinfo/c-ares
|
|
||||||
|
|
||||||
c-ares is of course distributed under the same MIT-style license as the
|
|
||||||
original ares.
|
|
||||||
|
|
||||||
You'll find all c-ares details and news here:
|
|
||||||
|
|
||||||
http://c-ares.haxx.se/
|
|
||||||
|
|
||||||
|
|
||||||
NOTES FOR C-ARES HACKERS
|
|
||||||
|
|
||||||
The following notes apply to c-ares version 1.7.0 and later.
|
|
||||||
|
|
||||||
* The distributed ares_build.h file is only intended to be used on systems
|
|
||||||
which can not run the also distributed configure script.
|
|
||||||
|
|
||||||
* The distributed ares_build.h file is generated as a copy of ares_build.h.dist
|
|
||||||
when the c-ares source code distribution archive file is originally created.
|
|
||||||
|
|
||||||
* If you check out from git on a non-configure platform, you must run the
|
|
||||||
appropriate buildconf* script to set up ares_build.h and other local files
|
|
||||||
before being able of compiling the library.
|
|
||||||
|
|
||||||
* On systems capable of running the configure script, the configure process
|
|
||||||
will overwrite the distributed ares_build.h file with one that is suitable
|
|
||||||
and specific to the library being configured and built, this new file is
|
|
||||||
generated from the ares_build.h.in template file.
|
|
||||||
|
|
||||||
* If you intend to distribute an already compiled c-ares library you _MUST_
|
|
||||||
also distribute along with it the generated ares_build.h which has been
|
|
||||||
used to compile it. Otherwise the library will be of no use for the users of
|
|
||||||
the library that you have built. It is _your_ responsability to provide this
|
|
||||||
file. No one at the c-ares project can know how you have built the library.
|
|
||||||
|
|
||||||
* File ares_build.h includes platform and configuration dependent info,
|
|
||||||
and must not be modified by anyone. Configure script generates it for you.
|
|
||||||
|
|
||||||
* We cannot assume anything else but very basic compiler features being
|
|
||||||
present. While c-ares requires an ANSI C compiler to build, some of the
|
|
||||||
earlier ANSI compilers clearly can't deal with some preprocessor operators.
|
|
||||||
|
|
||||||
* Newlines must remain unix-style for older compilers' sake.
|
|
||||||
|
|
||||||
* Comments must be written in the old-style /* unnested C-fashion */
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user