+ tag = ber_peek_tag( ber, &length );
+
+ if ( tag == LDAP_FILTER_EXT_DNATTRS ) {
+ rc = ber_scanf( ber, "b}", &ma->ma_dnattrs );
+ } else {
+ rc = ber_scanf( ber, "}" );
+ ma->ma_dnattrs = 0;
+ }
+
+ if( rc == LBER_ERROR ) {
+#ifdef NEW_LOGGING
+ LDAP_LOG(( "operation", LDAP_LEVEL_ERR,
+ "get_mra: ber_scanf failure\n"));
+#else
+ Debug( LDAP_DEBUG_ANY, " get_mra ber_scanf\n", 0, 0, 0 );
+#endif
+
+ *text = "Error decoding dnattrs matching rule assertion";
+ mra_free( ma, 1 );
+ return SLAPD_DISCONNECT;
+ }
+