diff options
author | Ray Strode <rstrode@redhat.com> | 2010-06-16 12:33:20 -0400 |
---|---|---|
committer | Ray Strode <rstrode@redhat.com> | 2010-06-16 12:33:20 -0400 |
commit | 86ac166294f0fc8f662031167066acf1928cf139 (patch) | |
tree | c2cebefa624c225cf5a8ec3c3661a6fa939d49f5 /daemon | |
parent | 2696ee79767d58ed0236f3a08d6d5af272a58ef5 (diff) | |
download | gdm-86ac166294f0fc8f662031167066acf1928cf139.tar.gz |
Call XdmcpFill with properly initialized length
commit e533f4b72568cdc3d7f7ec6cec09d9392b11d54c cleaned
up various XDMCP issues, but it unfortunately also created
a bug making XDMCP fail a high percentage of the time.
XdmcpFill takes an in-out length argument. This argument was getting
passed an uninitialized variable.
Diffstat (limited to 'daemon')
-rw-r--r-- | daemon/gdm-xdmcp-display-factory.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/daemon/gdm-xdmcp-display-factory.c b/daemon/gdm-xdmcp-display-factory.c index 447833d2..791bba3b 100644 --- a/daemon/gdm-xdmcp-display-factory.c +++ b/daemon/gdm-xdmcp-display-factory.c @@ -2879,12 +2879,13 @@ decode_packet (GIOChannel *source, return TRUE; } + ss_len = (int)gdm_sockaddr_len (&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) { |