From 8c4fc9ee719cd6d6ccd4352ca50583bc003e25e5 Mon Sep 17 00:00:00 2001 From: Daniel Stenberg Date: Tue, 23 Mar 2010 14:12:50 +0100 Subject: [PATCH] made README the primary readme file ... and did README.cares to contain a historic reason etc. --- README | 106 +++++++++++++++++++++++++++++---------------------- README.cares | 52 +------------------------ 2 files changed, 61 insertions(+), 97 deletions(-) diff --git a/README b/README index e5b5e287..aae99cdf 100644 --- a/README +++ b/README @@ -1,46 +1,60 @@ -This is c-ares, a forked version of the original ares. The original ares -README follows below, the c-ares specific details are in README.cares - -==================================================================== - -This is 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 library implementation is not especially portable to crufty old -systems like SunOS 4. It assumes a compiler which can handle ANSI C -syntax, a system malloc which properly handles realloc(NULL, foo) and -free(NULL), and a reasonably up-to-date . - -I have attempted to preserve the externally visible behavior of the -BIND resolver in nearly all respects. The API of the library is, of -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 -to the BIND resolver: - - * There is no IPV6 support. [not true for c-ares] - * 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 -send bug reports and comments to ghudson@mit.edu. +c-ares +====== + +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. + +The full source code is available in the 'c-ares' release archives, and in a +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 */ + diff --git a/README.cares b/README.cares index 37a044d2..aca54c8c 100644 --- a/README.cares +++ b/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 the public. -The full source code is available in the 'c-ares' release archives, and in a -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 */ - +The original libares was distributed at athena-dist.mit.edu:pub/ATHENA/ares.