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 #include <linux/bug.h> 10*b0706762SJames Bottomley 11*b0706762SJames Bottomley #define asn1_oid_len(oid) (sizeof(oid)/sizeof(u32)) 12*b0706762SJames Bottomley unsigned char * 13*b0706762SJames Bottomley asn1_encode_integer(unsigned char *data, const unsigned char *end_data, 14*b0706762SJames Bottomley s64 integer); 15*b0706762SJames Bottomley unsigned char * 16*b0706762SJames Bottomley asn1_encode_oid(unsigned char *data, const unsigned char *end_data, 17*b0706762SJames Bottomley u32 oid[], int oid_len); 18*b0706762SJames Bottomley unsigned char * 19*b0706762SJames Bottomley asn1_encode_tag(unsigned char *data, const unsigned char *end_data, 20*b0706762SJames Bottomley u32 tag, const unsigned char *string, int len); 21*b0706762SJames Bottomley unsigned char * 22*b0706762SJames Bottomley asn1_encode_octet_string(unsigned char *data, 23*b0706762SJames Bottomley const unsigned char *end_data, 24*b0706762SJames Bottomley const unsigned char *string, u32 len); 25*b0706762SJames Bottomley unsigned char * 26*b0706762SJames Bottomley asn1_encode_sequence(unsigned char *data, const unsigned char *end_data, 27*b0706762SJames Bottomley const unsigned char *seq, int len); 28*b0706762SJames Bottomley unsigned char * 29*b0706762SJames Bottomley asn1_encode_boolean(unsigned char *data, const unsigned char *end_data, 30*b0706762SJames Bottomley bool val); 31*b0706762SJames Bottomley 32*b0706762SJames Bottomley #endif 33