white space
This commit is contained in:
parent
29d1e62ed2
commit
34f5d0879c
@ -125,7 +125,7 @@ readdir_worker (DIR *dir, dirent *de)
|
|||||||
((fhandler_base *) dir->__fh)->get_name (),
|
((fhandler_base *) dir->__fh)->get_name (),
|
||||||
true);
|
true);
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
/* Compute d_ino by combining filename hash with directory hash. */
|
/* Compute d_ino by combining filename hash with directory hash. */
|
||||||
de->d_ino = ((fhandler_base *) dir->__fh)->get_namehash ();
|
de->d_ino = ((fhandler_base *) dir->__fh)->get_namehash ();
|
||||||
if (!is_dot && !is_dot_dot)
|
if (!is_dot && !is_dot_dot)
|
||||||
@ -134,7 +134,7 @@ readdir_worker (DIR *dir, dirent *de)
|
|||||||
DWORD devn = ((fhandler_base *) dir->__fh)->get_device ();
|
DWORD devn = ((fhandler_base *) dir->__fh)->get_device ();
|
||||||
/* Paths below /proc don't have a Win32 pendant. */
|
/* Paths below /proc don't have a Win32 pendant. */
|
||||||
if (devn == FH_PROC || devn == FH_PROCESS || devn == FH_REGISTRY)
|
if (devn == FH_PROC || devn == FH_PROCESS || devn == FH_REGISTRY)
|
||||||
de->d_ino = hash_path_name (de->d_ino, "/");
|
de->d_ino = hash_path_name (de->d_ino, "/");
|
||||||
/* A drive's root dir has a trailing backslash already. */
|
/* A drive's root dir has a trailing backslash already. */
|
||||||
else if (w32name[1] != ':' || w32name[2] != '\\' || w32name[3])
|
else if (w32name[1] != ':' || w32name[2] != '\\' || w32name[3])
|
||||||
de->d_ino = hash_path_name (de->d_ino, "\\");
|
de->d_ino = hash_path_name (de->d_ino, "\\");
|
||||||
|
@ -531,7 +531,7 @@ _cygtls::handle_exceptions (EXCEPTION_RECORD *e, exception_list *frame, CONTEXT
|
|||||||
si.si_code = BUS_OBJERR;
|
si.si_code = BUS_OBJERR;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
MEMORY_BASIC_INFORMATION m;
|
MEMORY_BASIC_INFORMATION m;
|
||||||
VirtualQuery ((PVOID) e->ExceptionInformation[1], &m, sizeof m);
|
VirtualQuery ((PVOID) e->ExceptionInformation[1], &m, sizeof m);
|
||||||
si.si_signo = SIGSEGV;
|
si.si_signo = SIGSEGV;
|
||||||
@ -1052,7 +1052,7 @@ sigset (int sig, _sig_func_ptr func)
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
/* No error checking. The test which could return SIG_ERR has already
|
/* No error checking. The test which could return SIG_ERR has already
|
||||||
been made above. */
|
been made above. */
|
||||||
signal (sig, func);
|
signal (sig, func);
|
||||||
sigdelset (&mask, sig);
|
sigdelset (&mask, sig);
|
||||||
}
|
}
|
||||||
|
@ -72,7 +72,7 @@ public:
|
|||||||
__ino64_t check_mount (const char *name, __ino64_t ino, bool eval = true)
|
__ino64_t check_mount (const char *name, __ino64_t ino, bool eval = true)
|
||||||
{
|
{
|
||||||
if (parent_dir_len == 1) /* root dir */
|
if (parent_dir_len == 1) /* root dir */
|
||||||
{
|
{
|
||||||
if (strcasematch (name, "proc"))
|
if (strcasematch (name, "proc"))
|
||||||
{
|
{
|
||||||
found[__DIR_PROC] = true;
|
found[__DIR_PROC] = true;
|
||||||
@ -97,14 +97,14 @@ public:
|
|||||||
__ino64_t check_missing_mount (char *ret_name, bool eval = true)
|
__ino64_t check_missing_mount (char *ret_name, bool eval = true)
|
||||||
{
|
{
|
||||||
for (int i = 0; i < count; ++i)
|
for (int i = 0; i < count; ++i)
|
||||||
if (!found[i])
|
if (!found[i])
|
||||||
{
|
{
|
||||||
found[i] = true;
|
found[i] = true;
|
||||||
strcpy (ret_name, mounts[i]);
|
strcpy (ret_name, mounts[i]);
|
||||||
return eval ? eval_ino (i) : 1;
|
return eval ? eval_ino (i) : 1;
|
||||||
}
|
}
|
||||||
if (parent_dir_len == 1) /* root dir */
|
if (parent_dir_len == 1) /* root dir */
|
||||||
{
|
{
|
||||||
if (!found[__DIR_PROC])
|
if (!found[__DIR_PROC])
|
||||||
{
|
{
|
||||||
found[__DIR_PROC] = true;
|
found[__DIR_PROC] = true;
|
||||||
@ -115,7 +115,7 @@ public:
|
|||||||
{
|
{
|
||||||
found[__DIR_CYGDRIVE] = true;
|
found[__DIR_CYGDRIVE] = true;
|
||||||
if (mount_table->cygdrive_len > 1)
|
if (mount_table->cygdrive_len > 1)
|
||||||
{
|
{
|
||||||
strncpy (ret_name, mount_table->cygdrive + 1,
|
strncpy (ret_name, mount_table->cygdrive + 1,
|
||||||
mount_table->cygdrive_len - 2);
|
mount_table->cygdrive_len - 2);
|
||||||
ret_name[mount_table->cygdrive_len - 2] = '\0';
|
ret_name[mount_table->cygdrive_len - 2] = '\0';
|
||||||
@ -222,7 +222,7 @@ fhandler_base::fstat_by_handle (struct __stat64 *buf)
|
|||||||
const DWORD fai_size = 2 * CYG_MAX_PATH + sizeof (FILE_ALL_INFORMATION);
|
const DWORD fai_size = 2 * CYG_MAX_PATH + sizeof (FILE_ALL_INFORMATION);
|
||||||
|
|
||||||
PFILE_FS_VOLUME_INFORMATION pfvi = (PFILE_FS_VOLUME_INFORMATION)
|
PFILE_FS_VOLUME_INFORMATION pfvi = (PFILE_FS_VOLUME_INFORMATION)
|
||||||
alloca (fvi_size);
|
alloca (fvi_size);
|
||||||
PFILE_ALL_INFORMATION pfai = (PFILE_ALL_INFORMATION) alloca (fai_size);
|
PFILE_ALL_INFORMATION pfai = (PFILE_ALL_INFORMATION) alloca (fai_size);
|
||||||
|
|
||||||
status = NtQueryVolumeInformationFile (get_handle (), &io, pfvi, fvi_size,
|
status = NtQueryVolumeInformationFile (get_handle (), &io, pfvi, fvi_size,
|
||||||
@ -849,17 +849,17 @@ fhandler_disk_file::link (const char *newpath)
|
|||||||
newpc.check (newpath, PC_SYM_NOFOLLOW);
|
newpc.check (newpath, PC_SYM_NOFOLLOW);
|
||||||
}
|
}
|
||||||
else if (transparent_exe
|
else if (transparent_exe
|
||||||
&& !pc.isdir ()
|
&& !pc.isdir ()
|
||||||
&& GetBinaryType (pc, &bintype)
|
&& GetBinaryType (pc, &bintype)
|
||||||
&& (len = strlen (newpc)) > 4
|
&& (len = strlen (newpc)) > 4
|
||||||
&& !strcasematch ((const char *) newpc + len - 4, ".exe"))
|
&& !strcasematch ((const char *) newpc + len - 4, ".exe"))
|
||||||
{
|
{
|
||||||
/* Executable hack. */
|
/* Executable hack. */
|
||||||
strcpy (new_buf, newpath);
|
strcpy (new_buf, newpath);
|
||||||
strcat (new_buf, ".exe");
|
strcat (new_buf, ".exe");
|
||||||
newpath = new_buf;
|
newpath = new_buf;
|
||||||
newpc.check (newpath, PC_SYM_NOFOLLOW);
|
newpc.check (newpath, PC_SYM_NOFOLLOW);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
query_open (query_write_attributes);
|
query_open (query_write_attributes);
|
||||||
@ -1474,7 +1474,7 @@ fhandler_disk_file::opendir ()
|
|||||||
else if ((dir = (DIR *) malloc (sizeof (DIR))) == NULL)
|
else if ((dir = (DIR *) malloc (sizeof (DIR))) == NULL)
|
||||||
set_errno (ENOMEM);
|
set_errno (ENOMEM);
|
||||||
else if ((dir->__d_dirname = (char *) malloc (wincap.is_winnt ()
|
else if ((dir->__d_dirname = (char *) malloc (wincap.is_winnt ()
|
||||||
? sizeof (struct __DIR_cache)
|
? sizeof (struct __DIR_cache)
|
||||||
: len + 3)) == NULL)
|
: len + 3)) == NULL)
|
||||||
{
|
{
|
||||||
set_errno (ENOMEM);
|
set_errno (ENOMEM);
|
||||||
@ -1505,7 +1505,7 @@ fhandler_disk_file::opendir ()
|
|||||||
teeny little bit faster. */
|
teeny little bit faster. */
|
||||||
len = strlen (d_dirname (dir));
|
len = strlen (d_dirname (dir));
|
||||||
if (len && !isdirsep (d_dirname (dir)[len - 1]))
|
if (len && !isdirsep (d_dirname (dir)[len - 1]))
|
||||||
strcpy (d_dirname (dir) + len, "\\");
|
strcpy (d_dirname (dir) + len, "\\");
|
||||||
dir->__d_cookie = __DIRENT_COOKIE;
|
dir->__d_cookie = __DIRENT_COOKIE;
|
||||||
dir->__handle = INVALID_HANDLE_VALUE;
|
dir->__handle = INVALID_HANDLE_VALUE;
|
||||||
dir->__d_position = 0;
|
dir->__d_position = 0;
|
||||||
@ -1538,7 +1538,7 @@ fhandler_disk_file::opendir ()
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* FileIdBothDirectoryInformation is apparently unsupported on
|
/* FileIdBothDirectoryInformation is apparently unsupported on
|
||||||
XP when accessing directories on UDF. When trying to use it
|
XP when accessing directories on UDF. When trying to use it
|
||||||
so, NtQueryDirectoryFile returns with STATUS_ACCESS_VIOLATION.
|
so, NtQueryDirectoryFile returns with STATUS_ACCESS_VIOLATION.
|
||||||
It's not clear if the call isn't also unsupported on other
|
It's not clear if the call isn't also unsupported on other
|
||||||
OS/FS combinations (say, Win2K/CDFS or so). Instead of
|
OS/FS combinations (say, Win2K/CDFS or so). Instead of
|
||||||
@ -1602,7 +1602,7 @@ fhandler_disk_file::readdir_helper (DIR *dir, dirent *de, DWORD w32_err,
|
|||||||
{
|
{
|
||||||
bool added = false;
|
bool added = false;
|
||||||
if ((de->d_ino = d_mounts (dir)->check_missing_mount (fname)))
|
if ((de->d_ino = d_mounts (dir)->check_missing_mount (fname)))
|
||||||
added = true;
|
added = true;
|
||||||
if (!added)
|
if (!added)
|
||||||
return geterrno_from_win_error (w32_err);
|
return geterrno_from_win_error (w32_err);
|
||||||
|
|
||||||
@ -1729,7 +1729,7 @@ fhandler_disk_file::readdir (DIR *dir, dirent *de)
|
|||||||
{
|
{
|
||||||
buf = (PFILE_ID_BOTH_DIR_INFORMATION) (d_cache (dir) + d_cachepos (dir));
|
buf = (PFILE_ID_BOTH_DIR_INFORMATION) (d_cache (dir) + d_cachepos (dir));
|
||||||
if (buf->NextEntryOffset == 0)
|
if (buf->NextEntryOffset == 0)
|
||||||
d_cachepos (dir) = 0;
|
d_cachepos (dir) = 0;
|
||||||
else
|
else
|
||||||
d_cachepos (dir) += buf->NextEntryOffset;
|
d_cachepos (dir) += buf->NextEntryOffset;
|
||||||
if ((dir->__flags & dirent_get_d_ino))
|
if ((dir->__flags & dirent_get_d_ino))
|
||||||
@ -1737,9 +1737,9 @@ fhandler_disk_file::readdir (DIR *dir, dirent *de)
|
|||||||
FileName = buf->FileName;
|
FileName = buf->FileName;
|
||||||
if ((dir->__flags & dirent_set_d_ino))
|
if ((dir->__flags & dirent_set_d_ino))
|
||||||
de->d_ino = buf->FileId.QuadPart;
|
de->d_ino = buf->FileId.QuadPart;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
FileName = ((PFILE_BOTH_DIR_INFORMATION) buf)->FileName;
|
FileName = ((PFILE_BOTH_DIR_INFORMATION) buf)->FileName;
|
||||||
sys_wcstombs (fname, CYG_MAX_PATH - 1, FileName, buf->FileNameLength / 2);
|
sys_wcstombs (fname, CYG_MAX_PATH - 1, FileName, buf->FileNameLength / 2);
|
||||||
|
|
||||||
de->d_ino = d_mounts (dir)->check_mount (fname, de->d_ino);
|
de->d_ino = d_mounts (dir)->check_mount (fname, de->d_ino);
|
||||||
@ -1975,7 +1975,7 @@ fhandler_cygdrive::readdir (DIR *dir, dirent *de)
|
|||||||
while (true)
|
while (true)
|
||||||
{
|
{
|
||||||
if (!pdrive || !*pdrive)
|
if (!pdrive || !*pdrive)
|
||||||
{
|
{
|
||||||
if (!(dir->__flags & dirent_saw_dot))
|
if (!(dir->__flags & dirent_saw_dot))
|
||||||
{
|
{
|
||||||
de->d_name[0] = '.';
|
de->d_name[0] = '.';
|
||||||
@ -1983,9 +1983,9 @@ fhandler_cygdrive::readdir (DIR *dir, dirent *de)
|
|||||||
de->d_ino = 2;
|
de->d_ino = 2;
|
||||||
}
|
}
|
||||||
return ENMFILE;
|
return ENMFILE;
|
||||||
}
|
}
|
||||||
if (GetFileAttributes (pdrive) != INVALID_FILE_ATTRIBUTES)
|
if (GetFileAttributes (pdrive) != INVALID_FILE_ATTRIBUTES)
|
||||||
break;
|
break;
|
||||||
pdrive = strchr (pdrive, '\0') + 1;
|
pdrive = strchr (pdrive, '\0') + 1;
|
||||||
}
|
}
|
||||||
*de->d_name = cyg_tolower (*pdrive);
|
*de->d_name = cyg_tolower (*pdrive);
|
||||||
|
@ -87,7 +87,7 @@ fhandler_dev_floppy::get_drive_info (struct hd_geometry *geo)
|
|||||||
if (!di)
|
if (!di)
|
||||||
{
|
{
|
||||||
/* Up to Win2K, even IOCTL_DISK_GET_DRIVE_GEOMETRY fails when trying
|
/* Up to Win2K, even IOCTL_DISK_GET_DRIVE_GEOMETRY fails when trying
|
||||||
it on CD or DVD drives. In that case fall back to requesting
|
it on CD or DVD drives. In that case fall back to requesting
|
||||||
simple file system information. */
|
simple file system information. */
|
||||||
NTSTATUS status;
|
NTSTATUS status;
|
||||||
IO_STATUS_BLOCK io;
|
IO_STATUS_BLOCK io;
|
||||||
@ -97,7 +97,7 @@ fhandler_dev_floppy::get_drive_info (struct hd_geometry *geo)
|
|||||||
sizeof ffsi,
|
sizeof ffsi,
|
||||||
FileFsSizeInformation);
|
FileFsSizeInformation);
|
||||||
if (!NT_SUCCESS (status))
|
if (!NT_SUCCESS (status))
|
||||||
{
|
{
|
||||||
__seterrno_from_nt_status (status);
|
__seterrno_from_nt_status (status);
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
@ -108,9 +108,9 @@ fhandler_dev_floppy::get_drive_info (struct hd_geometry *geo)
|
|||||||
bytes_per_sector = ffsi.BytesPerSector;
|
bytes_per_sector = ffsi.BytesPerSector;
|
||||||
drive_size = ffsi.TotalAllocationUnits.QuadPart
|
drive_size = ffsi.TotalAllocationUnits.QuadPart
|
||||||
* ffsi.SectorsPerAllocationUnit
|
* ffsi.SectorsPerAllocationUnit
|
||||||
* ffsi.BytesPerSector;
|
* ffsi.BytesPerSector;
|
||||||
if (geo)
|
if (geo)
|
||||||
{
|
{
|
||||||
geo->heads = 1;
|
geo->heads = 1;
|
||||||
geo->sectors = ffsi.SectorsPerAllocationUnit;
|
geo->sectors = ffsi.SectorsPerAllocationUnit;
|
||||||
geo->cylinders = ffsi.TotalAllocationUnits.LowPart;
|
geo->cylinders = ffsi.TotalAllocationUnits.LowPart;
|
||||||
|
@ -991,7 +991,7 @@ format_proc_partitions (char *destbuf, size_t maxsize)
|
|||||||
|| !isdigit (devname[8]))
|
|| !isdigit (devname[8]))
|
||||||
continue;
|
continue;
|
||||||
/* Construct path name for partition 0, which is the whole disk,
|
/* Construct path name for partition 0, which is the whole disk,
|
||||||
and try to open. */
|
and try to open. */
|
||||||
wcscpy (wpath, dbi->ObjectName.Buffer);
|
wcscpy (wpath, dbi->ObjectName.Buffer);
|
||||||
wcscpy (wpath + dbi->ObjectName.Length / 2, L"\\Partition0");
|
wcscpy (wpath + dbi->ObjectName.Length / 2, L"\\Partition0");
|
||||||
upath.Length = 22 + dbi->ObjectName.Length;
|
upath.Length = 22 + dbi->ObjectName.Length;
|
||||||
|
@ -592,10 +592,10 @@ address_in_use (struct sockaddr_in *addr)
|
|||||||
{
|
{
|
||||||
tab = (PMIB_TCPTABLE) alloca (size);
|
tab = (PMIB_TCPTABLE) alloca (size);
|
||||||
if (!GetTcpTable (tab, &size, FALSE))
|
if (!GetTcpTable (tab, &size, FALSE))
|
||||||
{
|
{
|
||||||
for (i = tab->dwNumEntries, entry = tab->table; i > 0; --i, ++entry)
|
for (i = tab->dwNumEntries, entry = tab->table; i > 0; --i, ++entry)
|
||||||
if (entry->dwLocalAddr == addr->sin_addr.s_addr
|
if (entry->dwLocalAddr == addr->sin_addr.s_addr
|
||||||
&& entry->dwLocalPort == addr->sin_port
|
&& entry->dwLocalPort == addr->sin_port
|
||||||
&& entry->dwState >= MIB_TCP_STATE_LISTEN
|
&& entry->dwState >= MIB_TCP_STATE_LISTEN
|
||||||
&& entry->dwState <= MIB_TCP_STATE_LAST_ACK)
|
&& entry->dwState <= MIB_TCP_STATE_LAST_ACK)
|
||||||
return true;
|
return true;
|
||||||
@ -688,14 +688,14 @@ fhandler_socket::bind (const struct sockaddr *name, int namelen)
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
/* If the application didn't explicitely call setsockopt (SO_REUSEADDR),
|
/* If the application didn't explicitely call setsockopt (SO_REUSEADDR),
|
||||||
enforce exclusive local address use using the SO_EXCLUSIVEADDRUSE
|
enforce exclusive local address use using the SO_EXCLUSIVEADDRUSE
|
||||||
socket option, to emulate POSIX socket behaviour more closely.
|
socket option, to emulate POSIX socket behaviour more closely.
|
||||||
|
|
||||||
KB 870562: Note that this option is only available since NT4 SP4.
|
KB 870562: Note that this option is only available since NT4 SP4.
|
||||||
Also note that a bug in Win2K SP1-3 and XP up to SP1 only enables
|
Also note that a bug in Win2K SP1-3 and XP up to SP1 only enables
|
||||||
this option for users in the local administrators group. */
|
this option for users in the local administrators group. */
|
||||||
if (wincap.has_exclusiveaddruse ())
|
if (wincap.has_exclusiveaddruse ())
|
||||||
{
|
{
|
||||||
if (!saw_reuseaddr ())
|
if (!saw_reuseaddr ())
|
||||||
{
|
{
|
||||||
int on = 1;
|
int on = 1;
|
||||||
@ -708,7 +708,7 @@ fhandler_socket::bind (const struct sockaddr *name, int namelen)
|
|||||||
{
|
{
|
||||||
debug_printf ("SO_REUSEADDR set");
|
debug_printf ("SO_REUSEADDR set");
|
||||||
/* There's a bug in SO_REUSEADDR handling in WinSock.
|
/* There's a bug in SO_REUSEADDR handling in WinSock.
|
||||||
Per standards, we must not be able to reuse a complete
|
Per standards, we must not be able to reuse a complete
|
||||||
duplicate of a local TCP address (same IP, same port),
|
duplicate of a local TCP address (same IP, same port),
|
||||||
even if SO_REUSEADDR has been set. That's unfortunately
|
even if SO_REUSEADDR has been set. That's unfortunately
|
||||||
possible in WinSock. So we're testing here if the local
|
possible in WinSock. So we're testing here if the local
|
||||||
@ -716,8 +716,8 @@ fhandler_socket::bind (const struct sockaddr *name, int namelen)
|
|||||||
only works for OSes with IP Helper support. */
|
only works for OSes with IP Helper support. */
|
||||||
if (get_socket_type () == SOCK_STREAM
|
if (get_socket_type () == SOCK_STREAM
|
||||||
&& wincap.has_ip_helper_lib ()
|
&& wincap.has_ip_helper_lib ()
|
||||||
&& address_in_use ((struct sockaddr_in *) name))
|
&& address_in_use ((struct sockaddr_in *) name))
|
||||||
{
|
{
|
||||||
debug_printf ("Local address in use, don't bind");
|
debug_printf ("Local address in use, don't bind");
|
||||||
set_errno (EADDRINUSE);
|
set_errno (EADDRINUSE);
|
||||||
goto out;
|
goto out;
|
||||||
@ -1015,14 +1015,14 @@ sa_restart:
|
|||||||
}
|
}
|
||||||
if (evts.lNetworkEvents & FD_ACCEPT)
|
if (evts.lNetworkEvents & FD_ACCEPT)
|
||||||
{
|
{
|
||||||
if (evts.iErrorCode[FD_ACCEPT_BIT])
|
if (evts.iErrorCode[FD_ACCEPT_BIT])
|
||||||
wsa_err = evts.iErrorCode[FD_ACCEPT_BIT];
|
wsa_err = evts.iErrorCode[FD_ACCEPT_BIT];
|
||||||
else
|
else
|
||||||
ret = 0;
|
ret = 0;
|
||||||
}
|
}
|
||||||
if (evts.lNetworkEvents & FD_CONNECT)
|
if (evts.lNetworkEvents & FD_CONNECT)
|
||||||
{
|
{
|
||||||
if (evts.iErrorCode[FD_CONNECT_BIT])
|
if (evts.iErrorCode[FD_CONNECT_BIT])
|
||||||
wsa_err = evts.iErrorCode[FD_CONNECT_BIT];
|
wsa_err = evts.iErrorCode[FD_CONNECT_BIT];
|
||||||
else
|
else
|
||||||
ret = 0;
|
ret = 0;
|
||||||
|
@ -20,15 +20,15 @@ details. */
|
|||||||
datatypes and function prototypes:
|
datatypes and function prototypes:
|
||||||
|
|
||||||
_BSD_SOURCE to include pure BSD functions which are not defined
|
_BSD_SOURCE to include pure BSD functions which are not defined
|
||||||
under POSIX.
|
under POSIX.
|
||||||
|
|
||||||
_POSIX_SOURCE if the application requests a POSIX compatible system.
|
_POSIX_SOURCE if the application requests a POSIX compatible system.
|
||||||
|
|
||||||
_XOPEN_SOURCE if X/Open functions and datatypes are requested. This
|
_XOPEN_SOURCE if X/Open functions and datatypes are requested. This
|
||||||
option includes _POSIX_SOURCE.
|
option includes _POSIX_SOURCE.
|
||||||
|
|
||||||
_GNU_SOURCE to turn on GNU extensions which might collide with defines
|
_GNU_SOURCE to turn on GNU extensions which might collide with defines
|
||||||
used in application or library headers. This option
|
used in application or library headers. This option
|
||||||
includes _BSD_SOURCE, _XOPEN_SOURCE and _POSIX_SOURCE.
|
includes _BSD_SOURCE, _XOPEN_SOURCE and _POSIX_SOURCE.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@ -671,7 +671,7 @@ convert_ws1_ip_optname (int optname)
|
|||||||
IP_DONTFRAGMENT
|
IP_DONTFRAGMENT
|
||||||
};
|
};
|
||||||
return (optname < 1 || optname > _WS1_IP_DONTFRAGMENT)
|
return (optname < 1 || optname > _WS1_IP_DONTFRAGMENT)
|
||||||
? optname
|
? optname
|
||||||
: ws2_optname[optname];
|
: ws2_optname[optname];
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -699,7 +699,7 @@ cygwin_setsockopt (int fd, int level, int optname, const void *optval,
|
|||||||
syscall_printf ("setsockopt optval=%x", *(long *) optval);
|
syscall_printf ("setsockopt optval=%x", *(long *) optval);
|
||||||
|
|
||||||
if (res)
|
if (res)
|
||||||
{
|
{
|
||||||
/* KB 248611:
|
/* KB 248611:
|
||||||
|
|
||||||
Windows 2000 and above don't support setting the IP_TOS field
|
Windows 2000 and above don't support setting the IP_TOS field
|
||||||
@ -732,7 +732,7 @@ cygwin_setsockopt (int fd, int level, int optname, const void *optval,
|
|||||||
set_winsock_errno ();
|
set_winsock_errno ();
|
||||||
}
|
}
|
||||||
else if (level == SOL_SOCKET && optname == SO_REUSEADDR)
|
else if (level == SOL_SOCKET && optname == SO_REUSEADDR)
|
||||||
fh->saw_reuseaddr (*(int *) optval);
|
fh->saw_reuseaddr (*(int *) optval);
|
||||||
}
|
}
|
||||||
|
|
||||||
syscall_printf ("%d = setsockopt (%d, %d, %x, %p, %d)",
|
syscall_printf ("%d = setsockopt (%d, %d, %x, %p, %d)",
|
||||||
@ -1912,7 +1912,7 @@ cygwin_rresvport (int *port)
|
|||||||
res = (int) INVALID_SOCKET;
|
res = (int) INVALID_SOCKET;
|
||||||
}
|
}
|
||||||
else if (port)
|
else if (port)
|
||||||
*port = myport;
|
*port = myport;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (res != (int) INVALID_SOCKET)
|
if (res != (int) INVALID_SOCKET)
|
||||||
|
@ -219,7 +219,7 @@ has_dot_last_component (const char *dir)
|
|||||||
path following Win32 rules. */
|
path following Win32 rules. */
|
||||||
const char *last_comp = strrchr (dir, '/');
|
const char *last_comp = strrchr (dir, '/');
|
||||||
return last_comp
|
return last_comp
|
||||||
&& last_comp[1] == '.'
|
&& last_comp[1] == '.'
|
||||||
&& (last_comp[2] == '\0'
|
&& (last_comp[2] == '\0'
|
||||||
|| (last_comp[2] == '.' && last_comp[3] == '\0'));
|
|| (last_comp[2] == '.' && last_comp[3] == '\0'));
|
||||||
}
|
}
|
||||||
@ -977,14 +977,14 @@ out:
|
|||||||
else if (!tail)
|
else if (!tail)
|
||||||
tail = p;
|
tail = p;
|
||||||
if (tail && p[1] == '\\')
|
if (tail && p[1] == '\\')
|
||||||
{
|
{
|
||||||
if (p > tail || *tail != '.')
|
if (p > tail || *tail != '.')
|
||||||
{
|
{
|
||||||
error = ENOENT;
|
error = ENOENT;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
tail = NULL;
|
tail = NULL;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!tail || tail == path)
|
if (!tail || tail == path)
|
||||||
@ -1740,9 +1740,9 @@ mount_info::get_mounts_here (const char *parent_dir, int parent_dir_len,
|
|||||||
mount_item *mi = mount + posix_sorted[i];
|
mount_item *mi = mount + posix_sorted[i];
|
||||||
char *last_slash = strrchr (mi->posix_path, '/');
|
char *last_slash = strrchr (mi->posix_path, '/');
|
||||||
if (!last_slash)
|
if (!last_slash)
|
||||||
continue;
|
continue;
|
||||||
if (last_slash == mi->posix_path)
|
if (last_slash == mi->posix_path)
|
||||||
{
|
{
|
||||||
if (parent_dir_len == 1 && mi->posix_pathlen > 1)
|
if (parent_dir_len == 1 && mi->posix_pathlen > 1)
|
||||||
mount_points[n_mounts++] = last_slash + 1;
|
mount_points[n_mounts++] = last_slash + 1;
|
||||||
}
|
}
|
||||||
@ -2813,7 +2813,7 @@ symlink_worker (const char *oldpath, const char *newpath, bool use_winsym,
|
|||||||
if (GetFileAttributes (reloldpath) == INVALID_FILE_ATTRIBUTES)
|
if (GetFileAttributes (reloldpath) == INVALID_FILE_ATTRIBUTES)
|
||||||
{
|
{
|
||||||
win32_oldpath.check (oldpath, PC_SYM_NOFOLLOW,
|
win32_oldpath.check (oldpath, PC_SYM_NOFOLLOW,
|
||||||
transparent_exe ? stat_suffixes : NULL);
|
transparent_exe ? stat_suffixes : NULL);
|
||||||
if (win32_oldpath.error != ENOENT)
|
if (win32_oldpath.error != ENOENT)
|
||||||
strcpy (use_winsym ? reloldpath : w32oldpath, win32_oldpath);
|
strcpy (use_winsym ? reloldpath : w32oldpath, win32_oldpath);
|
||||||
}
|
}
|
||||||
@ -2822,7 +2822,7 @@ symlink_worker (const char *oldpath, const char *newpath, bool use_winsym,
|
|||||||
if (use_winsym)
|
if (use_winsym)
|
||||||
{
|
{
|
||||||
win32_oldpath.check (oldpath, PC_SYM_NOFOLLOW,
|
win32_oldpath.check (oldpath, PC_SYM_NOFOLLOW,
|
||||||
transparent_exe ? stat_suffixes : NULL);
|
transparent_exe ? stat_suffixes : NULL);
|
||||||
strcpy (w32oldpath, win32_oldpath);
|
strcpy (w32oldpath, win32_oldpath);
|
||||||
}
|
}
|
||||||
if (cp)
|
if (cp)
|
||||||
@ -3787,7 +3787,7 @@ realpath (const char *path, char *resolved)
|
|||||||
/* Check for the suffix being tacked on. */
|
/* Check for the suffix being tacked on. */
|
||||||
int tack_on = 0;
|
int tack_on = 0;
|
||||||
if (!transparent_exe && real_path.known_suffix)
|
if (!transparent_exe && real_path.known_suffix)
|
||||||
{
|
{
|
||||||
char *c = strrchr (real_path.normalized_path, '.');
|
char *c = strrchr (real_path.normalized_path, '.');
|
||||||
if (!c || !strcasematch (c, real_path.known_suffix))
|
if (!c || !strcasematch (c, real_path.known_suffix))
|
||||||
tack_on = strlen (real_path.known_suffix);
|
tack_on = strlen (real_path.known_suffix);
|
||||||
|
@ -918,7 +918,7 @@ av::fixup (const char *prog_arg, path_conv& real_path, const char *ext)
|
|||||||
HANDLE hm = CreateFileMapping (h, &sec_none_nih, PAGE_READONLY, 0, 0, NULL);
|
HANDLE hm = CreateFileMapping (h, &sec_none_nih, PAGE_READONLY, 0, 0, NULL);
|
||||||
CloseHandle (h);
|
CloseHandle (h);
|
||||||
if (!hm)
|
if (!hm)
|
||||||
{
|
{
|
||||||
/* ERROR_FILE_INVALID indicates very likely an empty file. */
|
/* ERROR_FILE_INVALID indicates very likely an empty file. */
|
||||||
if (GetLastError () == ERROR_FILE_INVALID)
|
if (GetLastError () == ERROR_FILE_INVALID)
|
||||||
{
|
{
|
||||||
|
@ -143,7 +143,7 @@ unlink (const char *ourname)
|
|||||||
DWORD devn;
|
DWORD devn;
|
||||||
|
|
||||||
path_conv win32_name (ourname, PC_SYM_NOFOLLOW,
|
path_conv win32_name (ourname, PC_SYM_NOFOLLOW,
|
||||||
transparent_exe ? stat_suffixes : NULL);
|
transparent_exe ? stat_suffixes : NULL);
|
||||||
|
|
||||||
if (win32_name.error)
|
if (win32_name.error)
|
||||||
{
|
{
|
||||||
@ -1232,7 +1232,7 @@ rename (const char *oldpath, const char *newpath)
|
|||||||
&& GetBinaryType (real_old, &bintype)
|
&& GetBinaryType (real_old, &bintype)
|
||||||
&& (len = strlen (real_new)) > 4
|
&& (len = strlen (real_new)) > 4
|
||||||
&& !strcasematch ((const char *) real_new + len - 4, ".exe"))
|
&& !strcasematch ((const char *) real_new + len - 4, ".exe"))
|
||||||
{
|
{
|
||||||
/* Executable hack. */
|
/* Executable hack. */
|
||||||
strcpy (new_buf, newpath);
|
strcpy (new_buf, newpath);
|
||||||
strcat (new_buf, ".exe");
|
strcat (new_buf, ".exe");
|
||||||
@ -1373,12 +1373,12 @@ done:
|
|||||||
}
|
}
|
||||||
/* Shortcut hack, No. 3, part 2 */
|
/* Shortcut hack, No. 3, part 2 */
|
||||||
/* If a file with the given name exists, it must be deleted after the
|
/* If a file with the given name exists, it must be deleted after the
|
||||||
symlink has been renamed. Otherwise we end up with two files of
|
symlink has been renamed. Otherwise we end up with two files of
|
||||||
the same name in the directory, one file "newpath", which already
|
the same name in the directory, one file "newpath", which already
|
||||||
exited before rename has been called, and one file "newpath.lnk",
|
exited before rename has been called, and one file "newpath.lnk",
|
||||||
which is the result of the rename operation. */
|
which is the result of the rename operation. */
|
||||||
else if (no_lnk_file_exists)
|
else if (no_lnk_file_exists)
|
||||||
{
|
{
|
||||||
lnk_suffix = strrchr (real_new.get_win32 (), '.');
|
lnk_suffix = strrchr (real_new.get_win32 (), '.');
|
||||||
*lnk_suffix = '\0';
|
*lnk_suffix = '\0';
|
||||||
DeleteFile (real_new);
|
DeleteFile (real_new);
|
||||||
@ -1878,9 +1878,9 @@ statvfs (const char *fname, struct statvfs *sfs)
|
|||||||
OPEN_EXISTING,
|
OPEN_EXISTING,
|
||||||
FILE_FLAG_BACKUP_SEMANTICS, NULL);
|
FILE_FLAG_BACKUP_SEMANTICS, NULL);
|
||||||
if (hdl == INVALID_HANDLE_VALUE)
|
if (hdl == INVALID_HANDLE_VALUE)
|
||||||
debug_printf ("CreateFile (%s) failed, %E", (char *) full_path);
|
debug_printf ("CreateFile (%s) failed, %E", (char *) full_path);
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
NTFS_VOLUME_DATA_BUFFER nvdb;
|
NTFS_VOLUME_DATA_BUFFER nvdb;
|
||||||
DWORD bytes;
|
DWORD bytes;
|
||||||
if (!DeviceIoControl (hdl, FSCTL_GET_NTFS_VOLUME_DATA, NULL,
|
if (!DeviceIoControl (hdl, FSCTL_GET_NTFS_VOLUME_DATA, NULL,
|
||||||
|
@ -127,19 +127,19 @@ sysconf (int in)
|
|||||||
case _SC_MEMLOCK_RANGE:
|
case _SC_MEMLOCK_RANGE:
|
||||||
return _POSIX_MEMLOCK_RANGE;
|
return _POSIX_MEMLOCK_RANGE;
|
||||||
case _SC_SEMAPHORES:
|
case _SC_SEMAPHORES:
|
||||||
return _POSIX_SEMAPHORES;
|
return _POSIX_SEMAPHORES;
|
||||||
case _SC_THREADS:
|
case _SC_THREADS:
|
||||||
return _POSIX_THREADS;
|
return _POSIX_THREADS;
|
||||||
case _SC_THREAD_ATTR_STACKSIZE:
|
case _SC_THREAD_ATTR_STACKSIZE:
|
||||||
return _POSIX_THREAD_ATTR_STACKSIZE;
|
return _POSIX_THREAD_ATTR_STACKSIZE;
|
||||||
case _SC_THREAD_PRIORITY_SCHEDULING:
|
case _SC_THREAD_PRIORITY_SCHEDULING:
|
||||||
return _POSIX_THREAD_PRIORITY_SCHEDULING;
|
return _POSIX_THREAD_PRIORITY_SCHEDULING;
|
||||||
case _SC_THREAD_PROCESS_SHARED:
|
case _SC_THREAD_PROCESS_SHARED:
|
||||||
return _POSIX_THREAD_PROCESS_SHARED;
|
return _POSIX_THREAD_PROCESS_SHARED;
|
||||||
case _SC_THREAD_SAFE_FUNCTIONS:
|
case _SC_THREAD_SAFE_FUNCTIONS:
|
||||||
return _POSIX_THREAD_SAFE_FUNCTIONS;
|
return _POSIX_THREAD_SAFE_FUNCTIONS;
|
||||||
case _SC_TIMERS:
|
case _SC_TIMERS:
|
||||||
return _POSIX_TIMERS;
|
return _POSIX_TIMERS;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Invalid input or unimplemented sysconf name */
|
/* Invalid input or unimplemented sysconf name */
|
||||||
|
@ -256,7 +256,7 @@ try_connect_syslogd (int priority, const char *msg, int len)
|
|||||||
|
|
||||||
ret = writev (syslogd_sock, iv, 2);
|
ret = writev (syslogd_sock, iv, 2);
|
||||||
/* If the syslog daemon has been restarted and /dev/log was
|
/* If the syslog daemon has been restarted and /dev/log was
|
||||||
a stream socket, the connection is broken. In this case,
|
a stream socket, the connection is broken. In this case,
|
||||||
try to reopen the socket and try again. */
|
try to reopen the socket and try again. */
|
||||||
if (ret < 0 && syslogd_inited == inited_stream)
|
if (ret < 0 && syslogd_inited == inited_stream)
|
||||||
{
|
{
|
||||||
|
Loading…
x
Reference in New Issue
Block a user