tsig.h

Go to the documentation of this file.
00001 /*
00002  * tsig.h -- defines for TSIG [RFC2845]
00003  *
00004  * Copyright (c) 2001-2005, NLnet Labs. All rights reserved.
00005  *
00006  * See LICENSE for the license.
00007  */
00008 
00009 #ifndef _LDNS_TSIG_H_
00010 #define _LDNS_TSIG_H_
00011 
00012 #include <ldns/common.h>
00013 #include <ldns/dns.h>
00014 #include <ldns/packet.h>
00015 #include <ldns/zone.h>
00016 
00017 typedef struct _ldns_tsig_credentials 
00018 {
00019     char *algorithm;
00020     char *keyname;
00021     char *keydata;
00022     /* XXX More eventually. */
00023 } ldns_tsig_credentials;
00024 
00025 char *ldns_tsig_algorithm(ldns_tsig_credentials *);
00026 char *ldns_tsig_keyname(ldns_tsig_credentials *);
00027 char *ldns_tsig_keydata(ldns_tsig_credentials *);
00028 char *ldns_tsig_keyname_clone(ldns_tsig_credentials *);
00029 char *ldns_tsig_keydata_clone(ldns_tsig_credentials *);
00030 
00037 bool ldns_pkt_tsig_verify(ldns_pkt *pkt, uint8_t *wire, size_t wire_size,
00038     const char *key_name, const char *key_data, ldns_rdf *mac);
00039 
00050 ldns_status ldns_pkt_tsig_sign(ldns_pkt *pkt, const char *key_name,
00051     const char *key_data, uint16_t fudge, const char *algorithm_name,
00052     ldns_rdf *query_mac);
00053 
00054 #endif /* _LDNS_TSIG_H_ */

Generated on Mon Feb 20 15:41:27 2006 for ldns by  doxygen 1.4.6