#include <config.h>
#include <ctype.h>
#include <stdlib.h>
#include <string.h>
#include <isc/buffer.h>
#include <isc/dir.h>
#include <isc/entropy.h>
#include <isc/file.h>
#include <isc/lex.h>
#include <isc/mem.h>
#include <isc/once.h>
#include <isc/print.h>
#include <isc/platform.h>
#include <isc/random.h>
#include <isc/time.h>
#include <isc/util.h>
#include <dns/fixedname.h>
#include <dns/name.h>
#include <dns/rdata.h>
#include <dns/rdataclass.h>
#include <dns/result.h>
#include <dns/types.h>
#include <dns/keyvalues.h>
#include <dns/log.h>
#include <dst/gssapi.h>
#include <dst/result.h>
#include "dst_internal.h"
Go to the source code of this file.
Definition in file gssapictx.c.
#define REGION_TO_GBUFFER | ( | r, | |||
gb | ) |
Value:
Definition at line 102 of file gssapictx.c.
Referenced by dst_gssapi_acceptctx(), and dst_gssapi_initctx().
#define GBUFFER_TO_REGION | ( | gb, | |||
r | ) |
Value:
Definition at line 108 of file gssapictx.c.
Referenced by dst_gssapi_acceptctx(), and dst_gssapi_initctx().
#define RETERR | ( | x | ) |
Value:
do { \ result = (x); \ if (result != ISC_R_SUCCESS) \ goto out; \ } while (0)
Definition at line 115 of file gssapictx.c.
isc_result_t dst_gssapi_acquirecred | ( | dns_name_t * | name, | |
isc_boolean_t | initiate, | |||
gss_cred_id_t * | cred | |||
) |
Definition at line 254 of file gssapictx.c.
References cleanup(), DNS_NAME_MAXTEXT, gss_error_tostring(), gss_log(), isc_buffer_init, ISC_R_FAILURE, ISC_R_NOTIMPLEMENTED, ISC_R_SUCCESS, namebuf, REQUIRE, and UNUSED.
Referenced by ns_tkeyctx_fromconfig().
isc_boolean_t dst_gssapi_identitymatchesrealmkrb5 | ( | dns_name_t * | signer, | |
dns_name_t * | name, | |||
dns_name_t * | realm | |||
) |
Definition at line 352 of file gssapictx.c.
References buffer, dns_name_format(), DNS_NAME_FORMATSIZE, dns_name_toprincipal(), isc_boolean_false, isc_boolean_true, isc_buffer_init, isc_buffer_putuint8, ISC_R_SUCCESS, RUNTIME_CHECK, and UNUSED.
Referenced by dns_ssutable_checkrules().
isc_boolean_t dst_gssapi_identitymatchesrealmms | ( | dns_name_t * | signer, | |
dns_name_t * | name, | |||
dns_name_t * | realm | |||
) |
Definition at line 425 of file gssapictx.c.
References buffer, dns_name_format(), DNS_NAME_FORMATSIZE, dns_name_toprincipal(), isc_boolean_false, isc_boolean_true, isc_buffer_init, isc_buffer_putuint8, ISC_R_SUCCESS, RUNTIME_CHECK, and UNUSED.
Referenced by dns_ssutable_checkrules().
isc_result_t dst_gssapi_releasecred | ( | gss_cred_id_t * | cred | ) |
Definition at line 516 of file gssapictx.c.
References gss_error_tostring(), gss_log(), ISC_R_NOTIMPLEMENTED, ISC_R_SUCCESS, REQUIRE, and UNUSED.
Referenced by dns_tkeyctx_destroy().
isc_result_t dst_gssapi_initctx | ( | dns_name_t * | name, | |
isc_buffer_t * | intoken, | |||
isc_buffer_t * | outtoken, | |||
gss_ctx_id_t * | gssctx, | |||
isc_mem_t * | mctx, | |||
char ** | err_message | |||
) |
Definition at line 563 of file gssapictx.c.
References DNS_NAME_MAXTEXT, DNS_R_CONTINUE, GBUFFER_TO_REGION, gss_log(), isc_buffer_copyregion(), isc_buffer_init, ISC_R_FAILURE, ISC_R_NOTIMPLEMENTED, ISC_R_SUCCESS, namebuf, r, REGION_TO_GBUFFER, REQUIRE, RETERR, and UNUSED.
Referenced by dns_tkey_buildgssquery(), dns_tkey_gssnegotiate(), and dns_tkey_processgssresponse().
isc_result_t dst_gssapi_acceptctx | ( | gss_cred_id_t | cred, | |
const char * | gssapi_keytab, | |||
isc_region_t * | intoken, | |||
isc_buffer_t ** | outtoken, | |||
gss_ctx_id_t * | ctxout, | |||
dns_name_t * | principal, | |||
isc_mem_t * | mctx | |||
) |
Definition at line 658 of file gssapictx.c.
References isc_region::base, dns_name_fromtext(), DNS_R_CONTINUE, DNS_R_INVALIDTKEY, dns_rootname, GBUFFER_TO_REGION, gss_error_tostring(), gss_log(), isc_buffer_add, isc_buffer_allocate(), isc_buffer_copyregion(), isc_buffer_init, ISC_R_FAILURE, ISC_R_NOMEMORY, ISC_R_NOTIMPLEMENTED, ISC_R_SUCCESS, isc_region::length, isc_buffer::length, namebuf, r, REGION_TO_GBUFFER, REQUIRE, RETERR, and UNUSED.
Referenced by process_gsstkey().
isc_result_t dst_gssapi_deletectx | ( | isc_mem_t * | mctx, | |
gss_ctx_id_t * | gssctx | |||
) |
Definition at line 817 of file gssapictx.c.
References gss_error_tostring(), gss_log(), ISC_R_NOTIMPLEMENTED, ISC_R_SUCCESS, REQUIRE, and UNUSED.
char* gss_error_tostring | ( | isc_uint32_t | major, | |
isc_uint32_t | minor, | |||
char * | buf, | |||
size_t | buflen | |||
) |
Definition at line 843 of file gssapictx.c.
Referenced by dst_gssapi_acceptctx(), dst_gssapi_acquirecred(), dst_gssapi_deletectx(), and dst_gssapi_releasecred().
void gss_log | ( | int | level, | |
const char * | fmt, | |||
... | ||||
) |
Definition at line 877 of file gssapictx.c.
References dns_lctx, DNS_LOGCATEGORY_GENERAL, DNS_LOGMODULE_TKEY, ISC_LOG_DEBUG, and isc_log_vwrite().