Compare commits

...
Sign in to create a new pull request.

8 commits

Author SHA1 Message Date
Miro Hrončok
cd760e0427 Retired: Long term failure to build 2023-02-10 22:22:11 +01:00
Fedora Release Engineering
af91f75952 Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2023-01-21 06:06:06 +00:00
Fedora Release Engineering
5aba988c22 Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2022-07-23 11:40:37 +00:00
Fedora Release Engineering
27b5ec9d99 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2022-01-22 03:46:56 +00:00
Sahana Prasad
4f175e26ce Rebuilt with OpenSSL 3.0.0 2021-09-14 19:17:24 +02:00
Fedora Release Engineering
4470910255 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2021-07-23 20:17:25 +00:00
Fedora Release Engineering
3125898a75 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2021-01-27 22:53:51 +00:00
Tom Stellard
2fa23df016 Add BuildRequires: make
https://fedoraproject.org/wiki/Changes/Remove_make_from_BuildRoot
2021-01-09 00:33:46 +00:00
14 changed files with 1 additions and 27543 deletions

6
.gitignore vendored
View file

@ -1,6 +0,0 @@
/validns-0.3.tar.gz
/validns-0.4.tar.gz
/validns-0.5.tar.gz
/validns-0.6.tar.gz
/validns-0.7.tar.gz
/validns-0.8.tar.gz

1
dead.package Normal file
View file

@ -0,0 +1 @@
Retired: Long term failure to build

View file

@ -1 +0,0 @@
3de6669b1c8794b21c25425d22215a9d validns-0.8.tar.gz

File diff suppressed because it is too large Load diff

View file

@ -1,82 +0,0 @@
diff -Naur validns-0.6-orig/common.h validns-0.6/common.h
--- validns-0.6-orig/common.h 2012-08-13 05:37:10.000000000 -0400
+++ validns-0.6/common.h 2012-10-11 22:56:19.744337127 -0400
@@ -51,6 +51,7 @@
int die_on_first_error;
int no_output;
int summary;
+ int notiming;
int verbose;
char *include_path;
char *current_origin;
diff -Naur validns-0.6-orig/main.c validns-0.6/main.c
--- validns-0.6-orig/main.c 2012-10-04 06:52:25.000000000 -0400
+++ validns-0.6/main.c 2012-10-11 22:57:32.759118220 -0400
@@ -251,6 +251,7 @@
fprintf(stderr, "\t-n N\t\tuse N worker threads\n");
fprintf(stderr, "\t-q\t\tquiet - do not produce any output\n");
fprintf(stderr, "\t-s\t\tprint validation summary/stats\n");
+ fprintf(stderr, "\t-x\t\tskip printing 'time taken' entry in summary/stats\n");
fprintf(stderr, "\t-v\t\tbe extra verbose\n");
fprintf(stderr, "\t-I path\tuse this path for $INCLUDE files\n");
fprintf(stderr, "\t-z origin\tuse this origin as initial $ORIGIN\n");
@@ -311,7 +312,7 @@
initialize_globals();
struct timeval start, stop;
- while ((o = getopt(argc, argv, "fhqsvI:z:t:p:n:")) != -1) {
+ while ((o = getopt(argc, argv, "fhqsxvI:z:t:p:n:")) != -1) {
switch(o) {
case 'h':
usage(NULL);
@@ -325,6 +326,9 @@
case 's':
G.opt.summary = 1;
break;
+ case 'x':
+ G.opt.notiming = 1;
+ break;
case 'v':
G.opt.verbose = 1;
break;
@@ -412,8 +416,11 @@
" %d\n", G.stats.not_authoritative);
printf("validation errors: %d\n", G.stats.error_count);
printf("signatures verified: %d\n", G.stats.signatures_verified);
- printf("time taken: %.3fs\n",
+
+ if (!G.opt.notiming) {
+ printf("time taken: %.3fs\n",
stop.tv_sec - start.tv_sec + (stop.tv_usec - start.tv_usec)/1000000.);
+ }
}
return G.exit_code;
}
diff -Naur validns-0.6-orig/usage.mdwn validns-0.6/usage.mdwn
--- validns-0.6-orig/usage.mdwn 2012-10-04 10:52:43.000000000 -0400
+++ validns-0.6/usage.mdwn 2012-10-11 22:58:30.330728403 -0400
@@ -61,6 +61,9 @@
-s
: print validation summary/stats
+-x
+: skip printing 'time taken' in summary/stats
+
-v
: be extra verbose
diff -Naur validns-0.6-orig/validns.1 validns-0.6/validns.1
--- validns-0.6-orig/validns.1 2012-10-04 10:53:32.000000000 -0400
+++ validns-0.6/validns.1 2012-10-11 23:00:20.511885836 -0400
@@ -73,6 +73,11 @@
.RS
.RE
.TP
+.B -x
+skip printing timing summary/stats
+.RS
+.RE
+.TP
.B -v
be extra verbose
.RS

View file

@ -1,81 +0,0 @@
diff -Naur validns-0.7-orig/common.h validns-0.7/common.h
--- validns-0.7-orig/common.h 2013-02-21 09:36:04.000000000 -0500
+++ validns-0.7/common.h 2013-04-16 12:49:00.211645012 -0400
@@ -51,6 +51,7 @@
int die_on_first_error;
int no_output;
int summary;
+ int notiming;
int verbose;
char *include_path;
char *current_origin;
diff -Naur validns-0.7-orig/main.c validns-0.7/main.c
--- validns-0.7-orig/main.c 2013-04-11 14:33:53.000000000 -0400
+++ validns-0.7/main.c 2013-04-16 12:50:46.210022408 -0400
@@ -251,6 +251,7 @@
fprintf(stderr, "\t-n N\t\tuse N worker threads\n");
fprintf(stderr, "\t-q\t\tquiet - do not produce any output\n");
fprintf(stderr, "\t-s\t\tprint validation summary/stats\n");
+ fprintf(stderr, "\t-x\t\tskip printing 'time taken' entry in summary/stats\n");
fprintf(stderr, "\t-v\t\tbe extra verbose\n");
fprintf(stderr, "\t-I path\tuse this path for $INCLUDE files\n");
fprintf(stderr, "\t-z origin\tuse this origin as initial $ORIGIN\n");
@@ -325,7 +326,7 @@
struct timeval start, stop;
initialize_globals();
- while ((o = getopt(argc, argv, "fhqsvI:z:t:p:n:")) != -1) {
+ while ((o = getopt(argc, argv, "fhqsxvI:z:t:p:n:")) != -1) {
switch(o) {
case 'h':
usage(NULL);
@@ -339,6 +340,9 @@
case 's':
G.opt.summary = 1;
break;
+ case 'x':
+ G.opt.notiming = 1;
+ break;
case 'v':
G.opt.verbose = 1;
break;
@@ -426,8 +430,10 @@
" %d\n", G.stats.not_authoritative);
printf("validation errors: %d\n", G.stats.error_count);
printf("signatures verified: %d\n", G.stats.signatures_verified);
- printf("time taken: %.3fs\n",
+ if (!G.opt.notiming) {
+ printf("time taken: %.3fs\n",
stop.tv_sec - start.tv_sec + (stop.tv_usec - start.tv_usec)/1000000.);
+ }
}
return G.exit_code;
}
diff -Naur validns-0.7-orig/usage.mdwn validns-0.7/usage.mdwn
--- validns-0.7-orig/usage.mdwn 2013-04-16 06:36:45.000000000 -0400
+++ validns-0.7/usage.mdwn 2013-04-16 12:51:12.528364293 -0400
@@ -61,6 +61,9 @@
-s
: print validation summary/stats
+-x
+: skip printing 'time taken' in summary/stats
+
-v
: be extra verbose
diff -Naur validns-0.7-orig/validns.1 validns-0.7/validns.1
--- validns-0.7-orig/validns.1 2013-04-16 06:36:58.000000000 -0400
+++ validns-0.7/validns.1 2013-04-16 12:51:36.963681678 -0400
@@ -73,6 +73,11 @@
.RS
.RE
.TP
+.B -x
+skip printing timing summary/stats
+.RS
+.RE
+.TP
.B -v
be extra verbose
.RS

View file

@ -1,250 +0,0 @@
Don't override CFLAGS and CPPFLAGS from the environment (needed for http://wiki.debian.org/Hardening).
Also respect LDFLAGS.
--- a/Makefile
+++ b/Makefile
@@ -1,7 +1,7 @@
# The following options seem to work fine on Linux, FreeBSD, and Darwin
-OPTIMIZE=-O2 -g
-CFLAGS=-Wall -Werror -pthread -fno-strict-aliasing
-INCPATH=-I/usr/local/include -I/opt/local/include -I/usr/local/ssl/include
+OPTIMIZE+=-O2 -g
+CFLAGS+=-Wall -Werror -pthread -fno-strict-aliasing
+INCPATH+=-I/usr/local/include -I/opt/local/include -I/usr/local/ssl/include
CC?=cc
# These additional options work on Solaris/gcc to which I have an access
@@ -28,7 +28,7 @@
ipseckey.o cbtree.o mb.o mg.o mr.o minfo.o \
afsdb.o x25.o isdn.o rt.o px.o kx.o \
dlv.o dhcid.o nsap.o
- $(CC) $(CFLAGS) $(OPTIMIZE) -o validns \
+ $(CC) $(LDFLAGS) $(CPPFLAGS) $(CFLAGS) $(OPTIMIZE) -o validns \
main.o carp.o mempool.o textparse.o base64.o base32hex.o \
rr.o soa.o a.o cname.o mx.o ns.o \
rrsig.o nsec.o dnskey.o txt.o aaaa.o \
@@ -58,160 +58,160 @@
@echo ':-)'
main.o: main.c common.h carp.h mempool.h textparse.h rr.h
- $(CC) $(CFLAGS) $(OPTIMIZE) -c -o main.o main.c $(INCPATH)
+ $(CC) $(CPPFLAGS) $(CFLAGS) $(OPTIMIZE) -c -o main.o main.c $(INCPATH)
carp.o: carp.c carp.h common.h
- $(CC) $(CFLAGS) $(OPTIMIZE) -c -o carp.o carp.c $(INCPATH)
+ $(CC) $(CPPFLAGS) $(CFLAGS) $(OPTIMIZE) -c -o carp.o carp.c $(INCPATH)
mempool.o: mempool.c mempool.h carp.h
- $(CC) $(CFLAGS) $(OPTIMIZE) -c -o mempool.o mempool.c $(INCPATH)
+ $(CC) $(CPPFLAGS) $(CFLAGS) $(OPTIMIZE) -c -o mempool.o mempool.c $(INCPATH)
textparse.o: textparse.c common.h carp.h mempool.h textparse.h base64.h
- $(CC) $(CFLAGS) $(OPTIMIZE) -c -o textparse.o textparse.c $(INCPATH)
+ $(CC) $(CPPFLAGS) $(CFLAGS) $(OPTIMIZE) -c -o textparse.o textparse.c $(INCPATH)
base64.o: base64.c base64.h
- $(CC) $(CFLAGS) $(OPTIMIZE) -c -o base64.o base64.c $(INCPATH)
+ $(CC) $(CPPFLAGS) $(CFLAGS) $(OPTIMIZE) -c -o base64.o base64.c $(INCPATH)
base32hex.o: base32hex.c base32hex.h
- $(CC) $(CFLAGS) $(OPTIMIZE) -c -o base32hex.o base32hex.c $(INCPATH)
+ $(CC) $(CPPFLAGS) $(CFLAGS) $(OPTIMIZE) -c -o base32hex.o base32hex.c $(INCPATH)
rr.o: rr.c common.h mempool.h carp.h textparse.h rr.h
- $(CC) $(CFLAGS) $(OPTIMIZE) -c -o rr.o rr.c $(INCPATH)
+ $(CC) $(CPPFLAGS) $(CFLAGS) $(OPTIMIZE) -c -o rr.o rr.c $(INCPATH)
soa.o: soa.c common.h textparse.h mempool.h carp.h rr.h
- $(CC) $(CFLAGS) $(OPTIMIZE) -c -o soa.o soa.c $(INCPATH)
+ $(CC) $(CPPFLAGS) $(CFLAGS) $(OPTIMIZE) -c -o soa.o soa.c $(INCPATH)
a.o: a.c common.h textparse.h mempool.h carp.h rr.h
- $(CC) $(CFLAGS) $(OPTIMIZE) -c -o a.o a.c $(INCPATH)
+ $(CC) $(CPPFLAGS) $(CFLAGS) $(OPTIMIZE) -c -o a.o a.c $(INCPATH)
cname.o: cname.c common.h textparse.h mempool.h carp.h rr.h
- $(CC) $(CFLAGS) $(OPTIMIZE) -c -o cname.o cname.c $(INCPATH)
+ $(CC) $(CPPFLAGS) $(CFLAGS) $(OPTIMIZE) -c -o cname.o cname.c $(INCPATH)
mb.o: mb.c common.h textparse.h mempool.h carp.h rr.h
- $(CC) $(CFLAGS) $(OPTIMIZE) -c -o mb.o mb.c $(INCPATH)
+ $(CC) $(CPPFLAGS) $(CFLAGS) $(OPTIMIZE) -c -o mb.o mb.c $(INCPATH)
mg.o: mg.c common.h textparse.h mempool.h carp.h rr.h
- $(CC) $(CFLAGS) $(OPTIMIZE) -c -o mg.o mg.c $(INCPATH)
+ $(CC) $(CPPFLAGS) $(CFLAGS) $(OPTIMIZE) -c -o mg.o mg.c $(INCPATH)
minfo.o: minfo.c common.h textparse.h mempool.h carp.h rr.h
- $(CC) $(CFLAGS) $(OPTIMIZE) -c -o minfo.o minfo.c $(INCPATH)
+ $(CC) $(CPPFLAGS) $(CFLAGS) $(OPTIMIZE) -c -o minfo.o minfo.c $(INCPATH)
mr.o: mr.c common.h textparse.h mempool.h carp.h rr.h
- $(CC) $(CFLAGS) $(OPTIMIZE) -c -o mr.o mr.c $(INCPATH)
+ $(CC) $(CPPFLAGS) $(CFLAGS) $(OPTIMIZE) -c -o mr.o mr.c $(INCPATH)
mx.o: mx.c common.h textparse.h mempool.h carp.h rr.h
- $(CC) $(CFLAGS) $(OPTIMIZE) -c -o mx.o mx.c $(INCPATH)
+ $(CC) $(CPPFLAGS) $(CFLAGS) $(OPTIMIZE) -c -o mx.o mx.c $(INCPATH)
afsdb.o: afsdb.c common.h textparse.h mempool.h carp.h rr.h
- $(CC) $(CFLAGS) $(OPTIMIZE) -c -o afsdb.o afsdb.c $(INCPATH)
+ $(CC) $(CPPFLAGS) $(CFLAGS) $(OPTIMIZE) -c -o afsdb.o afsdb.c $(INCPATH)
x25.o: x25.c common.h textparse.h mempool.h carp.h rr.h
- $(CC) $(CFLAGS) $(OPTIMIZE) -c -o x25.o x25.c $(INCPATH)
+ $(CC) $(CPPFLAGS) $(CFLAGS) $(OPTIMIZE) -c -o x25.o x25.c $(INCPATH)
isdn.o: isdn.c common.h textparse.h mempool.h carp.h rr.h
- $(CC) $(CFLAGS) $(OPTIMIZE) -c -o isdn.o isdn.c $(INCPATH)
+ $(CC) $(CPPFLAGS) $(CFLAGS) $(OPTIMIZE) -c -o isdn.o isdn.c $(INCPATH)
rt.o: rt.c common.h textparse.h mempool.h carp.h rr.h
- $(CC) $(CFLAGS) $(OPTIMIZE) -c -o rt.o rt.c $(INCPATH)
+ $(CC) $(CPPFLAGS) $(CFLAGS) $(OPTIMIZE) -c -o rt.o rt.c $(INCPATH)
px.o: px.c common.h textparse.h mempool.h carp.h rr.h
- $(CC) $(CFLAGS) $(OPTIMIZE) -c -o px.o px.c $(INCPATH)
+ $(CC) $(CPPFLAGS) $(CFLAGS) $(OPTIMIZE) -c -o px.o px.c $(INCPATH)
kx.o: kx.c common.h textparse.h mempool.h carp.h rr.h
- $(CC) $(CFLAGS) $(OPTIMIZE) -c -o kx.o kx.c $(INCPATH)
+ $(CC) $(CPPFLAGS) $(CFLAGS) $(OPTIMIZE) -c -o kx.o kx.c $(INCPATH)
dlv.o: dlv.c common.h textparse.h mempool.h carp.h rr.h
- $(CC) $(CFLAGS) $(OPTIMIZE) -c -o dlv.o dlv.c $(INCPATH)
+ $(CC) $(CPPFLAGS) $(CFLAGS) $(OPTIMIZE) -c -o dlv.o dlv.c $(INCPATH)
dhcid.o: dhcid.c common.h textparse.h mempool.h carp.h rr.h
- $(CC) $(CFLAGS) $(OPTIMIZE) -c -o dhcid.o dhcid.c $(INCPATH)
+ $(CC) $(CPPFLAGS) $(CFLAGS) $(OPTIMIZE) -c -o dhcid.o dhcid.c $(INCPATH)
nsap.o: nsap.c common.h textparse.h mempool.h carp.h rr.h
- $(CC) $(CFLAGS) $(OPTIMIZE) -c -o nsap.o nsap.c $(INCPATH)
+ $(CC) $(CPPFLAGS) $(CFLAGS) $(OPTIMIZE) -c -o nsap.o nsap.c $(INCPATH)
ns.o: ns.c common.h textparse.h mempool.h carp.h rr.h
- $(CC) $(CFLAGS) $(OPTIMIZE) -c -o ns.o ns.c $(INCPATH)
+ $(CC) $(CPPFLAGS) $(CFLAGS) $(OPTIMIZE) -c -o ns.o ns.c $(INCPATH)
rrsig.o: rrsig.c common.h textparse.h mempool.h carp.h rr.h
- $(CC) $(CFLAGS) $(OPTIMIZE) -c -o rrsig.o rrsig.c $(INCPATH)
+ $(CC) $(CPPFLAGS) $(CFLAGS) $(OPTIMIZE) -c -o rrsig.o rrsig.c $(INCPATH)
nsec.o: nsec.c common.h textparse.h mempool.h carp.h rr.h
- $(CC) $(CFLAGS) $(OPTIMIZE) -c -o nsec.o nsec.c $(INCPATH)
+ $(CC) $(CPPFLAGS) $(CFLAGS) $(OPTIMIZE) -c -o nsec.o nsec.c $(INCPATH)
dnskey.o: dnskey.c common.h textparse.h mempool.h carp.h rr.h
- $(CC) $(CFLAGS) $(OPTIMIZE) -c -o dnskey.o dnskey.c $(INCPATH)
+ $(CC) $(CPPFLAGS) $(CFLAGS) $(OPTIMIZE) -c -o dnskey.o dnskey.c $(INCPATH)
txt.o: txt.c common.h textparse.h mempool.h carp.h rr.h
- $(CC) $(CFLAGS) $(OPTIMIZE) -c -o txt.o txt.c $(INCPATH)
+ $(CC) $(CPPFLAGS) $(CFLAGS) $(OPTIMIZE) -c -o txt.o txt.c $(INCPATH)
aaaa.o: aaaa.c common.h textparse.h mempool.h carp.h rr.h
- $(CC) $(CFLAGS) $(OPTIMIZE) -c -o aaaa.o aaaa.c $(INCPATH)
+ $(CC) $(CPPFLAGS) $(CFLAGS) $(OPTIMIZE) -c -o aaaa.o aaaa.c $(INCPATH)
naptr.o: naptr.c common.h textparse.h mempool.h carp.h rr.h
- $(CC) $(CFLAGS) $(OPTIMIZE) -c -o naptr.o naptr.c $(INCPATH)
+ $(CC) $(CPPFLAGS) $(CFLAGS) $(OPTIMIZE) -c -o naptr.o naptr.c $(INCPATH)
srv.o: srv.c common.h textparse.h mempool.h carp.h rr.h
- $(CC) $(CFLAGS) $(OPTIMIZE) -c -o srv.o srv.c $(INCPATH)
+ $(CC) $(CPPFLAGS) $(CFLAGS) $(OPTIMIZE) -c -o srv.o srv.c $(INCPATH)
nsec3param.o: nsec3param.c common.h textparse.h mempool.h carp.h rr.h
- $(CC) $(CFLAGS) $(OPTIMIZE) -c -o nsec3param.o nsec3param.c $(INCPATH)
+ $(CC) $(CPPFLAGS) $(CFLAGS) $(OPTIMIZE) -c -o nsec3param.o nsec3param.c $(INCPATH)
nsec3.o: nsec3.c common.h textparse.h mempool.h carp.h rr.h
- $(CC) $(CFLAGS) $(OPTIMIZE) -c -o nsec3.o nsec3.c $(INCPATH)
+ $(CC) $(CPPFLAGS) $(CFLAGS) $(OPTIMIZE) -c -o nsec3.o nsec3.c $(INCPATH)
ds.o: ds.c common.h textparse.h mempool.h carp.h rr.h
- $(CC) $(CFLAGS) $(OPTIMIZE) -c -o ds.o ds.c $(INCPATH)
+ $(CC) $(CPPFLAGS) $(CFLAGS) $(OPTIMIZE) -c -o ds.o ds.c $(INCPATH)
hinfo.o: hinfo.c common.h textparse.h mempool.h carp.h rr.h
- $(CC) $(CFLAGS) $(OPTIMIZE) -c -o hinfo.o hinfo.c $(INCPATH)
+ $(CC) $(CPPFLAGS) $(CFLAGS) $(OPTIMIZE) -c -o hinfo.o hinfo.c $(INCPATH)
loc.o: loc.c common.h textparse.h mempool.h carp.h rr.h
- $(CC) $(CFLAGS) $(OPTIMIZE) -c -o loc.o loc.c $(INCPATH)
+ $(CC) $(CPPFLAGS) $(CFLAGS) $(OPTIMIZE) -c -o loc.o loc.c $(INCPATH)
nsec3checks.o: nsec3checks.c common.h textparse.h mempool.h carp.h rr.h
- $(CC) $(CFLAGS) $(OPTIMIZE) -c -o nsec3checks.o nsec3checks.c $(INCPATH)
+ $(CC) $(CPPFLAGS) $(CFLAGS) $(OPTIMIZE) -c -o nsec3checks.o nsec3checks.c $(INCPATH)
ptr.o: ptr.c common.h textparse.h mempool.h carp.h rr.h
- $(CC) $(CFLAGS) $(OPTIMIZE) -c -o ptr.o ptr.c $(INCPATH)
+ $(CC) $(CPPFLAGS) $(CFLAGS) $(OPTIMIZE) -c -o ptr.o ptr.c $(INCPATH)
sshfp.o: sshfp.c common.h textparse.h mempool.h carp.h rr.h
- $(CC) $(CFLAGS) $(OPTIMIZE) -c -o sshfp.o sshfp.c $(INCPATH)
+ $(CC) $(CPPFLAGS) $(CFLAGS) $(OPTIMIZE) -c -o sshfp.o sshfp.c $(INCPATH)
rp.o: rp.c common.h textparse.h mempool.h carp.h rr.h
- $(CC) $(CFLAGS) $(OPTIMIZE) -c -o rp.o rp.c $(INCPATH)
+ $(CC) $(CPPFLAGS) $(CFLAGS) $(OPTIMIZE) -c -o rp.o rp.c $(INCPATH)
spf.o: spf.c common.h textparse.h mempool.h carp.h rr.h
- $(CC) $(CFLAGS) $(OPTIMIZE) -c -o spf.o spf.c $(INCPATH)
+ $(CC) $(CPPFLAGS) $(CFLAGS) $(OPTIMIZE) -c -o spf.o spf.c $(INCPATH)
cert.o: cert.c common.h textparse.h mempool.h carp.h rr.h
- $(CC) $(CFLAGS) $(OPTIMIZE) -c -o cert.o cert.c $(INCPATH)
+ $(CC) $(CPPFLAGS) $(CFLAGS) $(OPTIMIZE) -c -o cert.o cert.c $(INCPATH)
dname.o: dname.c common.h textparse.h mempool.h carp.h rr.h
- $(CC) $(CFLAGS) $(OPTIMIZE) -c -o dname.o dname.c $(INCPATH)
+ $(CC) $(CPPFLAGS) $(CFLAGS) $(OPTIMIZE) -c -o dname.o dname.c $(INCPATH)
tlsa.o: tlsa.c common.h textparse.h mempool.h carp.h rr.h
- $(CC) $(CFLAGS) $(OPTIMIZE) -c -o tlsa.o tlsa.c $(INCPATH)
+ $(CC) $(CPPFLAGS) $(CFLAGS) $(OPTIMIZE) -c -o tlsa.o tlsa.c $(INCPATH)
nid.o: nid.c common.h textparse.h mempool.h carp.h rr.h
- $(CC) $(CFLAGS) $(OPTIMIZE) -c -o nid.o nid.c $(INCPATH)
+ $(CC) $(CPPFLAGS) $(CFLAGS) $(OPTIMIZE) -c -o nid.o nid.c $(INCPATH)
l32.o: l32.c common.h textparse.h mempool.h carp.h rr.h
- $(CC) $(CFLAGS) $(OPTIMIZE) -c -o l32.o l32.c $(INCPATH)
+ $(CC) $(CPPFLAGS) $(CFLAGS) $(OPTIMIZE) -c -o l32.o l32.c $(INCPATH)
l64.o: l64.c common.h textparse.h mempool.h carp.h rr.h
- $(CC) $(CFLAGS) $(OPTIMIZE) -c -o l64.o l64.c $(INCPATH)
+ $(CC) $(CPPFLAGS) $(CFLAGS) $(OPTIMIZE) -c -o l64.o l64.c $(INCPATH)
lp.o: lp.c common.h textparse.h mempool.h carp.h rr.h
- $(CC) $(CFLAGS) $(OPTIMIZE) -c -o lp.o lp.c $(INCPATH)
+ $(CC) $(CPPFLAGS) $(CFLAGS) $(OPTIMIZE) -c -o lp.o lp.c $(INCPATH)
ipseckey.o: ipseckey.c common.h textparse.h mempool.h carp.h rr.h
- $(CC) $(CFLAGS) $(OPTIMIZE) -c -o ipseckey.o ipseckey.c $(INCPATH)
+ $(CC) $(CPPFLAGS) $(CFLAGS) $(OPTIMIZE) -c -o ipseckey.o ipseckey.c $(INCPATH)
cbtree.o: cbtree.c cbtree.h
- $(CC) $(CFLAGS) $(OPTIMIZE) -c -o cbtree.o cbtree.c $(INCPATH)
+ $(CC) $(CPPFLAGS) $(CFLAGS) $(OPTIMIZE) -c -o cbtree.o cbtree.c $(INCPATH)
threads.o: threads.c
- $(CC) $(CFLAGS) $(OPTIMIZE) -c -o threads.o threads.c $(INCPATH)
+ $(CC) $(CPPFLAGS) $(CFLAGS) $(OPTIMIZE) -c -o threads.o threads.c $(INCPATH)
test: validns
perl -MTest::Harness -e 'runtests("t/test.pl")'
@@ -220,9 +220,9 @@
perl t/test.pl
test64:
- $(CC) -Wall -O2 -o base64-test base64.c -DTEST_PROGRAM
+ $(CC) $(LDFLAGS) $(CPPFLAGS) $(CFLAGS) -Wall -O2 -o base64-test base64.c -DTEST_PROGRAM
./base64-test
test32hex:
- $(CC) -Wall -O2 -o base32hex-test base32hex.c -DTEST_PROGRAM
+ $(CC) $(LDFLAGS) $(CPPFLAGS) $(CFLAGS) -Wall -O2 -o base32hex-test base32hex.c -DTEST_PROGRAM
./base32hex-test

View file

@ -1,24 +0,0 @@
--- validns-0.8-orig/ipseckey.c 2014-02-11 18:46:25.000000000 -0200
+++ validns-0.8/ipseckey.c 2018-02-11 04:54:42.167467112 -0200
@@ -100,10 +100,10 @@
strcpy(gw, rr->gateway.gateway_none);
break;
case 1:
- inet_ntop(AF_INET, &rr->gateway.gateway_ipv4, gw, 1024);
+ inet_ntop(AF_INET, &rr->gateway.gateway_ipv4, gw, 2048);
break;
case 2:
- inet_ntop(AF_INET6, &rr->gateway.gateway_ipv6, gw, 1024);
+ inet_ntop(AF_INET6, &rr->gateway.gateway_ipv6, gw, 2048);
break;
case 3:
strcpy(gw, rr->gateway.gateway_name);
@@ -111,7 +111,7 @@
default:
strcpy(gw, "??");
}
- snprintf(s, 1024, "( %d %d %d %s ... )",
+ snprintf(s, 2048, "( %d %d %d %s ... )",
rr->precedence, rr->gateway_type, rr->algorithm, gw);
return quickstrdup_temp(s);
}

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -1,248 +0,0 @@
From: Author: "Chris West (Faux)" <git@goeswhere.com>
Date: Fri, 22 Feb 2019 23:39:34 +0100
Subject: [PATCH] fix compilation on openssl 1.1
BTS: https://bugs.debian.org/859784
bigeasy: drop locking, check for OOM during allocation.
Signed-off-by: Sebastian Andrzej Siewior <sebastian@breakpoint.cc>
---
dnskey.c | 9 +++++--
nsec3checks.c | 29 +++++++++++++---------
rrsig.c | 69 ++++++++++++++-------------------------------------
3 files changed, 42 insertions(+), 65 deletions(-)
diff --git a/dnskey.c b/dnskey.c
index fecc62abfd21..fda220c14d08 100644
--- a/dnskey.c
+++ b/dnskey.c
@@ -154,6 +154,7 @@ int dnskey_build_pkey(struct rr_dnskey *rr)
unsigned int e_bytes;
unsigned char *pk;
int l;
+ BIGNUM *n, *e;
rsa = RSA_new();
if (!rsa)
@@ -174,11 +175,15 @@ int dnskey_build_pkey(struct rr_dnskey *rr)
if (l < e_bytes) /* public key is too short */
goto done;
- rsa->e = BN_bin2bn(pk, e_bytes, NULL);
+ e = BN_bin2bn(pk, e_bytes, NULL);
pk += e_bytes;
l -= e_bytes;
- rsa->n = BN_bin2bn(pk, l, NULL);
+ n = BN_bin2bn(pk, l, NULL);
+ if (!e || !n)
+ goto done;
+
+ RSA_set0_key(rsa, n, e, NULL);
pkey = EVP_PKEY_new();
if (!pkey)
diff --git a/nsec3checks.c b/nsec3checks.c
index 69c655345bad..2abac9efa1bf 100644
--- a/nsec3checks.c
+++ b/nsec3checks.c
@@ -28,7 +28,7 @@
static struct binary_data name2hash(char *name, struct rr *param)
{
struct rr_nsec3param *p = (struct rr_nsec3param *)param;
- EVP_MD_CTX ctx;
+ EVP_MD_CTX *ctx;
unsigned char md0[EVP_MAX_MD_SIZE];
unsigned char md1[EVP_MAX_MD_SIZE];
unsigned char *md[2];
@@ -45,26 +45,31 @@ static struct binary_data name2hash(char *name, struct rr *param)
/* XXX Maybe use Init_ex and Final_ex for speed? */
- EVP_MD_CTX_init(&ctx);
- if (EVP_DigestInit(&ctx, EVP_sha1()) != 1)
+ ctx = EVP_MD_CTX_new();
+ if (ctx == NULL)
return r;
- digest_size = EVP_MD_CTX_size(&ctx);
- EVP_DigestUpdate(&ctx, wire_name.data, wire_name.length);
- EVP_DigestUpdate(&ctx, p->salt.data, p->salt.length);
- EVP_DigestFinal(&ctx, md[mdi], NULL);
+ if (EVP_DigestInit(ctx, EVP_sha1()) != 1)
+ goto out;
+ digest_size = EVP_MD_CTX_size(ctx);
+ EVP_DigestUpdate(ctx, wire_name.data, wire_name.length);
+ EVP_DigestUpdate(ctx, p->salt.data, p->salt.length);
+ EVP_DigestFinal(ctx, md[mdi], NULL);
for (i = 0; i < p->iterations; i++) {
- if (EVP_DigestInit(&ctx, EVP_sha1()) != 1)
- return r;
- EVP_DigestUpdate(&ctx, md[mdi], digest_size);
+ if (EVP_DigestInit(ctx, EVP_sha1()) != 1)
+ goto out;
+
+ EVP_DigestUpdate(ctx, md[mdi], digest_size);
mdi = (mdi + 1) % 2;
- EVP_DigestUpdate(&ctx, p->salt.data, p->salt.length);
- EVP_DigestFinal(&ctx, md[mdi], NULL);
+ EVP_DigestUpdate(ctx, p->salt.data, p->salt.length);
+ EVP_DigestFinal(ctx, md[mdi], NULL);
}
r.length = digest_size;
r.data = getmem(digest_size);
memcpy(r.data, md[mdi], digest_size);
+out:
+ EVP_MD_CTX_free(ctx);
return r;
}
diff --git a/rrsig.c b/rrsig.c
index 81f24b4c49da..0a9e864285d0 100644
--- a/rrsig.c
+++ b/rrsig.c
@@ -26,7 +26,7 @@
struct verification_data
{
struct verification_data *next;
- EVP_MD_CTX ctx;
+ EVP_MD_CTX *ctx;
struct rr_dnskey *key;
struct rr_rrsig *rr;
int ok;
@@ -180,7 +180,7 @@ void *verification_thread(void *dummy)
if (d) {
int r;
d->next = NULL;
- r = EVP_VerifyFinal(&d->ctx, (unsigned char *)d->rr->signature.data, d->rr->signature.length, d->key->pkey);
+ r = EVP_VerifyFinal(d->ctx, (unsigned char *)d->rr->signature.data, d->rr->signature.length, d->key->pkey);
if (r == 1) {
d->ok = 1;
} else {
@@ -232,7 +232,7 @@ static void schedule_verification(struct verification_data *d)
} else {
int r;
G.stats.signatures_verified++;
- r = EVP_VerifyFinal(&d->ctx, (unsigned char *)d->rr->signature.data, d->rr->signature.length, d->key->pkey);
+ r = EVP_VerifyFinal(d->ctx, (unsigned char *)d->rr->signature.data, d->rr->signature.length, d->key->pkey);
if (r == 1) {
d->ok = 1;
} else {
@@ -250,21 +250,24 @@ static int verify_signature(struct verification_data *d, struct rr_set *signed_s
struct rr *signed_rr;
int i;
- EVP_MD_CTX_init(&d->ctx);
+ d->ctx = EVP_MD_CTX_new();
+ if (!d->ctx)
+ return 0;
+
switch (d->rr->algorithm) {
case ALG_DSA:
case ALG_RSASHA1:
case ALG_DSA_NSEC3_SHA1:
case ALG_RSASHA1_NSEC3_SHA1:
- if (EVP_VerifyInit(&d->ctx, EVP_sha1()) != 1)
+ if (EVP_VerifyInit(d->ctx, EVP_sha1()) != 1)
return 0;
break;
case ALG_RSASHA256:
- if (EVP_VerifyInit(&d->ctx, EVP_sha256()) != 1)
+ if (EVP_VerifyInit(d->ctx, EVP_sha256()) != 1)
return 0;
break;
case ALG_RSASHA512:
- if (EVP_VerifyInit(&d->ctx, EVP_sha512()) != 1)
+ if (EVP_VerifyInit(d->ctx, EVP_sha512()) != 1)
return 0;
break;
default:
@@ -274,7 +277,7 @@ static int verify_signature(struct verification_data *d, struct rr_set *signed_s
chunk = rrsig_wirerdata_ex(&d->rr->rr, 0);
if (chunk.length < 0)
return 0;
- EVP_VerifyUpdate(&d->ctx, chunk.data, chunk.length);
+ EVP_VerifyUpdate(d->ctx, chunk.data, chunk.length);
set = getmem_temp(sizeof(*set) * signed_set->count);
@@ -294,12 +297,12 @@ static int verify_signature(struct verification_data *d, struct rr_set *signed_s
chunk = name2wire_name(signed_set->named_rr->name);
if (chunk.length < 0)
return 0;
- EVP_VerifyUpdate(&d->ctx, chunk.data, chunk.length);
- b2 = htons(set[i].rr->rdtype); EVP_VerifyUpdate(&d->ctx, &b2, 2);
- b2 = htons(1); /* class IN */ EVP_VerifyUpdate(&d->ctx, &b2, 2);
- b4 = htonl(set[i].rr->ttl); EVP_VerifyUpdate(&d->ctx, &b4, 4);
- b2 = htons(set[i].wired.length); EVP_VerifyUpdate(&d->ctx, &b2, 2);
- EVP_VerifyUpdate(&d->ctx, set[i].wired.data, set[i].wired.length);
+ EVP_VerifyUpdate(d->ctx, chunk.data, chunk.length);
+ b2 = htons(set[i].rr->rdtype); EVP_VerifyUpdate(d->ctx, &b2, 2);
+ b2 = htons(1); /* class IN */ EVP_VerifyUpdate(d->ctx, &b2, 2);
+ b4 = htonl(set[i].rr->ttl); EVP_VerifyUpdate(d->ctx, &b4, 4);
+ b2 = htons(set[i].wired.length); EVP_VerifyUpdate(d->ctx, &b2, 2);
+ EVP_VerifyUpdate(d->ctx, set[i].wired.data, set[i].wired.length);
}
schedule_verification(d);
@@ -371,49 +374,12 @@ static void *rrsig_validate(struct rr *rrv)
return rr;
}
-static pthread_mutex_t *lock_cs;
-static long *lock_count;
-
-static unsigned long pthreads_thread_id(void)
-{
- unsigned long ret;
-
- ret=(unsigned long)pthread_self();
- return(ret);
-}
-
-static void pthreads_locking_callback(int mode, int type, char *file, int line)
-{
- if (mode & CRYPTO_LOCK) {
- pthread_mutex_lock(&(lock_cs[type]));
- lock_count[type]++;
- } else {
- pthread_mutex_unlock(&(lock_cs[type]));
- }
-}
-
void verify_all_keys(void)
{
struct keys_to_verify *k = all_keys_to_verify;
int i;
struct timespec sleep_time;
- ERR_load_crypto_strings();
- if (G.opt.n_threads > 1) {
- lock_cs = OPENSSL_malloc(CRYPTO_num_locks() * sizeof(pthread_mutex_t));
- lock_count = OPENSSL_malloc(CRYPTO_num_locks() * sizeof(long));
- for (i = 0; i < CRYPTO_num_locks(); i++) {
- lock_count[i] = 0;
- pthread_mutex_init(&lock_cs[i],NULL);
- }
-
- CRYPTO_set_id_callback((unsigned long (*)())pthreads_thread_id);
- CRYPTO_set_locking_callback((void (*)())pthreads_locking_callback);
-
- if (pthread_mutex_init(&queue_lock, NULL) != 0)
- croak(1, "pthread_mutex_init");
- }
-
while (k) {
freeall_temp();
for (i = 0; i < k->n_keys; i++) {
@@ -446,6 +412,7 @@ void verify_all_keys(void)
if (k->to_verify[i].openssl_error != 0)
e = k->to_verify[i].openssl_error;
}
+ EVP_MD_CTX_free(k->to_verify[i].ctx);
}
if (!ok) {
struct named_rr *named_rr;
--
2.20.1

View file

@ -1,22 +0,0 @@
diff -Naur validns-0.8-orig/mempool.c validns-0.8/mempool.c
--- validns-0.8-orig/mempool.c 2014-02-11 15:47:03.000000000 -0500
+++ validns-0.8/mempool.c 2020-10-05 20:53:47.014892762 -0400
@@ -91,12 +91,16 @@
char *quickstrdup(char *s)
{
+ if (s == NULL)
+ return NULL;
char *r = getmem(strlen(s)+1);
- return strcpy(r, s);
+ return strncpy(r, s, strlen(r) -1);
}
char *quickstrdup_temp(char *s)
{
+ if (s == NULL)
+ return NULL;
char *r = getmem_temp(strlen(s)+1);
- return strcpy(r, s);
+ return strncpy(r, s, strlen(r) -1);
}

View file

@ -1,81 +0,0 @@
diff -Naur validns-0.8-orig/common.h validns-0.8/common.h
--- validns-0.8-orig/common.h 2020-10-05 17:25:53.814455909 -0400
+++ validns-0.8/common.h 2020-10-05 17:26:58.696957376 -0400
@@ -72,6 +72,7 @@
int die_on_first_error;
int no_output;
int summary;
+ int notiming;
int verbose;
char *include_path;
int include_path_specified;
diff -Naur validns-0.8-orig/main.c validns-0.8/main.c
--- validns-0.8-orig/main.c 2020-10-05 17:25:53.815455917 -0400
+++ validns-0.8/main.c 2020-10-05 17:28:34.536698118 -0400
@@ -447,6 +447,7 @@
fprintf(stderr, "\t-n N\t\tuse N worker threads\n");
fprintf(stderr, "\t-q\t\tquiet - do not produce any output\n");
fprintf(stderr, "\t-s\t\tprint validation summary/stats\n");
+ fprintf(stderr, "\t-x\t\tskip printing 'time taken' entry in summary/stats\n");
fprintf(stderr, "\t-v\t\tbe extra verbose\n");
fprintf(stderr, "\t-I path\tuse this path for $INCLUDE files\n");
fprintf(stderr, "\t-z origin\tuse this origin as initial $ORIGIN\n");
@@ -523,7 +524,7 @@
struct timeval start, stop;
initialize_globals();
- while ((o = getopt(argc, argv, "fhMqsvI:z:t:p:n:")) != -1) {
+ while ((o = getopt(argc, argv, "fhMqsxvI:z:t:p:n:")) != -1) {
switch(o) {
case 'h':
usage(NULL);
@@ -540,6 +541,9 @@
case 's':
G.opt.summary = 1;
break;
+ case 'x':
+ G.opt.notiming = 1;
+ break;
case 'v':
G.opt.verbose = 1;
break;
@@ -635,8 +639,10 @@
" %d\n", G.stats.not_authoritative);
printf("validation errors: %d\n", G.stats.error_count);
printf("signatures verified: %d\n", G.stats.signatures_verified);
- printf("time taken: %.3fs\n",
+ if (!G.opt.notiming) {
+ printf("time taken: %.3fs\n",
stop.tv_sec - start.tv_sec + (stop.tv_usec - start.tv_usec)/1000000.);
+ }
}
return G.exit_code;
}
diff -Naur validns-0.8-orig/usage.mdwn validns-0.8/usage.mdwn
--- validns-0.8-orig/usage.mdwn 2020-10-05 17:25:53.817455933 -0400
+++ validns-0.8/usage.mdwn 2020-10-05 17:28:54.400851630 -0400
@@ -62,6 +62,9 @@
-s
: print validation summary/stats
+-x
+: skip printing 'time taken' in summary/stats
+
-v
: be extra verbose
diff -Naur validns-0.8-orig/validns.1 validns-0.8/validns.1
--- validns-0.8-orig/validns.1 2020-10-05 17:25:53.818455940 -0400
+++ validns-0.8/validns.1 2020-10-05 17:29:25.670093291 -0400
@@ -75,6 +75,11 @@
.RS
.RE
.TP
+.B -x
+skip printing timing summary/stats
+.RS
+.RE
+.TP
.B \-v
be extra verbose
.RS

View file

@ -1,141 +0,0 @@
%global _hardened_build 1
Summary: DNS and DNSSEC zone file validator
Name: validns
Version: 0.8
Release: 18%{?dist}
License: BSD
Url: http://www.validns.net/
Source: http://www.validns.net/download/%{name}-%{version}.tar.gz
Patch1: validns-0.8-Wformat-truncation.patch
Patch2: validns-0.8-git20160720.patch
Patch3: validns-0.8-Makefile.patch
Patch4: validns-0.8-openssl-1.1.patch
Patch5: validns-0.8-timing.patch
Patch6: validns-0.8-s390-mempool.patch
BuildRequires: gcc
BuildRequires: Judy-devel, openssl-devel
%description
DNS and DNSSEC zone file validator. It comes with no man page and no
useful README or information, but it's a nice tool anyway :)
%prep
%autosetup -p1
%build
%make_build
gzip validns.1
%install
mkdir -p %{buildroot}/%{_bindir} %{buildroot}/%{_mandir}/man1/
install -m 755 validns %{buildroot}/%{_bindir}/
cp -a validns.1.gz %{buildroot}/%{_mandir}/man1/
%files
%doc LICENSE README
%{_bindir}/validns
%{_mandir}/man1/validns.1.gz
%changelog
* Mon Oct 5 17:30:51 EDT 2020 Paul Wouters <pwouters@redhat.com> - 0.8-18
- Resolves: rhbz#1879707 FTBFS: Remove compat-openssl10 requirement
- Resolves: rhbz#1865601 validns: FTBFS in Fedora rawhide/f33
- Resolves: rhbz#1880829 F34FailsToInstall: validns
- Updated notiming patch (-x) notiming patch (-x)
- Pulled in git20160720 updates
- Workaround for s390x strcpy issues in mempool.c
* Mon Oct 5 17:03:05 EDT 2020 Paul Wouters <pwouters@redhat.com> - 0.8-17
- Port to openssl-1.1 based on github and https://github.com/tobez/validns/pull/64
* Sat Aug 01 2020 Fedora Release Engineering <releng@fedoraproject.org> - 0.8-16
- Second attempt - Rebuilt for
https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Wed Jul 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 0.8-15
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Fri Jan 31 2020 Fedora Release Engineering <releng@fedoraproject.org> - 0.8-14
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Sat Jul 27 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0.8-13
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Sun Feb 03 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0.8-12
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Sat Jul 14 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.8-11
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Sun Feb 11 2018 Filipe Rosset <rosset.filipe@gmail.com> - 0.8-10
- Fix FTBFS on rawhide, use compat-openssl10-devel until upstream port to 1.1
* Fri Feb 09 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.8-9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.8-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.8-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
* Sat Feb 11 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.8-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
* Fri Feb 05 2016 Fedora Release Engineering <releng@fedoraproject.org> - 0.8-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
* Fri Jun 19 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.8-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
* Mon Aug 18 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.8-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
* Sun Jun 08 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.8-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
* Tue Feb 11 2014 Paul Wouters <pwouters@redhat.com> - 0.8-1
- Updated to 0.8 for sha-384 support in DS records
* Sun Aug 04 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.7-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
* Tue Apr 16 2013 Paul Wouters <pwouters@redhat.com> - 0.7-1
- Updated to 0.7.
- Removed some el-5 only spec attributes
* Fri Feb 15 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.6-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
* Fri Oct 12 2012 Paul Wouters <pwouters@redhat.com> - 0.6-2
- Added -x option to skip timing info in statistics
* Thu Oct 04 2012 Paul Wouters <pwouters@redhat.com> - 0.6-1
- Updated to 0.6, which incorporates all patches
* Thu Oct 04 2012 Paul Wouters <pwouters@redhat.com> - 0.5-4
- Pullup from git for NSEC3 glue record handling fix
* Fri Aug 24 2012 Paul Wouters <pwouters@redhat.com> - 0.5-3
- Patch for handling NSEC/NSEC3 camelcasing
- Support TLSA records
* Sun Jul 22 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.5-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
* Thu Jun 07 2012 Paul Wouters <pwouters@redhat.com> - 0.5-1
- Updated to 0.5 which supports Parallelize signature verification
- Install man page
* Tue May 01 2012 Paul Wouters <pwouters@redhat.com> - 0.4-1
- Updated to 0.4 which fixes a TXT record parsing bug
* Tue Feb 28 2012 Paul Wouters <pwouters@redhat.com> - 0.3-2
- Added missing BuildRequire for openssl-devel
* Mon Feb 13 2012 Paul Wouters <pwouters@redhat.com> - 0.3-1
- Initial package