summaryrefslogtreecommitdiff
path: root/tests/danetool.sh
blob: 77ab0305c2dc0ad2551b5f73e041c09593f89ce7 (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
#!/bin/sh

# Copyright (C) 2016 Red Hat, Inc.
#
# This file is part of GnuTLS.
#
# GnuTLS is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by the
# Free Software Foundation; either version 3 of the License, or (at
# your option) any later version.
#
# GnuTLS is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
# General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with GnuTLS; if not, write to the Free Software Foundation,
# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.

: ${srcdir=.}
: ${DANETOOL=../src/danetool${EXEEXT}}

if test "${WINDIR}" != ""; then
	exit 77
fi

if ! test -x "${DANETOOL}"; then
	exit 77
fi

. "${srcdir}/scripts/common.sh"

# Check local generation
OUT=$(${DANETOOL} --tlsa-rr --host www.example.com --load-certificate ${srcdir}/certs/cert-ecc256.pem)
if test $? != 0;then
	echo "error in test 1"
	exit 1
fi

if test "$OUT" != '_443._tcp.www.example.com. IN TLSA ( 03 01 01 5978dd1d2d23e992075dc359d5dd14f7ef79748af97f2b7809c9ebfd6016c433 )';then
	echo "error in test 2"
	exit 1
fi

OUT=$(${DANETOOL} --tlsa-rr --host www.example.com --load-certificate ${srcdir}/certs/cert-rsa-2432.pem)
if test $? != 0;then
	echo "error in test 3"
	exit 1
fi

if test "$OUT" != '_443._tcp.www.example.com. IN TLSA ( 03 01 01 671b40d05b28c85e9b2a52912abcdce38c0384cc5a7c693ed3148ca1e97632c9 )';then
	echo "error in test 4"
	exit 1
fi

# Check CA signed certificate generation
OUT=$(${DANETOOL} --tlsa-rr --no-domain --host www.example.com --load-certificate ${srcdir}/certs/cert-rsa-2432.pem)
if test $? != 0;then
	echo "error in test 5"
	exit 1
fi

if test "$OUT" != '_443._tcp.www.example.com. IN TLSA ( 01 01 01 671b40d05b28c85e9b2a52912abcdce38c0384cc5a7c693ed3148ca1e97632c9 )';then
	echo "error in test 6"
	exit 1
fi

# Check CA signer's certificate generation
OUT=$(${DANETOOL} --tlsa-rr --ca --no-domain --host www.example.com --load-certificate ${srcdir}/certs/cert-rsa-2432.pem)
if test $? != 0;then
	echo "error in test 7"
	exit 1
fi

if test "$OUT" != '_443._tcp.www.example.com. IN TLSA ( 00 01 01 671b40d05b28c85e9b2a52912abcdce38c0384cc5a7c693ed3148ca1e97632c9 )';then
	echo "error in test 8"
	exit 1
fi

exit 0