@@ -95,6 +95,9 @@ pub enum Tag {
9595 /// `UTF8String` tag: `12`.
9696 Utf8String ,
9797
98+ /// `RELATIVE OID` tag: `13`.
99+ RelativeOid ,
100+
98101 /// `SEQUENCE` tag: `16`.
99102 Sequence ,
100103
@@ -181,6 +184,7 @@ impl Tag {
181184 0x09 => Tag :: Real ,
182185 0x0A => Tag :: Enumerated ,
183186 0x0C => Tag :: Utf8String ,
187+ 0x0D => Tag :: RelativeOid ,
184188 0x12 => Tag :: NumericString ,
185189 0x13 => Tag :: PrintableString ,
186190 0x14 => Tag :: TeletexString ,
@@ -280,6 +284,7 @@ impl Tag {
280284 Tag :: Real => TagNumber ( 9 ) ,
281285 Tag :: Enumerated => TagNumber ( 10 ) ,
282286 Tag :: Utf8String => TagNumber ( 12 ) ,
287+ Tag :: RelativeOid => TagNumber ( 13 ) ,
283288 Tag :: Sequence => TagNumber ( 16 ) ,
284289 Tag :: Set => TagNumber ( 17 ) ,
285290 Tag :: NumericString => TagNumber ( 18 ) ,
@@ -465,6 +470,7 @@ impl fmt::Display for Tag {
465470 Tag :: Real => f. write_str ( "REAL" ) ,
466471 Tag :: Enumerated => f. write_str ( "ENUMERATED" ) ,
467472 Tag :: Utf8String => f. write_str ( "UTF8String" ) ,
473+ Tag :: RelativeOid => f. write_str ( "RELATIVE OID" ) ,
468474 Tag :: Set => f. write_str ( "SET" ) ,
469475 Tag :: NumericString => f. write_str ( "NumericString" ) ,
470476 Tag :: PrintableString => f. write_str ( "PrintableString" ) ,
@@ -534,6 +540,7 @@ mod tests {
534540 assert_eq ! ( Tag :: Real . class( ) , Class :: Universal ) ;
535541 assert_eq ! ( Tag :: Enumerated . class( ) , Class :: Universal ) ;
536542 assert_eq ! ( Tag :: Utf8String . class( ) , Class :: Universal ) ;
543+ assert_eq ! ( Tag :: RelativeOid . class( ) , Class :: Universal ) ;
537544 assert_eq ! ( Tag :: Set . class( ) , Class :: Universal ) ;
538545 assert_eq ! ( Tag :: NumericString . class( ) , Class :: Universal ) ;
539546 assert_eq ! ( Tag :: PrintableString . class( ) , Class :: Universal ) ;
0 commit comments