* fhandler_socket.cc (fhandler_socket::send_internal): Just use wmem size if
the length exceeds it. * net.cc (fdsock): Use 65535 as window size, just like the comment says or we run into problems with DuplicateHandle. * path.cc (patch_conv::check): Use set_path to set invalid filename. * path.h (path_conv::path_conv): Ditto.
This commit is contained in:
parent
3b689b97bd
commit
631681619e
|
@ -1,3 +1,13 @@
|
||||||
|
2009-08-04 Christopher Faylor <me+cygwin@cgf.cx>
|
||||||
|
|
||||||
|
* fhandler_socket.cc (fhandler_socket::send_internal): Just use wmem
|
||||||
|
size if the length exceeds it.
|
||||||
|
* net.cc (fdsock): Use 65535 as window size, just like the comment
|
||||||
|
says or we run into problems with DuplicateHandle.
|
||||||
|
|
||||||
|
* path.cc (patch_conv::check): Use set_path to set invalid filename.
|
||||||
|
* path.h (path_conv::path_conv): Ditto.
|
||||||
|
|
||||||
2009-08-04 Christopher Faylor <me+cygwin@cgf.cx>
|
2009-08-04 Christopher Faylor <me+cygwin@cgf.cx>
|
||||||
|
|
||||||
* fhandler.h (pdrive_buf): Defensively allocate one extra byte.
|
* fhandler.h (pdrive_buf): Defensively allocate one extra byte.
|
||||||
|
|
|
@ -1499,7 +1499,7 @@ fhandler_socket::send_internal (struct _WSAMSG *wsamsg, int flags)
|
||||||
buf.len = wsamsg->lpBuffers[i].len - off;
|
buf.len = wsamsg->lpBuffers[i].len - off;
|
||||||
/* See net.cc:fdsock() and MSDN KB 823764 */
|
/* See net.cc:fdsock() and MSDN KB 823764 */
|
||||||
if (buf.len >= (unsigned) wmem ())
|
if (buf.len >= (unsigned) wmem ())
|
||||||
buf.len = (unsigned) wmem () - 1;
|
buf.len = (unsigned) wmem ();
|
||||||
}
|
}
|
||||||
|
|
||||||
do
|
do
|
||||||
|
|
|
@ -507,8 +507,8 @@ fdsock (cygheap_fdmanip& fd, const device *dev, SOCKET soc)
|
||||||
|
|
||||||
(*) Maximum normal TCP window size. Coincidence? */
|
(*) Maximum normal TCP window size. Coincidence? */
|
||||||
|
|
||||||
((fhandler_socket *) fd)->rmem () = 65536;
|
((fhandler_socket *) fd)->rmem () = 65535;
|
||||||
((fhandler_socket *) fd)->wmem () = 65536;
|
((fhandler_socket *) fd)->wmem () = 65535;
|
||||||
if (::setsockopt (soc, SOL_SOCKET, SO_RCVBUF,
|
if (::setsockopt (soc, SOL_SOCKET, SO_RCVBUF,
|
||||||
(char *) &((fhandler_socket *) fd)->rmem (), sizeof (int)))
|
(char *) &((fhandler_socket *) fd)->rmem (), sizeof (int)))
|
||||||
debug_printf ("setsockopt(SO_RCVBUF) failed, %lu", WSAGetLastError ());
|
debug_printf ("setsockopt(SO_RCVBUF) failed, %lu", WSAGetLastError ());
|
||||||
|
|
|
@ -968,7 +968,7 @@ virtual_component_retry:
|
||||||
{
|
{
|
||||||
too_long:
|
too_long:
|
||||||
error = ENAMETOOLONG;
|
error = ENAMETOOLONG;
|
||||||
this->path = cstrdup ("::ENAMETOOLONG::");
|
set_path ("::ENAMETOOLONG::");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -168,7 +168,7 @@ class path_conv
|
||||||
: fileattr (INVALID_FILE_ATTRIBUTES), wide_path (NULL), path_flags (0),
|
: fileattr (INVALID_FILE_ATTRIBUTES), wide_path (NULL), path_flags (0),
|
||||||
known_suffix (NULL), normalized_path (NULL), error (0), dev (in_dev)
|
known_suffix (NULL), normalized_path (NULL), error (0), dev (in_dev)
|
||||||
{
|
{
|
||||||
path = cstrdup (in_dev.native);
|
set_path (in_dev.native);
|
||||||
}
|
}
|
||||||
|
|
||||||
path_conv (int, const char *src, unsigned opt = PC_SYM_FOLLOW,
|
path_conv (int, const char *src, unsigned opt = PC_SYM_FOLLOW,
|
||||||
|
|
Loading…
Reference in New Issue