From 8e1263c328dad924aed1ebb6f7ea41c507a445b9 Mon Sep 17 00:00:00 2001 From: Tom Quackenbush Date: Wed, 26 Jul 2017 12:56:58 -0400 Subject: [PATCH] update mod_pottymouth to work with ejabberd 17.04. replace etbloom hipe_bifs/bitarray with ferd/bitarray. --- mod_pottymouth/README.txt | 34 ++- mod_pottymouth/deps/etbloom/.gitignore | 2 + mod_pottymouth/deps/etbloom/LICENSE.txt | 286 ++++++++++++++++++ mod_pottymouth/deps/etbloom/README.md | 13 + mod_pottymouth/deps/etbloom/rebar | Bin 0 -> 141548 bytes mod_pottymouth/deps/etbloom/rebar.config | 5 + .../deps/etbloom/src/etbloom.app.src | 37 +++ .../{ => deps/etbloom}/src/etbloom.erl | 6 +- .../deps/etbloom/test/etbloom_tests.erl | 20 ++ mod_pottymouth/src/mod_pottymouth.erl | 57 ++-- 10 files changed, 418 insertions(+), 42 deletions(-) create mode 100644 mod_pottymouth/deps/etbloom/.gitignore create mode 100644 mod_pottymouth/deps/etbloom/LICENSE.txt create mode 100644 mod_pottymouth/deps/etbloom/README.md create mode 100755 mod_pottymouth/deps/etbloom/rebar create mode 100644 mod_pottymouth/deps/etbloom/rebar.config create mode 100644 mod_pottymouth/deps/etbloom/src/etbloom.app.src rename mod_pottymouth/{ => deps/etbloom}/src/etbloom.erl (96%) create mode 100644 mod_pottymouth/deps/etbloom/test/etbloom_tests.erl diff --git a/mod_pottymouth/README.txt b/mod_pottymouth/README.txt index 0703c96..af8c822 100644 --- a/mod_pottymouth/README.txt +++ b/mod_pottymouth/README.txt @@ -6,10 +6,32 @@ sizes. Using a large list (say, 87M terms) will slow down the initial server boot time (to about 15 minutes respectively), but once loaded lookups are very speedy. -To install in ejabberd: +Prerequisite bitarray lib: + +mod_pottymouth uses a modified version of the 'etbloom' library that uses +'bitarray' to replace 'hipe_bifs'. Ejabberd doesn't handle installing +dependences of dependecies quite so well (etbloom being a dep of mod_pottymouth +and bitarray being a dep of etbloom), so bitarray needs to be installed manually +before installation of mod_pottymouth. + +This is how I got it to work... YMMV. +Given $EJABBERD_HOME is the base directory of your ejabberd install: + +mkdir -p $EJABBERD_HOME/erlang-lib/bitarray +cd $EJABBERD_HOME/erlang-lib/bitarray +clone https://github.com/ferd/bitarray git repo +run: /usr/lib/erlang/bin/escript rebar get-deps +run: /usr/lib/erlang/bin/escript rebar compile +run: /usr/bin/install -c -d /usr/local/lib/bitarray-1.0.0/ebin +run: /usr/bin/install -c -d /usr/local/lib/bitarray-1.0.0/priv +run: /usr/bin/install -c -m 644 ./ebin/bitarray.app /usr/local/lib/bitarray-1.0.0/ebin/bitarray.app +run: /usr/bin/install -c -m 644 ./ebin/bitarray.beam /usr/local/lib/bitarray-1.0.0/ebin/bitarray.beam +run: /usr/bin/install -c -m 644 ./priv/bitarray.so /usr/local/lib/bitarray-1.0.0/priv/bitarray.so + +To install mod_pottymouth in ejabberd: cd ~/.ejabberd-modules/sources -clone the git repo +clone the ejabberd-contrib git repo cd mod_pottymouth edit: ./conf/mod_pottymouth.yml @@ -18,14 +40,6 @@ run: ejabberdctl module_install mod_pottymouth run: ejabberdctl restart module will be installed in: ~/.ejabberd-modules/mod_pottymouth - -If you don't have Erlang HiPE available, it may throw errors that mention: - {undef,[{hipe_bifs,bitarray, -In such case, you can install this library: - https://github.com/ferd/bitarray -and edit etbloom.erl to call that library instead of hipe_bifs. - - Config file format: modules: diff --git a/mod_pottymouth/deps/etbloom/.gitignore b/mod_pottymouth/deps/etbloom/.gitignore new file mode 100644 index 0000000..7f18faa --- /dev/null +++ b/mod_pottymouth/deps/etbloom/.gitignore @@ -0,0 +1,2 @@ +workspace.xml +out diff --git a/mod_pottymouth/deps/etbloom/LICENSE.txt b/mod_pottymouth/deps/etbloom/LICENSE.txt new file mode 100644 index 0000000..729d139 --- /dev/null +++ b/mod_pottymouth/deps/etbloom/LICENSE.txt @@ -0,0 +1,286 @@ +ERLANG PUBLIC LICENSE +Version 1.1 + +1. Definitions. + +1.1. ``Contributor'' means each entity that creates or contributes to +the creation of Modifications. + +1.2. ``Contributor Version'' means the combination of the Original +Code, prior Modifications used by a Contributor, and the Modifications +made by that particular Contributor. + +1.3. ``Covered Code'' means the Original Code or Modifications or the +combination of the Original Code and Modifications, in each case +including portions thereof. + +1.4. ``Electronic Distribution Mechanism'' means a mechanism generally +accepted in the software development community for the electronic +transfer of data. + +1.5. ``Executable'' means Covered Code in any form other than Source +Code. + +1.6. ``Initial Developer'' means the individual or entity identified +as the Initial Developer in the Source Code notice required by Exhibit +A. + +1.7. ``Larger Work'' means a work which combines Covered Code or +portions thereof with code not governed by the terms of this License. + +1.8. ``License'' means this document. + +1.9. ``Modifications'' means any addition to or deletion from the +substance or structure of either the Original Code or any previous +Modifications. When Covered Code is released as a series of files, a +Modification is: + +A. Any addition to or deletion from the contents of a file containing + Original Code or previous Modifications. + +B. Any new file that contains any part of the Original Code or + previous Modifications. + +1.10. ``Original Code'' means Source Code of computer software code +which is described in the Source Code notice required by Exhibit A as +Original Code, and which, at the time of its release under this +License is not already Covered Code governed by this License. + +1.11. ``Source Code'' means the preferred form of the Covered Code for +making modifications to it, including all modules it contains, plus +any associated interface definition files, scripts used to control +compilation and installation of an Executable, or a list of source +code differential comparisons against either the Original Code or +another well known, available Covered Code of the Contributor's +choice. The Source Code can be in a compressed or archival form, +provided the appropriate decompression or de-archiving software is +widely available for no charge. + +1.12. ``You'' means an individual or a legal entity exercising rights +under, and complying with all of the terms of, this License. For legal +entities,``You'' includes any entity which controls, is controlled by, +or is under common control with You. For purposes of this definition, +``control'' means (a) the power, direct or indirect, to cause the +direction or management of such entity, whether by contract or +otherwise, or (b) ownership of fifty percent (50%) or more of the +outstanding shares or beneficial ownership of such entity. + +2. Source Code License. + +2.1. The Initial Developer Grant. +The Initial Developer hereby grants You a world-wide, royalty-free, +non-exclusive license, subject to third party intellectual property +claims: + +(a) to use, reproduce, modify, display, perform, sublicense and + distribute the Original Code (or portions thereof) with or without + Modifications, or as part of a Larger Work; and + +(b) under patents now or hereafter owned or controlled by Initial + Developer, to make, have made, use and sell (``Utilize'') the + Original Code (or portions thereof), but solely to the extent that + any such patent is reasonably necessary to enable You to Utilize + the Original Code (or portions thereof) and not to any greater + extent that may be necessary to Utilize further Modifications or + combinations. + +2.2. Contributor Grant. +Each Contributor hereby grants You a world-wide, royalty-free, +non-exclusive license, subject to third party intellectual property +claims: + +(a) to use, reproduce, modify, display, perform, sublicense and + distribute the Modifications created by such Contributor (or + portions thereof) either on an unmodified basis, with other + Modifications, as Covered Code or as part of a Larger Work; and + +(b) under patents now or hereafter owned or controlled by Contributor, + to Utilize the Contributor Version (or portions thereof), but + solely to the extent that any such patent is reasonably necessary + to enable You to Utilize the Contributor Version (or portions + thereof), and not to any greater extent that may be necessary to + Utilize further Modifications or combinations. + +3. Distribution Obligations. + +3.1. Application of License. +The Modifications which You contribute are governed by the terms of +this License, including without limitation Section 2.2. The Source +Code version of Covered Code may be distributed only under the terms +of this License, and You must include a copy of this License with +every copy of the Source Code You distribute. You may not offer or +impose any terms on any Source Code version that alters or restricts +the applicable version of this License or the recipients' rights +hereunder. However, You may include an additional document offering +the additional rights described in Section 3.5. + +3.2. Availability of Source Code. +Any Modification which You contribute must be made available in Source +Code form under the terms of this License either on the same media as +an Executable version or via an accepted Electronic Distribution +Mechanism to anyone to whom you made an Executable version available; +and if made available via Electronic Distribution Mechanism, must +remain available for at least twelve (12) months after the date it +initially became available, or at least six (6) months after a +subsequent version of that particular Modification has been made +available to such recipients. You are responsible for ensuring that +the Source Code version remains available even if the Electronic +Distribution Mechanism is maintained by a third party. + +3.3. Description of Modifications. +You must cause all Covered Code to which you contribute to contain a +file documenting the changes You made to create that Covered Code and +the date of any change. You must include a prominent statement that +the Modification is derived, directly or indirectly, from Original +Code provided by the Initial Developer and including the name of the +Initial Developer in (a) the Source Code, and (b) in any notice in an +Executable version or related documentation in which You describe the +origin or ownership of the Covered Code. + +3.4. Intellectual Property Matters + +(a) Third Party Claims. + If You have knowledge that a party claims an intellectual property + right in particular functionality or code (or its utilization + under this License), you must include a text file with the source + code distribution titled ``LEGAL'' which describes the claim and + the party making the claim in sufficient detail that a recipient + will know whom to contact. If you obtain such knowledge after You + make Your Modification available as described in Section 3.2, You + shall promptly modify the LEGAL file in all copies You make + available thereafter and shall take other steps (such as notifying + appropriate mailing lists or newsgroups) reasonably calculated to + inform those who received the Covered Code that new knowledge has + been obtained. + +(b) Contributor APIs. + If Your Modification is an application programming interface and + You own or control patents which are reasonably necessary to + implement that API, you must also include this information in the + LEGAL file. + +3.5. Required Notices. +You must duplicate the notice in Exhibit A in each file of the Source +Code, and this License in any documentation for the Source Code, where +You describe recipients' rights relating to Covered Code. If You +created one or more Modification(s), You may add your name as a +Contributor to the notice described in Exhibit A. If it is not +possible to put such notice in a particular Source Code file due to +its structure, then you must include such notice in a location (such +as a relevant directory file) where a user would be likely to look for +such a notice. You may choose to offer, and to charge a fee for, +warranty, support, indemnity or liability obligations to one or more +recipients of Covered Code. However, You may do so only on Your own +behalf, and not on behalf of the Initial Developer or any +Contributor. You must make it absolutely clear than any such warranty, +support, indemnity or liability obligation is offered by You alone, +and You hereby agree to indemnify the Initial Developer and every +Contributor for any liability incurred by the Initial Developer or +such Contributor as a result of warranty, support, indemnity or +liability terms You offer. + +3.6. Distribution of Executable Versions. +You may distribute Covered Code in Executable form only if the +requirements of Section 3.1-3.5 have been met for that Covered Code, +and if You include a notice stating that the Source Code version of +the Covered Code is available under the terms of this License, +including a description of how and where You have fulfilled the +obligations of Section 3.2. The notice must be conspicuously included +in any notice in an Executable version, related documentation or +collateral in which You describe recipients' rights relating to the +Covered Code. You may distribute the Executable version of Covered +Code under a license of Your choice, which may contain terms different +from this License, provided that You are in compliance with the terms +of this License and that the license for the Executable version does +not attempt to limit or alter the recipient's rights in the Source +Code version from the rights set forth in this License. If You +distribute the Executable version under a different license You must +make it absolutely clear that any terms which differ from this License +are offered by You alone, not by the Initial Developer or any +Contributor. You hereby agree to indemnify the Initial Developer and +every Contributor for any liability incurred by the Initial Developer +or such Contributor as a result of any such terms You offer. + +3.7. Larger Works. +You may create a Larger Work by combining Covered Code with other code +not governed by the terms of this License and distribute the Larger +Work as a single product. In such a case, You must make sure the +requirements of this License are fulfilled for the Covered Code. + +4. Inability to Comply Due to Statute or Regulation. +If it is impossible for You to comply with any of the terms of this +License with respect to some or all of the Covered Code due to statute +or regulation then You must: (a) comply with the terms of this License +to the maximum extent possible; and (b) describe the limitations and +the code they affect. Such description must be included in the LEGAL +file described in Section 3.4 and must be included with all +distributions of the Source Code. Except to the extent prohibited by +statute or regulation, such description must be sufficiently detailed +for a recipient of ordinary skill to be able to understand it. + +5. Application of this License. + +This License applies to code to which the Initial Developer has +attached the notice in Exhibit A, and to related Covered Code. + +6. CONNECTION TO MOZILLA PUBLIC LICENSE + +This Erlang License is a derivative work of the Mozilla Public +License, Version 1.0. It contains terms which differ from the Mozilla +Public License, Version 1.0. + +7. DISCLAIMER OF WARRANTY. + +COVERED CODE IS PROVIDED UNDER THIS LICENSE ON AN ``AS IS'' BASIS, +WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, +WITHOUT LIMITATION, WARRANTIES THAT THE COVERED CODE IS FREE OF +DEFECTS, MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE OR +NON-INFRINGING. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF +THE COVERED CODE IS WITH YOU. SHOULD ANY COVERED CODE PROVE DEFECTIVE +IN ANY RESPECT, YOU (NOT THE INITIAL DEVELOPER OR ANY OTHER +CONTRIBUTOR) ASSUME THE COST OF ANY NECESSARY SERVICING, REPAIR OR +CORRECTION. THIS DISCLAIMER OF WARRANTY CONSTITUTES AN ESSENTIAL PART +OF THIS LICENSE. NO USE OF ANY COVERED CODE IS AUTHORIZED HEREUNDER +EXCEPT UNDER THIS DISCLAIMER. + +8. TERMINATION. +This License and the rights granted hereunder will terminate +automatically if You fail to comply with terms herein and fail to cure +such breach within 30 days of becoming aware of the breach. All +sublicenses to the Covered Code which are properly granted shall +survive any termination of this License. Provisions which, by their +nature, must remain in effect beyond the termination of this License +shall survive. + +9. DISCLAIMER OF LIABILITY +Any utilization of Covered Code shall not cause the Initial Developer +or any Contributor to be liable for any damages (neither direct nor +indirect). + +10. MISCELLANEOUS +This License represents the complete agreement concerning the subject +matter hereof. If any provision is held to be unenforceable, such +provision shall be reformed only to the extent necessary to make it +enforceable. This License shall be construed by and in accordance with +the substantive laws of Sweden. Any dispute, controversy or claim +arising out of or relating to this License, or the breach, termination +or invalidity thereof, shall be subject to the exclusive jurisdiction +of Swedish courts, with the Stockholm City Court as the first +instance. + +EXHIBIT A. + +``The contents of this file are subject to the Erlang Public License, +Version 1.1, (the "License"); you may not use this file except in +compliance with the License. You should have received a copy of the +Erlang Public License along with this software. If not, it can be +retrieved via the world wide web at http://www.erlang.org/. + +Software distributed under the License is distributed on an "AS IS" +basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See +the License for the specific language governing rights and limitations +under the License. + +The Initial Developer of the Original Code is Ericsson Utvecklings AB. +Portions created by Ericsson are Copyright 1999, Ericsson Utvecklings +AB. All Rights Reserved.'' diff --git a/mod_pottymouth/deps/etbloom/README.md b/mod_pottymouth/deps/etbloom/README.md new file mode 100644 index 0000000..96c99bd --- /dev/null +++ b/mod_pottymouth/deps/etbloom/README.md @@ -0,0 +1,13 @@ +Erlang Bloom Filter +======= + +Based on Scalable Bloom Filters Paulo Sérgio Almeida, Carlos Baquero, Nuno Preguiça, David Hutchison +Information Processing Letters Volume 101, Issue 6, 31 March 2007, Pages 255-261 + +Provides scalable bloom filters that can grow indefinitely while +ensuring a desired maximum false positive probability. Also provides +standard partitioned bloom filters with a maximum capacity. Bit arrays +are dimensioned as a power of 2 to enable reusing hash values across +filters through bit operations. Double hashing is used (no need for +enhanced double hashing for partitioned bloom filters). + diff --git a/mod_pottymouth/deps/etbloom/rebar b/mod_pottymouth/deps/etbloom/rebar new file mode 100755 index 0000000000000000000000000000000000000000..97c77e1c5bb520805065c073af66d67cb49b648b GIT binary patch literal 141548 zcmY#Z)GsYA(of3F(@)JSQ%EgNF3Kz@;ZjxQQdLz{(9O#)&PdJ40WmW33Q9}30=$`7 zL>L$tI2ag`emn3LG+taO#K5pbj)8%jfq@}CwIsiwL@y~dF}F6dvOxNJ<^89RD!4y; za_gwP+OTx0n9x=xO+D5C6^)B^DjbI{aB@$n>1JqDCHfjE-Jx z+c;oqVDYn^7e(4_-C}ceL5;*A9^O!A!8@&Po)=6inkr;S{>46bTz9^M5Wzm zYT*5;m(*5A={@m%Ya-Y}Jcx4aF+)D_`+xZTs`;VrA*X zCV4HU=SB?MN(-08Tx;OhOI^lgx>Sq*oL|=D!%?nho;*{OKk+&_h{f8n=v^m@H~&WiB{J_-q6!g zWghk+*X~rE{8Q2=;w5=^V&kg<-sjyjPbvBo+p-*fcH&Uf`D2$NUI+KGZtYvz*`PIr zFGKWtfg1bf*y-ypb+%_{?U?s&p4;yHYdmiwG}*2>y|_|+PSpDs(}SCR!D4T3No158 zmUO2ba(jLApVhX``9^btubx@4ZNaMaE(UG$lxZc-`<_T?hN>CwDqa$DLiCPuYtOpu zqpZt51e6(>hcxWUT~Ze$zH;>qsm+)7z393(VXuYQwbT?J?J2RWYb{pwf8440D$ect zok(5&Y3_3crX_vbbuuWAOK6II-xRS!n`BnK-#*KDOX-$AAJOQmVQNvQGI<_{C-8Fj zd`)-w&AKHm%%FwsepcsHF^@|#>iHka%;R&L5^bHLRHSmQqwUGGmU$AZo#v}9aa7Cc zFzION7Gi&1DzQqrQs@15Po>#1-`P#q30*vr=R4(>i`o@+u8RxAtfVe3x*HY3#2uoS zYrq=0B;=-oLFJ^m?|#kB$Tyk#)@u4I-_Z1?=c{V6ukW0BZ{~4-_V}tf`Mma(y8^X@ zZ#r(OQ+_$&L&L-pZlQ-MkHi_-CjLFn%2+W;Ye_4kXOH!xI}JyU-tXzQb4+>eVdmwR z9-FGOVY!B_^Gk*5ZHBRGNewM7N>&Fr9v)J;?H|3wv%H=PdeA z{PFOK=SAP27fs^na(U+A@QrOxv)j#ukKVfdv|H{Vb5G#o=@wzn`YA1z>7OEI?G^Yl zXSa%nPmX|_jH1vA`9BsmqPZd=AI{D&lbvlQYrI!THtqc^y;ze=(U#x1lh+;mzCKlq zv-jzy>yA5QP8O*=RSzuC@_ACH#3!{}hH0N-)7}_!lUKfCdsa?znDQf7MP|{yFQ-+G zTP`mYp7CkY9G_c?2l*baiS~8dz|mEwm)Yt#>9>Wc$dP>$j!Pe@yQ%0AR+4~CY8 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 Y9#%F`%gv6#jzLY3fuTX1iGhIu0Hqx}ng9R* literal 0 HcmV?d00001 diff --git a/mod_pottymouth/deps/etbloom/rebar.config b/mod_pottymouth/deps/etbloom/rebar.config new file mode 100644 index 0000000..72ab93b --- /dev/null +++ b/mod_pottymouth/deps/etbloom/rebar.config @@ -0,0 +1,5 @@ +{erl_opts, [warnings_as_errors, debug_info]}. +{deps, [ + {bitarray, "0.1", + {git, "https://github.com/madglory/bitarray", {branch, "master"}}} +]}. diff --git a/mod_pottymouth/deps/etbloom/src/etbloom.app.src b/mod_pottymouth/deps/etbloom/src/etbloom.app.src new file mode 100644 index 0000000..bed1479 --- /dev/null +++ b/mod_pottymouth/deps/etbloom/src/etbloom.app.src @@ -0,0 +1,37 @@ +%% The contents of this file are subject to the Erlang Public License, +%% Version 1.1, (the "License"); you may not use this file except in +%% compliance with the License. You should have received a copy of the +%% Erlang Public License along with this software. If not, it can be +%% retrieved via the world wide web at http://www.erlang.org/. +%% +%% Software distributed under the License is distributed on an "AS IS" +%% basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See +%% the License for the specific language governing rights and limitations +%% under the License. +%% +%% {application, etbloom, [ +%% {description, "Erlang Bloom"}, +%% {registered, []}, +%% {applications, [ +%% kernel, +%% stdlib +%% ]}, +%% {env, []} +%% ]}. +{application, etbloom, + [{description, "Erlang Bloom"}, + {vsn, "1.1.0"}, + {registered, []}, + {mod, { etbloom_app, []}}, + {applications, + [kernel, + stdlib, + bitarray + ]}, + {env,[]}, + {modules, []}, + + {maintainers, []}, + {licenses, []}, + {links, []} + ]}. diff --git a/mod_pottymouth/src/etbloom.erl b/mod_pottymouth/deps/etbloom/src/etbloom.erl similarity index 96% rename from mod_pottymouth/src/etbloom.erl rename to mod_pottymouth/deps/etbloom/src/etbloom.erl index 113a117..d0bd148 100644 --- a/mod_pottymouth/src/etbloom.erl +++ b/mod_pottymouth/deps/etbloom/src/etbloom.erl @@ -74,7 +74,7 @@ bloom(Mode, Dim, E) -> M = 1 bsl Mb, N = trunc(log(1 - P) / log(1 - 1 / M)), #bloom{e = E, n = N, mb = Mb, size = 0, - a = [hipe_bifs:bitarray(1 bsl Mb, false) || _ <- lists:seq(1, K)]}. + a = [bitarray:new(1 bsl Mb, false) || _ <- lists:seq(1, K)]}. log2(X) -> log(X) / log(2). @@ -136,7 +136,7 @@ masked_pair(Mask, X, Y) -> {X band Mask, Y band Mask}. all_set(_Mask, _I1, _I, []) -> true; all_set(Mask, I1, I, [H | T]) -> - case hipe_bifs:bitarray_sub(H, I) of + case bitarray:sub(H, I) of true -> all_set(Mask, I1, (I + I1) band Mask, T); false -> false end. @@ -170,5 +170,5 @@ hash_add(Hashes, #bloom{mb = Mb, a = A, size = Size} = B) -> set_bits(_Mask, _I1, _I, [], Acc) -> lists:reverse(Acc); set_bits(Mask, I1, I, [H | T], Acc) -> - set_bits(Mask, I1, (I + I1) band Mask, T, [hipe_bifs:bitarray_update(H, I, true) | Acc]). + set_bits(Mask, I1, (I + I1) band Mask, T, [bitarray:update(H, I, true) | Acc]). diff --git a/mod_pottymouth/deps/etbloom/test/etbloom_tests.erl b/mod_pottymouth/deps/etbloom/test/etbloom_tests.erl new file mode 100644 index 0000000..437e354 --- /dev/null +++ b/mod_pottymouth/deps/etbloom/test/etbloom_tests.erl @@ -0,0 +1,20 @@ +%% The contents of this file are subject to the Erlang Public License, +%% Version 1.1, (the "License"); you may not use this file except in +%% compliance with the License. You should have received a copy of the +%% Erlang Public License along with this software. If not, it can be +%% retrieved via the world wide web at http://www.erlang.org/. +%% +%% Software distributed under the License is distributed on an "AS IS" +%% basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See +%% the License for the specific language governing rights and limitations +%% under the License. +%% +-module(etbloom_tests). +-author("volodymyr.kyrychenko@strikead.com"). +-include_lib("eunit/include/eunit.hrl"). + +bloom_test() -> + Values = [{xxx, binary_to_atom(base64:encode(crypto:strong_rand_bytes(10)), utf8)} || _ <- lists:seq(1, 5000)], + Bloom = etbloom:bloom(Values), + ?assert(lists:all(fun(X) -> etbloom:member(X, Bloom) end, Values)), + ?assertNot(etbloom:member(wtf, Bloom)). diff --git a/mod_pottymouth/src/mod_pottymouth.erl b/mod_pottymouth/src/mod_pottymouth.erl index 0e8bc6f..7c31534 100644 --- a/mod_pottymouth/src/mod_pottymouth.erl +++ b/mod_pottymouth/src/mod_pottymouth.erl @@ -2,27 +2,27 @@ -behaviour(gen_mod). +-include("ejabberd.hrl"). -include("logger.hrl"). +-include("xmpp.hrl"). -export([ start/2, stop/1, on_filter_packet/1, mod_opt_type/1, - depends/2 + depends/2, + reload/3 ]). --include("ejabberd.hrl"). - -import(bloom_gen_server, [start/0, stop/0, member/1]). -import(nomalize_leet_gen_server, [normalize/1]). -getMessageLang(Attrs) -> - LangAttr = lists:keyfind(<<"lang">>, 1, Attrs), +getMessageLang(Msg) -> + LangAttr = xmpp:get_lang(Msg), if - LangAttr -> - {<<"lang">>, LangBin} = LangAttr, - Lang = list_to_atom(binary_to_list(LangBin)); + (LangAttr /= <<>>) -> + Lang = list_to_atom(binary_to_list(LangAttr)); true -> Lang = default end, @@ -43,28 +43,13 @@ censorWord({Lang, Word} = _MessageTerm) -> filterWords(L) -> lists:map(fun censorWord/1, L). -filterMessageText(MessageAttrs, MessageText) -> - Lang = getMessageLang(MessageAttrs), +filterMessageText(Lang, MessageText) -> % we want to token-ize utf8 'words' MessageWords = string:tokens(unicode:characters_to_list(MessageText, utf8), " "), MessageTerms = [{Lang, Word} || Word <- MessageWords], % we get back bytewise format terms (rather than utf8) string:join(filterWords(MessageTerms), " "). - -filterMessageBodyElements([{xmlel, <<"body">>, BodyAttr, [{xmlcdata, MessageText}]} = _H|T], MessageElements) -> - FilteredMessageWords = binary:list_to_bin(filterMessageText(BodyAttr, binary:bin_to_list(MessageText))), - FilteredBody = {xmlel, <<"body">>, BodyAttr, [{xmlcdata, FilteredMessageWords}]}, - filterMessageBodyElements(T, lists:append(MessageElements, [FilteredBody])); - -filterMessageBodyElements([H|T], MessageElements) -> - % skip this tag, but pass it on as processed - filterMessageBodyElements(T, lists:append(MessageElements, [H])); - -filterMessageBodyElements([], MessageElements) -> - MessageElements. - - start(_Host, Opts) -> Blacklists = gen_mod:get_opt(blacklists, Opts, fun(A) -> A end, []), lists:map(fun bloom_gen_server:start/1, Blacklists), @@ -82,14 +67,28 @@ stop(_Host) -> on_filter_packet(drop) -> drop; -on_filter_packet({_From, _To, {xmlel, <<"message">>, _Attrs, Els} = _Packet} = _Msg) -> - FilteredEls = filterMessageBodyElements(Els, []), - {_From, _To, {xmlel, <<"message">>, _Attrs, FilteredEls}}; on_filter_packet(Msg) -> - % Handle the generic case (any packet that isn't a message with a body). - Msg. + Type = xmpp:get_type(Msg), + if + (Type == chat) orelse (Type == groupchat) -> + BodyText = xmpp:get_text(Msg#message.body), + if + (BodyText /= <<>>) -> + Lang = getMessageLang(Msg), + FilteredMessageWords = binary:list_to_bin(filterMessageText(Lang, binary:bin_to_list(BodyText))), + [BodyObject|_] = Msg#message.body, + NewBodyObject = setelement(3, BodyObject, FilteredMessageWords), + NewMsg = Msg#message{body = [NewBodyObject]}, + NewMsg; + true -> + Msg + end; + true -> + Msg + end. mod_opt_type(blacklists) -> fun (A) when is_list(A) -> A end; mod_opt_type(charmaps) -> fun (A) when is_list(A) -> A end; mod_opt_type(_) -> [blacklists, charmaps]. depends(_Host, _Opts) -> []. +reload(_Host, _NewOpts, _OldOpts) -> ok.