* 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>
|
2008-05-22 Corinna Vinschen <corinna@vinschen.de>
|
||||||
|
|
||||||
* grp.cc (internal_getgroups): Fix thinko. Only add enabled groups to
|
* 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_NAME_NOT_FOUND ((NTSTATUS) 0xc0000034)
|
||||||
#define STATUS_OBJECT_PATH_NOT_FOUND ((NTSTATUS) 0xc000003A)
|
#define STATUS_OBJECT_PATH_NOT_FOUND ((NTSTATUS) 0xc000003A)
|
||||||
#define STATUS_SHARING_VIOLATION ((NTSTATUS) 0xc0000043)
|
#define STATUS_SHARING_VIOLATION ((NTSTATUS) 0xc0000043)
|
||||||
|
#define STATUS_EAS_NOT_SUPPORTED ((NTSTATUS) 0xC000004f)
|
||||||
#define STATUS_EA_TOO_LARGE ((NTSTATUS) 0xc0000050)
|
#define STATUS_EA_TOO_LARGE ((NTSTATUS) 0xc0000050)
|
||||||
#define STATUS_NONEXISTENT_EA_ENTRY ((NTSTATUS) 0xc0000051)
|
#define STATUS_NONEXISTENT_EA_ENTRY ((NTSTATUS) 0xc0000051)
|
||||||
#define STATUS_NO_EAS_ON_FILE ((NTSTATUS) 0xc0000052)
|
#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_REPARSE_POINT
|
||||||
| FILE_OPEN_FOR_BACKUP_INTENT,
|
| FILE_OPEN_FOR_BACKUP_INTENT,
|
||||||
&nfs_aol_ffei, sizeof nfs_aol_ffei);
|
&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;
|
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,
|
status = NtCreateFile (&h,
|
||||||
READ_CONTROL | FILE_READ_ATTRIBUTES,
|
READ_CONTROL | FILE_READ_ATTRIBUTES,
|
||||||
&attr, &io, NULL, FILE_ATTRIBUTE_NORMAL,
|
&attr, &io, NULL, FILE_ATTRIBUTE_NORMAL,
|
||||||
FILE_SHARE_VALID_FLAGS, FILE_OPEN,
|
FILE_SHARE_VALID_FLAGS, FILE_OPEN,
|
||||||
FILE_OPEN_REPARSE_POINT
|
FILE_OPEN_REPARSE_POINT
|
||||||
| FILE_OPEN_FOR_BACKUP_INTENT,
|
| FILE_OPEN_FOR_BACKUP_INTENT,
|
||||||
&nfs_aol_ffei, sizeof nfs_aol_ffei);
|
eabuf, easize);
|
||||||
}
|
}
|
||||||
if (NT_SUCCESS (status)
|
if (NT_SUCCESS (status)
|
||||||
&& NT_SUCCESS (status
|
&& NT_SUCCESS (status
|
||||||
|
|
|
@ -21,15 +21,6 @@ details. */
|
||||||
|
|
||||||
#define __INSIDE_CYGWIN__
|
#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 __attribute__((nocommon)) __attribute__((section(".data_cygwin_nocopy")))
|
||||||
#define NO_COPY_INIT __attribute__((section(".data_cygwin_nocopy")))
|
#define NO_COPY_INIT __attribute__((section(".data_cygwin_nocopy")))
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue