New patches: [Make Psi pingable Maciej Niedzielski **20070120123358] { addfile ./src/pongserver.cpp hunk ./src/pongserver.cpp 1 +/* + * pongserver.cpp - XMPP Ping server + * Copyright (C) 2007 Maciej Niedzielski + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + */ + +#include "pongserver.h" +#include "xmpp_xmlcommon.h" + +using namespace XMPP; + + +/** + * \class PongServer + * \brief Answers XMPP Pings + */ + +PongServer::PongServer(Task *parent) +:Task(parent) +{ +} + +PongServer::~PongServer() +{ +} + +bool PongServer::take(const QDomElement &e) +{ + if (e.tagName() != "iq" || e.attribute("type") != "get") + return false; + + bool found = false; + QDomElement ping = findSubTag(e, "ping", &found); + if (found && ping.attribute("xmlns") == "urn:xmpp:ping") { + QDomElement iq = createIQ(doc(), "result", e.attribute("from"), e.attribute("id")); + send(iq); + return true; + } + return false; +} + addfile ./src/pongserver.h hunk ./src/pongserver.h 1 +/* + * pongserver.h - XMPP Ping server + * Copyright (C) 2007 Maciej Niedzielski + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + */ + +#ifndef PONGSERVER_H +#define PONGSERVER_H + +#include "xmpp_task.h" + +class PongServer : public XMPP::Task +{ + Q_OBJECT +public: + PongServer(Task *); + ~PongServer(); + bool take(const QDomElement &); +}; + +#endif + hunk ./src/psiaccount.cpp 50 +#include "pongserver.h" hunk ./src/psiaccount.cpp 539 + // XMPP Ping + new PongServer(d->client->rootTask()); + hunk ./src/src.pri 192 + $$PWD/pongserver.h \ hunk ./src/src.pri 303 + $$PWD/pongserver.cpp \ } Context: [Use XMPP::Status::* constants instead of STATUS_*. Michail Pishchagin **20070110151520] [Removed outdated iconsets/emoticons/README file. Michail Pishchagin **20070109163008] [OptionsTabIconset* are now able to list embedded iconsets; Embedded default emoticons iconset. Michail Pishchagin **20070109162511] [IconsetSelect wouldn't assert when it doesn't have any iconsets. Michail Pishchagin **20070109161707] [Another qt3to4 patch (thanks again Stigger) Kevin Smith **20070109105500] [Converting some classes using Qt3support to Qt4 proper (Thanks to Stigger) Kevin Smith **20070109102145] [Added QSize to optionstree types. Remko Troncon **20070108203340] [GlobalAccel is now obsolete and removed from repository. Michail Pishchagin **20070108170202] [Global shortcuts. Michail Pishchagin **20070108065657 Thanks to Machekku. ] [Sort room roster in groupchats. Michail Pishchagin **20070107212236] [Gracefully resize columns in DiscoDlg. Michail Pishchagin **20061225004401] [Don't crash in GroupChatDlg when trying to perform an action on user who quit the room. Michail Pishchagin **20061224231038 Thanks to Dion. ] [Use hostname when using HTTP connect proxy (FS#579). Remko Troncon **20061223102350 Warning: this means that no SRV lookups are done anymore when a HTTP CONNECT PROXY is used. A slightly better detection mechanism will be implemented later. ] [Do not sign presence sent to MUC rooms (FS#606). Remko Troncon **20061220123454] [Fixed empty window appearing on OS X (FS#605). Remko Troncon **20061217201724] [Fix segfault on OS X due to double delete. Remko Troncon **20061217200303] [Added Q_OBJECT macro to TranslationManager. Remko Troncon **20061217104147] [Removing Q3CString from Jid. Remko Troncon **20061215224858] [Tightening include in jid.cpp. Remko Troncon **20061215222713] [Completed XEP-0004 (Data forms) support. Remko Troncon **20061214140351 We now support data forms in messages (thanks to Roelof Naude) ] [Reply to invalid disco#info requests. Remko Troncon **20061214123701] [Added shortcuts icon. Remko Troncon **20061214115800] [Forgot closing #warning. Remko Troncon **20061214085033] [Removed MainWin::setInfo(). Michail Pishchagin **20061213161941] [Cleaning up some more singletons. Remko Troncon **20061213144209] [Clean up the default menubar. Remko Troncon **20061213143809] [Clean up the shortcutmanager upon exit. Remko Troncon **20061213141827] [Include language_name in the translations. Remko Troncon **20061213134432] [Fixed the SyncThread::call() method. Michail Pishchagin **20061213124029] [Chop off encoding from XML language string. Remko Troncon **20061213085832] [Added stream language setting. Remko Troncon **20061212232131] [Moved translation operations into TranslationManager. Remko Troncon **20061212222831] [Moving XData to iris. Remko Troncon **20061212144557] [Fixed compilation warnings when compiling in release mode. Michail Pishchagin **20061212100730] [Don't issue warning when deleting of pointer to incomplete type, when compiling moc_tabdlg.cpp. Michail Pishchagin **20061208085153] [Remove dependency on image plugins. Remko Troncon **20061207102450] [Fix double 'overwrite file' check. Remko Troncon **20061206215847 Thanks to machekku. ] [HttpAuthRequest refactoring. Remko Troncon **20061206203535] [Allow empty http auth requests. Remko Troncon **20061206200908 Thanks to Machekku. ] [Don't show http auth confirmation when iq type is not get. Remko Troncon **20061206195927 Thanks to machekku. ] [Shortcuts options tab fix. Remko Troncon **20061206195426] [Reply to privacy list pushes. Remko Troncon **20061206194718] [Fix error replies to server. Remko Troncon **20061206194712] [Privacy list refactoring. Remko Troncon **20061206192411] [Filter text nodes in privacy lists. Remko Troncon **20061206191808] [Don't use relative paths in Psi project files. Michail Pishchagin **20061206162140] [Fixed menubar on non-osx platforms. Remko Troncon **20061206130833] [Fixed disappearing menubar on OS X. Remko Troncon **20061205194734] [Reset status messages when going offline. Remko Troncon **20061204133046] [Last Activity (XEP-0012) for offline users. Remko Troncon **20061204131343] [Disable 'Publish tune' if no PEP is available (FS#594). Remko Troncon **20061203150921] [Some PsiContactList refactoring. Remko Troncon **20061203133749] [Fix illegal nick change handling (FS#596). Remko Troncon **20061203123229] [Uncheck legacy ssl probe if disabled. Remko Troncon **20061129191140] [Some xmpptest tweaks. Remko Troncon **20061129191102] [Remove obsolete widgets. Remko Troncon **20061128175136] [Keep account JID bare. Remko Troncon **20061128140200] [Finished authzid support. Remko Troncon **20061128125911] [Encode domain names before passing them to SASL. Remko Troncon **20061128104108] [Fix overriding of realms in simplesasl. Remko Troncon **20061128104041] [Compilation fix. Remko Troncon **20061128092442] [Encode internationalized domain names. Remko Troncon **20061128091835] [Reworked SSL/TLS account settings. Remko Troncon **20061127221100] [We don't need PsiCon::mainWin() around anymore. Michail Pishchagin **20061126210629] [Removed dependencies on MainWin. Michail Pishchagin **20061126194557] [Fix httpconnect.cpp newline detection bug. Remko Troncon **20061126181911 Thanks to michalj. ] [but lets make it statuschangeless in MUC by default Kevin Smith **20061126124231] [Show status changes in MUC (thanks dion) Kevin Smith **20061126123852] [OptionsTab Shortcuts (Thanks Ephraim) Kevin Smith **20061126120715] [temporary add options.ui.contactlist.temp-no-roster-animation option to workaround extrem CPU usage of animated roaster icons Martin H. **20060730215542] [Auto-copy fix Maciej Niedzielski **20061106222750] [Report reason when people leave a MUC (Thanks Dion) Kevin Smith **20061126102314] [IconToolButton will display text if it doesn't have an icon. Michail Pishchagin **20061125185504] [options.tip.* -> options.ui.tip.*. Michail Pishchagin **20061125184705] [Icon -> PsiIcon. Michail Pishchagin **20061125173226] [Windows Vista detection support Kevin Smith **20061122230043] [Three doxygen comments from Textshell Kevin Smith **20061122221724] [(ClassName *)PsiAccount::dialogFind("ClassName") -> PsiAccount::findDialog(). Michail Pishchagin **20061122132956] [Two null XMPP::Jids are equal. Michail Pishchagin **20061122120403] [Correctly ignore WinAmp header warnings. Michail Pishchagin **20061120145252] [Suppress more warnings. Michail Pishchagin **20061120140823] [Suppress compilation warnings. Michail Pishchagin **20061120140034] [Conditional plugin compilation. Remko Troncon **20061120140852] [Fix to BookmarkManager (thanks Ephraim) Kevin Smith **20061119195128] [Make window flashing optional (options.xml) Kevin Smith **20061119152845] [Don't needlessly expand LineEdit vertically in ChatDlg. Michail Pishchagin **20061113125127] [New Alertable class to simplify alert icon plumbing. Michail Pishchagin **20061114213929] [Strip unnecessary data from the manifest file. Michail Pishchagin **20061108164138] [Compile-in image format plugins on Windows. Michail Pishchagin **20061108160706] [Ephraim's fix correction for the gcdialog Kevin Smith **20061107165709] [AvatarFactory ensures that all avatars are square in size. Michail Pishchagin **20061107160555] [Moved function to create transparent QPixmaps to separate file. Michail Pishchagin **20061107160210] [Changed animation groupbox to combobox. Michail Pishchagin **20061106163452 Thanks to Martin H. ] [Visual Styles Manifest (for Windows) Maciej Niedzielski **20061018203842 Enables Windows Visual Styles in Psi. Now all common dialogs (file open, file save) will use visual styles, too. ] [Fixed splitter resizing in chats and groupchats. Michail Pishchagin **20061106151310 Thanks to Ephraim. ] [Added Q_OBJECT macro to aboutdlg. Remko Troncon **20061104145551] [Fixed sort order in groupchat dialog. Remko Troncon **20061103220932] [Do not add a body to MUC topic changes. Remko Troncon **20061103170842] [More Aspell UTF-8 support. Remko Troncon **20061102211848] [Added Mac OS X spell checking support. Remko Troncon **20061102203818] [Use UTF-8 in the ASpellChecker. Remko Troncon **20061102182805] [Fix statusdlg signal slot. Remko Troncon **20061101003800] [Added support for JEP-70. Remko Troncon **20061031193236 Thanks to Machekku. ] [Added more ignore rules to the boring file. Michail Pishchagin **20061030100120] [Tab drag and drop Kevin Smith **20061026100810] [Disable 'check spelling' option when no spell checker is available. Remko Troncon **20061026095747 Thanks to Ephraim. ] [Added XMPP::Status constructor. Remko Troncon **20061026095152] [Fix shortcuts in event dialog. Remko Troncon **20061026085820] [Remove unwanted whitespace from error stanza. Remko Troncon **20061026075059 Thanks to Machekku. ] [Fixed typo in shortcut manager. Remko Troncon **20061026074154] [Fixed warning fix. Remko Troncon **20061025213440] [Fix compilation warning. Remko Troncon **20061025172832] [Make sure that there is at least one shortcut to send chat messages. Remko Troncon **20061025154932] [Workaround for shortcut segfault. Remko Troncon **20061025154348] [Remove the shortcut for clearing the chatlog. Remko Troncon **20061025153546] [Start rewriting Tab widgets Kevin Smith **20061025150151] [Narrowing includes down. Remko Troncon **20061025134832] [Split off some common classes from im.h. Remko Troncon **20061025134244] [Make resourceMenu use XMPP::Status. Remko Troncon **20061025121333] [Make status presets use XMPP::Status. Remko Troncon **20061025120452] [Removed redundant type field from XMPP::Status. Remko Troncon **20061025114556] [Added XMPP::Status::type() function and Type enum for safer programming. Michail Pishchagin **20061025105450] [Refactored BlockTransportPopupList class a little. Michail Pishchagin **20061025082210] [mac builds should be devel, not beta3 Kevin Smith **20061025094954] [Use QDesktopServices::openUrl instead of our hand coded way. Remko Troncon **20061025094241] [Enable new tray icon by default on all platforms. Remko Troncon **20061024214146] [Add shadow around tray icon on X11. Remko Troncon **20061024192121] [More tray icon code. Remko Troncon **20061024190541] [Some more tray menu refactoring. Remko Troncon **20061024184654] [Fixed trayicon slot mismatch. Remko Troncon **20061024181846] [Use QSystemTrayIcon on Mac OS X. Remko Troncon **20061024180330] [Renamed MTray to PsiTrayIcon, and put it in a separate file. Remko Troncon **20061024161054] [Use QSyntaxHighlighter for spell checking. Remko Troncon **20061024154309 Fixes highlighting issues. ] [Do not set mask while the pixmap is being painted on. Michail Pishchagin **20061024141610] [Extracted AccountLabel to separate file. Michail Pishchagin **20061024120956] [Disabling qca-gnupg. Michail Pishchagin **20061024120537] [Refactored PsiCon::accountList() -> PsiContactList::accounts(). Michail Pishchagin **20061024112623 To be more precise: accountList(false) -> PsiContactList::accounts() and accountList(true) -> PsiContactList::enabledAccounts(). ] [Moved PsiAccountList to the separate PsiContactList class. Michail Pishchagin **20061024102058] [Added more valgrind suppressions (tested on Kubuntu Dapper). Michail Pishchagin **20061024100830] [Workaround for 100% CPU usage on connection error. Remko Troncon **20061024084520] [Migrating tip of the day. Remko Troncon **20061023185050] [Moved text utilities to TextUtil. Remko Troncon **20061023121846] [Fixed X11 compilation issues. Remko Troncon **20061023115501] [Some more common.h reordering. Remko Troncon **20061023113057] [Moving some things out of common.cpp. Remko Troncon **20061023111734] [Moved global PsiIconset instance into PsiIconset. Remko Troncon **20061023094755] [Cleanups in common.h. Remko Troncon **20061023085345] [Remove dependency on Psi from aspellchecker. Remko Troncon **20061023082646] [Aspell fix. Remko Troncon **20061023075215] [Some src.pri cleanups. Remko Troncon **20061022213649] [More portable way of linking against static jingle. Remko Troncon **20061022212611] [More portable way of linking against a static qca. Remko Troncon **20061022212124] [Tightening includes. Remko Troncon **20061022204405] [Copied BSocket from ambrosia. Remko Troncon **20061022200658] [Removed Q3CStrings. Remko Troncon **20061022200025] [Split off AboutDlg. Remko Troncon **20061022185351] [Fixed segfault on linux in getHomeDir(). Remko Troncon **20061022152235] [Migrate global shortcut options to new options system. Remko Troncon **20061021213722] [More common.h cleanups. Remko Troncon **20061021210021] [Some more common.h cleanups. Remko Troncon **20061021201149] [Fixed windows building of QCA. Remko Troncon **20061021201442] [Moved application information out of common.h into ApplicationInfo. Remko Troncon **20061021191231] [Added Mac OS X support in SystemInfo. Remko Troncon **20061021173553] [Sorting Ad-Hoc commands. Remko Troncon **20061021172941 Thanks to Norman Rasmussen. ] [Added missing includes to systeminfo. Remko Troncon **20061021172045] [Added busywidget to ad-hoc command dialog. Remko Troncon **20061021171745 Thanks to Norman Rasmussen. ] [Added extra include to systeminfo. Remko Troncon **20061021171133] [Moved system information methods from common.h to SystemInfo. Remko Troncon **20061021163132] [Removed obsolete string functions from common.h Remko Troncon **20061021150533] [Added registrationdlg to darcs. Remko Troncon **20061021143528] [Moved StretchWidget from common.h. Remko Troncon **20061021143301] [Splitting up servicesdlg into searchdlg and registrationdlg. Remko Troncon **20061021142021] [Removing some qt3support dependencies. Remko Troncon **20061021135310] [Ported all Q3FileDialogs. Remko Troncon **20061021134311] [Refactoring + Qt4-proper port of SSLCertDlg. Remko Troncon **20061021130542] [Clear keypad modifier from key events. Remko Troncon **20061021112448] [Added workaround to force VS2005/VC8 to link. Remko Troncon **20061021104201 Thanks to Norman Rasmussen. ] [Migration of 'enter sends message' to new shortcut system. Remko Troncon **20061021093801] [Updated README. Remko Troncon **20061020160227] [Make (group)chatdlg respect shortcuts. Remko Troncon **20061020141504] [Fixed compilation problems. Remko Troncon **20061020144525] [Removed roster opacity from common.h. Remko Troncon **20061020135341] [Removed 'enter sends message' option from the UI. Remko Troncon *-20061019184833] [TAG 20061020 Remko Troncon **20061020124531] Patch bundle hash: b8c7c77467bd4eda766dd9b744808c16749d6209