Subject: sb_timeo
To: None <tech-net@netbsd.org>
From: YAMAMOTO Takashi <yamt@mwd.biglobe.ne.jp>
List: tech-net
Date: 06/28/2004 08:04:29
hi,
does anyone object if i bump sb_timeo to int?
with short sb_timeo and hz=1024, maximum SO_SND/RCVTIMEO is
about 31 seconds, which seems too short to me.
YAMAMOTO Takashi
Index: kern/uipc_socket.c
===================================================================
--- kern/uipc_socket.c (revision 774)
+++ kern/uipc_socket.c (revision 775)
@@ -1478,14 +1478,14 @@ sosetopt(struct socket *so, int level, i
case SO_RCVTIMEO:
{
struct timeval *tv;
- short val;
+ int val;
if (m == NULL || m->m_len < sizeof(*tv)) {
error = EINVAL;
goto bad;
}
tv = mtod(m, struct timeval *);
- if (tv->tv_sec > (SHRT_MAX - tv->tv_usec / tick) / hz) {
+ if (tv->tv_sec > (INT_MAX - tv->tv_usec / tick) / hz) {
error = EDOM;
goto bad;
}
Index: sys/socketvar.h
===================================================================
--- sys/socketvar.h (revision 774)
+++ sys/socketvar.h (revision 775)
@@ -61,8 +61,8 @@ struct sockbuf {
struct mbuf *sb_mbtail; /* the last mbuf in the chain */
struct mbuf *sb_lastrecord; /* first mbuf of last record in
socket buffer */
+ int sb_timeo; /* timeout for read/write */
short sb_flags; /* flags, see below */
- short sb_timeo; /* timeout for read/write */
};
#ifndef SB_MAX