1*b0706762SJames Bottomley /* SPDX-License-Identifier: GPL-2.0-only */ 2*b0706762SJames Bottomley 3*b0706762SJames Bottomley #ifndef _LINUX_ASN1_ENCODER_H 4*b0706762SJames Bottomley #define _LINUX_ASN1_ENCODER_H 5*b0706762SJames Bottomley 6*b0706762SJames Bottomley #include <linux/types.h> 7*b0706762SJames Bottomley #include <linux/asn1.h> 8*b0706762SJames Bottomley #include <linux/asn1_ber_bytecode.h> 9*b0706762SJames Bottomley 10*b0706762SJames Bottomley #define asn1_oid_len(oid) (sizeof(oid)/sizeof(u32)) 11*b0706762SJames Bottomley unsigned char * 12*b0706762SJames Bottomley asn1_encode_integer(unsigned char *data, const unsigned char *end_data, 13*b0706762SJames Bottomley s64 integer); 14*b0706762SJames Bottomley unsigned char * 15*b0706762SJames Bottomley asn1_encode_oid(unsigned char *data, const unsigned char *end_data, 16*b0706762SJames Bottomley u32 oid[], int oid_len); 17*b0706762SJames Bottomley unsigned char * 18*b0706762SJames Bottomley asn1_encode_tag(unsigned char *data, const unsigned char *end_data, 19*b0706762SJames Bottomley u32 tag, const unsigned char *string, int len); 20*b0706762SJames Bottomley unsigned char * 21*b0706762SJames Bottomley asn1_encode_octet_string(unsigned char *data, 22*b0706762SJames Bottomley const unsigned char *end_data, 23*b0706762SJames Bottomley const unsigned char *string, u32 len); 24*b0706762SJames Bottomley unsigned char * 25*b0706762SJames Bottomley asn1_encode_sequence(unsigned char *data, const unsigned char *end_data, 26*b0706762SJames Bottomley const unsigned char *seq, int len); 27*b0706762SJames Bottomley unsigned char * 28*b0706762SJames Bottomley asn1_encode_boolean(unsigned char *data, const unsigned char *end_data, 29*b0706762SJames Bottomley bool val); 30*b0706762SJames Bottomley 31*b0706762SJames Bottomley #endif 32