I was doing some investigations around bug #9130, where Windows fails to copy a file when we return a zero-length EA associated with it.
Looking carefully into this this is a deficiency in the CIFS UNIX protocols. On Linux it's possible to set a zero-length EA on a file/directory as a tag of some kind, with no associated data.
On Windows this is impossible - trying to set a zero-length EA will just delete it, plus the EA names are case insensitive (and always returned uppercase).
We need to add a UNIX_GET_EAS call that can return all POSIX EA's without mangling case, and can also return zero-length EA's, also we need a UNIX_SET_EAS call that can set a zero length EA, and also has an additional 'flags' field that can delete an EA if set.
Jeff/Steve - please discuss.
Reassigning to Steve since he was looking at this a while back. Steve, did this ever get resolved?