]> granicus.if.org Git - ejabberd/commitdiff
Always allow packets from user's server and bare jid (thanks to Alexey Shchepin)
authorBadlop <badlop@process-one.net>
Fri, 23 Dec 2011 10:55:01 +0000 (11:55 +0100)
committerBadlop <badlop@process-one.net>
Fri, 23 Dec 2011 10:55:01 +0000 (11:55 +0100)
src/mod_privacy.erl

index 3b741b4e799d9366676ca46b56f5a14c762b7a35..bb9e55a5c3b7507a03734ebb023f9e4aa0e440a8 100644 (file)
         updated_list/3]).
 
 -include_lib("exmpp/include/exmpp.hrl").
+-include_lib("exmpp/include/exmpp_jid.hrl").
 
 -include("ejabberd.hrl").
 -include("mod_privacy.hrl").
@@ -674,6 +675,27 @@ get_user_list(_, LUser, LServer)
 %% From is the sender, To is the destination.
 %% If Dir = out, User@Server is the sender account (From).
 %% If Dir = in, User@Server is the destination account (To).
+check_packet(_, _User, _Server,
+            _UserList,
+            {#jid{node = "", domain = Server} = _From,
+              #jid{domain = Server} = _To,
+              _},
+            in) ->
+    allow;
+check_packet(_, _User, _Server,
+            _UserList,
+            {#jid{domain = Server} = _From,
+              #jid{node = "", domain = Server} = _To,
+              _},
+            out) ->
+    allow;
+check_packet(_, _User, _Server,
+            _UserList,
+            {#jid{node = User, domain = Server} = _From,
+              #jid{node = User, domain = Server} = _To,
+              _},
+            _Dir) ->
+    allow;
 check_packet(_, User, Server,
             #userlist{list = List, needdb = NeedDb},
             {From, To, #xmlel{name = PName} = El},