aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristopher Faylor <me@cgf.cx>2003-08-19 00:18:48 +0000
committerChristopher Faylor <me@cgf.cx>2003-08-19 00:18:48 +0000
commit9d7f26eaf41871fafe9b279b134126d00d59c86f (patch)
treeab3c4fb1073cca0bd1ac6b5d2e40863b8cbb8dcc
parentc3b56227ec29f7e52e76a3e2947f515df536f56a (diff)
downloadnewlib-9d7f26eaf41871fafe9b279b134126d00d59c86f.zip
newlib-9d7f26eaf41871fafe9b279b134126d00d59c86f.tar.gz
newlib-9d7f26eaf41871fafe9b279b134126d00d59c86f.tar.bz2
* path.cc (mount): Add null/empty check for input parameters.
(umount): Add null/empty check for input parameters.
-rw-r--r--winsup/cygwin/ChangeLog5
-rw-r--r--winsup/cygwin/path.cc7
2 files changed, 11 insertions, 1 deletions
diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog
index be9f2eb..3685cda 100644
--- a/winsup/cygwin/ChangeLog
+++ b/winsup/cygwin/ChangeLog
@@ -1,3 +1,8 @@
+2003-08-18 Christopher Faylor <cgf@redhat.com>
+
+ * path.cc (mount): Add null/empty check for input parameters.
+ (umount): Add null/empty check for input parameters.
+
2003-08-17 Pierre Humblet <pierre.humblet@ieee.org>
* grp.cc (read_group): Revert previous change.
diff --git a/winsup/cygwin/path.cc b/winsup/cygwin/path.cc
index bffddce..15b3f86 100644
--- a/winsup/cygwin/path.cc
+++ b/winsup/cygwin/path.cc
@@ -2592,7 +2592,10 @@ mount (const char *win32_path, const char *posix_path, unsigned flags)
{
int res = -1;
- if (strpbrk (posix_path, "\\:"))
+ if (check_null_empty_str_errno (win32_path)
+ || check_null_empty_str_errno (posix_path))
+ /* errno set */;
+ else if (strpbrk (posix_path, "\\:"))
set_errno (EINVAL);
else if (flags & MOUNT_CYGDRIVE) /* normal mount */
{
@@ -2617,6 +2620,8 @@ mount (const char *win32_path, const char *posix_path, unsigned flags)
extern "C" int
umount (const char *path)
{
+ if (check_null_empty_str_errno (path))
+ return -1;
return cygwin_umount (path, 0);
}