[JDEV] bug in mod_privacy ?

Alexey Nezhdanov snake at penza-gsm.ru
Mon Jan 19 05:15:47 CST 2004


> > ..._I_ have tested this patch and it works well - the server
> > became in compliance with the xmpp-im document.

> Sorry about the misunderstanding. I'm glad to hear that patch worked for
> you.
:)

Unfortunately there are another bug in mod_privacy.
The communications blocked all at once if there are rule that blocks 
communications to one account:
(Though may be it is my mistake here).

1. Retrieving all privacy lists:
===================
-=>|<iq type='get' id='36'><query xmlns='jabber:iq:privacy' /></iq>
<=-|<iq xmlns='jabber:client' id='36' type='result'><query 
xmlns='jabber:iq:privacy'><default name='test2'/><list name='test'/><list 
name='test2'/></query></iq>
===================
As you can see - I have defined two privacy lists 'test' and 'test2' and made 
list 'test2' default.
Here is this lists:
===================
-=>|<iq type='get' id='46'><query xmlns='jabber:iq:privacy'><list 
name='test' /></query></iq>
<=-|<iq xmlns='jabber:client' id='46' type='result'><query 
xmlns='jabber:iq:privacy'><list name='test'><item order='6' action='allow' 
value='snake_at_penza-gsm.ru' type='jid'/></list></query></iq>
-=>|<iq type='get' id='47'><query xmlns='jabber:iq:privacy'><list 
name='test2' /></query></iq>
<=-|<iq xmlns='jabber:client' id='47' type='result'><query 
xmlns='jabber:iq:privacy'><list name='test2'><item order='6' action='deny' 
value='sm_at_penza-gsm.ru' type='jid'/></list></query></iq>
====================
So the list 'test' allows communication from 'snake' account and list 'test2' 
prohibits communications with 'sm' account (From here and forth I have 
replaced the "at"'s by their textual equivalents. "On the wire" they all are 
real "@"'s)
-----------------------------
XMPP-IM
10.2 Business Rules
7. If no fall-through item is provided in a list, the fall-through action is 
assumed to be "accept".
-----------------------------
So the list "test" is must appear as just "no any specific rules".

Trying to send messages (since there are no active lists and 'test2' is 
default list we now must be prohibited from communications with 'sm' ):
======================
-=>|<message to='sm_at_penza-gsm.ru' id='48'><body>testA</body></message>
-=>|<message to='snake_at_penza-gsm.ru' id='49'><body>testA</body></message>
======================
Both delivery fails!
If I will set list 'test' as default - then the messages will be delivered 
sucessfully
======================
-=>|<iq type='set' id='50'><query xmlns='jabber:iq:privacy'><active 
name='test' /></query></iq>
<=-|<iq xmlns='jabber:client' id='50' type='result'/>
-=>|<message to='sm_at_penza-gsm.ru' id='51'><body>testB</body></message>
-=>|<message to='snake_at_penza-gsm.ru' id='52'><body>testB</body></message>
======================
Both messages arrives at destinations.

-- 
Respectfully
Alexey Nezhdanov






More information about the JDev mailing list