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

Reply via email to