Rob Shearman rob@codeweavers.com writes:
I plan to address (1) with a rewrite of the way the OBJECT_ATTRIBUTES structure is marshaled to the server. This will include making shared marshaling, sizing, unmarshaling and freeing routines for the structure and it contains the information about whether or not the find_object call should be case insensitive. The approach will also include marshaling of the SECURITY_DESCRIPTOR structure for the start of more NT-like access checks in the object manager. However, I have already spotted numerous places that are not correctly setting the OBJ_CASE_INSENSITIVE in the OBJECT_ATTRIBUTES structure when they should, so these will need to be fixed.
Alexandre, before I start on the marshaling of the OBJECT_ATTRIBUTES structure, is this acceptable with you?
It doesn't seem to me there is much to marshal in the OBJECT_ATTRIBUTES structure apart from the security descriptor, so I'm not sure what you plan to do. Also I'm not convinced at all that you can avoid making the namespace know about case sensitivity; if you allow the caller to specify it, you can create names that differ only in case which will break callers that do case insensitive lookups.