Fix bug Bug 8422 - Infinite loop in ACL module code.
authorJeremy Allison <jra@samba.org>
Mon, 29 Aug 2011 23:53:04 +0000 (16:53 -0700)
committerKarolin Seeger <kseeger@samba.org>
Mon, 24 Oct 2011 17:15:40 +0000 (19:15 +0200)
Missing assignment means this loop will never terminate. Need to be applied
to 3.5.x and 3.6.1.
(cherry picked from commit 4db250449dda30e3ffa05c8918e0cf39cbacc5d8)

source3/modules/vfs_acl_common.c

index b209824442252e8de7f3ae7c7137a0e8baee696e..af4c41d9403329e70acadc39d3338571f1af66f2 100644 (file)
@@ -862,7 +862,7 @@ static int acl_common_remove_object(vfs_handle_struct *handle,
 
        /* Ensure we have this file open with DELETE access. */
        id = vfs_file_id_from_sbuf(conn, &local_fname.st);
-       for (fsp = file_find_di_first(id); fsp; file_find_di_next(fsp)) {
+       for (fsp = file_find_di_first(id); fsp; fsp = file_find_di_next(fsp)) {
                if (fsp->access_mask & DELETE_ACCESS &&
                                fsp->delete_on_close) {
                        /* We did open this for delete,