Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 20 Apr 2005 19:12:15 +0800
From:      David Xu <davidxu@freebsd.org>
To:        "Matthew N. Dodd" <mdodd@freebsd.org>
Cc:        Jung-uk Kim <jkim@niksun.com>
Subject:   Re: gnome can not shutdown
Message-ID:  <4266390F.1090702@freebsd.org>
In-Reply-To: <20050419225811.A76920@sasami.jurai.net>
References:  <20050414164406.2bfbeff5@ale.varnet.bsd> <4261A7BE.3070606@freebsd.org><200504192011.57723.jkim@niksun.com> <20050419225811.A76920@sasami.jurai.net>

next in thread | previous in thread | raw e-mail | index | archive | help
Matthew N. Dodd wrote:

>>>> #1  0x0000000803f4a823 in connect () from /usr/lib/libthr.so.1
>>>> #2  0x000000080458d7b3 in esd_connect_unix () from
>>>> /usr/local/lib/libesd.so.2
>>>> #3  0x000000080458dbeb in esd_open_sound () from
>>>> /usr/local/lib/libesd.so.2 #4  0x0000000800f13c82 in
>>>
>
> The problem starts in libesd.
>
> esd.c:
>
> int open_listen_socket(const char *hostname, int port )
> ...
>       socket_listen=socket(AF_UNIX, SOCK_STREAM, 0);
> ...
>     {
>       int n = 1;
>       setsockopt(socket_listen, SOL_SOCKET, SO_REUSEADDR, &n, sizeof(n));
>       /* if it fails, so what */
>     }
>
> And continues through some header files...
>
> sys/socket.h:
>
> #define SO_REUSEADDR    0x0004          /* allow local address reuse */
>
> sys/un.h:
>
> #define LOCAL_CONNWAIT   0x004   /* connects block until accepted */
>
> And finally ends up in sys/kern/uipc_usrreq.c:uipc_ctloutput() where
> we fail to check the 'level' argument to getsockopt().
>
> Fix committed etc.
>

it works fine again, thanks!

David Xu



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4266390F.1090702>