* function) uses the rbtree mostly for sequentual walking, this results
* in a speed increase (of 15% on linux) because we have less CPU-cache misses.
*/
-#define FASTER_DNSSEC_ZONE_NEW_FRM_FP 1
+#define FASTER_DNSSEC_ZONE_NEW_FRM_FP 1 /* Because of L2 cache efficiency */
ldns_status
ldns_dnssec_zone_new_frm_fp_l(ldns_dnssec_zone** z, FILE* fp, ldns_rdf* origin,
ldns_status status = LDNS_STATUS_MEM_ERR;
#ifdef FASTER_DNSSEC_ZONE_NEW_FRM_FP
- ldns_zone* zone;
+ ldns_zone* zone = NULL;
if (ldns_zone_new_frm_fp_l(&zone, fp, origin,ttl, c, line_nr)
!= LDNS_STATUS_OK) goto error;
#else
return LDNS_STATUS_OK;
error:
+#ifdef FASTER_DNSSEC_ZONE_NEW_FRM_FP
+ if (zone) {
+ ldns_zone_free(zone);
+ }
+#endif
if (my_origin) {
ldns_rdf_deep_free(my_origin);
}
bool exact_match_found;
bool in_range_found;
- ldns_rdf *zone_name;
+ ldns_rdf *zone_name = NULL;
size_t nsec_i;
ldns_rr *nsec;
.TP
\fB-e\fR \fIperiod\fR
Signatures may not expire within this period.
+Default no period is used.
.TP
\fB-i\fR \fIperiod\fR
Signatures must have been valid at least this long.
+Default signatures should just be valid now.
.TP
\fB-k\fR \fIfile\fR
5: Print the zone after it has been read, the result,
any errors, and the names that are being checked
+.LP
+\fIperiod\fRs are given in ISO 8601 duration format:
+.RS
+P[n]Y[n]M[n]DT[n]H[n]M[n]S
+.RE
+.LP
+If no file is given standard input is read.
.SH AUTHOR
Written by the ldns team as an example for ldns usage.
printf("\t-a\t\tapex only, "
"check only the zone apex\n");
printf("\t-e <period>\tsignatures may not expire "
- "within this period.\n");
+ "within this period.\n\t\t\t"
+ "(default no period is used)\n");
printf("\t-i <period>\tsignatures must have been "
- "valid at least this long.\n");
+ "valid at least this long.\n\t\t\t"
+ "(default signatures should just be valid "
+ "now)\n");
printf("\t-k <file>\tspecify a file that contains a "
"trusted DNSKEY or DS rr.\n\t\t\t"
"This option may be given more than once.\n");