Pipe names are case sensitive.
Robert Shearman
rob at codeweavers.com
Tue Apr 19 13:01:07 CDT 2005
Alexandre Julliard wrote:
>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.
>
The useful fields are RootDirectory, ObjectName, Attributes (for the
OBJ_INHERIT and OBJ_CASE_INSENSITIVE flags) and SecurityDescriptor.
These are handled individually by server calls that use them, or not at
all in some cases (for example the RootDirectory and
OBJ_CASE_INSENSITIVE flag). Also, all of these should by handled by the
create_object or find_object call on the server side, so it makes sense
to keep them together.
>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.
>
Testing on Windows shows that case insensitive lookups use the last
added object with that name. For example:
Create event with name "Test"
Create mutex with name "test"
Open event with case insensitive name "TEst" -> fails with
STATUS_OBJECT_TYPE_MISMATCH
Open mutex with case insensitive name "TEst" -> succeeds
Rob
More information about the wine-devel
mailing list