/*
 * Automatically generated by asn1_compiler.  Do not edit
 *
 * ASN.1 parser for x509_csr
 */
#pragma once
#include "asn1_encoder.h"
#include "asn1_decoder.h"

// clang-format off
extern const struct lc_asn1_encoder lc_x509_csr_encoder;
extern const struct lc_asn1_decoder lc_x509_csr_decoder;

extern int lc_x509_attribute_value_continue_enc(void *, uint8_t *, size_t *, uint8_t *);
extern int lc_x509_attribute_value_continue(void *, size_t, unsigned char, const uint8_t *, size_t);
extern int lc_x509_csr_version_enc(void *, uint8_t *, size_t *, uint8_t *);
extern int lc_x509_csr_version(void *, size_t, unsigned char, const uint8_t *, size_t);
extern int lc_x509_extract_attribute_name_segment_enc(void *, uint8_t *, size_t *, uint8_t *);
extern int lc_x509_extract_attribute_name_segment(void *, size_t, unsigned char, const uint8_t *, size_t);
extern int lc_x509_extract_key_data_enc(void *, uint8_t *, size_t *, uint8_t *);
extern int lc_x509_extract_key_data(void *, size_t, unsigned char, const uint8_t *, size_t);
extern int lc_x509_note_algorithm_OID_enc(void *, uint8_t *, size_t *, uint8_t *);
extern int lc_x509_note_algorithm_OID(void *, size_t, unsigned char, const uint8_t *, size_t);
extern int lc_x509_note_attribute_type_OID_enc(void *, uint8_t *, size_t *, uint8_t *);
extern int lc_x509_note_attribute_type_OID(void *, size_t, unsigned char, const uint8_t *, size_t);
extern int lc_x509_note_csr_info_enc(void *, uint8_t *, size_t *, uint8_t *);
extern int lc_x509_note_csr_info(void *, size_t, unsigned char, const uint8_t *, size_t);
extern int lc_x509_note_params_enc(void *, uint8_t *, size_t *, uint8_t *);
extern int lc_x509_note_params(void *, size_t, unsigned char, const uint8_t *, size_t);
extern int lc_x509_note_signature_enc(void *, uint8_t *, size_t *, uint8_t *);
extern int lc_x509_note_signature(void *, size_t, unsigned char, const uint8_t *, size_t);
extern int lc_x509_note_subject_enc(void *, uint8_t *, size_t *, uint8_t *);
extern int lc_x509_note_subject(void *, size_t, unsigned char, const uint8_t *, size_t);
extern int lc_x509_signature_algorithm_enc(void *, uint8_t *, size_t *, uint8_t *);
extern int lc_x509_signature_algorithm(void *, size_t, unsigned char, const uint8_t *, size_t);
// clang-format on
