windows-btree-enum-20080723
authorJeffrey Altman <jaltman@secure-endpoints.com>
Wed, 23 Jul 2008 22:19:19 +0000 (22:19 +0000)
committerJeffrey Altman <jaltman@secure-endpoints.com>
Wed, 23 Jul 2008 22:19:19 +0000 (22:19 +0000)
LICENSE MIT

Fix next enum to return an invalid param error when beyond the end
of the list.

src/WINNT/afsd/cm_btree.c

index a212df8..c7bc2b7 100644 (file)
@@ -2336,11 +2336,11 @@ cm_BPlusDirEnumBulkStat(cm_scache_t *dscp, cm_direnum_t *enump, cm_user_t *userp
 long 
 cm_BPlusDirNextEnumEntry(cm_direnum_t *enump, cm_direnum_entry_t **entrypp)
 {      
-    if (enump == NULL || entrypp == NULL || enump->next > enump->count) {
+    if (enump == NULL || entrypp == NULL || enump->next >= enump->count) {
        if (entrypp)
            *entrypp = NULL;
        osi_Log0(afsd_logp, "cm_BPlusDirNextEnumEntry invalid input");
-       return CM_ERROR_INVAL;                        \
+       return CM_ERROR_INVAL;
     }
 
     *entrypp = &enump->entry[enump->next++];