#
#
# patch "include/ber_dec.h"
#  from [754b0c94f34f9805ed0c722aed0ad78e50ae4106]
#    to [f1c8b4b2cd6e0e228ab76006f17e42258803fe02]
# 
# patch "src/ber_dec.cpp"
#  from [08fff81b2d7e419b3104a04c9d38311ba03c0488]
#    to [21f3a6da1ece347863688014e018a014f1bb2b4e]
#
============================================================
--- include/ber_dec.h	754b0c94f34f9805ed0c722aed0ad78e50ae4106
+++ include/ber_dec.h	f1c8b4b2cd6e0e228ab76006f17e42258803fe02
@@ -1,6 +1,6 @@
 /*************************************************
 * BER Decoder Header File                        *
-* (C) 1999-2007 Jack Lloyd                       *
+* (C) 1999-2008 Jack Lloyd                       *
 *************************************************/
 
 #ifndef BOTAN_BER_DECODER_H__
@@ -25,7 +25,7 @@ class BOTAN_DLL BER_Decoder
       BER_Decoder& verify_end();
       BER_Decoder& discard_remaining();
 
-      BER_Decoder  start_cons(ASN1_Tag);
+      BER_Decoder  start_cons(ASN1_Tag, ASN1_Tag = UNIVERSAL);
       BER_Decoder& end_cons();
 
       BER_Decoder& raw_bytes(MemoryRegion<byte>&);
============================================================
--- src/ber_dec.cpp	08fff81b2d7e419b3104a04c9d38311ba03c0488
+++ src/ber_dec.cpp	21f3a6da1ece347863688014e018a014f1bb2b4e
@@ -1,6 +1,6 @@
 /*************************************************
 * BER Decoder Source File                        *
-* (C) 1999-2007 Jack Lloyd                       *
+* (C) 1999-2008 Jack Lloyd                       *
 *************************************************/
 
 #include <botan/ber_dec.h>
@@ -226,10 +226,12 @@ void BER_Decoder::push_back(const BER_Ob
 /*************************************************
 * Begin decoding a CONSTRUCTED type              *
 *************************************************/
-BER_Decoder BER_Decoder::start_cons(ASN1_Tag type_tag)
+BER_Decoder BER_Decoder::start_cons(ASN1_Tag type_tag,
+                                    ASN1_Tag class_tag)
    {
    BER_Object obj = get_next_object();
-   obj.assert_is_a(type_tag, CONSTRUCTED);
+   obj.assert_is_a(type_tag, ASN1_Tag(class_tag | CONSTRUCTED));
+
    BER_Decoder result(obj.value, obj.value.size());
    result.parent = this;
    return result;
