[Added CC to xwindow-discuss and desktop-discuss ]
> So none of the rest of you have
> /usr/bin/gnome-session listening on some high
> numbered port in the 4000 range?
I'm seenig quite a few listening tcp sockets, too.
A few by gnome-session. On SX:CE build 104.
> And none of you are curious as to what it is or what
> it's doing?
IceListenForConnections() seems to open these
listening tcp ports. Stack backtrace for gnome-session
looks like this:
% mdb /usr/bin/gnome-session
> 0t1531::attach
Loading modules: [ ld.so.1 ]
> $C
08046b68 libc_hwcap2.so.1`_so_listen+7(8, 80, 20, fad18e75)
08046dc8 libICE.so.6`_IceTransSocketINETCreateListener+0x307(80b9000, 0, 0, fad1
f449)
08047598 libICE.so.6`_IceTransMakeAllCOTSServerListeners+0x938(0, 80475d8, 80475
dc, 80475d4)
080475f8 libICE.so.6`IceListenForConnections+0x2d(809ae78, 809ae74, 100, 8047630
)
08047748 gsm_xsmp_server_constructor+0xc6(80b79a8, 1, 80b1a18, 1)
080477f8 libgobject-2.0.so.0.1800.0`g_object_newv+0x3b7(80b79a8, 1, 80b8058, 0)
080478b8 libgobject-2.0.so.0.1800.0`g_object_new_valist+0x362(80b79a8, 807b2dc,
80478e8, fec41fc6)
080478d8 libgobject-2.0.so.0.1800.0`g_object_new+0x67(80b79a8, 807b2dc, 80b8a08
, 0)
080478f8 gsm_xsmp_server_new+0x32(80b8a08, 809b600, 8047958, 806ba60)
08047958 main+0x2e5(1, 8047984, 804798c, 805ed5f)
08047978 _start+0x7d(1, 8047aa8, 0, 8047ab6, 8047b14, 8047b2d)
> I'm guessing that maybe it's for XDMCP logins, but
> I'm not really sure, seeing as I am pretty much a
> Solaris noob.
Gnome-session (gsm-xsmp-server.c) seems to include this
piece of source code, and as far as I can tell, there is no Xtrans.h
header delivered with Solaris (SX:CE 104), and libICE doesn't
define a public _IceTransNoListen entry point:
00465 #ifdef HAVE_X11_XTRANS_XTRANS_H
00466 /* By default, IceListenForConnections will open one socket for
each
00467 * transport type known to X. We don't want connections from
remote
00468 * hosts, so for security reasons it would be best if ICE didn't
00469 * even open any non-local sockets. So we use an internal ICElib
00470 * method to disable them here. Unfortunately, there is no way to
00471 * ask X what transport types it knows about, so we're forced to
00472 * guess.
00473 */
00474 _IceTransNoListen ("tcp");
00475 #endif
For that reason we seem to get the default behaviour mentioned in
the above comment, "IceListenForConnections will open one socket
for each transport type known to X" ...
--
This message posted from opensolaris.org