Add external krb5 test support
authorRobbie Harwood <rharwood@redhat.com>
Wed, 5 Apr 2017 16:40:22 +0000 (12:40 -0400)
committerRichard Levitte <levitte@openssl.org>
Tue, 18 Apr 2017 17:10:25 +0000 (19:10 +0200)
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Richard Levitte <levitte@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/2022)

test/recipes/95-test_external_krb5.t [new file with mode: 0644]
test/recipes/95-test_external_krb5_data/krb5.sh [new file with mode: 0755]

diff --git a/test/recipes/95-test_external_krb5.t b/test/recipes/95-test_external_krb5.t
new file mode 100644 (file)
index 0000000..8144003
--- /dev/null
@@ -0,0 +1,25 @@
+#! /usr/bin/env perl
+# Copyright 2017 The OpenSSL Project Authors. All Rights Reserved.
+#
+# Licensed under the OpenSSL license (the "License").  You may not use
+# this file except in compliance with the License.  You can obtain a copy
+# in the file LICENSE in the source distribution or at
+# https://www.openssl.org/source/license.html
+
+
+use OpenSSL::Test;
+use OpenSSL::Test::Utils;
+use OpenSSL::Test qw/:DEFAULT data_file srctop_file/;
+
+setup("test_external_krb5");
+
+plan tests => 1;
+
+SKIP: {
+    skip "No external tests in this configuration"
+        if disabled("external-tests");
+    skip "krb5 not available", 1
+        if ! -f srctop_file("krb5", "README");
+
+    ok(run(cmd([data_file("krb5.sh")])), "running krb5 tests");
+}
diff --git a/test/recipes/95-test_external_krb5_data/krb5.sh b/test/recipes/95-test_external_krb5_data/krb5.sh
new file mode 100755 (executable)
index 0000000..39c6592
--- /dev/null
@@ -0,0 +1,23 @@
+#!/bin/sh -ex
+#
+# Copyright 2017 The OpenSSL Project Authors. All Rights Reserved.
+#
+# Licensed under the OpenSSL license (the "License").  You may not use
+# this file except in compliance with the License.  You can obtain a copy
+# in the file LICENSE in the source distribution or at
+# https://www.openssl.org/source/license.html
+
+# krb5's test suite clears LD_LIBRARY_PATH
+LDFLAGS="-L`pwd`/$BLDTOP -Wl,-rpath,`pwd`/$BLDTOP"
+CFLAGS="-I`pwd`/$BLDTOP/include -I`pwd`/$SRCTOP/include"
+
+cd $SRCTOP/krb5/src
+autoreconf
+./configure --with-ldap --with-prng-alg=os --enable-pkinit \
+            --with-crypto-impl=openssl --with-tls-impl=openssl \
+            CFLAGS="$CFLAGS" LDFLAGS="$LDFLAGS"
+
+# quiet make so that Travis doesn't overflow
+make -s
+
+make check