diff options
Diffstat (limited to '01_gdmchooser-ipv6_bindv6only-workaround.patch')
-rw-r--r-- | 01_gdmchooser-ipv6_bindv6only-workaround.patch | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/01_gdmchooser-ipv6_bindv6only-workaround.patch b/01_gdmchooser-ipv6_bindv6only-workaround.patch new file mode 100644 index 000000000000..228cdb74f9ba --- /dev/null +++ b/01_gdmchooser-ipv6_bindv6only-workaround.patch @@ -0,0 +1,28 @@ +Debian #562126; enable gdmchooser to work with netbase default setting +net.ipv6.bindv6only=1 + +diff -Naur gdm-2.20.10/gui/gdmchooser.c gdm-2.20.10/gui/gdmchooser.c +--- gdm-2.20.10/gui/gdmchooser.c 2009-03-19 00:29:11.000000000 -0430 ++++ gdm-2.20.10/gui/gdmchooser.c 2010-02-09 20:10:08.000000000 -0430 +@@ -1121,6 +1121,7 @@ + { + static XdmcpHeader header; + gint sockopts = 1; ++ int ipv6_only_flag = 0; + + /* Open socket for communication */ + #ifdef ENABLE_IPV6 +@@ -1140,6 +1141,13 @@ + gdm_common_fail_exit ("Could not set socket options!"); + } + ++ if (have_ipv6) { ++ if (setsockopt (sockfd, IPPROTO_IPV6, IPV6_V6ONLY, ++ (char*)&ipv6_only_flag, sizeof(ipv6_only_flag)) < 0) { ++ gdm_common_fail_exit ("Could not set socket options!"); ++ } ++ } ++ + /* Assemble XDMCP BROADCAST_QUERY packet in static buffer */ + header.opcode = (CARD16) BROADCAST_QUERY; + header.length = 1; |