changeset 2546:7b5d66ba66bd draft

Merge pull request #1287 from sipa/noirc6 Only encode IPv4 addresses in IRC nicks
author Jeff Garzik <jgarzik@exmulti.com>
date Sun, 13 May 2012 11:48:27 -0700
parents fb2f906fca56 (current diff) d082f875463b (diff)
children cf79ecb22152
files
diffstat 1 files changed, 3 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/src/irc.cpp
+++ b/src/irc.cpp
@@ -246,11 +246,12 @@
                 return;
         }
 
+        CNetAddr addrIPv4("1.2.3.4"); // arbitrary IPv4 address to make GetLocal prefer IPv4 addresses
         CService addrLocal;
         string strMyName;
-        if (GetLocal(addrLocal, &addrConnect))
+        if (GetLocal(addrLocal, &addrIPv4))
             strMyName = EncodeAddress(GetLocalAddress(&addrConnect));
-        else
+        if (strMyName == "")
             strMyName = strprintf("x%u", GetRand(1000000000));
 
         Send(hSocket, strprintf("NICK %s\r", strMyName.c_str()).c_str());