knobo / mod_filter

Flexible filtering by server policy
Other
6 stars 6 forks source link

can't compile on 18.01 #3

Open slesru opened 6 years ago

slesru commented 6 years ago

Hello!

I want to compile mod_filter on Ubuntu 18.04 and bundled ejabberd 18.01.

But I get error:

ejabberd-18.01/include/jlib.hrl:21: can't find include file "ns.hrl"

And there is really no ns.hrl in 18.01.

I looked into latest release- 18.06- and there is even no /include/jlib.hrl

Looks like mod_filter is not compatible with latest ejabberd releases.

Are there any plans to port mod_filter to ejabberd 18?

Thank you!

slesru commented 6 years ago

OK, it can be solved by replacing -include("ejabberd.hrl"). -include("jlib.hrl").

with

-include("xmpp.hrl").

and using https://github.com/processone/xmpp

at least module compiles and starts.

Looks like ejabberd 18 does not work with old config, only yml. Have to understand how to rewrite it.

May be somebody can provide examples?

Thank you!

slesru commented 6 years ago

Added module without parameters:

mod_filter: {}

Looks like it is not compatible with ejabberd 18 anyway, have many errors in log like:

2018-09-17 16:07:09.898 [error] <0.806.0>@ejabberd_hooks:safe_apply:383 Hook filter_packet crashed when running mod_filter:filter_packet/1: ** Reason = {error,function_clause,[{mod_filter,filter_packet,[{file,"mod_filter.erl"},{line,30}],[{presence,<<>>,available,<<>>,{jid,<<"root%inetgw1">>,<<"smtp.jabber">>,<<>>,<<"roo t%inetgw1">>,<<"smtp.jabber">>,<<>>},{jid,<<"user">>,<<"jabber">>,<<>>,<<"user">>,<<"jabber">>,<<>>},undefined,[],undefined,[],#{ip => {127,0,0,1}}}]},{ej abberd_hooks,safe_apply,[{file,"src/ejabberd_hooks.erl"},{line,380}],4},{ejabberd_hooks,run_fold1,[{file,"src/ejabberd_hooks.erl"},{line,364}],4},{ejabberd_router,do_route,[{file,"src/ejabberd_router.erl"},{line ,358}],1},{ejabberd_router,route,[{file,"src/ejabberd_router.erl"},{line,93}],1},{ejabberd_service,handle_authenticated_packet,[{file,"src/ejabberd_service.erl"},{line,183}],2},{xmpp_stream_in,process_authentica ted_packet,[{file,"src/xmpp_stream_in.erl"},{line,618}],2},{xmpp_stream_in,handle_info,[{file,"src/xmpp_stream_in.erl"},{line,354}],2}]}

:-(

removed domain name and user name, this is from xmpp-smtp gateway software.

slesru commented 6 years ago

Well, really , this is the same problem as previous issue :-(

slesru commented 6 years ago

Looks good, it starts, no errrors, have to test https://github.com/processone/ejabberd-contrib/tree/master/mod_filter

many thanks to author :-)