Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCorinna Vinschen <corinna@vinschen.de>2007-12-05 18:10:20 +0300
committerCorinna Vinschen <corinna@vinschen.de>2007-12-05 18:10:20 +0300
commit5224a7bbf34a50c03d630dd02bfd636ff88583c0 (patch)
tree65a62de501eef144361a4fe5bc23f9c1b6bf2658 /winsup/cygwin
parent8c7c7178c7ca377ff09c3226320b0f8985814bd4 (diff)
* fhandler_registry.cc: Use NAME_MAX + 1 instead of CYG_MAX_PATH
throughout for subkey name buffer size. * fhandler_socket.cc (search_wsa_event_slot): Use MAX_PATH instead of CYG_MAX_PATH for mutext name buffer size. (fhandler_socket::init_events): Ditto. * fhandler_virtual.cc (fhandler_virtual::opendir): Check path length against PATH_MAX instead of against CYG_MAX_PATH. * registry.cc (get_registry_hive_path): Use PATH_MAX instead of CYG_MAX_PATH for registry value path buffer size. * shared.cc (open_shared): Use MAX_PATH instead of CYG_MAX_PATH for shared memory name buffer size. * thread.cc (semaphore::semaphore): Use MAX_PATH instead of CYG_MAX_PATH for semaphore name buffer size. * uinfo.cc (cygheap_user::env_userprofile): Use PATH_MAX instead of CYG_MAX_PATH for temporary path name buffer size. * winf.h (LINE_BUF_CHUNK): Define as MAX_PATH * 2. * include/sys/dirent.h: Include sys/limits.h. Define name buffer sizes using NAME_MAX.
Diffstat (limited to 'winsup/cygwin')
-rw-r--r--winsup/cygwin/ChangeLog21
-rw-r--r--winsup/cygwin/fhandler_registry.cc20
-rw-r--r--winsup/cygwin/fhandler_socket.cc4
-rw-r--r--winsup/cygwin/fhandler_virtual.cc2
-rw-r--r--winsup/cygwin/include/sys/dirent.h5
-rw-r--r--winsup/cygwin/registry.cc6
-rw-r--r--winsup/cygwin/shared.cc2
-rw-r--r--winsup/cygwin/thread.cc2
-rw-r--r--winsup/cygwin/uinfo.cc2
-rw-r--r--winsup/cygwin/winf.h2
10 files changed, 44 insertions, 22 deletions
diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog
index b7c79a798..03f82d9b6 100644
--- a/winsup/cygwin/ChangeLog
+++ b/winsup/cygwin/ChangeLog
@@ -1,3 +1,24 @@
+2007-12-05 Corinna Vinschen <corinna@vinschen.de>
+
+ * fhandler_registry.cc: Use NAME_MAX + 1 instead of CYG_MAX_PATH
+ throughout for subkey name buffer size.
+ * fhandler_socket.cc (search_wsa_event_slot): Use MAX_PATH instead of
+ CYG_MAX_PATH for mutext name buffer size.
+ (fhandler_socket::init_events): Ditto.
+ * fhandler_virtual.cc (fhandler_virtual::opendir): Check path length
+ against PATH_MAX instead of against CYG_MAX_PATH.
+ * registry.cc (get_registry_hive_path): Use PATH_MAX instead of
+ CYG_MAX_PATH for registry value path buffer size.
+ * shared.cc (open_shared): Use MAX_PATH instead of CYG_MAX_PATH
+ for shared memory name buffer size.
+ * thread.cc (semaphore::semaphore): Use MAX_PATH instead of CYG_MAX_PATH
+ for semaphore name buffer size.
+ * uinfo.cc (cygheap_user::env_userprofile): Use PATH_MAX instead of
+ CYG_MAX_PATH for temporary path name buffer size.
+ * winf.h (LINE_BUF_CHUNK): Define as MAX_PATH * 2.
+ * include/sys/dirent.h: Include sys/limits.h. Define name buffer sizes
+ using NAME_MAX.
+
2007-12-04 Corinna Vinschen <corinna@vinschen.de>
* fhandler_fifo.cc (fhandler_fifo::open): Use MAX_NAME for pipe name
diff --git a/winsup/cygwin/fhandler_registry.cc b/winsup/cygwin/fhandler_registry.cc
index 525d3c3a3..9ead6fcb2 100644
--- a/winsup/cygwin/fhandler_registry.cc
+++ b/winsup/cygwin/fhandler_registry.cc
@@ -94,7 +94,7 @@ int
fhandler_registry::exists ()
{
int file_type = 0, index = 0, pathlen;
- DWORD buf_size = CYG_MAX_PATH;
+ DWORD buf_size = NAME_MAX + 1;
LONG error;
char buf[buf_size];
const char *file;
@@ -141,7 +141,7 @@ fhandler_registry::exists ()
while (ERROR_SUCCESS ==
(error = RegEnumKeyEx (hKey, index++, buf, &buf_size, NULL, NULL,
- NULL, NULL))
+ NULL, NULL))
|| (error == ERROR_MORE_DATA))
{
if (pathmatch (buf, file))
@@ -149,7 +149,7 @@ fhandler_registry::exists ()
file_type = 1;
goto out;
}
- buf_size = CYG_MAX_PATH;
+ buf_size = NAME_MAX + 1;
}
if (error != ERROR_NO_MORE_ITEMS)
{
@@ -157,7 +157,7 @@ fhandler_registry::exists ()
goto out;
}
index = 0;
- buf_size = CYG_MAX_PATH;
+ buf_size = NAME_MAX + 1;
while (ERROR_SUCCESS ==
(error = RegEnumValue (hKey, index++, buf, &buf_size, NULL, NULL,
NULL, NULL))
@@ -169,7 +169,7 @@ fhandler_registry::exists ()
file_type = -1;
goto out;
}
- buf_size = CYG_MAX_PATH;
+ buf_size = NAME_MAX + 1;
}
if (error != ERROR_NO_MORE_ITEMS)
{
@@ -302,7 +302,7 @@ fhandler_registry::fstat (struct __stat64 *buf)
int
fhandler_registry::readdir (DIR *dir, dirent *de)
{
- DWORD buf_size = CYG_MAX_PATH;
+ DWORD buf_size = NAME_MAX + 1;
char buf[buf_size];
HANDLE handle;
const char *path = dir->__d_dirname + proc_len + 1 + prefix_len;
@@ -349,7 +349,7 @@ retry:
{
/* If we're finished with sub-keys, start on values under this key. */
dir->__d_position |= REG_ENUM_VALUES_MASK;
- buf_size = CYG_MAX_PATH;
+ buf_size = NAME_MAX + 1;
goto retry;
}
if (error != ERROR_SUCCESS && error != ERROR_MORE_DATA)
@@ -628,7 +628,7 @@ fhandler_registry::fill_filebuf ()
}
return true;
value_not_found:
- DWORD buf_size = CYG_MAX_PATH;
+ DWORD buf_size = NAME_MAX + 1;
char buf[buf_size];
int index = 0;
while (ERROR_SUCCESS ==
@@ -640,7 +640,7 @@ value_not_found:
set_errno (EISDIR);
return false;
}
- buf_size = CYG_MAX_PATH;
+ buf_size = NAME_MAX + 1;
}
if (error != ERROR_NO_MORE_ITEMS)
{
@@ -658,7 +658,7 @@ open_key (const char *name, REGSAM access, DWORD wow64, bool isValue)
HKEY hKey = (HKEY) INVALID_HANDLE_VALUE;
HKEY hParentKey = (HKEY) INVALID_HANDLE_VALUE;
bool parentOpened = false;
- char component[CYG_MAX_PATH];
+ char component[NAME_MAX + 1];
while (*name)
{
diff --git a/winsup/cygwin/fhandler_socket.cc b/winsup/cygwin/fhandler_socket.cc
index bebd44f79..0d6e3a526 100644
--- a/winsup/cygwin/fhandler_socket.cc
+++ b/winsup/cygwin/fhandler_socket.cc
@@ -421,7 +421,7 @@ static HANDLE wsa_slot_mtx;
static wsa_event *
search_wsa_event_slot (LONG new_serial_number)
{
- char name[CYG_MAX_PATH], searchname[CYG_MAX_PATH];
+ char name[MAX_PATH], searchname[MAX_PATH];
if (!wsa_slot_mtx)
{
@@ -467,7 +467,7 @@ bool
fhandler_socket::init_events ()
{
LONG new_serial_number;
- char name[CYG_MAX_PATH];
+ char name[MAX_PATH];
DWORD err = 0;
do
diff --git a/winsup/cygwin/fhandler_virtual.cc b/winsup/cygwin/fhandler_virtual.cc
index 2c0425dfb..c005ff56d 100644
--- a/winsup/cygwin/fhandler_virtual.cc
+++ b/winsup/cygwin/fhandler_virtual.cc
@@ -54,7 +54,7 @@ fhandler_virtual::opendir (int fd)
if (exists () <= 0)
set_errno (ENOTDIR);
- else if ((len = strlen (get_name ())) > CYG_MAX_PATH - 3)
+ else if ((len = strlen (get_name ())) > PATH_MAX - 3)
set_errno (ENAMETOOLONG);
else if ((dir = (DIR *) malloc (sizeof (DIR))) == NULL)
set_errno (ENOMEM);
diff --git a/winsup/cygwin/include/sys/dirent.h b/winsup/cygwin/include/sys/dirent.h
index 24cde06d6..e62cd9249 100644
--- a/winsup/cygwin/include/sys/dirent.h
+++ b/winsup/cygwin/include/sys/dirent.h
@@ -12,6 +12,7 @@
#define _SYS_DIRENT_H
#include <sys/types.h>
+#include <sys/limits.h>
#define __DIRENT_VERSION 2
@@ -23,7 +24,7 @@ struct dirent
__ino64_t d_ino;
__uint32_t __d_unused1;
__uint32_t __d_internal1;
- char d_name[256]; /* FIXME: use NAME_MAX? */
+ char d_name[NAME_MAX + 1];
};
#else
struct dirent
@@ -32,7 +33,7 @@ struct dirent
long d_reserved[2];
long d_fd;
ino_t d_ino;
- char d_name[256];
+ char d_name[NAME_MAX + 1];
};
#endif
#pragma pack(pop)
diff --git a/winsup/cygwin/registry.cc b/winsup/cygwin/registry.cc
index 1c15aa553..3c67ff62f 100644
--- a/winsup/cygwin/registry.cc
+++ b/winsup/cygwin/registry.cc
@@ -219,13 +219,13 @@ get_registry_hive_path (const char *name, char *path)
"ProfileList\\%s", name);
if (!RegOpenKeyExA (HKEY_LOCAL_MACHINE, key, 0, KEY_READ, &hkey))
{
- char buf[256];
+ char buf[PATH_MAX];
DWORD type, siz;
path[0] = '\0';
if (!RegQueryValueExA (hkey, "ProfileImagePath", 0, &type,
(BYTE *)buf, (siz = sizeof (buf), &siz)))
- ExpandEnvironmentStringsA (buf, path, CYG_MAX_PATH);
+ ExpandEnvironmentStringsA (buf, path, PATH_MAX);
RegCloseKey (hkey);
if (path[0])
return path;
@@ -237,7 +237,7 @@ get_registry_hive_path (const char *name, char *path)
void
load_registry_hive (const char * name)
{
- char path[CYG_MAX_PATH];
+ char path[PATH_MAX];
HKEY hkey;
LONG ret;
diff --git a/winsup/cygwin/shared.cc b/winsup/cygwin/shared.cc
index f6ec4df7f..c30784295 100644
--- a/winsup/cygwin/shared.cc
+++ b/winsup/cygwin/shared.cc
@@ -77,7 +77,7 @@ open_shared (const char *name, int n, HANDLE& shared_h, DWORD size,
VirtualFree (addr, 0, MEM_RELEASE);
}
- char map_buf[CYG_MAX_PATH];
+ char map_buf[MAX_PATH];
char *mapname = NULL;
if (shared_h)
diff --git a/winsup/cygwin/thread.cc b/winsup/cygwin/thread.cc
index d72692f05..d78bbbb9c 100644
--- a/winsup/cygwin/thread.cc
+++ b/winsup/cygwin/thread.cc
@@ -2928,7 +2928,7 @@ semaphore::semaphore (unsigned long long shash, LUID sluid, int sfd,
luid (sluid),
sem (ssem)
{
- char name[CYG_MAX_PATH];
+ char name[MAX_PATH];
__small_sprintf (name, "%scyg_psem/cyg%016X%08x%08x", cygheap->shared_prefix,
hash, luid.HighPart, luid.LowPart);
diff --git a/winsup/cygwin/uinfo.cc b/winsup/cygwin/uinfo.cc
index 2efffd182..97cd584dc 100644
--- a/winsup/cygwin/uinfo.cc
+++ b/winsup/cygwin/uinfo.cc
@@ -408,7 +408,7 @@ cygheap_user::env_userprofile (const char *name, size_t namelen)
if (test_uid (puserprof, name, namelen))
return puserprof;
- char userprofile_env_buf[CYG_MAX_PATH];
+ char userprofile_env_buf[PATH_MAX];
char win_id[UNLEN + 1]; /* Large enough for SID */
cfree_and_set (puserprof, almost_null);
diff --git a/winsup/cygwin/winf.h b/winsup/cygwin/winf.h
index 079ef3045..8fb6470c8 100644
--- a/winsup/cygwin/winf.h
+++ b/winsup/cygwin/winf.h
@@ -18,7 +18,7 @@ details. */
#define MAXCYGWINCMDLEN 30000
#define MAXWINCMDLEN 32767
-#define LINE_BUF_CHUNK (CYG_MAX_PATH * 2)
+#define LINE_BUF_CHUNK (MAX_PATH * 2)
class av
{