[gdm/gnome-2-30] Call XdmcpFill with properly initialized length



commit 34a3c576fd7a15721765a43939f44978a93d43f9
Author: Ray Strode <rstrode redhat com>
Date:   Wed Jun 16 12:33:20 2010 -0400

    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.
    (cherry picked from commit 86ac166294f0fc8f662031167066acf1928cf139)

 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 447833d..791bba3 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) {



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]