Lines Matching refs:key
34 * functions provided to retrieve key attributes. If an application needs
70 /*% A buffer of this size is large enough to hold any key */
75 * of any key
80 #define DST_TYPE_KEY 0x1000000 /* KEY key */
104 * Current format version number of the private key parser.
106 * When parsing a key file with the same major number but a higher minor
107 * number, the key parser will ignore any fields it does not recognize.
109 * fields are added to the private key file (such as new metadata).
114 * When a key is seen with a higher major number, the key parser will
120 * alter the functioning of the key if it were absent.
178 dst_context_create(dst_key_t *key, isc_mem_t *mctx, dst_context_t **dctxp);
181 dst_context_create2(dst_key_t *key, isc_mem_t *mctx,
185 dst_context_create3(dst_key_t *key, isc_mem_t *mctx,
190 dst_context_create4(dst_key_t *key, isc_mem_t *mctx,
197 * \li "key" is a valid key.
240 * Computes a signature using the data and key stored in the context.
262 * Verifies the signature using the data and key stored in the context.
286 * \li "pub" is a valid key that can be used to derive a shared secret
287 * \li "priv" is a valid private key that can be used to derive a shared secret
303 * Generates a key filename for the name, algorithm, and
309 * \li "id" is a valid key tag identifier.
310 * \li "alg" is a supported key algorithm.
325 * Reads a key from permanent storage. The key can either be a public or
326 * private key, and is specified by name, algorithm, and id. If a private key
327 * is specified, the public key must also be present. If directory is NULL,
332 * \li "id" is a valid key tag identifier.
333 * \li "alg" is a supported key algorithm.
344 * \li If successful, *keyp will contain a valid key.
351 * Reads a key from permanent storage. The key can either be a public or
352 * key, and is specified by filename. If a private key is specified, the
353 * public key must also be present.
371 * \li If successful, *keyp will contain a valid key.
379 * Reads a public key from permanent storage. The key must be a public key.
389 * \li DST_R_BADKEYTYPE if the key type is not the expected one
390 * \li ISC_R_UNEXPECTEDTOKEN if the file can not be parsed as a public key
394 * \li If successful, *keyp will contain a valid key.
398 dst_key_tofile(const dst_key_t *key, int type, const char *directory);
400 * Writes a key to permanent storage. The key can either be a public or
401 * private key. Public keys are written in DNS format and private keys
406 * \li "key" is a valid key.
418 * Converts a DNS KEY record into a DST key.
431 * \li If successful, *keyp will contain a valid key, and the consumed
436 dst_key_todns(const dst_key_t *key, isc_buffer_t *target);
438 * Converts a DST key into a DNS KEY record.
441 * \li "key" is a valid key.
458 * Converts a buffer containing DNS KEY RDATA into a DST key.
462 *\li "alg" is a supported key algorithm.
472 *\li If successful, *keyp will contain a valid key, and the consumed
477 dst_key_tobuffer(const dst_key_t *key, isc_buffer_t *target);
479 * Converts a DST key into DNS KEY RDATA format.
482 *\li "key" is a valid key.
494 dst_key_privatefrombuffer(dst_key_t *key, isc_buffer_t *buffer);
496 * Converts a public key into a private key, reading the private key
498 * as the .private key file would.
501 *\li "key" is a valid public key.
509 *\li If successful, key will contain a valid private key.
513 dst_key_getgssctx(const dst_key_t *key);
515 * Returns the opaque key data.
519 *\li "key" is not NULL.
522 *\li gssctx key data, possibly NULL.
529 * Converts a GSSAPI opaque context id into a DST key.
542 *\li If successful, *keyp will contain a valid key and be responsible for
576 * Generate a DST key (or keypair) with the supplied parameters. The
601 *\li If successful, *keyp will contain a valid key.
613 *\li "key1" is a valid key.
614 *\li "key2" is a valid key.
627 * determine whether a public key found in a zone matches up with a
628 * key pair found on disk.
634 *\li "key1" is a valid key.
635 *\li "key2" is a valid key.
649 *\li "key1" is a valid key.
650 *\li "key2" is a valid key.
660 * Attach to a existing key increasing the reference count.
663 *\li 'source' to be a valid key.
670 * Decrement the key's reference counter and, when it reaches zero,
671 * release all memory associated with the key.
674 *\li "keyp" is not NULL and "*keyp" is a valid key.
683 * Accessor functions to obtain key fields.
686 *\li "key" is a valid key.
689 dst_key_name(const dst_key_t *key);
692 dst_key_size(const dst_key_t *key);
695 dst_key_proto(const dst_key_t *key);
698 dst_key_alg(const dst_key_t *key);
701 dst_key_flags(const dst_key_t *key);
704 dst_key_id(const dst_key_t *key);
707 dst_key_rid(const dst_key_t *key);
710 dst_key_class(const dst_key_t *key);
713 dst_key_isprivate(const dst_key_t *key);
716 dst_key_iszonekey(const dst_key_t *key);
719 dst_key_isnullkey(const dst_key_t *key);
722 dst_key_buildfilename(const dst_key_t *key, int type,
725 * Generates the filename used by dst to store the specified key.
729 *\li "key" is a valid key
739 dst_key_sigsize(const dst_key_t *key, unsigned int *n);
741 * Computes the size of a signature generated by the given key.
744 *\li "key" is a valid key.
756 dst_key_secretsize(const dst_key_t *key, unsigned int *n);
758 * Computes the size of a shared secret generated by the given key.
761 *\li "key" is a valid key.
777 * Computes the (revoked) key id of the key stored in the provided
784 *\li the key id
788 dst_key_getbits(const dst_key_t *key);
793 * "key" is a valid key.
797 dst_key_setbits(dst_key_t *key, isc_uint16_t bits);
802 * "key" is a valid key.
806 dst_key_setttl(dst_key_t *key, dns_ttl_t ttl);
808 * Set the default TTL to use when converting the key
812 * "key" is a valid key.
816 dst_key_getttl(const dst_key_t *key);
818 * Get the default TTL to use when converting the key
822 * "key" is a valid key.
826 dst_key_setflags(dst_key_t *key, isc_uint32_t flags);
828 * Set the key flags, and recompute the key ID.
831 * "key" is a valid key.
835 dst_key_getnum(const dst_key_t *key, int type, isc_uint32_t *valuep);
840 * "key" is a valid key.
846 dst_key_setnum(dst_key_t *key, int type, isc_uint32_t value);
851 * "key" is a valid key.
856 dst_key_unsetnum(dst_key_t *key, int type);
861 * "key" is a valid key.
866 dst_key_gettime(const dst_key_t *key, int type, isc_stdtime_t *timep);
871 * "key" is a valid key.
877 dst_key_settime(dst_key_t *key, int type, isc_stdtime_t when);
882 * "key" is a valid key.
887 dst_key_unsettime(dst_key_t *key, int type);
892 * "key" is a valid key.
897 dst_key_getprivateformat(const dst_key_t *key, int *majorp, int *minorp);
899 * Get the private key format version number. (If the key does not have
900 * a private key associated with it, the version will be 0.0.) The major
905 * "key" is a valid key.
911 dst_key_setprivateformat(dst_key_t *key, int major, int minor);
913 * Set the private key format version number.
916 * "key" is a valid key.
922 dst_key_format(const dst_key_t *key, char *cp, unsigned int size);
924 * Write the uniquely identifying information about the key (name,
925 * algorithm, key ID) into a string 'cp' of size 'size'.
930 dst_key_tkeytoken(const dst_key_t *key);
932 * Return the token from the TKEY request, if any. If this key was
936 * "key" is a valid key.
941 dst_key_dump(dst_key_t *key, isc_mem_t *mctx, char **buffer, int *length);
943 * Allocate 'buffer' and dump the key into it in base64 format. The buffer
965 dst_key_inactive(const dst_key_t *key);
967 * Determines if the private key is missing due the key being deemed inactive.
970 * 'key' to be valid.
974 dst_key_setinactive(dst_key_t *key, isc_boolean_t inactive);
976 * Set key inactive state.
979 * 'key' to be valid.
983 dst_key_setexternal(dst_key_t *key, isc_boolean_t value);
986 dst_key_isexternal(dst_key_t *key);