summaryrefslogtreecommitdiff
path: root/debian/patches/02_fix-printf-dnssec-script.patch
blob: 1015a08ad2deffcb9f7973a819d54a3d93a6b4b3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
From 1a185ae14b5073d0d5358ff5e2a98d2ff07d7558 Mon Sep 17 00:00:00 2001
From: Andreas Steffen <andreas.steffen@strongswan.org>
Date: Mon, 8 Apr 2013 22:21:14 +0200
Subject: [PATCH] fixed printf statements

---
 configure.in     |    2 +-
 scripts/dnssec.c |   37 ++++++++++++++++++++++++++++---------
 2 files changed, 29 insertions(+), 10 deletions(-)

--- a/scripts/dnssec.c
+++ b/scripts/dnssec.c
@@ -16,25 +16,47 @@
 #include <stdio.h>
 
 #include <library.h>
+#include <utils/debug.h>
+
+/**
+ * Define debug level
+ */
+static level_t dbg_level = 1;
+
+static void dbg_dnssec(debug_t group, level_t level, char *fmt, ...)
+{
+	if ((level <= dbg_level) || level <= 1)
+	{
+		va_list args;
+
+		va_start(args, fmt);
+		vfprintf(stderr, fmt, args);
+		fprintf(stderr, "\n");
+		va_end(args);
+	}
+}
 
 int main(int argc, char *argv[])
 {
 	resolver_t *resolver;
 	resolver_response_t *response;
 	enumerator_t *enumerator;
+	chunk_t rdata;
 	rr_set_t *rrset;
 	rr_t *rr;
-	chunk_t chunk;
 
 	library_init(NULL);
 	atexit(library_deinit);
+
+	dbg = dbg_dnssec;
+
 	if (!lib->plugins->load(lib->plugins, NULL, PLUGINS))
 	{
 		return 1;
 	}
 	if (argc != 2)
 	{
-		fprintf(stderr, "usage: %s <name>\n", argv[0]);
+		fprintf(stderr, "usage: dnssec <name>\n");
 		return 1;
 	}
 
@@ -82,9 +104,7 @@ int main(int argc, char *argv[])
 	enumerator = rrset->create_rr_enumerator(rrset);
 	while (enumerator->enumerate(enumerator, &rr))
 	{
-		printf("    name: ");
-		printf(rr->get_name(rr));
-		printf("\n");
+		printf("    name: %s\n", rr->get_name(rr));
 	}
 
 	enumerator = rrset->create_rrsig_enumerator(rrset);
@@ -93,13 +113,10 @@ int main(int argc, char *argv[])
 		printf("  RRSIGs for the RRset:\n");
 		while (enumerator->enumerate(enumerator, &rr))
 		{
-			printf("    name: ");
-			printf(rr->get_name(rr));
-			printf("\n    RDATA: ");
-			chunk = rr->get_rdata(rr);
-			chunk = chunk_to_hex(chunk, NULL, TRUE);
-			printf(chunk.ptr);
-			printf("\n");
+			rdata = rr->get_rdata(rr);
+
+			printf("    name: %s\n", rr->get_name(rr));
+			printf("    RDATA: %#B\n", &rdata);
 		}
 	}