* path.cc (symlink_info::check): Don't pass EaBuffer to NtCreateFile if it has
indicated that it isn't appropriate. * ntdll.h (STATUS_EAS_NOT_SUPPORTED): Define. * winsup.h: Remove __builtin* defines.
This commit is contained in:
parent
3c77dcff9e
commit
81adfe2862
|
@ -1,3 +1,11 @@
|
|||
2008-05-23 Christopher Faylor <me+cygwin@cgf.cx>
|
||||
|
||||
* path.cc (symlink_info::check): Don't pass EaBuffer to NtCreateFile if
|
||||
it has indicated that it isn't appropriate.
|
||||
* ntdll.h (STATUS_EAS_NOT_SUPPORTED): Define.
|
||||
|
||||
* winsup.h: Remove __builtin* defines.
|
||||
|
||||
2008-05-22 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* grp.cc (internal_getgroups): Fix thinko. Only add enabled groups to
|
||||
|
|
|
@ -28,6 +28,7 @@
|
|||
#define STATUS_OBJECT_NAME_NOT_FOUND ((NTSTATUS) 0xc0000034)
|
||||
#define STATUS_OBJECT_PATH_NOT_FOUND ((NTSTATUS) 0xc000003A)
|
||||
#define STATUS_SHARING_VIOLATION ((NTSTATUS) 0xc0000043)
|
||||
#define STATUS_EAS_NOT_SUPPORTED ((NTSTATUS) 0xC000004f)
|
||||
#define STATUS_EA_TOO_LARGE ((NTSTATUS) 0xc0000050)
|
||||
#define STATUS_NONEXISTENT_EA_ENTRY ((NTSTATUS) 0xc0000051)
|
||||
#define STATUS_NO_EAS_ON_FILE ((NTSTATUS) 0xc0000052)
|
||||
|
|
|
@ -2368,16 +2368,28 @@ symlink_info::check (char *path, const suffix_info *suffixes, unsigned opt,
|
|||
FILE_OPEN_REPARSE_POINT
|
||||
| FILE_OPEN_FOR_BACKUP_INTENT,
|
||||
&nfs_aol_ffei, sizeof nfs_aol_ffei);
|
||||
if (status == STATUS_ACCESS_DENIED) /* No right to access EAs? */
|
||||
if (status == STATUS_ACCESS_DENIED || status == STATUS_EAS_NOT_SUPPORTED) /* No right to access EAs? */
|
||||
{
|
||||
no_ea = true;
|
||||
void *eabuf;
|
||||
ULONG easize;
|
||||
if (status == STATUS_EAS_NOT_SUPPORTED)
|
||||
{
|
||||
eabuf = NULL;
|
||||
easize = 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
eabuf = (void *) &nfs_aol_ffei;
|
||||
easize = sizeof nfs_aol_ffei;
|
||||
}
|
||||
status = NtCreateFile (&h,
|
||||
READ_CONTROL | FILE_READ_ATTRIBUTES,
|
||||
&attr, &io, NULL, FILE_ATTRIBUTE_NORMAL,
|
||||
FILE_SHARE_VALID_FLAGS, FILE_OPEN,
|
||||
FILE_OPEN_REPARSE_POINT
|
||||
| FILE_OPEN_FOR_BACKUP_INTENT,
|
||||
&nfs_aol_ffei, sizeof nfs_aol_ffei);
|
||||
eabuf, easize);
|
||||
}
|
||||
if (NT_SUCCESS (status)
|
||||
&& NT_SUCCESS (status
|
||||
|
|
|
@ -21,15 +21,6 @@ details. */
|
|||
|
||||
#define __INSIDE_CYGWIN__
|
||||
|
||||
#define strlen __builtin_strlen
|
||||
#define strcmp __builtin_strcmp
|
||||
#define strcpy __builtin_strcpy
|
||||
#define memcpy __builtin_memcpy
|
||||
#define memcmp __builtin_memcmp
|
||||
#ifdef HAVE_BUILTIN_MEMSET
|
||||
# define memset __builtin_memset
|
||||
#endif
|
||||
|
||||
#define NO_COPY __attribute__((nocommon)) __attribute__((section(".data_cygwin_nocopy")))
|
||||
#define NO_COPY_INIT __attribute__((section(".data_cygwin_nocopy")))
|
||||
|
||||
|
|
Loading…
Reference in New Issue