Lines Matching refs:ipseckey

282 	dns_rdata_ipseckey_t *ipseckey = source;
288 REQUIRE(ipseckey->common.rdtype == type);
289 REQUIRE(ipseckey->common.rdclass == rdclass);
294 if (ipseckey->gateway_type > 3U)
297 RETERR(uint8_tobuffer(ipseckey->precedence, target));
298 RETERR(uint8_tobuffer(ipseckey->gateway_type, target));
299 RETERR(uint8_tobuffer(ipseckey->algorithm, target));
301 switch (ipseckey->gateway_type) {
306 n = ntohl(ipseckey->in_addr.s_addr);
311 RETERR(mem_tobuffer(target, ipseckey->in6_addr.s6_addr, 16));
315 dns_name_toregion(&ipseckey->gateway, &region);
320 return (mem_tobuffer(target, ipseckey->key, ipseckey->keylength));
326 dns_rdata_ipseckey_t *ipseckey = target;
337 ipseckey->common.rdclass = rdata->rdclass;
338 ipseckey->common.rdtype = rdata->type;
339 ISC_LINK_INIT(&ipseckey->common, link);
344 ipseckey->precedence = uint8_fromregion(&region);
347 ipseckey->gateway_type = uint8_fromregion(&region);
350 ipseckey->algorithm = uint8_fromregion(&region);
353 switch (ipseckey->gateway_type) {
359 ipseckey->in_addr.s_addr = htonl(n);
364 memmove(ipseckey->in6_addr.s6_addr, region.base, 16);
369 dns_name_init(&ipseckey->gateway, NULL);
371 RETERR(name_duporclone(&name, mctx, &ipseckey->gateway));
376 ipseckey->keylength = region.length;
377 if (ipseckey->keylength != 0U) {
378 ipseckey->key = mem_maybedup(mctx, region.base,
379 ipseckey->keylength);
380 if (ipseckey->key == NULL) {
381 if (ipseckey->gateway_type == 3)
382 dns_name_free(&ipseckey->gateway,
383 ipseckey->mctx);
387 ipseckey->key = NULL;
389 ipseckey->mctx = mctx;
395 dns_rdata_ipseckey_t *ipseckey = source;
398 REQUIRE(ipseckey->common.rdtype == 45);
400 if (ipseckey->mctx == NULL)
403 if (ipseckey->gateway_type == 3)
404 dns_name_free(&ipseckey->gateway, ipseckey->mctx);
406 if (ipseckey->key != NULL)
407 isc_mem_free(ipseckey->mctx, ipseckey->key);
409 ipseckey->mctx = NULL;