X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=adns.git;a=blobdiff_plain;f=client%2Fadh-main.c;h=b6f3bd4d0d2ada0b3658b7b41a0b51f893467b34;hp=88d876a7b1c214c0446301b78ff5856686ed3fed;hb=938b0228d88a9166f9e808fe9fe8313f8d940977;hpb=0ebff22d9b5832b18444f7c680ca71e24fc3734e diff --git a/client/adh-main.c b/client/adh-main.c index 88d876a..b6f3bd4 100644 --- a/client/adh-main.c +++ b/client/adh-main.c @@ -4,12 +4,11 @@ * main program and useful subroutines */ /* - * This file is - * Copyright (C) 1997-2000 Ian Jackson - * - * It is part of adns, which is - * Copyright (C) 1997-2000 Ian Jackson - * Copyright (C) 1999 Tony Finch + * This file is part of adns, which is + * Copyright (C) 1997-2000,2003,2006 Ian Jackson + * Copyright (C) 1999-2000,2003,2006 Tony Finch + * Copyright (C) 1991 Massachusetts Institute of Technology + * (See the file INSTALL for full details.) * * 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 @@ -90,6 +89,7 @@ void of_type(const struct optioninfo *oi, const char *arg, const char *arg2) { { adns_r_ptr, "ptr" }, { adns_r_mx, "mx" }, { adns_r_rp, "rp" }, + { adns_r_srv, "srv" }, { adns_r_addr, "addr" }, /* types with only one version */ @@ -104,11 +104,20 @@ void of_type(const struct optioninfo *oi, const char *arg, const char *arg2) { { adns_r_ptr_raw, "ptr-" }, { adns_r_mx_raw, "mx-" }, { adns_r_rp_raw, "rp-" }, + { adns_r_srv_raw, "srv-" }, { adns_r_none, 0 } }; const struct typename *tnp; + unsigned long unknowntype; + char *ep; + + if (strlen(arg) > 4 && !memcmp(arg,"type",4) && + (unknowntype= strtoul(arg+4, &ep, 10), !*ep) && unknowntype < 65536) { + ov_type= unknowntype | adns_r_unknown; + return; + } for (tnp=typenames; tnp->type && strcmp(arg,tnp->desc);