]> sourceware.org Git - newlib-cygwin.git/commitdiff
* net.cc (cygwin_hstrerror): Allow s == NULL.
authorCorinna Vinschen <corinna@vinschen.de>
Sat, 24 Nov 2001 21:52:28 +0000 (21:52 +0000)
committerCorinna Vinschen <corinna@vinschen.de>
Sat, 24 Nov 2001 21:52:28 +0000 (21:52 +0000)
(cygwin_rcmd): Add parameter checking.
(cygwin_rexec): Ditto.

winsup/cygwin/net.cc

index f2259a8aba0dc576ff9f7ec8c5eaf5dd8bfe2821..ca19fae041157de09b722754d91c6d5453042d2a 100644 (file)
@@ -1442,7 +1442,7 @@ cygwin_hstrerror (int err)
 extern "C" void
 cygwin_herror (const char *s)
 {
-  if (check_null_str (s))
+  if (s && check_null_str (s))
     return;
   if (cygheap->fdtab.not_open (2))
     return;
@@ -2197,6 +2197,12 @@ cygwin_rcmd (char **ahost, unsigned short inport, char *locuser,
   SOCKET fd2s;
   sigframe thisframe (mainthread);
 
+  if (check_null_invalid_struct_errno (ahost) ||
+      check_null_empty_str_errno (*ahost) ||
+      (locuser && check_null_empty_str_errno (locuser)) ||
+      (remuser && check_null_str_errno (remuser)))
+    return (int) INVALID_SOCKET;
+
   cygheap_fdnew res_fd;
   if (res_fd < 0)
     goto done;
@@ -2263,6 +2269,12 @@ cygwin_rexec (char **ahost, unsigned short inport, char *locuser,
   SOCKET fd2s;
   sigframe thisframe (mainthread);
 
+  if (check_null_invalid_struct_errno (ahost) ||
+      check_null_empty_str_errno (*ahost) ||
+      (locuser && check_null_empty_str_errno (locuser)) ||
+      (password && check_null_str_errno (password)))
+    return (int) INVALID_SOCKET;
+
   cygheap_fdnew res_fd;
   if (res_fd < 0)
     goto done;
This page took 0.032247 seconds and 5 git commands to generate.