- for ( rc = ldap_get_attribute_ber( ld, msg, ber, &tmp.sml_type, &tmp.sml_bvalues);
- rc == LDAP_SUCCESS;
- rc = ldap_get_attribute_ber( ld, msg, ber, &tmp.sml_type, &tmp.sml_bvalues))
- {
+ while ( ber_remaining( ber ) ) {
+ tag = ber_scanf( ber, "{mW}", &tmp.sml_type, &tmp.sml_values );
+
+ if ( tag == LBER_ERROR ) break;