x509_crl.h
Go to the documentation of this file.
/*
* Copyright (C) 2006-2015, ARM Limited, All Rights Reserved
* SPDX-License-Identifier: Apache-2.0
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may
* not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*
* This file is part of mbed TLS (https://tls.mbed.org)
*/
#ifndef MBEDTLS_X509_CRL_H
#define MBEDTLS_X509_CRL_H
#if !defined(MBEDTLS_CONFIG_FILE)
#include "config.h"
#else
#include MBEDTLS_CONFIG_FILE
#endif
#include "x509.h"
#ifdef __cplusplus
extern "C" {
#endif
typedef struct mbedtls_x509_crl_entry
{
mbedtls_x509_buf raw;
mbedtls_x509_buf serial;
mbedtls_x509_time revocation_date;
mbedtls_x509_buf entry_ext;
struct mbedtls_x509_crl_entry *next;
}
mbedtls_x509_crl_entry;
typedef struct mbedtls_x509_crl
{
mbedtls_x509_buf raw;
mbedtls_x509_buf tbs;
int version;
mbedtls_x509_buf sig_oid;
mbedtls_x509_buf issuer_raw;
mbedtls_x509_name issuer;
mbedtls_x509_time this_update;
mbedtls_x509_time next_update;
mbedtls_x509_crl_entry entry;
mbedtls_x509_buf crl_ext;
mbedtls_x509_buf sig_oid2;
mbedtls_x509_buf sig;
mbedtls_md_type_t sig_md;
mbedtls_pk_type_t sig_pk;
void *sig_opts;
struct mbedtls_x509_crl *next;
}
mbedtls_x509_crl;
int mbedtls_x509_crl_parse_der( mbedtls_x509_crl *chain,
const unsigned char *buf, size_t buflen );
int mbedtls_x509_crl_parse( mbedtls_x509_crl *chain, const unsigned char *buf, size_t buflen );
#if defined(MBEDTLS_FS_IO)
int mbedtls_x509_crl_parse_file( mbedtls_x509_crl *chain, const char *path );
#endif /* MBEDTLS_FS_IO */
int mbedtls_x509_crl_info( char *buf, size_t size, const char *prefix,
const mbedtls_x509_crl *crl );
void mbedtls_x509_crl_init( mbedtls_x509_crl *crl );
void mbedtls_x509_crl_free( mbedtls_x509_crl *crl );
/* \} name */
/* \} addtogroup x509_module */
#ifdef __cplusplus
}
#endif
#endif /* mbedtls_x509_crl.h */
mbedtls_x509_crl_entry
Definition: x509_crl.h:52
mbedtls_x509_crl::version
int version
Definition: x509_crl.h:75
mbedtls_x509_crl_info
int mbedtls_x509_crl_info(char *buf, size_t size, const char *prefix, const mbedtls_x509_crl *crl)
Returns an informational string about the CRL.
mbedtls_x509_crl
Definition: x509_crl.h:70
mbedtls_x509_crl
struct mbedtls_x509_crl mbedtls_x509_crl
mbedtls_x509_crl_entry::serial
mbedtls_x509_buf serial
Definition: x509_crl.h:56
mbedtls_x509_crl::issuer_raw
mbedtls_x509_buf issuer_raw
Definition: x509_crl.h:78
mbedtls_pk_type_t
mbedtls_pk_type_t
Public key types.
Definition: pk.h:76
config.h
Configuration options (set of defines)
mbedtls_x509_crl::next
struct mbedtls_x509_crl * next
Definition: x509_crl.h:95
mbedtls_x509_crl_parse_der
int mbedtls_x509_crl_parse_der(mbedtls_x509_crl *chain, const unsigned char *buf, size_t buflen)
Parse a DER-encoded CRL and append it to the chained list.
mbedtls_x509_crl::sig
mbedtls_x509_buf sig
Definition: x509_crl.h:90
mbedtls_x509_crl::issuer
mbedtls_x509_name issuer
Definition: x509_crl.h:80
mbedtls_x509_crl_parse_file
int mbedtls_x509_crl_parse_file(mbedtls_x509_crl *chain, const char *path)
Load one or more CRLs and append them to the chained list.
mbedtls_x509_crl::entry
mbedtls_x509_crl_entry entry
Definition: x509_crl.h:85
mbedtls_asn1_named_data
Definition: asn1.h:166
mbedtls_x509_crl::sig_md
mbedtls_md_type_t sig_md
Definition: x509_crl.h:91
mbedtls_x509_crl::this_update
mbedtls_x509_time this_update
Definition: x509_crl.h:82
mbedtls_x509_crl_free
void mbedtls_x509_crl_free(mbedtls_x509_crl *crl)
Unallocate all CRL data.
mbedtls_asn1_buf
Definition: asn1.h:134
mbedtls_x509_time
Definition: x509.h:208
mbedtls_x509_crl_entry::raw
mbedtls_x509_buf raw
Definition: x509_crl.h:54
mbedtls_x509_crl::next_update
mbedtls_x509_time next_update
Definition: x509_crl.h:83
mbedtls_x509_crl_parse
int mbedtls_x509_crl_parse(mbedtls_x509_crl *chain, const unsigned char *buf, size_t buflen)
Parse one or more CRLs and append them to the chained list.
mbedtls_x509_crl::raw
mbedtls_x509_buf raw
Definition: x509_crl.h:72
mbedtls_x509_crl_entry
struct mbedtls_x509_crl_entry mbedtls_x509_crl_entry
mbedtls_x509_crl::sig_opts
void * sig_opts
Definition: x509_crl.h:93
mbedtls_x509_crl_init
void mbedtls_x509_crl_init(mbedtls_x509_crl *crl)
Initialize a CRL (chain)
x509.h
X.509 generic defines and structures.
mbedtls_x509_crl::sig_oid
mbedtls_x509_buf sig_oid
Definition: x509_crl.h:76
mbedtls_x509_crl::tbs
mbedtls_x509_buf tbs
Definition: x509_crl.h:73
mbedtls_x509_crl::sig_oid2
mbedtls_x509_buf sig_oid2
Definition: x509_crl.h:89
mbedtls_x509_crl::sig_pk
mbedtls_pk_type_t sig_pk
Definition: x509_crl.h:92
mbedtls_x509_crl::crl_ext
mbedtls_x509_buf crl_ext
Definition: x509_crl.h:87
mbedtls_x509_crl_entry::revocation_date
mbedtls_x509_time revocation_date
Definition: x509_crl.h:58
mbedtls_x509_crl_entry::next
struct mbedtls_x509_crl_entry * next
Definition: x509_crl.h:62
mbedtls_x509_crl_entry::entry_ext
mbedtls_x509_buf entry_ext
Definition: x509_crl.h:60
mbedtls_md_type_t
mbedtls_md_type_t
Enumeration of supported message digests.
Definition: md.h:56