diff options
-rw-r--r-- | src/mod_privacy.erl | 2 | ||||
-rw-r--r-- | test/ejabberd_SUITE.erl | 8 |
2 files changed, 3 insertions, 7 deletions
diff --git a/src/mod_privacy.erl b/src/mod_privacy.erl index 4c03159f5..4dbf608c6 100644 --- a/src/mod_privacy.erl +++ b/src/mod_privacy.erl @@ -64,6 +64,7 @@ start(Host, Opts) -> update_table(); _ -> ok end, + mod_disco:register_feature(Host, ?NS_PRIVACY), ejabberd_hooks:add(privacy_iq_get, Host, ?MODULE, process_iq_get, 50), ejabberd_hooks:add(privacy_iq_set, Host, ?MODULE, @@ -80,6 +81,7 @@ start(Host, Opts) -> ?NS_PRIVACY, ?MODULE, process_iq, IQDisc). stop(Host) -> + mod_disco:unregister_feature(Host, ?NS_PRIVACY), ejabberd_hooks:delete(privacy_iq_get, Host, ?MODULE, process_iq_get, 50), ejabberd_hooks:delete(privacy_iq_set, Host, ?MODULE, diff --git a/test/ejabberd_SUITE.erl b/test/ejabberd_SUITE.erl index 043b7000b..7b8fddfbf 100644 --- a/test/ejabberd_SUITE.erl +++ b/test/ejabberd_SUITE.erl @@ -356,13 +356,7 @@ last(Config) -> disconnect(Config). privacy(Config) -> - %% BUG: the feature MUST be advertised via disco#info: - %% http://xmpp.org/extensions/xep-0016.html#disco - %% It seems like this bug exists because Privacy Lists - %% were implemented according to the old RFC where support - %% needn't be advertised via service discovery. - %% TODO: fix in ejabberd - %% true = is_feature_advertised(Config, ?NS_PRIVACY), + true = is_feature_advertised(Config, ?NS_PRIVACY), I1 = send(Config, #iq{type = get, sub_els = [#privacy{}]}), #iq{type = result, id = I1, sub_els = [#privacy{}]} = recv(), JID = <<"tybalt@example.com">>, |