On 31/05/06 at 09:25 +1000, James Bunton wrote: > On 31/05/2006, at 7:13 AM, Lucas Nussbaum wrote: > > >Hi, > > > >When I restart pymsnt, it doesn't send <presence > >type='unavailable'> to > >connected clients (that's normally the case, but if I restart it using > >kill -9, or if it crashed, it's not the case). > > > >So, even if I restart it immediately, the clients are > >not notified that the gateway was restarted, and they don't know that > >their peers status is no longer up to date. > > > >When the gateway receives a message outside of a session, instead of > >just sending a not-authorized message, it could also send a presence > >type=unavailable to the user, so the user gets notified of the status > >change. > > > >What do you think ? > > Not a bad idea. They'll still have a dangling contact list :P but its > better to see the transport JID go offline too. > > As a possible solution to your problem, run the connect-all adhoc > command whenever you restart the transport. It sends a presence probe > to all registered users, which will connect everybody that is online > right now.
Well, this might not be a good idea in my case, because I really have a lot of registered users. > Hope you're not having to kill PyMSNt will -9 too often... Why have > you needed to do that? Well, I noticed the problem because the script I used to shutdown PyMSNt wasn't waiting long enough to let it send <presence type=unavailable> to all users. PyMSNt works very well actually :-) -- | Lucas Nussbaum | [EMAIL PROTECTED] http://www.lucas-nussbaum.net/ | | jabber: [EMAIL PROTECTED] GPG: 1024D/023B3F4F | From [EMAIL PROTECTED] Wed May 31 08:12:42 2006 From: [EMAIL PROTECTED] (Lucas Nussbaum) Date: Wed May 31 08:12:50 2006 Subject: [py-transports] Imminent PyMSNt 0.11.1 release In-Reply-To: <[EMAIL PROTECTED]> References: <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> Message-ID: <[EMAIL PROTECTED]> On 31/05/06 at 09:32 +1000, James Bunton wrote: > On 31/05/2006, at 2:29 AM, Lars T. Mikkelsen wrote: > > >On Wed, May 31, 2006 at 01:02:41AM +1000, James Bunton wrote: > >>Hopefully this will solve the problem once & for all :) > > > >At least I'm not able to reproduce the issue with r166. > > > >If no one reports issues the next couple of days, perhaps it's time to > >make a new release? :-) > > > >Best regards, > >Lars > > > Yeah, been wanting to do that for a week now, but things keep > cropping up. > I'll wait until the weekend. If anybody still has outstanding issues, > please let me know. Sorry, but I do :-( Here are Tracebacks I've seen since I upgraded to the latest SVN (r166) yesterday: ------------------------------------------ [2006-05-30 23:18:41] INFO :: (u'[EMAIL PROTECTED]', '[EMAIL PROTECTED]') :: :: sendMessageReal :: msn.msnw.OneSwitchboardSession :: {'text': u'merci de la r\xe9ponse', ' noerror': False, 'self': 'instance'} [2006-05-30 23:18:41] << MSG 10 N 82 [2006-05-30 23:18:41] << MIME-Version: 1.0 [2006-05-30 23:18:41] << Content-Type: text/plain; charset=UTF-8 [2006-05-30 23:18:41] merci de la r?ponse [2006-05-30 23:18:41] >> 715 8 [2006-05-30 23:18:41] Unhandled error in Deferred: [2006-05-30 23:18:41] Traceback (most recent call last): Failure: <type 'int'>: 715 [2006-05-30 23:18:41] >> QNG 49 ------------------------------------------ [2006-05-30 23:22:33] INFO :: [EMAIL PROTECTED] :: :: addContact :: glue.LegacyList :: {'jid': u'[EMAIL PROTECTED]', 'self': 'instance'} [2006-05-30 23:22:33] Traceback (most recent call last): File "/usr/lib/python2.4/site-packages/twisted/python/log.py", line 53, in callWithLogger return callWithContext({"system": lp}, func, *args, **kw) File "/usr/lib/python2.4/site-packages/twisted/python/log.py", line 38, in callWithContext return context.call({ILogContext: newCtx}, func, *args, **kw) File "/usr/lib/python2.4/site-packages/twisted/python/context.py", line 59, in callWithContext return self.currentContext().callWithContext(ctx, func, *args, **kw) File "/usr/lib/python2.4/site-packages/twisted/python/context.py", line 37, in callWithContext return func(*args,**kw) --- <exception caught here> --- File "/usr/lib/python2.4/site-packages/twisted/internet/epollreactor.py", line 199, in _doReadOrWrite why = selectable.doRead() File "/usr/lib/python2.4/site-packages/twisted/internet/tcp.py", line 349, in doRead return self.protocol.dataReceived(data) File "/usr/lib/python2.4/site-packages/twisted/words/xish/xmlstream.py", line 72, in dataReceived self.stream.parse(buf) File "/usr/lib/python2.4/site-packages/twisted/words/xish/domish.py", line 524, in parse self.parser.Parse(buffer) File "/usr/lib/python2.4/site-packages/twisted/words/xish/domish.py", line 564, in _onEndElement self.ElementEvent(self.currElem) File "/usr/lib/python2.4/site-packages/twisted/words/xish/xmlstream.py", line 104, in onElement self.dispatch(element) File "/usr/lib/python2.4/site-packages/twisted/words/xish/utility.py", line 233, in dispatch callbacklist.callback(object) File "/usr/lib/python2.4/site-packages/twisted/words/xish/utility.py", line 37, in callback methodwrapper(*args, **kwargs) File "/usr/lib/python2.4/site-packages/twisted/words/xish/utility.py", line 21, in __call__ self.method(*nargs, **nkwargs) File "/home/jabber/msn/pymsnt-trunk/src/main.py", line 319, in onPresence s.onPresence(el) File "/home/jabber/msn/pymsnt-trunk/src/jabw.py", line 256, in onPresence self.subscriptionReceived(toj.userhost(), ptype) File "/home/jabber/msn/pymsnt-trunk/src/session.py", line 336, in subscriptionReceived self.contactList.jabberSubscriptionReceived(to, subtype) File "/home/jabber/msn/pymsnt-trunk/src/contact.py", line 240, in jabberSubscriptionReceived self.getContact(jid).jabberSubscriptionReceived(subtype) File "/home/jabber/msn/pymsnt-trunk/src/contact.py", line 134, in jabberSubscriptionReceived self.contactList.legacyList.addContact(self.jid) File "/home/jabber/msn/pymsnt-trunk/src/legacy/glue.py", line 566, in addContact msnContact = self.session.legacycon.getContacts().getContact(userHandle) exceptions.AttributeError: 'NoneType' object has no attribute 'getContact' ------------------------------------------ [2006-05-30 23:23:06] INFO :: [EMAIL PROTECTED] :: End. :: syncJabberLegacyLists :: glue.LegacyList :: {'user': '[EMAIL PROTECTED]', 'removedFromList': <function removedFromList at 0xb5ebe924>, 'sub': 'both', 'oldContactList': <tlib.msn.msn.MSNContactList instance at 0xb5fca08c>, 'self': 'instance', 'oldContact': <tlib.msn.msn.MSNContact instance at 0xb5f 47a8c>, 'lists': 11, 'item': <twisted.words.xish.domish.Element object at 0xb5f4c52c>, 'contact': <tlib.msn.msn.MSNContact instance at 0xb5fdc4ec>, 'addedToList': <function addedTo List at 0xb5ebe10c>, 'newXDB': <twisted.words.xish.domish.Element object at 0xb5f4176c>, 'contactList': <tlib.msn.msn.MSNContactList instance at 0xb5fdc50c>, 'oldLists': 11, 'jabCo ntact': <contact.Contact instance at 0xb5f4cf8c>, 'result': <twisted.words.xish.domish.Element object at 0xb5f10acc>} [2006-05-30 23:23:06] << PNG [2006-05-30 23:23:06] >> 715 8 [2006-05-30 23:23:06] Unhandled error in Deferred: [2006-05-30 23:23:06] Traceback (most recent call last): Failure: <type 'int'>: 715 [2006-05-30 23:23:06] >> QNG 49 ------------------------------------------ [2006-05-30 23:33:33] INFO :: [EMAIL PROTECTED] :: Parsed presence packet :: onPresence :: Session :: {'status': u'Away', 'priority': u'5', 'froj': <twisted.words.protocols.jabber .jid.JID instance at 0xb60b180c>, 'show': u'away', 'self': 'instance', 'fro': u'[EMAIL PROTECTED]/Psi', 'avatarHash': '', 'ptype': None, 'toj': <twisted.words.protocols.jabber.jid .JID instance at 0xb5fdcfac>, 'to': u'[EMAIL PROTECTED]', 'child': <twisted.words.xish.domish.Element object at 0xb5cc88ac>, 'el': <twisted.words.xish.domish.Element object a t 0x8944b2c>, 'nickname': ''} [2006-05-30 23:33:33] << PNG [2006-05-30 23:33:33] >> 715 12 [2006-05-30 23:33:33] Unhandled error in Deferred: [2006-05-30 23:33:33] Traceback (most recent call last): Failure: <type 'int'>: 715 ------------------------------------------ [2006-05-30 23:38:33] << ADC 11 FL [EMAIL PROTECTED] [EMAIL PROTECTED] [2006-05-30 23:38:33] Traceback (most recent call last): File "/usr/lib/python2.4/site-packages/twisted/python/log.py", line 53, in callWithLogger return callWithContext({"system": lp}, func, *args, **kw) File "/usr/lib/python2.4/site-packages/twisted/python/log.py", line 38, in callWithContext return context.call({ILogContext: newCtx}, func, *args, **kw) File "/usr/lib/python2.4/site-packages/twisted/python/context.py", line 59, in callWithContext return self.currentContext().callWithContext(ctx, func, *args, **kw) File "/usr/lib/python2.4/site-packages/twisted/python/context.py", line 37, in callWithContext return func(*args,**kw) --- <exception caught here> --- File "/usr/lib/python2.4/site-packages/twisted/internet/epollreactor.py", line 199, in _doReadOrWrite why = selectable.doRead() File "/usr/lib/python2.4/site-packages/twisted/internet/tcp.py", line 349, in doRead return self.protocol.dataReceived(data) File "/usr/lib/python2.4/site-packages/twisted/words/xish/xmlstream.py", line 72, in dataReceived self.stream.parse(buf) File "/usr/lib/python2.4/site-packages/twisted/words/xish/domish.py", line 524, in parse self.parser.Parse(buffer) File "/usr/lib/python2.4/site-packages/twisted/words/xish/domish.py", line 564, in _onEndElement self.ElementEvent(self.currElem) File "/usr/lib/python2.4/site-packages/twisted/words/xish/xmlstream.py", line 104, in onElement self.dispatch(element) File "/usr/lib/python2.4/site-packages/twisted/words/xish/utility.py", line 233, in dispatch callbacklist.callback(object) File "/usr/lib/python2.4/site-packages/twisted/words/xish/utility.py", line 37, in callback methodwrapper(*args, **kwargs) File "/usr/lib/python2.4/site-packages/twisted/words/xish/utility.py", line 21, in __call__ self.method(*nargs, **nkwargs) File "/home/jabber/msn/pymsnt-trunk/src/main.py", line 280, in onPresence s.onPresence(el) File "/home/jabber/msn/pymsnt-trunk/src/jabw.py", line 256, in onPresence self.subscriptionReceived(toj.userhost(), ptype) File "/home/jabber/msn/pymsnt-trunk/src/session.py", line 336, in subscriptionReceived self.contactList.jabberSubscriptionReceived(to, subtype) File "/home/jabber/msn/pymsnt-trunk/src/contact.py", line 240, in jabberSubscriptionReceived self.getContact(jid).jabberSubscriptionReceived(subtype) File "/home/jabber/msn/pymsnt-trunk/src/contact.py", line 134, in jabberSubscriptionReceived self.contactList.legacyList.addContact(self.jid) File "/home/jabber/msn/pymsnt-trunk/src/legacy/glue.py", line 567, in addContact if msnContact.lists & msn.REVERSE_LIST: exceptions.AttributeError: 'NoneType' object has no attribute 'lists' ------------------------------------------ [2006-05-31 01:03:23] INFO :: :: :: sendDiscoInfoResponse :: ServerDiscovery :: {'ulang': None, 'to': u'[EMAIL PROTECTED]/Ben\u2019s Mac mini', 'jid': u'[EMAIL PROTECTED]/msn', 'ID': u'iChat_XXXXX3', 'self': 'instance'} [2006-05-31 01:03:23] >> 201 9 [2006-05-31 01:03:23] Unhandled error in Deferred: [2006-05-31 01:03:23] Traceback (most recent call last): Failure: <type 'int'>: 201 [2006-05-31 01:03:23] <twisted.internet.tcp.Connector instance at 0xb6bed98c> will retry in 2 seconds ------------------------------------------ [2006-05-31 08:41:25] << PNG [2006-05-31 08:41:25] Unhandled error in Deferred: [2006-05-31 08:41:25] Traceback (most recent call last): File "/usr/lib/python2.4/site-packages/twisted/internet/defer.py", line 307, in _runCallbacks self.result = callback(self.result, *args, **kw) File "/home/jabber/msn/pymsnt-trunk/src/tlib/msn/msn.py", line 288, in <lambda> d.addErrback(lambda f: cb.errback(f)) File "/usr/lib/python2.4/site-packages/twisted/internet/defer.py", line 251, in errback self._startRunCallbacks(fail) File "/usr/lib/python2.4/site-packages/twisted/internet/defer.py", line 294, in _startRunCallbacks self._runCallbacks() --- <exception caught here> --- File "/usr/lib/python2.4/site-packages/twisted/internet/defer.py", line 307, in _runCallbacks self.result = callback(self.result, *args, **kw) File "/home/jabber/msn/pymsnt-trunk/src/tlib/msn/msn.py", line 1131, in _passportError self.loginFailure("Exception while authenticating: %s" % failure) File "/home/jabber/msn/pymsnt-trunk/src/tlib/msn/msnw.py", line 369, in loginFailure self.factory.msncon.loginFailed(message) exceptions.AttributeError: 'NoneType' object has no attribute 'loginFailed' [2006-05-31 08:41:25] Stopping factory <twisted.internet.protocol.ClientFactory instance at 0xb5b766ac> ------------------------------------------ Several of them appeared multiple times. I'm available for testing in the next days. Also, is there a way to automagically extract such tracebacks from the logfile ? Thank you, -- | Lucas Nussbaum | [EMAIL PROTECTED] http://www.lucas-nussbaum.net/ | | jabber: [EMAIL PROTECTED] GPG: 1024D/023B3F4F | From [EMAIL PROTECTED] Wed May 31 09:04:52 2006 From: [EMAIL PROTECTED] (Norman Rasmussen) Date: Wed May 31 09:04:57 2006 Subject: [py-transports] [Feature Request] send unavailable presence when receiving message outside of a session In-Reply-To: <[EMAIL PROTECTED]> References: <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> Message-ID: <[EMAIL PROTECTED]> On 5/31/06, Lucas Nussbaum <[EMAIL PROTECTED]> wrote: > > Hope you're not having to kill PyMSNt will -9 too often... Why have > > you needed to do that? > Well, I noticed the problem because the script I used to shutdown PyMSNt > wasn't waiting long enough to let it send <presence type=unavailable> to > all users. PyMSNt works very well actually :-) Make it wait longer :-) -- - Norman Rasmussen - Email: [EMAIL PROTECTED] - Home page: http://norman.rasmussen.co.za/ From [EMAIL PROTECTED] Wed May 31 09:08:25 2006 From: [EMAIL PROTECTED] (Norman Rasmussen) Date: Wed May 31 09:08:28 2006 Subject: [py-transports] Imminent PyMSNt 0.11.1 release In-Reply-To: <[EMAIL PROTECTED]> References: <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> Message-ID: <[EMAIL PROTECTED]> On 5/31/06, Lucas Nussbaum <[EMAIL PROTECTED]> wrote: > Here are Tracebacks I've seen since I upgraded to the latest SVN (r166) > yesterday: I've been seeing some: [2006-05-31 01:57:37] Traceback (most recent call last): Failure: <type 'int'>: 403 too -- - Norman Rasmussen - Email: [EMAIL PROTECTED] - Home page: http://norman.rasmussen.co.za/ From [EMAIL PROTECTED] Wed May 31 14:44:19 2006 From: [EMAIL PROTECTED] (Travis Bell) Date: Wed May 31 14:44:35 2006 Subject: [py-transports] Imminent PyMSNt 0.11.1 release In-Reply-To: <[EMAIL PROTECTED]> References: <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> Message-ID: <[EMAIL PROTECTED]> I've got a bunch looking like so (r166) .... ------------ [2006-05-30 21:41:26] Traceback (most recent call last): File "/usr/local/lib/python2.4/site-packages/twisted/ internet/defer.py", line 307, in _runCallbacks self.result = callback(self.result, *args, **kw) File "/usr/opt/transports/pymsnt-r166/src/tlib/msn/ msn.py", line 288, in <lambda> d.addErrback(lambda f: cb.errback(f)) File "/usr/local/lib/python2.4/site-packages/twisted/ internet/defer.py", line 251, in errback self._startRunCallbacks(fail) File "/usr/local/lib/python2.4/site-packages/twisted/ internet/defer.py", line 294, in _startRunCallbacks self._runCallbacks() --- <exception caught here> --- File "/usr/local/lib/python2.4/site-packages/twisted/ internet/defer.py", line 307, in _runCallbacks self.result = callback(self.result, *args, **kw) File "/usr/opt/transports/pymsnt-r166/src/tlib/msn/ msn.py", line 1131, in _passportError self.loginFailure("Exception while authenticating: %s" % failure) File "/usr/opt/transports/pymsnt-r166/src/tlib/msn/ msnw.py", line 369, in loginFailure self.factory.msncon.loginFailed(message) exceptions.AttributeError: 'NoneType' object has no attribute 'loginFailed' [2006-05-31 02:35:48] Traceback (most recent call last): Failure: <type 'int'>: 201 [2006-05-31 06:04:48] Traceback (most recent call last): Failure: <type 'int'>: 715 [2006-05-31 07:30:38] Traceback (most recent call last): Failure: <type 'int'>: 800 [2006-05-31 07:30:38] Traceback (most recent call last): Failure: <type 'int'>: 800 [2006-05-31 07:30:41] Traceback (most recent call last): Failure: <type 'int'>: 800 [2006-05-31 07:30:41] Traceback (most recent call last): Failure: <type 'int'>: 800 [2006-05-31 07:30:44] Traceback (most recent call last): Failure: <type 'int'>: 800 [2006-05-31 07:30:44] Traceback (most recent call last): Failure: <type 'int'>: 800 [2006-05-31 07:30:47] Traceback (most recent call last): Failure: <type 'int'>: 800 ------------- Cheers, -- Travis Bell On 31-May-06, at 3:08 AM, Norman Rasmussen wrote: > On 5/31/06, Lucas Nussbaum <[EMAIL PROTECTED]> wrote: >> Here are Tracebacks I've seen since I upgraded to the latest SVN >> (r166) >> yesterday: > > I've been seeing some: > > [2006-05-31 01:57:37] Traceback (most recent call last): > Failure: <type 'int'>: 403 > > too > > -- > - Norman Rasmussen > - Email: [EMAIL PROTECTED] > - Home page: http://norman.rasmussen.co.za/ > _______________________________________________ > py-transports mailing list > [email protected] > http://www.modevia.com/cgi-bin/mailman/listinfo/py-transports -------------- next part -------------- An HTML attachment was scrubbed... URL: http://modevia.com/pipermail/py-transports/attachments/20060531/03d800c9/attachment.htm From [EMAIL PROTECTED] Wed May 31 15:08:13 2006 From: [EMAIL PROTECTED] (Lars T. Mikkelsen) Date: Wed May 31 15:08:19 2006 Subject: [py-transports] Imminent PyMSNt 0.11.1 release In-Reply-To: <[EMAIL PROTECTED]> References: <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> Message-ID: <[EMAIL PROTECTED]> Hi Lucas, On Wed, May 31, 2006 at 10:12:42AM +0200, Lucas Nussbaum wrote: > [2006-05-30 23:18:41] INFO :: (u'[EMAIL PROTECTED]', '[EMAIL PROTECTED]') :: > :: sendMessageReal :: msn.msnw.OneSwitchboardSession :: {'text': u'merci de > la r\xe9ponse', ' > noerror': False, 'self': 'instance'} > [2006-05-30 23:18:41] << MSG 10 N 82 > [2006-05-30 23:18:41] << MIME-Version: 1.0 > [2006-05-30 23:18:41] << Content-Type: text/plain; charset=UTF-8 > [2006-05-30 23:18:41] merci de la r?ponse > [2006-05-30 23:18:41] >> 715 8 > [2006-05-30 23:18:41] Unhandled error in Deferred: > [2006-05-30 23:18:41] Traceback (most recent call last): > Failure: <type 'int'>: 715 You should have a line preceding this that reads "<< ??? 8 ...", that is a command (???) with the same ID (8) as the error. I think it would be helpful to know what command triggered the error. Best regards, Lars From [EMAIL PROTECTED] Wed May 31 15:18:19 2006 From: [EMAIL PROTECTED] (Daniel Henninger) Date: Wed May 31 15:19:36 2006 Subject: [py-transports] Security Patch: PyICQt and PyAIMt MySQL Support Message-ID: <[EMAIL PROTECTED]> Folk, There is a potential security hole in the MySQL XDB backend for PyICQt and PyAIMt. It has been fixed in the latest SVN, so if you are running SVN, simply update. Note that this -only affects you if you are using the MySQL XDB backend-. If you are not, you can ignore this issue. Anyway, if you are not interested in updating SVN, simply copy this file: http://www.vorpalcloud.org/~daniel/mysql.py into src/xdb/mysql.py in PyICQt and PyAIMt's dist root. This also fixes an issue where PyICQ/PyAIM might get disconnected from your MySQL database for being too idle. The security hole could theoretically be exploited as a MySQL injection attack. I was not escaping single quotes, so if you set your nickname to something that would close off the mysql command in progress, then fire another command, you could theoretically drop tables or do all sorts of bad things<tm>. I highly recommend you perform this update if you are using MySQL with PyAIM/PyICQ. Instead of putting out an entire release with a lot of changes for this issue, I'm putting out a simple small patch that you all can copy into place. I have a lot of pending changes in SVN and didn't want to force you all to deal with a ton of changes all at once. =) Daniel From [EMAIL PROTECTED] Wed May 31 15:20:28 2006 From: [EMAIL PROTECTED] (Daniel Henninger) Date: Wed May 31 15:21:47 2006 Subject: [py-transports] Security Patch: PyICQt and PyAIMt MySQL Support In-Reply-To: <[EMAIL PROTECTED]> References: <[EMAIL PROTECTED]> Message-ID: <[EMAIL PROTECTED]> PS, Yes I will be releasing actual small minor rev releases to take care of this as well. Just wanted to offer the patch here for those that don't want to deal with that. Daniel On May 31, 2006, at 11:18 AM, Daniel Henninger wrote: > Folk, > > There is a potential security hole in the MySQL XDB backend for > PyICQt and PyAIMt. It has been fixed in the latest SVN, so if you > are running SVN, simply update. Note that this -only affects you > if you are using the MySQL XDB backend-. If you are not, you can > ignore this issue. Anyway, if you are not interested in updating > SVN, simply copy this file: > > http://www.vorpalcloud.org/~daniel/mysql.py > > into src/xdb/mysql.py in PyICQt and PyAIMt's dist root. This also > fixes an issue where PyICQ/PyAIM might get disconnected from your > MySQL database for being too idle. > > The security hole could theoretically be exploited as a MySQL > injection attack. I was not escaping single quotes, so if you set > your nickname to something that would close off the mysql command > in progress, then fire another command, you could theoretically > drop tables or do all sorts of bad things<tm>. I highly recommend > you perform this update if you are using MySQL with PyAIM/PyICQ. > > Instead of putting out an entire release with a lot of changes for > this issue, I'm putting out a simple small patch that you all can > copy into place. I have a lot of pending changes in SVN and didn't > want to force you all to deal with a ton of changes all at once. =) > > Daniel > _______________________________________________ > py-transports mailing list > [email protected] > http://www.modevia.com/cgi-bin/mailman/listinfo/py-transports
