45 fprintf(stderr,
"usage: %s [-c config] [-gsdr]\n",
progname);
49 main (
int argc,
char *argv[])
59 ldns_rr *rr, *sig, *dnskey_rr;
73 const char *repository =
"default";
79 while ((ch = getopt(argc, argv,
"hgsdrc:")) != -1) {
114 fprintf(stdout,
"Starting HSM lib test\n");
116 fprintf(stdout,
"hsm_open result: %d\n", result);
134 printf(
"\nCreated key!\n");
138 printf(
"Error creating key, bad token name?\n");
142 }
else if (do_sign || do_delete) {
144 printf(
"I have found %u keys\n", (
unsigned int) key_count);
147 for (i = 0; i < key_count && !key; i++) {
148 printf(
"\nFound key!\n");
154 printf(
"Using key ID: %s\n",
id);
157 printf(
"ptr: 0x%p\n", (
void *) key);
160 printf(
"Got no key ID (broken key?), skipped...\n");
168 printf(
"Failed to find useful key\n");
177 printf(
"\nSigning with:\n");
181 rrset = ldns_rr_list_new();
183 status = ldns_rr_new_frm_str(&rr,
"regress.opendnssec.se. IN A 123.123.123.123", 0, NULL, NULL);
184 if (status == LDNS_STATUS_OK) ldns_rr_list_push_rr(rrset, rr);
185 status = ldns_rr_new_frm_str(&rr,
"regress.opendnssec.se. IN A 124.124.124.124", 0, NULL, NULL);
186 if (status == LDNS_STATUS_OK) ldns_rr_list_push_rr(rrset, rr);
190 sign_params->
owner = ldns_rdf_new_frm_str(LDNS_RDF_TYPE_DNAME,
"opendnssec.se.");
192 sign_params->
keytag = ldns_calc_keytag(dnskey_rr);
196 ldns_rr_list_print(stdout, rrset);
197 ldns_rr_print(stdout, sig);
198 ldns_rr_print(stdout, dnskey_rr);
206 ldns_rr_list_deep_free(rrset);
208 ldns_rr_free(dnskey_rr);
215 printf(
"\nDelete key:\n");
219 printf(
"Deleted key. Result: %d\n", res);
230 printf(
"random 32: %u\n", r32);
232 printf(
"random 64: %llu\n", (
long long unsigned int)r64);
246 fprintf(stdout,
"all done! hsm_close result: %d\n", result);
248 if (config) free(config);