Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00034 #ifndef SIGNER_NSEC3PARAMS_H
00035 #define SIGNER_NSEC3PARAMS_H
00036
00037 #include "config.h"
00038 #include "shared/allocator.h"
00039 #include "shared/status.h"
00040
00041 #include <ctype.h>
00042 #include <stdint.h>
00043 #ifdef HAVE_SYS_TYPES_H
00044 # include <sys/types.h>
00045 #endif
00046 #ifdef HAVE_UNISTD_H
00047 # include <unistd.h>
00048 #endif
00049
00050 #include <ldns/ldns.h>
00051
00055 typedef struct nsec3params_struct nsec3params_type;
00056 struct nsec3params_struct {
00057 allocator_type* allocator;
00058 uint8_t algorithm;
00059 uint8_t flags;
00060 uint16_t iterations;
00061 uint8_t salt_len;
00062 uint8_t* salt_data;
00063 ldns_rr* rr;
00064 };
00065
00074 ods_status nsec3params_create_salt(const char* salt_str, uint8_t* salt_len,
00075 uint8_t** salt);
00076
00086 nsec3params_type* nsec3params_create(uint8_t algo, uint8_t flags,
00087 uint16_t iter, const char* salt);
00088
00099 void nsec3params_backup(FILE* fd, uint8_t algo, uint8_t flags,
00100 uint16_t iter, const char* salt, ldns_rr* rr);
00101
00109 nsec3params_type* nsec3params_recover_from_backup(FILE* fd, ldns_rr** rr);
00110
00117 const char* nsec3params_salt2str(nsec3params_type* nsec3params);
00118
00124 void nsec3params_cleanup(nsec3params_type* nsec3params);
00125
00126 #endif