Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Index: cmake/kvi_sysconfig.h.cmake
- ===================================================================
- --- cmake/kvi_sysconfig.h.cmake (revision 6406)
- +++ cmake/kvi_sysconfig.h.cmake (working copy)
- @@ -53,7 +53,7 @@
- #cmakedefine COMPILE_DISABLE_DCC_VIDEO 1
- #cmakedefine COMPILE_DISABLE_OGG_THEORA 1
- -#cmakedefine COMPILE_DEBUG_MODE 1
- +#cmakedefine COMPILE_DEBUG_MODE 0
- #cmakedefine COMPILE_PERL_SUPPORT 1
- #cmakedefine COMPILE_PYTHON_SUPPORT 1
- Index: data/defscript/events.kvs
- ===================================================================
- --- data/defscript/events.kvs (revision 6406)
- +++ data/defscript/events.kvs (working copy)
- @@ -121,3 +121,5 @@
- {
- popup.show hostpopup $0;
- }
- +
- +event(OnKVIrcStartup,autoload){fish.load}
- Index: data/deftheme/CMakeLists.txt
- ===================================================================
- --- data/deftheme/CMakeLists.txt (revision 6406)
- +++ data/deftheme/CMakeLists.txt (working copy)
- @@ -1,5 +1,5 @@
- # CMakeLists for data/deftheme
- # Find subdirs
- -subdirs(MinimalDark-1.0.0 Aria-1.0.0)
- +subdirs(MinimalDark-1.0.0 Aria-1.0.0 MovieGods-black-1.0.0)
- Index: data/pics/kvi_splash.png
- ===================================================================
- Cannot display: file marked as a binary type.
- svn:mime-type = image/png
- Index: src/kvilib/config/kvi_defaults.h
- ===================================================================
- --- src/kvilib/config/kvi_defaults.h (revision 6406)
- +++ src/kvilib/config/kvi_defaults.h (working copy)
- @@ -72,12 +72,12 @@
- #define KVI_DEFAULT_NICKNAME2 "%nick%|2"
- #define KVI_DEFAULT_NICKNAME3 "%nick%|3"
- #define KVI_DEFAULT_NICKNAME4 "%nick%|4"
- -#define KVI_DEFAULT_USERNAME "kvirc"
- -#define KVI_DEFAULT_REALNAME "KVIrc $version(v) $version(n) http://kvirc.net/"
- +#define KVI_DEFAULT_USERNAME "moviegod"
- +#define KVI_DEFAULT_REALNAME "KVIrc $version(v) $version(n) MovieGods compile"
- -#define KVI_DEFAULT_PART_MESSAGE "No boundaries on the net!"
- -#define KVI_DEFAULT_QUIT_MESSAGE "KVIrc $version(v) $version(n) http://www.kvirc.net/"
- -#define KVI_DEFAULT_CTCP_USERINFO_REPLY "I'm too lazy to edit this field."
- +#define KVI_DEFAULT_PART_MESSAGE "MovieGods - Putting the 'fun' back into fundamentalism, and the 'laughter' back into slaughter"
- +#define KVI_DEFAULT_QUIT_MESSAGE "KVIrc $version(v) $version(n) MovieGods compile"
- +#define KVI_DEFAULT_CTCP_USERINFO_REPLY "A fine MovieGods user."
- #define KVI_DEFAULT_CTCP_PAGE_REPLY "Your message has been received and logged"
- #define KVI_DEFAULT_AWAY_MESSAGE "I'm off to see the wizard."
- #define KVI_DEFAULT_AWAY_NICK "%nick%|NotHere"
- Index: src/kvilib/config/kvi_sourcesdate.h
- ===================================================================
- --- src/kvilib/config/kvi_sourcesdate.h (revision 6406)
- +++ src/kvilib/config/kvi_sourcesdate.h (working copy)
- @@ -36,8 +36,8 @@
- * \def KVI_SOURCES_DATE Defines the sources date
- * \def KVI_SOURCES_DATE_NUMERIC Defines the sources date
- */
- -#define KVI_SOURCES_DATE "20120701"
- -#define KVI_SOURCES_DATE_NUMERIC 0x20120701
- +#define KVI_SOURCES_DATE "20141218"
- +#define KVI_SOURCES_DATE_NUMERIC 0x20141218
- /**
- * \brief This is the date of the sources before that we should force a setup
- Index: src/kvirc/kernel/KviApplication.cpp
- ===================================================================
- --- src/kvirc/kernel/KviApplication.cpp (revision 6406)
- +++ src/kvirc/kernel/KviApplication.cpp (working copy)
- @@ -112,7 +112,7 @@
- #include <QCommonStyle>
- #endif
- -#ifdef COMPILE_ON_WINDOWS || defined(COMPILE_ON_MINGW)
- +#if defined(COMPILE_ON_WINDOWS) || defined(COMPILE_ON_MINGW)
- #include <QPluginLoader>
- #if (QT_VERSION >= 0x050000)
- #include <QtWin>
- Index: src/kvirc/kernel/KviOptions.cpp
- ===================================================================
- --- src/kvirc/kernel/KviOptions.cpp (revision 6406)
- +++ src/kvirc/kernel/KviOptions.cpp (working copy)
- @@ -95,7 +95,7 @@
- BOOL_OPTION("IgnoreCtcpFinger",true,KviOption_sectFlagCtcp),
- BOOL_OPTION("IgnoreCtcpSource",false,KviOption_sectFlagCtcp),
- BOOL_OPTION("IgnoreCtcpTime",false,KviOption_sectFlagCtcp),
- - BOOL_OPTION("RequestMissingAvatars",true,KviOption_sectFlagAvatar),
- + BOOL_OPTION("RequestMissingAvatars",false,KviOption_sectFlagAvatar),
- BOOL_OPTION("ShowCompactModeChanges",true,KviOption_sectFlagConnection),
- BOOL_OPTION("IgnoreCtcpDcc",false,KviOption_sectFlagDcc),
- BOOL_OPTION("AutoAcceptDccChat",false,KviOption_sectFlagDcc),
- @@ -125,7 +125,7 @@
- BOOL_OPTION("NotifyDccSendSuccessInConsole",false,KviOption_sectFlagDcc),
- BOOL_OPTION("CreateMinimizedDccSend",false,KviOption_sectFlagDcc),
- BOOL_OPTION("CreateMinimizedDccChat",false,KviOption_sectFlagDcc),
- - BOOL_OPTION("AutoAcceptIncomingAvatars",true,KviOption_sectFlagDcc),
- + BOOL_OPTION("AutoAcceptIncomingAvatars",false,KviOption_sectFlagDcc),
- BOOL_OPTION("UseNickCompletionPostfixForFirstWordOnly",true,KviOption_sectFlagInput),
- BOOL_OPTION("UseWindowListIcons",true,KviOption_sectFlagWindowList | KviOption_resetUpdateGui),
- BOOL_OPTION("CreateMinimizedDccSendWhenAutoAccepted",true,KviOption_sectFlagDcc),
- @@ -147,7 +147,7 @@
- BOOL_OPTION("UseAntiSpamOnNotice",false,KviOption_sectFlagAntiSpam),
- BOOL_OPTION("SetLastAvatarAsDefaultForRegisteredUsers",true,KviOption_sectFlagAvatar),
- BOOL_OPTION("CantAcceptIncomingDccConnections",false,KviOption_sectFlagDcc),
- - BOOL_OPTION("IgnoreCtcpAvatar",false,KviOption_sectFlagCtcp),
- + BOOL_OPTION("IgnoreCtcpAvatar",true,KviOption_sectFlagCtcp),
- BOOL_OPTION("CtcpRepliesToActiveWindow",true,KviOption_sectFlagCtcp),
- BOOL_OPTION("AutoAcceptDccCanvas",false,KviOption_sectFlagDcc),
- BOOL_OPTION("NotifyDccSendSuccessInNotifier",true,KviOption_sectFlagDcc),
- @@ -256,7 +256,7 @@
- BOOL_OPTION("EnableInputHistory",true,KviOption_sectFlagInput | KviOption_resetUpdateGui),
- BOOL_OPTION("UseSpecialColorForTimestamp",true,KviOption_sectFlagIrcView | KviOption_resetUpdateGui | KviOption_groupTheme),
- BOOL_OPTION("EnableAwayListUpdates",true,KviOption_sectFlagFrame),
- - BOOL_OPTION("ShowAvatarsInUserlist",true,KviOption_sectFlagIrcView | KviOption_resetUpdateGui | KviOption_groupTheme),
- + BOOL_OPTION("ShowAvatarsInUserlist",false,KviOption_sectFlagIrcView | KviOption_resetUpdateGui | KviOption_groupTheme),
- BOOL_OPTION("ShowUserListStatisticLabel",true,KviOption_sectFlagIrcView | KviOption_resetUpdateGui | KviOption_groupTheme),
- BOOL_OPTION("ShowIconsInPopupMenus",true,KviOption_sectFlagIrcView | KviOption_resetUpdateGui | KviOption_groupTheme),
- BOOL_OPTION("ScriptErrorsToDebugWindow",false,KviOption_sectFlagFrame),
- @@ -366,7 +366,7 @@
- STRING_OPTION("UrlHttpCommand",RUN_THE_BROWSER,KviOption_sectFlagUrl),
- STRING_OPTION("ExtendedPrivmsgPrefix","[",KviOption_sectFlagIrcView | KviOption_groupTheme),
- STRING_OPTION("ExtendedPrivmsgPostfix","] ",KviOption_sectFlagIrcView | KviOption_groupTheme),
- - STRING_OPTION("CtcpVersionPostfix","",KviOption_sectFlagCtcp),
- + STRING_OPTION("CtcpVersionPostfix","-MG",KviOption_sectFlagCtcp),
- STRING_OPTION("CtcpUserInfoOther",KVI_DEFAULT_CTCP_USERINFO_REPLY,KviOption_sectFlagUser),
- STRING_OPTION("CtcpSourcePostfix","",KviOption_sectFlagCtcp),
- STRING_OPTION("UrlFtpCommand",RUN_THE_BROWSER,KviOption_sectFlagUrl),
- @@ -381,7 +381,7 @@
- STRING_OPTION("DccVoiceSoundDevice", "/dev/dsp",KviOption_sectFlagDcc),
- STRING_OPTION("DccVoiceMixerDevice", "/dev/mixer",KviOption_sectFlagDcc),
- STRING_OPTION("AwayMessage",KVI_DEFAULT_AWAY_MESSAGE,KviOption_sectFlagConnection),
- - STRING_OPTION("IdentdUser","kvirc",KviOption_sectFlagConnection | KviOption_resetRestartIdentd),
- + STRING_OPTION("IdentdUser","moviegod",KviOption_sectFlagConnection | KviOption_resetRestartIdentd),
- STRING_OPTION("DccListenDefaultInterface","ppp0",KviOption_sectFlagDcc),
- STRING_OPTION("CustomAwayNick", KVI_DEFAULT_AWAY_NICK,KviOption_sectFlagConnection),
- STRING_OPTION("DefaultDccFakeAddress","",KviOption_sectFlagDcc),
- @@ -390,7 +390,7 @@
- STRING_OPTION("SSLCertificatePass","",KviOption_sectFlagConnection),
- STRING_OPTION("SSLPrivateKeyPath","",KviOption_sectFlagConnection | KviOption_encodePath),
- STRING_OPTION("SSLPrivateKeyPass","",KviOption_sectFlagConnection),
- - STRING_OPTION("SoundSystem","unknown",KviOption_sectFlagFrame),
- + STRING_OPTION("SoundSystem","qt",KviOption_sectFlagFrame),
- STRING_OPTION("DefaultUserMode", "", KviOption_sectFlagUser),
- STRING_OPTION("LastImageDialogPath","",KviOption_sectFlagUser | KviOption_encodePath),
- STRING_OPTION("IconThemeSubdir","",KviOption_sectFlagUser | KviOption_groupTheme | KviOption_resetReloadImages | KviOption_encodePath),
- Index: src/kvirc/sparser/KviIrcServerParser_literalHandlers.cpp
- ===================================================================
- --- src/kvirc/sparser/KviIrcServerParser_literalHandlers.cpp (revision 6406)
- +++ src/kvirc/sparser/KviIrcServerParser_literalHandlers.cpp (working copy)
- @@ -1509,8 +1509,16 @@
- return;
- }
- - QString szTopic = chan->decodeText(msg->safeTrailing());
- + //QString szTopic = chan->decodeText(msg->safeTrailing());
- + KviCString szBuffer;
- + const char * txtptr;
- + int msgtype;
- + DECRYPT_IF_NEEDED(chan,msg->safeTrailing(),KVI_OUT_QUERYPRIVMSG,KVI_OUT_QUERYPRIVMSGCRYPTED,szBuffer,txtptr,msgtype)
- +
- + QString szTopic = chan->decodeText(txtptr);
- +
- +
- if(KVS_TRIGGER_EVENT_4_HALTED(KviEvent_OnTopic,chan,szNick,szUser,szHost,szTopic))
- msg->setHaltOutput();
- Index: src/kvirc/sparser/KviIrcServerParser_numericHandlers.cpp
- ===================================================================
- --- src/kvirc/sparser/KviIrcServerParser_numericHandlers.cpp (revision 6406)
- +++ src/kvirc/sparser/KviIrcServerParser_numericHandlers.cpp (working copy)
- @@ -56,6 +56,11 @@
- #include "KviKvsVariantList.h"
- #include "KviIdentityProfileSet.h"
- +#ifdef COMPILE_CRYPT_SUPPORT
- + #include "KviCryptEngine.h"
- + #include "KviCryptController.h"
- +#endif
- +
- #include <QPixmap>
- #include <QDateTime>
- #include <QTextCodec>
- @@ -516,6 +521,38 @@
- }
- }
- +#ifdef COMPILE_CRYPT_SUPPORT
- + #define DECRYPT_IF_NEEDED(_target,_txt,_type,_type2,_buffer,_retptr,_retmsgtype) \
- + if(KviCryptSessionInfo * cinf = _target->cryptSessionInfo()){ \
- + if(cinf->m_bDoDecrypt){ \
- + switch(cinf->m_pEngine->decrypt(_txt,_buffer)) \
- + { \
- + case KviCryptEngine::DecryptOkWasEncrypted: \
- + _retptr = _buffer.ptr(); \
- + _retmsgtype = _type2; \
- + break; \
- + case KviCryptEngine::DecryptOkWasPlainText: \
- + case KviCryptEngine::DecryptOkWasEncoded: \
- + _retptr = _buffer.ptr(); \
- + _retmsgtype = _type; \
- + break; \
- + default: /* also case KviCryptEngine::DecryptError: */ \
- + { \
- + QString szEngineError = cinf->m_pEngine->lastError(); \
- + _target->output(KVI_OUT_SYSTEMERROR, \
- + __tr2qs("The following message appears to be encrypted, but the crypto engine failed to decode it: %Q"), \
- + &szEngineError); \
- + _retptr = _txt + 1; _retmsgtype=_type; \
- + } \
- + break; \
- + } \
- + } else _retptr = _txt, _retmsgtype=_type; \
- + } else _retptr = _txt, _retmsgtype=_type;
- +#else //COMPILE_CRYPT_SUPPORT
- + #define DECRYPT_IF_NEEDED(_target,_txt,_type,_type2,_buffer,_retptr,_retmsgtype) \
- + _retptr = _txt; _retmsgtype = _type;
- +#endif //COMPILE_CRYPT_SUPPORT
- +
- void KviIrcServerParser::parseNumericTopic(KviIrcMessage *msg)
- {
- // 332: RPL_TOPIC [I,E,U,D]
- @@ -524,8 +561,15 @@
- KviChannelWindow * chan = msg->connection()->findChannel(szChan);
- if(chan)
- {
- - QString szTopic = chan->decodeText(msg->safeTrailing());
- + //QString szTopic = chan->decodeText(msg->safeTrailing());
- + KviCString szBuffer;
- + const char * txtptr;
- + int msgtype;
- + DECRYPT_IF_NEEDED(chan,msg->safeTrailing(),KVI_OUT_QUERYPRIVMSG,KVI_OUT_QUERYPRIVMSGCRYPTED,szBuffer,txtptr,msgtype)
- +
- + QString szTopic = chan->decodeText(txtptr);
- +
- chan->topicWidget()->setTopic(szTopic);
- chan->topicWidget()->setTopicSetBy(__tr2qs("(unknown)"));
- if(KVI_OPTION_BOOL(KviOption_boolEchoNumericTopic))
- Index: src/kvirc/ui/KviChannelWindow.cpp
- ===================================================================
- --- src/kvirc/ui/KviChannelWindow.cpp (revision 6406)
- +++ src/kvirc/ui/KviChannelWindow.cpp (working copy)
- @@ -1753,7 +1753,56 @@
- QByteArray encoded = encodeText(szTopic);
- QByteArray name = connection()->encodeText(m_szName);
- - connection()->sendFmtData("TOPIC %s :%s",name.data(),encoded.length() ? encoded.data() : "");
- + //connection()->sendFmtData("TOPIC %s :%s",name.data(),encoded.length() ? encoded.data() : "");
- + if (encoded.length() <= 0)
- + {
- + connection()->sendFmtData("TOPIC %s :",name.data());
- + return;
- + }
- +
- +#ifdef COMPILE_CRYPT_SUPPORT
- + const char * pcData = encoded.data();
- +
- + QString szTmpTopic(szTopic);
- +
- + if (!pcData)
- + return;
- +
- + if (cryptSessionInfo())
- + {
- + if (cryptSessionInfo()->m_bDoEncrypt)
- + {
- + if (*pcData != KviControlCodes::CryptEscape)
- + {
- + KviCString szEncrypted;
- + switch (cryptSessionInfo()->m_pEngine->encrypt(pcData,szEncrypted))
- + {
- + case KviCryptEngine::Encrypted:
- + connection()->sendFmtData("TOPIC %s :%s",name.data(),szEncrypted.ptr());
- + return;
- + break;
- + case KviCryptEngine::Encoded:
- + connection()->sendFmtData("TOPIC %s :%s",name.data(),szEncrypted.ptr());
- + return;
- + break;
- + default:
- + QString szEngineError = cryptSessionInfo()->m_pEngine->lastError();
- + output(KVI_OUT_SYSTEMERROR,
- + __tr2qs("The crypto engine was unable to encrypt the current message (%Q): %s, no data sent to the server"),
- + &szTopic,&szEngineError);
- + break;
- + }
- + }
- + else
- + {
- + szTmpTopic.remove(0,1);
- + }
- + }
- + }
- + encoded = encodeText(szTmpTopic);
- +#endif
- +
- + connection()->sendFmtData("TOPIC %s :%s",name.data(),encoded.data());
- }
- void KviChannelWindow::closeEvent(QCloseEvent * pEvent)
- Index: src/modules/about/AboutDialog.cpp
- ===================================================================
- --- src/modules/about/AboutDialog.cpp (revision 6406)
- +++ src/modules/about/AboutDialog.cpp (working copy)
- @@ -99,7 +99,7 @@
- g->addWidget(l,0,0);
- QString aboutString= "<b>KVIrc " KVI_VERSION " '" KVI_RELEASE_NAME "'</b><br>";
- - aboutString += __tr2qs_ctx("Forged by the <b>KVIrc Development Team</b>","about");
- + aboutString += __tr2qs_ctx("Forged by <b>Team #Moviegods</b> at " KVI_SOURCES_DATE,"about");
- l = new QLabel(aboutString,w);
- l->setAlignment(Qt::AlignCenter);
- Index: src/modules/dcc/DccBroker.cpp
- ===================================================================
- --- src/modules/dcc/DccBroker.cpp (revision 6406)
- +++ src/modules/dcc/DccBroker.cpp (working copy)
- @@ -217,6 +217,7 @@
- fName.replace(' ',"\\040"); // be cool :)
- QString szTag;
- + QString szFileSize = QString::number(fi.size());
- if(dcc->isZeroPortRequest())
- {
- // actually we tagged it as "nonempty" in /dcc.rsend --zero-port
- @@ -227,12 +228,12 @@
- szTag = t->m_szTag;
- // DCC [ST]SEND <filename> <fakeipaddress> <zero-port> <filesize> <sessionid>
- - dcc->console()->connection()->sendFmtData("PRIVMSG %s :%cDCC %s %s 127.0.0.1 0 %u %s%c",
- + dcc->console()->connection()->sendFmtData("PRIVMSG %s :%cDCC %s %s 127.0.0.1 0 %s %s%c",
- dcc->console()->connection()->encodeText(dcc->szNick).data(),
- 0x01,
- dcc->console()->connection()->encodeText(dcc->szType).data(),
- dcc->console()->connection()->encodeText(fName).data(),
- - fi.size(),
- + dcc->console()->connection()->encodeText(szFileSize).data(),
- dcc->console()->connection()->encodeText(szTag).data(),
- 0x01);
- } else {
- @@ -241,7 +242,7 @@
- 0x01,
- dcc->console()->connection()->encodeText(dcc->szType).data(),
- dcc->console()->connection()->encodeText(fName).data(),
- - fi.size(),0x01);
- + dcc->console()->connection()->encodeText(szFileSize).data(),0x01);
- szTag = dcc->szFileName;
- }
- Index: src/modules/dcc/DccFileTransfer.cpp
- ===================================================================
- --- src/modules/dcc/DccFileTransfer.cpp (revision 6406)
- +++ src/modules/dcc/DccFileTransfer.cpp (working copy)
- @@ -403,7 +403,7 @@
- }
- } else {
- // Must send the ack... the peer must close the connection
- - if(!sendAck(m_pFile->pos()))break;
- + //if(!sendAck(m_pFile->pos()))break;
- }
- // now take care of short reads
- @@ -655,7 +655,7 @@
- quint32 uLastAck = 0;
- quint64 uTotLastAck = 0;
- bool bAckHack = false;
- - int iAckHackRounds = 0;
- + quint64 iAckHackRounds = 0;
- if(m_pOpt->iPacketSize < 32)m_pOpt->iPacketSize = 32;
- char * buffer = (char *)KviMemory::allocate(m_pOpt->iPacketSize * sizeof(char));
- @@ -759,7 +759,14 @@
- uLastAck = iNewAck;
- if(bAckHack)
- {
- - uTotLastAck = (iAckHackRounds*4u*1024u*1024u*1024u) + iNewAck;
- + //uTotLastAck = (iAckHackRounds*4u*1024u*1024u*1024u) + iNewAck;
- + uTotLastAck = (iAckHackRounds << 32) + iNewAck;
- +
- + // Detect if we're receiving 64bit acks and disable ack reading
- + if ((iAckHackRounds > 3) && (uTotLastAck > pFile->pos() + 0xFFFFFFFF))
- + {
- + m_pOpt->bNoAcks = true;
- + }
- } else {
- uTotLastAck = iNewAck;
- @@ -2266,11 +2273,14 @@
- KviCString szBuffy;
- KviIrcServerParser::encodeCtcpParameter(filename,szBuffy);
- - m_pDescriptor->console()->connection()->sendFmtData("PRIVMSG %s :%cDCC ACCEPT %s %s %u%c",
- + QString szFileSize = QString::number(filePos);
- + m_pDescriptor->console()->connection()->sendFmtData("PRIVMSG %s :%cDCC ACCEPT %s %s %s%c",
- m_pDescriptor->console()->connection()->encodeText(m_pDescriptor->szNick).data(),
- 0x01,
- m_pDescriptor->console()->connection()->encodeText(szBuffy.ptr()).data(),
- - port,filePos,0x01
- + port,
- + m_pDescriptor->console()->connection()->encodeText(szFileSize).data(),
- + 0x01
- );
- return true;
- Index: src/modules/fish/libkvifish.cpp
- ===================================================================
- --- src/modules/fish/libkvifish.cpp (revision 6406)
- +++ src/modules/fish/libkvifish.cpp (working copy)
- @@ -146,25 +146,48 @@
- return false;
- }
- - if(szMessage.startsWith("DH1080_INIT ", Qt::CaseSensitive))
- + if(szMessage.startsWith("DH1080_INIT ", Qt::CaseSensitive) || szMessage.startsWith("DH1080_INIT_cbc ", Qt::CaseSensitive))
- {
- c->window()->output(KVI_OUT_SYSTEMMESSAGE,__tr2qs("FiSH: Received DH1080 public key from %1, sending mine...").arg(szNick));
- // fish appends an 'A' to all base64 coded strings
- - szHisPubKey = szMessage.mid(12).toLatin1();
- + //szHisPubKey = szMessage.mid(12).toLatin1();
- + if (szMessage.startsWith("DH1080_INIT_cbc ", Qt::CaseSensitive))
- + szHisPubKey = szMessage.mid(16).toLatin1();
- + else
- + szHisPubKey = szMessage.mid(12).toLatin1();
- szHisPubKey.truncate(FISH_KEYLEN);
- szHisPubKey = QByteArray::fromBase64(szHisPubKey);
- szTmp = QByteArray((char *)szMyPubKey, iMyPubKeyLen).toBase64();
- - c->window()->console()->connection()->sendFmtData("NOTICE %s :DH1080_FINISH %sA",
- +/* c->window()->console()->connection()->sendFmtData("NOTICE %s :DH1080_FINISH %sA",
- c->window()->console()->connection()->encodeText(szNick).data(),
- szTmp.data()
- );
- +*/
- + if (szMessage.startsWith("DH1080_INIT_cbc ", Qt::CaseSensitive))
- + {
- + c->window()->console()->connection()->sendFmtData("NOTICE %s :DH1080_FINISH_cbc %sA",
- + c->window()->console()->connection()->encodeText(szNick).data(),
- + szTmp.data()
- + );
- + }
- + else
- + {
- + c->window()->console()->connection()->sendFmtData("NOTICE %s :DH1080_FINISH %sA",
- + c->window()->console()->connection()->encodeText(szNick).data(),
- + szTmp.data()
- + );
- + }
- }
- - if(szMessage.startsWith("DH1080_FINISH ", Qt::CaseSensitive))
- + if(szMessage.startsWith("DH1080_FINISH ", Qt::CaseSensitive) || szMessage.startsWith("DH1080_FINISH_cbc ", Qt::CaseSensitive))
- {
- // fish appends an 'A' to all base64 coded strings
- - szHisPubKey = szMessage.mid(14).toLatin1();
- + //szHisPubKey = szMessage.mid(14).toLatin1();
- + if (szMessage.startsWith("DH1080_FINISH_cbc ", Qt::CaseSensitive))
- + szHisPubKey = szMessage.mid(18).toLatin1();
- + else
- + szHisPubKey = szMessage.mid(14).toLatin1();
- szHisPubKey.truncate(FISH_KEYLEN);
- szHisPubKey = QByteArray::fromBase64(szHisPubKey);
- }
- @@ -218,6 +241,8 @@
- szFinalKey.bufferToBase64((char *) hashedSecret, SHA256_LEN);
- //strip the trailing =
- szFinalKey.stripRight('=');
- + if(szMessage.startsWith("DH1080_FINISH ", Qt::CaseSensitive) || szMessage.startsWith("DH1080_FINISH_cbc ", Qt::CaseSensitive))
- + szFinalKey.prepend("old:");
- KviMemory::free(hashedSecret);
- #else
- @@ -252,7 +277,7 @@
- return true;
- }
- - static bool fish_cmd_keyx(KviKvsModuleCommandCall * c)
- + static bool fish_cmd_handlekeyx(KviKvsModuleCommandCall * c, const bool useCbc)
- {
- QString szTarget;
- KVSM_PARAMETERS_BEGIN(c)
- @@ -264,16 +289,35 @@
- int iMyPubKeyLen, * pMyPubKeyLen = &iMyPubKeyLen;
- if(!fish_DH1080_gen(&szMyPubKey, pMyPubKeyLen))
- return false;
- + if (useCbc)
- + {
- + c->window()->console()->connection()->sendFmtData("NOTICE %s :DH1080_INIT_cbc %sA",
- + c->window()->console()->connection()->encodeText(szTarget).data(),
- + szTmp.ptr()
- + );
- + }
- + else
- + {
- + c->window()->console()->connection()->sendFmtData("NOTICE %s :DH1080_INIT %sA",
- + c->window()->console()->connection()->encodeText(szTarget).data(),
- + szTmp.ptr()
- + );
- + }
- +
- + c->window()->output(KVI_OUT_SYSTEMMESSAGE,__tr2qs("FiSH: Sent my DH1080 public key to %1, waiting for reply ...").arg(szTarget));
- + return true;
- + }
- - szTmp.bufferToBase64((char *) szMyPubKey, iMyPubKeyLen);
- - c->window()->console()->connection()->sendFmtData("NOTICE %s :DH1080_INIT %sA",
- - c->window()->console()->connection()->encodeText(szTarget).data(),
- - szTmp.ptr()
- - );
- + static bool fish_cmd_keyx(KviKvsModuleCommandCall * c)
- + {
- + return fish_cmd_handlekeyx(c,false);
- + }
- - c->window()->output(KVI_OUT_SYSTEMMESSAGE,__tr2qs("FiSH: Sent my DH1080 public key to %1, waiting for reply ...").arg(szTarget));
- - return true;
- + static bool fish_cmd_keyxcbc(KviKvsModuleCommandCall * c)
- + {
- + return fish_cmd_handlekeyx(c,true);
- }
- +
- #endif //COMPILE_CRYPT_SUPPORT
- // =======================================
- // module routines
- @@ -287,6 +331,7 @@
- m->kvsRegisterAppEventHandler(KviEvent_OnQueryNotice,fish_event_onQueryNotice);
- KVSM_REGISTER_SIMPLE_COMMAND(m,"keyx",fish_cmd_keyx);
- + KVSM_REGISTER_SIMPLE_COMMAND(m,"keyxcbc",fish_cmd_keyxcbc);
- return true;
- #else
- Index: src/modules/mediaplayer/CMakeLists.txt
- ===================================================================
- --- src/modules/mediaplayer/CMakeLists.txt (revision 6406)
- +++ src/modules/mediaplayer/CMakeLists.txt (working copy)
- @@ -5,10 +5,10 @@
- MpInterface.cpp
- MpMp3.cpp
- MpWinampInterface.cpp
- - MpXmmsInterface.cpp
- +# MpXmmsInterface.cpp
- MpAmipInterface.cpp
- - MpMprisInterface.cpp
- - MpSpotifyInterface.cpp
- +# MpMprisInterface.cpp
- +# MpSpotifyInterface.cpp
- )
- set(kvi_module_name kvimediaplayer)
- Index: src/modules/mediaplayer/libkvimediaplayer.cpp
- ===================================================================
- --- src/modules/mediaplayer/libkvimediaplayer.cpp (revision 6406)
- +++ src/modules/mediaplayer/libkvimediaplayer.cpp (working copy)
- @@ -1,4 +1,4 @@
- -//=============================================================================
- +//=============================================================================
- //
- // File : libkvimediaplayer.cpp
- // Creation date : Sat Nov 3 19:28:25 2001 GMT by Szymon Stefanek
- @@ -26,10 +26,10 @@
- #include "MpInterface.h"
- #include "MpAmipInterface.h"
- -#include "MpMprisInterface.h"
- +//#include "MpMprisInterface.h"
- #include "MpWinampInterface.h"
- -#include "MpXmmsInterface.h"
- -#include "MpSpotifyInterface.h"
- +//#include "MpXmmsInterface.h"
- +//#include "MpSpotifyInterface.h"
- #include "KviModule.h"
- #include "KviOptions.h"
- @@ -1626,8 +1626,8 @@
- #if defined(COMPILE_ON_WINDOWS) || defined(COMPILE_ON_MINGW)
- g_pDescriptorList->append(MP_CREATE_DESCRIPTOR(MpAmipInterface));
- - g_pDescriptorList->append(MP_CREATE_DESCRIPTOR(KviWinampInterface));
- - g_pDescriptorList->append(MP_CREATE_DESCRIPTOR(KviSpotifyInterface));
- +// g_pDescriptorList->append(MP_CREATE_DESCRIPTOR(KviWinampInterface));
- +// g_pDescriptorList->append(MP_CREATE_DESCRIPTOR(KviSpotifyInterface));
- #endif
- g_pMPInterface = 0;
Add Comment
Please, Sign In to add comment