summaryrefslogtreecommitdiffstats
path: root/opensuse/core/tdelibs/disable-idn-support.diff
blob: eab2b72821f89446c88cd6bbc55c4c00443a6ce2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
Index: tdecore/network/kresolver.cpp
===================================================================
--- tdecore/network/kresolver.cpp.orig
+++ tdecore/network/kresolver.cpp
@@ -50,6 +50,7 @@
 
 // IDN
 #ifdef HAVE_IDNA_H
+# include <stdlib.h>
 # include <idna.h>
 #endif
 
@@ -1084,6 +1085,10 @@ static QStringList splitLabels(const QSt
 static TQCString ToASCII(const TQString& label)
 {
 #ifdef HAVE_IDNA_H
+  // We do disable it by default for security reasons for now.
+  if ( getenv("KDE_NO_IPV6") && strcmp( getenv("KDE_NO_IPV6"), "no" ) )
+     return label.latin1();
+
   // We have idna.h, so we can use the idna_to_ascii
   // function :)
 
@@ -1118,6 +1123,10 @@ static QCString ToASCII(const QString& l
 static TQString ToUnicode(const TQString& label)
 {
 #ifdef HAVE_IDNA_H
+  // We do disable it by default for security reasons for now.
+  if ( getenv("KDE_NO_IPV6") && strcmp( getenv("KDE_NO_IPV6"), "no" ) )
+     return label;
+
   // We have idna.h, so we can use the idna_to_tqunicode
   // function :)