-.\" $Id$
.\"
.\" Copyright 1998 by the Massachusetts Institute of Technology.
.\"
.nf
.B #include <ares.h>
.PP
-.B int ares_cancel(ares_channel \fIchannel\fP)
+.B void ares_cancel(ares_channel \fIchannel\fP)
.fi
.SH DESCRIPTION
The \fBares_cancel\fP function cancels all lookups/requests made on the the
name service channel identified by \fIchannel\fP. \fBares_cancel\fP invokes
the callbacks for each pending query on the channel, passing a status of
-.BR ARES_ETIMEOUT .
+.BR ARES_ECANCELLED .
These calls give the callbacks a chance to clean up any state which
-might have been stored in their arguments.
+might have been stored in their arguments. If such a callback invocation adds
+a new request to the channel, that request will \fInot\fP be cancelled by the
+current invocation of \fBares_cancel\fP.
.SH SEE ALSO
.BR ares_init (3)
.BR ares_destroy (3)
.SH NOTES
This function was added in c-ares 1.2.0
+
+c-ares 1.6.0 and earlier pass a status of
+.BR ARES_ETIMEOUT
+instead of
+.BR ARES_ECANCELLED .
.SH AUTHOR
Dirk Manske