The unified diff between revisions [92f17752..] and [11a5f681..] is displayed below. It can also be downloaded as a raw diff.
This diff has been restricted to the following files: 'include/asn1_int.h'
#
#
# patch "include/asn1_int.h"
# from [a0e0d0b6b41db209d896158c5bde5ce6e1047f87]
# to [7cd7ae2878098baae23635e2706739b648ab5634]
#
============================================================
--- include/asn1_int.h a0e0d0b6b41db209d896158c5bde5ce6e1047f87
+++ include/asn1_int.h 7cd7ae2878098baae23635e2706739b648ab5634
@@ -1,21 +1,57 @@
/*************************************************
* ASN.1 Internals Header File *
-* (C) 1999-2006 The Botan Project *
+* (C) 1999-2007 Jack Lloyd *
*************************************************/
#ifndef BOTAN_ASN1_H__
#define BOTAN_ASN1_H__
#include <botan/secmem.h>
-#include <botan/enums.h>
#include <botan/exceptn.h>
namespace Botan {
/*************************************************
+* ASN.1 Type and Class Tags *
+*************************************************/
+enum ASN1_Tag {
+ UNIVERSAL = 0x00,
+ APPLICATION = 0x40,
+ CONTEXT_SPECIFIC = 0x80,
+ PRIVATE = 0xC0,
+
+ CONSTRUCTED = 0x20,
+
+ EOC = 0x00,
+ BOOLEAN = 0x01,
+ INTEGER = 0x02,
+ BIT_STRING = 0x03,
+ OCTET_STRING = 0x04,
+ NULL_TAG = 0x05,
+ OBJECT_ID = 0x06,
+ ENUMERATED = 0x0A,
+ SEQUENCE = 0x10,
+ SET = 0x11,
+
+ UTF8_STRING = 0x0C,
+ NUMERIC_STRING = 0x12,
+ PRINTABLE_STRING = 0x13,
+ T61_STRING = 0x14,
+ IA5_STRING = 0x16,
+ VISIBLE_STRING = 0x1A,
+ BMP_STRING = 0x1E,
+
+ UTC_TIME = 0x17,
+ GENERALIZED_TIME = 0x18,
+
+ NO_OBJECT = 0xFF00,
+ DIRECTORY_STRING = 0xFF01
+};
+
+/*************************************************
* Basic ASN.1 Object Interface *
*************************************************/
-class ASN1_Object
+class BOTAN_DLL ASN1_Object
{
public:
virtual void encode_into(class DER_Encoder&) const = 0;
@@ -26,7 +62,7 @@ class ASN1_Object
/*************************************************
* BER Encoded Object *
*************************************************/
-class BER_Object
+class BOTAN_DLL BER_Object
{
public:
void assert_is_a(ASN1_Tag, ASN1_Tag);