When a new file is being written to a share on HP-UX, I was getting either 'double free' errors, or NT_STATUS_INVALID_HANDLE errors. I tracked this down to some uninitialized pointers in the HPUX ACL module.
Created attachment 3106 [details] fix uninitialized vars in vfs_hpuxacl.c attached patch appears to fix it for me. While hunting down this bug, I also spotted this, which should be considered: --- source/smbd/open.c (revision 281) +++ source/smbd/open.c (working copy) @@ -1200,6 +1200,7 @@ } else { del_deferred_open_entry(lck, mid); TALLOC_FREE(lck); + lck = NULL; } /* Ensure we don't reprocess this message. */
That's very unlikely to fix it. TALLOC_FREE alreay NULLs out the pointer. I don't have a solution though. Sorry, Volker
yeah, you're right. TALLOC_FREE() nulls the pointer. so that inline patch is bogus. However, the patch inside the attachment is different, and works.
Ah, ok. I did not look at the patch as your comment already include some patch-like lines :-) Pushed with 0cbc43562e358e30ba5d431ca54c42bb2d09dc44 and a3b36c3cb0fe5f3e78c200290afa59829934f496. Thanks, Volker