mbedtls ported to mbed-classic
Fork of mbedtls by
pem.h File Reference
Privacy Enhanced Mail (PEM) decoding. More...
Go to the source code of this file.
Data Structures | |
struct | mbedtls_pem_context |
PEM context structure. More... | |
Functions | |
void | mbedtls_pem_init (mbedtls_pem_context *ctx) |
PEM context setup. | |
int | mbedtls_pem_read_buffer (mbedtls_pem_context *ctx, const char *header, const char *footer, const unsigned char *data, const unsigned char *pwd, size_t pwdlen, size_t *use_len) |
Read a buffer for PEM information and store the resulting data into the specified context buffers. | |
void | mbedtls_pem_free (mbedtls_pem_context *ctx) |
PEM context memory freeing. | |
int | mbedtls_pem_write_buffer (const char *header, const char *footer, const unsigned char *der_data, size_t der_len, unsigned char *buf, size_t buf_len, size_t *olen) |
Write a buffer of PEM information from a DER encoded buffer. |
Detailed Description
Privacy Enhanced Mail (PEM) decoding.
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)
Definition in file pem.h.
Function Documentation
void mbedtls_pem_free | ( | mbedtls_pem_context * | ctx ) |
void mbedtls_pem_init | ( | mbedtls_pem_context * | ctx ) |
int mbedtls_pem_read_buffer | ( | mbedtls_pem_context * | ctx, |
const char * | header, | ||
const char * | footer, | ||
const unsigned char * | data, | ||
const unsigned char * | pwd, | ||
size_t | pwdlen, | ||
size_t * | use_len | ||
) |
Read a buffer for PEM information and store the resulting data into the specified context buffers.
- Parameters:
-
ctx context to use header header string to seek and expect footer footer string to seek and expect data source data to look in (must be nul-terminated) pwd password for decryption (can be NULL) pwdlen length of password use_len destination for total length used (set after header is correctly read, so unless you get MBEDTLS_ERR_PEM_BAD_INPUT_DATA or MBEDTLS_ERR_PEM_NO_HEADER_FOOTER_PRESENT, use_len is the length to skip)
- Note:
- Attempts to check password correctness by verifying if the decrypted text starts with an ASN.1 sequence of appropriate length
- Returns:
- 0 on success, or a specific PEM error code
int mbedtls_pem_write_buffer | ( | const char * | header, |
const char * | footer, | ||
const unsigned char * | der_data, | ||
size_t | der_len, | ||
unsigned char * | buf, | ||
size_t | buf_len, | ||
size_t * | olen | ||
) |
Write a buffer of PEM information from a DER encoded buffer.
- Parameters:
-
header header string to write footer footer string to write der_data DER data to write der_len length of the DER data buf buffer to write to buf_len length of output buffer olen total length written / required (if buf_len is not enough)
- Returns:
- 0 on success, or a specific PEM or BASE64 error code. On MBEDTLS_ERR_BASE64_BUFFER_TOO_SMALL olen is the required size.
Generated on Tue Jul 12 2022 12:52:52 by 1.7.2