1#!/bin/sh 2# 3# Copyright (c) 2007 Kungliga Tekniska Högskolan 4# (Royal Institute of Technology, Stockholm, Sweden). 5# All rights reserved. 6# 7# Redistribution and use in source and binary forms, with or without 8# modification, are permitted provided that the following conditions 9# are met: 10# 11# 1. Redistributions of source code must retain the above copyright 12# notice, this list of conditions and the following disclaimer. 13# 14# 2. Redistributions in binary form must reproduce the above copyright 15# notice, this list of conditions and the following disclaimer in the 16# documentation and/or other materials provided with the distribution. 17# 18# 3. Neither the name of the Institute nor the names of its contributors 19# may be used to endorse or promote products derived from this software 20# without specific prior written permission. 21# 22# THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND 23# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 24# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 25# ARE DISCLAIMED. IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE 26# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 27# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 28# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 29# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 30# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 31# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 32# SUCH DAMAGE. 33# 34# $Id: test_chain.in 20809 2007-06-03 03:19:06Z lha $ 35# 36 37srcdir="@srcdir@" 38objdir="@objdir@" 39 40hxtool="${TESTS_ENVIRONMENT} ./hxtool ${stat}" 41if ${hxtool} info | grep 'rsa: hcrypto null RSA' > /dev/null ; then 42 exit 77 43fi 44if ${hxtool} info | grep 'rand: not available' > /dev/null ; then 45 exit 77 46fi 47 48echo "print DIR" 49${hxtool} print --content DIR:$srcdir/data > /dev/null || exit 1 50 51echo "print FILE" 52for a in $srcdir/data/*.crt; do 53 ${hxtool} print --content FILE:"$a" > /dev/null 2>/dev/null 54done 55 56echo "print NULL" 57${hxtool} print --content NULL: > /dev/null || exit 1 58 59echo "copy dance" 60${hxtool} certificate-copy \ 61 FILE:${srcdir}/data/test.crt PEM-FILE:cert-pem.tmp || exit 1 62 63${hxtool} certificate-copy PEM-FILE:cert-pem.tmp DER-FILE:cert-der.tmp || exit 1 64${hxtool} certificate-copy DER-FILE:cert-der.tmp PEM-FILE:cert-pem2.tmp || exit 1 65 66cmp cert-pem.tmp cert-pem2.tmp || exit 1 67 68echo "verify n0ll cert (fail)" 69${hxtool} verify --missing-revoke \ 70 --hostname=foo.com \ 71 cert:FILE:$srcdir/data/n0ll.pem \ 72 anchor:FILE:$srcdir/data/n0ll.pem && exit 1 73 74echo "verify n0ll cert (fail)" 75${hxtool} verify --missing-revoke \ 76 cert:FILE:$srcdir/data/n0ll.pem \ 77 anchor:FILE:$srcdir/data/n0ll.pem && exit 1 78 79echo "check that windows cert with utf16 in printable string works" 80${hxtool} verify --missing-revoke \ 81 cert:FILE:$srcdir/data/win-u16-in-printablestring.der \ 82 anchor:FILE:$srcdir/data/win-u16-in-printablestring.der || exit 1 83 84exit 0 85