tkey.c revision 70e5a7403f0e0a3bd292b8287c5fed5772c15270
255e9bff6bea17aab6160037bd6965ca0e57db5dMark Andrews * Copyright (C) 2004-2007 Internet Systems Consortium, Inc. ("ISC")
255e9bff6bea17aab6160037bd6965ca0e57db5dMark Andrews * Copyright (C) 1999-2001, 2003 Internet Software Consortium.
255e9bff6bea17aab6160037bd6965ca0e57db5dMark Andrews * Permission to use, copy, modify, and/or distribute this software for any
255e9bff6bea17aab6160037bd6965ca0e57db5dMark Andrews * purpose with or without fee is hereby granted, provided that the above
255e9bff6bea17aab6160037bd6965ca0e57db5dMark Andrews * copyright notice and this permission notice appear in all copies.
255e9bff6bea17aab6160037bd6965ca0e57db5dMark Andrews * THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
255e9bff6bea17aab6160037bd6965ca0e57db5dMark Andrews * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
255e9bff6bea17aab6160037bd6965ca0e57db5dMark Andrews * AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
255e9bff6bea17aab6160037bd6965ca0e57db5dMark Andrews * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
255e9bff6bea17aab6160037bd6965ca0e57db5dMark Andrews * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
255e9bff6bea17aab6160037bd6965ca0e57db5dMark Andrews * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
255e9bff6bea17aab6160037bd6965ca0e57db5dMark Andrews * PERFORMANCE OF THIS SOFTWARE.
255e9bff6bea17aab6160037bd6965ca0e57db5dMark Andrews * $Id: tkey.c,v 1.86 2007/06/19 23:47:16 tbox Exp $
#define RETERR(x) do { \
result = (x); \
goto failure; \
&outbuf);
return (ISC_R_NOMEMORY);
return (ISC_R_SUCCESS);
static isc_result_t
return (ISC_R_SUCCESS);
return (result);
static isc_result_t
return (ISC_R_NOSPACE);
for (i = 0; i < sizeof(digests); i++)
return (ISC_R_SUCCESS);
static isc_result_t
unsigned int sharedsize;
return (DNS_R_REFUSED);
return (ISC_R_SUCCESS);
&keyset);
if (!found_key) {
if (found_incompatible) {
return (ISC_R_SUCCESS);
return (DNS_R_FORMERR);
goto failure;
goto failure;
goto failure;
return (ISC_R_SUCCESS);
return (result);
static isc_result_t
return (ISC_R_NOPERM);
return (ISC_R_SUCCESS);
return (ISC_R_SUCCESS);
goto failure;
if (outtoken) {
goto failure;
goto failure;
return (ISC_R_SUCCESS);
return (result);
static isc_result_t
return (ISC_R_SUCCESS);
return (DNS_R_REFUSED);
return (ISC_R_SUCCESS);
return (DNS_R_FORMERR);
goto failure;
goto failure;
goto failure;
goto failure;
goto failure;
== ISC_R_SUCCESS);
isc_buffer_t b;
sizeof(randomdata),
NULL, 0);
goto failure;
for (i = 0, j = 0; i < sizeof(randomdata); i++) {
goto failure;
goto failure;
goto failure;
goto failure_with_tkey;
goto failure;
&namelist));
case DNS_TKEYMODE_GSSAPI:
&namelist));
case DNS_TKEYMODE_DELETE:
goto failure;
&tkeyoutbuf);
if (freetkeyin) {
goto failure;
return (ISC_R_SUCCESS);
if (freetkeyin)
return (result);
static isc_result_t
if (win2k)
return (ISC_R_SUCCESS);
return (result);
isc_region_t r;
r.length = 0;
dns_rdatatype_key, &r);
return (ISC_R_SUCCESS);
return (result);
return (result);
if (win2k)
return (ISC_R_SUCCESS);
return (result);
static isc_result_t
int section)
&tkeyset);
return (result);
return (ISC_R_SUCCESS);
return (ISC_R_NOTFOUND);
return (result);
unsigned int sharedsize;
goto failure;
&ourkeyset));
&theirkeyname);
goto next;
0, &theirkeyset);
next:
goto failure;
return (result);
if (freertkey)
return (result);
goto failure;
goto failure;
&dstkey));
return (result);
return (result);
goto failure;
return (result);
goto failure;
return (result);
&dstkey));
return (result);
return (result);