blob: f5ef0f996324db5743669a09eb4e31d227f42a0e [file] [log] [blame]
Rich Salz596d6b72016-04-22 07:21:51 -04001#! /usr/bin/env perl
2# Copyright 2015-2016 The OpenSSL Project Authors. All Rights Reserved.
3#
4# Licensed under the OpenSSL license (the "License"). You may not use
5# this file except in compliance with the License. You can obtain a copy
6# in the file LICENSE in the source distribution or at
7# https://www.openssl.org/source/license.html
8
Richard Levitte4650de32015-04-17 20:15:22 +02009
10use strict;
11use warnings;
12
13use File::Spec;
Richard Levitte42e0ccd2016-01-30 01:05:33 +010014use OpenSSL::Test qw/:DEFAULT srctop_file/;
Richard Levitte4650de32015-04-17 20:15:22 +020015
16setup("test_x509");
17
Rich Salz47726102017-03-14 14:53:35 -040018plan tests => 9;
Richard Levitte4650de32015-04-17 20:15:22 +020019
Richard Levitte42e0ccd2016-01-30 01:05:33 +010020require_ok(srctop_file('test','recipes','tconversion.pl'));
Richard Levitte4650de32015-04-17 20:15:22 +020021
Rich Salz47726102017-03-14 14:53:35 -040022my $pem = srctop_file("test/certs", "cyrillic.pem");
23my $out = "cyrillic.out";
24my $msb = srctop_file("test/certs", "cyrillic.msb");
25my $utf = srctop_file("test/certs", "cyrillic.utf8");
26
27ok(run(app(["openssl", "x509", "-text", "-in", $pem, "-out", $out,
28 "-nameopt", "esc_msb"])));
29is(cmp_text($out, srctop_file("test/certs", "cyrillic.msb")),
30 0, 'Comparing esc_msb output');
31ok(run(app(["openssl", "x509", "-text", "-in", $pem, "-out", $out,
32 "-nameopt", "utf8"])));
33is(cmp_text($out, srctop_file("test/certs", "cyrillic.utf8")),
34 0, 'Comparing utf8 output');
35unlink $out;
36
Richard Levitte4650de32015-04-17 20:15:22 +020037subtest 'x509 -- x.509 v1 certificate' => sub {
Richard Levitte42e0ccd2016-01-30 01:05:33 +010038 tconversion("x509", srctop_file("test","testx509.pem"));
Richard Levitte4650de32015-04-17 20:15:22 +020039};
40subtest 'x509 -- first x.509 v3 certificate' => sub {
Richard Levitte42e0ccd2016-01-30 01:05:33 +010041 tconversion("x509", srctop_file("test","v3-cert1.pem"));
Richard Levitte4650de32015-04-17 20:15:22 +020042};
43subtest 'x509 -- second x.509 v3 certificate' => sub {
Richard Levitte42e0ccd2016-01-30 01:05:33 +010044 tconversion("x509", srctop_file("test","v3-cert2.pem"));
Richard Levitte4650de32015-04-17 20:15:22 +020045};
Rich Salze4170702016-06-08 11:37:06 -040046
47subtest 'x509 -- pathlen' => sub {
48 ok(run(test(["v3ext", srctop_file("test/certs", "pathlen.pem")])));
49}