tsig.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009 #ifndef LDNS_TSIG_H
00010 #define LDNS_TSIG_H
00011
00012 #ifdef __cplusplus
00013 extern "C" {
00014 #endif
00015
00026 typedef struct ldns_tsig_credentials_struct
00027 {
00028 char *algorithm;
00029 char *keyname;
00030 char *keydata;
00031
00032 } ldns_tsig_credentials;
00033
00034 char *ldns_tsig_algorithm(ldns_tsig_credentials *);
00035 char *ldns_tsig_keyname(ldns_tsig_credentials *);
00036 char *ldns_tsig_keydata(ldns_tsig_credentials *);
00037 char *ldns_tsig_keyname_clone(ldns_tsig_credentials *);
00038 char *ldns_tsig_keydata_clone(ldns_tsig_credentials *);
00039
00051 bool ldns_pkt_tsig_verify(ldns_pkt *pkt, uint8_t *wire, size_t wire_size, const char *key_name, const char *key_data, ldns_rdf *mac);
00052
00066 bool ldns_pkt_tsig_verify_next(ldns_pkt *pkt, uint8_t *wire, size_t wire_size, const char *key_name, const char *key_data, ldns_rdf *mac,
00067 int tsig_timers_only);
00068
00079 ldns_status ldns_pkt_tsig_sign(ldns_pkt *pkt, const char *key_name, const char *key_data, uint16_t fudge,
00080 const char *algorithm_name, ldns_rdf *query_mac);
00081
00094 ldns_status ldns_pkt_tsig_sign_next(ldns_pkt *pkt, const char *key_name, const char *key_data, uint16_t fudge,
00095 const char *algorithm_name, ldns_rdf *query_mac, int tsig_timers_only);
00096
00097 #ifdef __cplusplus
00098 }
00099 #endif
00100
00101 #endif