diff -up ./daemon/gdm-xdmcp-display-factory.c.xdmcp ./daemon/gdm-xdmcp-display-factory.c --- ./daemon/gdm-xdmcp-display-factory.c.xdmcp 2010-11-03 09:11:33.377334374 -0600 +++ ./daemon/gdm-xdmcp-display-factory.c 2010-11-03 10:25:36.590774420 -0600 @@ -2842,12 +2842,13 @@ decode_packet (GIOChannel *s return TRUE; } + ss_len = (int) sizeof (clnt_ss); + res = XdmcpFill (factory->priv->socket_fd, &factory->priv->buf, (XdmcpNetaddr)&clnt_ss, &ss_len); if G_UNLIKELY (! res) { g_debug ("GdmXdmcpDisplayFactory: Could not create XDMCP buffer!"); return TRUE; } - ss_len = (int)gdm_sockaddr_len (&clnt_ss); res = XdmcpReadHeader (&factory->priv->buf, &header); if G_UNLIKELY (! res) { diff -up ./gui/simple-chooser/gdm-host-chooser-widget.c.xdmcp ./gui/simple-chooser/gdm-host-chooser-widget.c --- ./gui/simple-chooser/gdm-host-chooser-widget.c.xdmcp 2010-11-03 09:11:43.745384355 -0600 +++ ./gui/simple-chooser/gdm-host-chooser-widget.c 2010-11-03 10:25:04.201284886 -0600 @@ -208,12 +208,13 @@ decode_packet (GIOChannel *sou return TRUE; } + ss_len = (int) sizeof (clnt_ss); + res = XdmcpFill (widget->priv->socket_fd, &buf, (XdmcpNetaddr)&clnt_ss, &ss_len); if G_UNLIKELY (! res) { g_debug (_("XDMCP: Could not create XDMCP buffer!")); return TRUE; } - ss_len = (int)gdm_sockaddr_len (&clnt_ss); res = XdmcpReadHeader (&buf, &header); if G_UNLIKELY (! res) {