Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 15 Jan 2004 17:13:29 +0100
From:      Andre Oppermann <andre@freebsd.org>
To:        freebsd-current@freebsd.org
Subject:   uipc_socket2.c sbflush question
Message-ID:  <4006BC29.7CAE053B@freebsd.org>

next in thread | raw e-mail | index | archive | help
In sys/kern/uipc_socket2.c:160 we have this:

void
soisdisconnected(so)
        register struct socket *so;
{

        so->so_state &= ~(SS_ISCONNECTING|SS_ISCONNECTED|SS_ISDISCONNECTING);
        so->so_state |= (SS_CANTRCVMORE|SS_CANTSENDMORE|SS_ISDISCONNECTED);
        wakeup(&so->so_timeo);
        sbdrop(&so->so_snd, so->so_snd.sb_cc);
        sowwakeup(so);
        sorwakeup(so);
}

Why is sbdrop() called directly instead of sbflush()?  I think it makes
more sense to change that to a call to sbflush() which then DTRT?

-- 
Andre



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4006BC29.7CAE053B>