# adns binding for Tcl
# Copyright 2006-2012 Ian Jackson
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License as
# published by the Free Software Foundation; either version 2 of the
# License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
# General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this library; if not, see <http://www.gnu.org/licenses/>.


Type adnsresults:		adns_answer *@
Init adnsresults		@=0;
Fini adnsresults		free(@);

Table *adnstoplevel TopLevel_Command
	adns
		dispatch(Adns/_SubCommand, "adns subcommand")

Table adns Adns_SubCommand
	lookup
		rrtype	enum(AdnsTclRRTypeInfo/, "rrtype")
		domain	string
		...	obj
		=>	obj
	synch
		rrtype	enum(AdnsTclRRTypeInfo/, "rrtype")
		domain	string
		...	obj
		=>	obj
	asynch
		on_yes	obj
		on_no	obj
		on_fail	obj
		xargs	obj
		rrtype	enum(AdnsTclRRTypeInfo/, "rrtype")
		domain	string
		...	obj
		=>	iddata(&cht_adnstcl_queries)
	asynch-cancel
		query	iddata(&cht_adnstcl_queries)
	new-resolver
		...	obj
		=>	iddata(&cht_adnstcl_resolvers)
	set-default-resolver
		res	iddata(&cht_adnstcl_resolvers)
	destroy-resolver
		res	iddata(&cht_adnstcl_resolvers)

