4
0
mirror of git://sourceware.org/git/newlib-cygwin.git synced 2025-02-19 07:22:14 +08:00

* syscalls.cc (_read): Validate input pointer.

(_write): Ditto.
(system): Ditto.
This commit is contained in:
Christopher Faylor 2001-10-19 02:27:19 +00:00
parent 5e709b88c5
commit da8f3291d1
2 changed files with 17 additions and 2 deletions

View File

@ -1,3 +1,9 @@
2001-10-18 Christopher Faylor <cgf@redhat.com>
* syscalls.cc (_read): Validate input pointer.
(_write): Ditto.
(system): Ditto.
2001-10-16 Frederic Devernay <Frederic.Devernay@sophia.inria.fr>
* poll.cc (poll): Call cygwin_select() if any fd is valid.

View File

@ -287,6 +287,9 @@ setsid (void)
extern "C" ssize_t
_read (int fd, void *ptr, size_t len)
{
if (__check_null_invalid_struct_errno (ptr, len))
return -1;
int res;
extern int sigcatchers;
int e = get_errno ();
@ -341,9 +344,12 @@ _read (int fd, void *ptr, size_t len)
extern "C" ssize_t
_write (int fd, const void *ptr, size_t len)
{
int res = -1;
sigframe thisframe (mainthread);
if (__check_null_invalid_struct_errno (ptr, len))
return -1;
int res = -1;
sigframe thisframe (mainthread);
cygheap_fdget cfd (fd);
if (cfd < 0)
goto done;
@ -1245,6 +1251,9 @@ done:
extern "C" int
system (const char *cmdstring)
{
if (check_null_empty_str_errno (cmdstring))
return -1;
sigframe thisframe (mainthread);
int res;
const char* command[4];