Blame tests/gnutls_ocsp_resp_list_import2.c

Packit Service 4684c1
/*
Packit Service 4684c1
 * Copyright (C) 2017 Nikos Mavrogiannopoulos
Packit Service 4684c1
 *
Packit Service 4684c1
 * Author: Nikos Mavrogiannopoulos
Packit Service 4684c1
 *
Packit Service 4684c1
 * This file is part of GnuTLS.
Packit Service 4684c1
 *
Packit Service 4684c1
 * GnuTLS is free software; you can redistribute it and/or modify it
Packit Service 4684c1
 * under the terms of the GNU General Public License as published by
Packit Service 4684c1
 * the Free Software Foundation; either version 3 of the License, or
Packit Service 4684c1
 * (at your option) any later version.
Packit Service 4684c1
 *
Packit Service 4684c1
 * GnuTLS is distributed in the hope that it will be useful, but
Packit Service 4684c1
 * WITHOUT ANY WARRANTY; without even the implied warranty of
Packit Service 4684c1
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
Packit Service 4684c1
 * General Public License for more details.
Packit Service 4684c1
 *
Packit Service 4684c1
 * You should have received a copy of the GNU Lesser General Public License
Packit Service 4684c1
 * along with this program.  If not, see <https://www.gnu.org/licenses/>
Packit Service 4684c1
 */
Packit Service 4684c1
Packit Service 4684c1
/* This tests key import for gnutls_ocsp_resp_t APIs */
Packit Service 4684c1
Packit Service 4684c1
#ifdef HAVE_CONFIG_H
Packit Service 4684c1
#include <config.h>
Packit Service 4684c1
#endif
Packit Service 4684c1
Packit Service 4684c1
#include <stdio.h>
Packit Service 4684c1
#include <stdlib.h>
Packit Service 4684c1
#include <string.h>
Packit Service 4684c1
#include <sys/types.h>
Packit Service 4684c1
#include <unistd.h>
Packit Service 4684c1
#include <gnutls/gnutls.h>
Packit Service 4684c1
#include <gnutls/ocsp.h>
Packit Service 4684c1
#include "ocsp-common.h"
Packit Service 4684c1
#include "utils.h"
Packit Service 4684c1
Packit Service 4684c1
#define testfail(fmt, ...) \
Packit Service 4684c1
	fail("%s: "fmt, name, ##__VA_ARGS__)
Packit Service 4684c1
Packit Service 4684c1
static void load_list(const char *name, const gnutls_datum_t *txt,
Packit Service 4684c1
		      unsigned int nocsps,
Packit Service 4684c1
		      int format,
Packit Service 4684c1
		      unsigned flags, int exp_err)
Packit Service 4684c1
{
Packit Service 4684c1
	gnutls_ocsp_resp_t *ocsps;
Packit Service 4684c1
	unsigned int i, size;
Packit Service 4684c1
	int ret;
Packit Service 4684c1
Packit Service 4684c1
	ret = gnutls_ocsp_resp_list_import2(&ocsps, &size, txt, format, flags);
Packit Service 4684c1
	if (ret < 0) {
Packit Service 4684c1
		if (exp_err == ret)
Packit Service 4684c1
			return;
Packit Service 4684c1
		testfail("gnutls_x509_crt_list_import: %s\n", gnutls_strerror(ret));
Packit Service 4684c1
	}
Packit Service 4684c1
Packit Service 4684c1
	for (i=0;i
Packit Service 4684c1
		gnutls_ocsp_resp_deinit(ocsps[i]);
Packit Service 4684c1
	gnutls_free(ocsps);
Packit Service 4684c1
Packit Service 4684c1
	if (size != nocsps)
Packit Service 4684c1
		testfail("imported number (%d) doesn't match expected (%d)\n", size, nocsps);
Packit Service 4684c1
Packit Service 4684c1
	return;
Packit Service 4684c1
}
Packit Service 4684c1
Packit Service 4684c1
typedef struct test_st {
Packit Service 4684c1
	const char *name;
Packit Service 4684c1
	const gnutls_datum_t *ocsps;
Packit Service 4684c1
	unsigned nocsps;
Packit Service 4684c1
	unsigned flags;
Packit Service 4684c1
	int format;
Packit Service 4684c1
	int exp_err;
Packit Service 4684c1
} test_st;
Packit Service 4684c1
Packit Service 4684c1
static const char long_chain_pem[] =
Packit Service 4684c1
	"-----BEGIN OCSP RESPONSE-----\n"
Packit Service 4684c1
	"MIICOgoBAKCCAjMwggIvBgkrBgEFBQcwAQEEggIgMIICHDCBhaEUMBIxEDAOBgNV\n"
Packit Service 4684c1
	"BAMTB3N1YkNBLTMYDzIwMTcxMDE4MTIyMDQ5WjBcMFowRTAJBgUrDgMCGgUABBSy\n"
Packit Service 4684c1
	"5lyOboNLvRHZl/o2k1merVwVxAQUnpHsjKokWyLg6BHo6aSRtZEmAPECDFejHTI3\n"
Packit Service 4684c1
	"ZFj6e1Jv14IAGA8yMDE3MTAxODEyMjA0OVowDQYJKoZIhvcNAQELBQADggGBAJg8\n"
Packit Service 4684c1
	"/9F2k7DdQsqMfU+f53gUHZAlZzRRPPYQfrmMGfSaMmr9W3fpCrLNMV4PWxGndTh7\n"
Packit Service 4684c1
	"AforaCwUb6+QyWlnE3B4UUQLphaEawnDJ/8GJZAnCIcjyxpWYZ4onEIZ6pN8BRQE\n"
Packit Service 4684c1
	"f8ccQN01xlB5RtdqsVmvxtoM0husO0YJDnsCwwFVXulPEFgWuFSoVLsx65lkc+4/\n"
Packit Service 4684c1
	"RM67+QrbNpBRgKrhb8MAE2WANjpjSAVSf5GWsH9T/F2HDG5crApFIoNywK9e21zk\n"
Packit Service 4684c1
	"qYAWQ6tVcps3QbvvIEXVy/jOqVASeaxuwHmkdBz4SNT83LvaNnJGBTKXTGukPKAO\n"
Packit Service 4684c1
	"t6xJpFLwrNWNhgfbw2fklWJSMzMtAEkjzBJi+4kn1SfLdcTLYBf9Tnoq1wsJhAMg\n"
Packit Service 4684c1
	"OFNzcWb8ZJxuGh7FXgytneM38sL8oTEmLKHfBRnWGOglfCMj3olvXpjotrIlKDAS\n"
Packit Service 4684c1
	"GbGElY+PZXUtkKiN2cNAecjIodzQFgL+YL6jWKLEuuWGT/MvRrliL83kGmKDdg==\n"
Packit Service 4684c1
	"-----END OCSP RESPONSE-----\n"
Packit Service 4684c1
	"-----BEGIN OCSP RESPONSE-----\n"
Packit Service 4684c1
	"MIICNwoBAKCCAjAwggIsBgkrBgEFBQcwAQEEggIdMIICGTCBgqERMA8xDTALBgNV\n"
Packit Service 4684c1
	"BAMTBENBLTMYDzIwMTcxMDE4MTIzODUyWjBcMFowRTAJBgUrDgMCGgUABBS3yg+r\n"
Packit Service 4684c1
	"3G+4sJZ6FayYCg8Z/qQS3gQUHoXtf55x+gidN0hDoBLv5arh44oCDFejHTI1s0/Q\n"
Packit Service 4684c1
	"ufXnPIIAGA8yMDE3MTAxODEyMzg1MlowDQYJKoZIhvcNAQELBQADggGBALMParB9\n"
Packit Service 4684c1
	"K97DlT4FmMdPScoT7oAAsar4XxKLU9+oraht7H+WTAYSpnCxh/ugR17G0jtzTzIw\n"
Packit Service 4684c1
	"nLQFAyR9MDYKp4Om4YqQ7r+43DiIqKVU25WcrVifUbtkR+LbjH+Bk1UHvFE8mCOX\n"
Packit Service 4684c1
	"ZB+cmQyjGap1RX0dnj2Wm48vUwqp71nA8AYcXL575xZ4rb9DDhaoV2h3S0Zlu4IN\n"
Packit Service 4684c1
	"btuDIVsxJ53kqkGjjVB4/R0RtqCXOI2ThMK3SfDWqwzF9tYA763VVXi+g+w3oyv4\n"
Packit Service 4684c1
	"ZtP8QUWOVUY4azpElX1wqoO8znUjxs1AzROLUeLPK8GMLVIZLP361J2kLgcj0Gdq\n"
Packit Service 4684c1
	"GIVH5N54p6bl5OgSUP3EdKbFRZyCVZ2n8Der3Cf9PtfvGV7Ze4Cv/CCN6rJkk54P\n"
Packit Service 4684c1
	"6auP6pEJg0ESGC5fop5HFCyVM+W/ot0A1cxN0+cHYlqB1NQholLqe3psDjJ2EoIK\n"
Packit Service 4684c1
	"LtN5dRLO6z5L74CwwiJ1SeLh8XyJtr/ee9RnFB56XCzO7lyhbHPx/VT6Qw==\n"
Packit Service 4684c1
	"-----END OCSP RESPONSE-----\n"
Packit Service 4684c1
	"-----BEGIN OCSP RESPONSE-----\n"
Packit Service 4684c1
	"MIIGUwoBAKCCBkwwggZIBgkrBgEFBQcwAQEEggY5MIIGNTCBhaEUMBIxEDAOBgNV\n"
Packit Service 4684c1
	"BAMTB3N1YkNBLTMYDzIwMTcxMDE4MTIwOTMwWjBcMFowRTAJBgUrDgMCGgUABBSy\n"
Packit Service 4684c1
	"5lyOboNLvRHZl/o2k1merVwVxAQUnpHsjKokWyLg6BHo6aSRtZEmAPECDFejHTI2\n"
Packit Service 4684c1
	"yAyhyrC99oIAGA8yMDE3MTAxODEyMDkzMFowDQYJKoZIhvcNAQENBQADggGBAFZk\n"
Packit Service 4684c1
	"KxCq5yZ/8X+Glw4YtHWSZRIrRp8+lpjkqxDRDuoI4qUBdaRbdqxJK57xSvJ5Ok4V\n"
Packit Service 4684c1
	"gf9N02WOrkq7MzWLD7ZdMu/14SW/vVIdmfI04Ps4NGya71OykMb7daCMvGuO2N4z\n"
Packit Service 4684c1
	"5G/yrfKiT8JYR+JobTo6swqCPaSFAFg+ADWdax//n66wmuLHDpqzfFLp2lBXNXJx\n"
Packit Service 4684c1
	"gafAQCjqK84JRx2xgEFZ9l3TPOoR2BO5DzJqKXK+wcMbtUxNDaHV8MTsxVqTQXoB\n"
Packit Service 4684c1
	"JLN6cYKjxghCkQ5r54YLr77fB1qMNfhffy9gBN0q8g3AHG+gMICkNYPTw8w1Rjbr\n"
Packit Service 4684c1
	"6bE8CI/MXcrZrz7UWLuQXe8BnNk+Vn7PE6oRxCLSoJ8b6fB4cDvMIX1rRpc/Owxb\n"
Packit Service 4684c1
	"j6gockpBTebdLr3xpB6iopRurTPCVtMpz3VeNVnrB3gjCyBO62ErRncKn6RXqEVF\n"
Packit Service 4684c1
	"bo+01Zz8hHjDgtm2p9V24CMJK5p8fLVthJ0fRwyc1oYr3fT6l+dy50JSdOhNAaCC\n"
Packit Service 4684c1
	"BBUwggQRMIIEDTCCAnWgAwIBAgIMV6MdMjWzT9C59ec8MA0GCSqGSIb3DQEBCwUA\n"
Packit Service 4684c1
	"MA8xDTALBgNVBAMTBENBLTMwIBcNMTYwNTEwMDg0ODMwWhgPOTk5OTEyMzEyMzU5\n"
Packit Service 4684c1
	"NTlaMBIxEDAOBgNVBAMTB3N1YkNBLTMwggGiMA0GCSqGSIb3DQEBAQUAA4IBjwAw\n"
Packit Service 4684c1
	"ggGKAoIBgQCgOcNXzStOnRFoi05aMRLeMB45X4a2srSBul3ULxDSGjIP0EEl//X2\n"
Packit Service 4684c1
	"WLiope/xNL8bPCRpI1sSVXl8Hb1cK3qWNGazVmC7xW07NxL26I86e3/BVRnq8ioV\n"
Packit Service 4684c1
	"tvPQwEpvuI8F97x1vL/n+cfcdkN77NScr5C9jHMVioRvC+qKz9bUBx5DSySV66PR\n"
Packit Service 4684c1
	"5+wGsJDvkfsmjVOgqiTlSWQS5G3nMMq0Rixsc5dP5Wygkbdh9+45UCtObcnHABJr\n"
Packit Service 4684c1
	"P+GtLiG0AOUx6oPzPteZL13erWXg7zYusTarj9rTcdsgR/Im1mIzmD2i7GhJo4Gj\n"
Packit Service 4684c1
	"0Sk3Rq93JyeA+Ay5UPmqcm+dqX00b49MTTv4GtO53kLQSCXYFJ96jcMiXMzBFJD1\n"
Packit Service 4684c1
	"ROsdk4WUed/tJMHffttDz9j3WcuX9M2nzTT2xlauokjbEAhRDRw5fxCFZh7TbmaH\n"
Packit Service 4684c1
	"4vysDO9UZXVEXSLKonQ2Lmyso48s/G30VmlSjtPtJqRsv/oPpCO/c0D6BrkHV55B\n"
Packit Service 4684c1
	"48xfmyIFjgECAwEAAaNkMGIwDwYDVR0TAQH/BAUwAwEB/zAPBgNVHQ8BAf8EBQMD\n"
Packit Service 4684c1
	"BwYAMB0GA1UdDgQWBBQtMwQbJ3+UBHzH4zVP6SWklOG3oTAfBgNVHSMEGDAWgBT5\n"
Packit Service 4684c1
	"qIYZY7akFBNgdg8BmjU27/G0rzANBgkqhkiG9w0BAQsFAAOCAYEAMii5Gx3/d/58\n"
Packit Service 4684c1
	"oDRy5a0oPvQhkU0dKa61NfjjOz9uqxNSilLJE7jGJPaG2tKtC/XU1Ybql2tqQY68\n"
Packit Service 4684c1
	"kogjKs31QC6RFkoZAFouTJt11kzbgVWKewCk3/OrA0/ZkRrAfE0Pma/NITRwTHmT\n"
Packit Service 4684c1
	"sQOdv/bzR+xIPhjKxKrKyJFMG5xb+Q0OKSbd8kDpgYWKob5x2jsNYgEDp8nYSRT4\n"
Packit Service 4684c1
	"5SGw7c7FcumkXz2nA6r5NwbnhELvNFK8fzsY+QJKHaAlJ9CclliP1PiiAcl2LQo2\n"
Packit Service 4684c1
	"gaygWNiD+ggnqzy7nqam9rieOOMHls1kKFAFrWy2g/cBhTfS+/7Shpex7NK2GAiu\n"
Packit Service 4684c1
	"jgUV0TZHEyEZt6um4gLS9vwUKs/R4XS9VL/bBlfAy2hAVTeUejiRBGeTJkqBu7+c\n"
Packit Service 4684c1
	"4FdrCByVhaeQASMYu/lga8eaGL1zJbJe2BQWI754KDYDT9qKNqGlgysr4AVje7z1\n"
Packit Service 4684c1
	"Y1MQ72SnfrzYSQw6BB85CurB6iou3Q+eM4o4g/+xGEuDo0Ne/8ir\n"
Packit Service 4684c1
	"-----END OCSP RESPONSE-----\n";
Packit Service 4684c1
Packit Service 4684c1
static const char bad_long_chain_pem[] = /* second response is broken */
Packit Service 4684c1
	"-----BEGIN OCSP RESPONSE-----\n"
Packit Service 4684c1
	"MIICOgoBAKCCAjMwggIvBgkrBgEFBQcwAQEEggIgMIICHDCBhaEUMBIxEDAOBgNV\n"
Packit Service 4684c1
	"BAMTB3N1YkNBLTMYDzIwMTcxMDE4MTIyMDQ5WjBcMFowRTAJBgUrDgMCGgUABBSy\n"
Packit Service 4684c1
	"5lyOboNLvRHZl/o2k1merVwVxAQUnpHsjKokWyLg6BHo6aSRtZEmAPECDFejHTI3\n"
Packit Service 4684c1
	"ZFj6e1Jv14IAGA8yMDE3MTAxODEyMjA0OVowDQYJKoZIhvcNAQELBQADggGBAJg8\n"
Packit Service 4684c1
	"/9F2k7DdQsqMfU+f53gUHZAlZzRRPPYQfrmMGfSaMmr9W3fpCrLNMV4PWxGndTh7\n"
Packit Service 4684c1
	"AforaCwUb6+QyWlnE3B4UUQLphaEawnDJ/8GJZAnCIcjyxpWYZ4onEIZ6pN8BRQE\n"
Packit Service 4684c1
	"f8ccQN01xlB5RtdqsVmvxtoM0husO0YJDnsCwwFVXulPEFgWuFSoVLsx65lkc+4/\n"
Packit Service 4684c1
	"RM67+QrbNpBRgKrhb8MAE2WANjpjSAVSf5GWsH9T/F2HDG5crApFIoNywK9e21zk\n"
Packit Service 4684c1
	"qYAWQ6tVcps3QbvvIEXVy/jOqVASeaxuwHmkdBz4SNT83LvaNnJGBTKXTGukPKAO\n"
Packit Service 4684c1
	"t6xJpFLwrNWNhgfbw2fklWJSMzMtAEkjzBJi+4kn1SfLdcTLYBf9Tnoq1wsJhAMg\n"
Packit Service 4684c1
	"OFNzcWb8ZJxuGh7FXgytneM38sL8oTEmLKHfBRnWGOglfCMj3olvXpjotrIlKDAS\n"
Packit Service 4684c1
	"GbGElY+PZXUtkKiN2cNAecjIodzQFgL+YL6jWKLEuuWGT/MvRrliL83kGmKDdg==\n"
Packit Service 4684c1
	"-----END OCSP RESPONSE-----\n"
Packit Service 4684c1
	"-----BEGIN OCSP RESPONSE-----\n"
Packit Service 4684c1
	"MIICNwoBAKCCAjAwggIsBgkrBgEFBQcwAQEEggIdMIICGTCBgqERMA8xDTALBgNV\n"
Packit Service 4684c1
	"BAMTBENBLTMYDzIwMTcxMDE4MTIzODUyWjBcMFowRTAJBgUrDgMCGgUABBS3yg+r\n"
Packit Service 4684c1
	"3G+4sJZ6FayYCg8Z/qQS3gQUHoXtf55x+gidN0hDoBLv5arh44oCDFejHTI1s0/Q\n"
Packit Service 4684c1
	"ufXnPIIAGA8yMDE3MTAxODEyMzg1MlowDQYJKoZIhvcNAQELBQADggGBALMParB9\n"
Packit Service 4684c1
	"K97DlT4FmMdPScoT7oAAsar4XxKLU9+oraht7H+WTAYSpnCxh/ugR1fG0jtzTzIw\n"
Packit Service 4684c1
	"nLQFAyR9MDYKp4Om4YqQ7r+43DiIqKVU25WcrVifUbtkR+LbjH+Bk1UHvFE8mCOX\n"
Packit Service 4684c1
	"ZB+cmQyjGap1RX0dnj2Wm48vwwqp71nA8AYcXL575xZ4rb9DDhaoV2h3S0Zlu4IN\n"
Packit Service 4684c1
	"btuDIVsxJ53kqkGjjVB4/R0RtqCXOI2ThMK3SfDWqwzF9tYA763VVXi+g+w3oyv4\n"
Packit Service 4684c1
	"ZtP8QUWOVUY4azpzlX1wqoO8znUjxs1AzROLUeLPK8GMLVIZLP361J2kLgcj0Gdq\n"
Packit Service 4684c1
	"GIVH5N54p6bl5OgSUP3EdKbFRZyCVZ2n8Der3Cf9PtfvGV7Ze4Cv/CCN6rJkk54P\n"
Packit Service 4684c1
	"6auP6pEJg0ESGC5fop5HFCyVM+W/ot0A1cxN0+cHYlqB1NQholLqe3psDjJ2EoIK\n"
Packit Service 4684c1
	"LtN5dRLO6z5L74CwwiJ1SeLh8XyJtr/ee9RnFB56XCzO7lyhbHPx/VT6Qw==\n"
Packit Service 4684c1
	"-----END OCSP RESPONSE-----\n"
Packit Service 4684c1
	"-----BEGIN OCSP RESPONSE-----\n"
Packit Service 4684c1
	"MIIGUwoBAKCCBkwwggZIBgkrBgEFBQcwAQEEggY5MIIGNTCBhaEUMBIxEDAOBgNV\n"
Packit Service 4684c1
	"BAMTB3N1YkNBLTMYDzIwMTcxMDE4MTIwOTMwWjBcMFowRTAJBgUrDgMCGgUABBSy\n"
Packit Service 4684c1
	"5lyOboNLvRHZl/o2k1merVwVxAQUnpHsjKokWyLg6BHo6aSRtZEmAPECDFejHTI2\n"
Packit Service 4684c1
	"yAyhyrC99oIAGA8yMDE3MTAxODEyMDkzMFowDQYJKoZIhvcNAQENBQADggGBAFZk\n"
Packit Service 4684c1
	"KxCq5yZ/8X+Glw4YtHWSZRIrRp8+lpjkqxDRDuoI4qUBdaRbdqxJK57xSvJ5Ok4V\n"
Packit Service 4684c1
	"gf9N02WOrkq7MzWLD7ZdMu/14SW/vVIdmfI04Ps4NGya71OykMb7daCMvGuO2N4z\n"
Packit Service 4684c1
	"5G/yrfKiT8JYR+JobTo6swqCPaSFAFg+ADWdax//n66wmuLHDpqzfFLp2lBXNXJx\n"
Packit Service 4684c1
	"gafAQCjqK84JRx2xgEFZ9l3TPOoR2BO5DzJqKXK+wcMbtUxNDaHV8MTsxVqTQXoB\n"
Packit Service 4684c1
	"JLN6cYKjxghCkQ5r54YLr77fB1qMNfhffy9gBN0q8g3AHG+gMICkNYPTw8w1Rjbr\n"
Packit Service 4684c1
	"6bE8CI/MXcrZrz7UWLuQXe8BnNk+Vn7PE6oRxCLSoJ8b6fB4cDvMIX1rRpc/Owxb\n"
Packit Service 4684c1
	"j6gockpBTebdLr3xpB6iopRurTPCVtMpz3VeNVnrB3gjCyBO62ErRncKn6RXqEVF\n"
Packit Service 4684c1
	"bo+01Zz8hHjDgtm2p9V24CMJK5p8fLVthJ0fRwyc1oYr3fT6l+dy50JSdOhNAaCC\n"
Packit Service 4684c1
	"BBUwggQRMIIEDTCCAnWgAwIBAgIMV6MdMjWzT9C59ec8MA0GCSqGSIb3DQEBCwUA\n"
Packit Service 4684c1
	"MA8xDTALBgNVBAMTBENBLTMwIBcNMTYwNTEwMDg0ODMwWhgPOTk5OTEyMzEyMzU5\n"
Packit Service 4684c1
	"NTlaMBIxEDAOBgNVBAMTB3N1YkNBLTMwggGiMA0GCSqGSIb3DQEBAQUAA4IBjwAw\n"
Packit Service 4684c1
	"ggGKAoIBgQCgOcNXzStOnRFoi05aMRLeMB45X4a2srSBul3ULxDSGjIP0EEl//X2\n"
Packit Service 4684c1
	"WLiope/xNL8bPCRpI1sSVXl8Hb1cK3qWNGazVmC7xW07NxL26I86e3/BVRnq8ioV\n"
Packit Service 4684c1
	"tvPQwEpvuI8F97x1vL/n+cfcdkN77NScr5C9jHMVioRvC+qKz9bUBx5DSySV66PR\n"
Packit Service 4684c1
	"5+wGsJDvkfsmjVOgqiTlSWQS5G3nMMq0Rixsc5dP5Wygkbdh9+45UCtObcnHABJr\n"
Packit Service 4684c1
	"P+GtLiG0AOUx6oPzPteZL13erWXg7zYusTarj9rTcdsgR/Im1mIzmD2i7GhJo4Gj\n"
Packit Service 4684c1
	"0Sk3Rq93JyeA+Ay5UPmqcm+dqX00b49MTTv4GtO53kLQSCXYFJ96jcMiXMzBFJD1\n"
Packit Service 4684c1
	"ROsdk4WUed/tJMHffttDz9j3WcuX9M2nzTT2xlauokjbEAhRDRw5fxCFZh7TbmaH\n"
Packit Service 4684c1
	"4vysDO9UZXVEXSLKonQ2Lmyso48s/G30VmlSjtPtJqRsv/oPpCO/c0D6BrkHV55B\n"
Packit Service 4684c1
	"48xfmyIFjgECAwEAAaNkMGIwDwYDVR0TAQH/BAUwAwEB/zAPBgNVHQ8BAf8EBQMD\n"
Packit Service 4684c1
	"BwYAMB0GA1UdDgQWBBQtMwQbJ3+UBHzH4zVP6SWklOG3oTAfBgNVHSMEGDAWgBT5\n"
Packit Service 4684c1
	"qIYZY7akFBNgdg8BmjU27/G0rzANBgkqhkiG9w0BAQsFAAOCAYEAMii5Gx3/d/58\n"
Packit Service 4684c1
	"oDRy5a0oPvQhkU0dKa61NfjjOz9uqxNSilLJE7jGJPaG2tKtC/XU1Ybql2tqQY68\n"
Packit Service 4684c1
	"kogjKs31QC6RFkoZAFouTJt11kzbgVWKewCk3/OrA0/ZkRrAfE0Pma/NITRwTHmT\n"
Packit Service 4684c1
	"sQOdv/bzR+xIPhjKxKrKyJFMG5xb+Q0OKSbd8kDpgYWKob5x2jsNYgEDp8nYSRT4\n"
Packit Service 4684c1
	"5SGw7c7FcumkXz2nA6r5NwbnhELvNFK8fzsY+QJKHaAlJ9CclliP1PiiAcl2LQo2\n"
Packit Service 4684c1
	"gaygWNiD+ggnqzy7nqam9rieOOMHls1kKFAFrWy2g/cBhTfS+/7Shpex7NK2GAiu\n"
Packit Service 4684c1
	"jgUV0TZHEyEZt6um4gLS9vwUKs/R4XS9VL/bBlfAy2hAVTeUejiRBGeTJkqBu7+c\n"
Packit Service 4684c1
	"4FdrCByVhaeQASMYu/lga8eaGL1zJbJe2BQWI754KDYDT9qKNqGlgysr4AVje7z1\n"
Packit Service 4684c1
	"Y1MQ72SnfrzYSQw6BB85CurB6iou3Q+eM4o4g/+xGEuDo0Ne/8ir\n"
Packit Service 4684c1
	"-----END OCSP RESPONSE-----\n";
Packit Service 4684c1
Packit Service 4684c1
static const gnutls_datum_t long_chain = {
Packit Service 4684c1
	(void*)long_chain_pem, sizeof(long_chain_pem)-1
Packit Service 4684c1
};
Packit Service 4684c1
Packit Service 4684c1
static const gnutls_datum_t bad_long_chain = {
Packit Service 4684c1
	(void*)bad_long_chain_pem, sizeof(bad_long_chain_pem)-1
Packit Service 4684c1
};
Packit Service 4684c1
Packit Service 4684c1
static const gnutls_datum_t no_chain = {
Packit Service 4684c1
	(void*)" ", 1
Packit Service 4684c1
};
Packit Service 4684c1
Packit Service 4684c1
static const test_st tests[] = {
Packit Service 4684c1
	{.name = "load no ocsps",
Packit Service 4684c1
	 .ocsps = &no_chain,
Packit Service 4684c1
	 .nocsps = 0,
Packit Service 4684c1
	 .flags = 0,
Packit Service 4684c1
	 .format = GNUTLS_X509_FMT_PEM,
Packit Service 4684c1
	 .exp_err = GNUTLS_E_REQUESTED_DATA_NOT_AVAILABLE
Packit Service 4684c1
	},
Packit Service 4684c1
	{.name = "load of 3 ocsps, with expected failure",
Packit Service 4684c1
	 .ocsps = &bad_long_chain,
Packit Service 4684c1
	 .nocsps = 3,
Packit Service 4684c1
	 .flags = 0,
Packit Service 4684c1
	 .format = GNUTLS_X509_FMT_PEM,
Packit Service 4684c1
	 .exp_err = GNUTLS_E_ASN1_TAG_ERROR
Packit Service 4684c1
	},
Packit Service 4684c1
	{.name = "load 3 ocsps",
Packit Service 4684c1
	 .ocsps = &long_chain,
Packit Service 4684c1
	 .nocsps = 3,
Packit Service 4684c1
	 .format = GNUTLS_X509_FMT_PEM,
Packit Service 4684c1
	 .flags = 0
Packit Service 4684c1
	},
Packit Service 4684c1
	{.name = "load 1 DER ocsp",
Packit Service 4684c1
	 .ocsps = &ocsp_subca3_unknown,
Packit Service 4684c1
	 .nocsps = 1,
Packit Service 4684c1
	 .format = GNUTLS_X509_FMT_DER,
Packit Service 4684c1
	 .flags = 0
Packit Service 4684c1
	}
Packit Service 4684c1
};
Packit Service 4684c1
Packit Service 4684c1
void doit(void)
Packit Service 4684c1
{
Packit Service 4684c1
	unsigned int i;
Packit Service 4684c1
Packit Service 4684c1
	for (i=0;i
Packit Service 4684c1
		success("checking: %s\n", tests[i].name);
Packit Service 4684c1
Packit Service 4684c1
		load_list(tests[i].name, tests[i].ocsps, tests[i].nocsps,
Packit Service 4684c1
			  tests[i].format, tests[i].flags, tests[i].exp_err);
Packit Service 4684c1
	}
Packit Service 4684c1
Packit Service 4684c1
	gnutls_global_deinit();
Packit Service 4684c1
}