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