]> granicus.if.org Git - php/commitdiff
MFH: - Make sure people call ldap_first_attribute() before ldap_next_attribute()
authorJani Taskinen <jani@php.net>
Fri, 13 Jul 2007 02:00:39 +0000 (02:00 +0000)
committerJani Taskinen <jani@php.net>
Fri, 13 Jul 2007 02:00:39 +0000 (02:00 +0000)
ext/ldap/ldap.c

index 77a44dd8c89b6b8a0319a290aa64dacb27f05a4a..4fb5febe1c6a19743058f7f63fe409c18f6894d5 100644 (file)
@@ -1165,6 +1165,11 @@ PHP_FUNCTION(ldap_next_attribute)
        ZEND_FETCH_RESOURCE(ld, ldap_linkdata *, link, -1, "ldap link", le_link);
        ZEND_FETCH_RESOURCE(resultentry, ldap_resultentry *, result_entry, -1, "ldap result entry", le_result_entry);
 
+       if (resultentry->ber == NULL) {
+               php_error_docref(NULL TSRMLS_CC, E_WARNING, "called before calling ldap_first_attribute() or no attributes found in result entry");
+               RETURN_FALSE;
+       }
+
        if ((attribute = ldap_next_attribute(ld->link, resultentry->data, resultentry->ber)) == NULL) {
 #if (LDAP_API_VERSION > 2000) || HAVE_NSLDAP || HAVE_ORALDAP_10 || WINDOWS
                if (resultentry->ber != NULL) {