Hi all, fixed in assp 2.8.2 *SPAM-Eliminator* build 26299
- If the ASSP_OCR plugin was used and two connections in the same SMTP-worker requested the ASSP_OCR plugin at the same time, it was possible, that the first connection was working fine - but the other connection got unexpected data from the first connection. - If assp.pl was localy updated to a newer version and autoupdate was enabled, it was possible that later the latest SVN-version was downloaded and installed - even the current running version was higher. - If the module BerkeleyDB was installed and HMMusesBDB was enabled but useDB4IntCaches was disabled - the hmmDB was published by the rebuildSpamDB module but removed and so not used by assp. - The DMARC check ignored the 'np' and 'psd' tag in DMARC records. This may caused too many (e.g. useless) DNS-DMARC queries. The DMARC 'fo' tag was some times wrong parsed. An 'pct' tag no longer prevents DMARC processing - instead DMARC is processed the same way, like the 't' tag is set to 'y' The code to process DMARC got major changes! ASSP follows the RFC9989 fully (as long as this makes sense in terms of assp)! changed: - DMARC processing now follows the RFC9989. - The 'verbose' output of the DMARC processing is enhanced. - To prevent DMARC DNS-DDoS attacks, a DMARC-Record-Cache is implemented. An cache entry is removed, if the TTL for the DMARC record is outdated. The result of not existing (NXDOMAIN,NOERROR) DMARC records is cached for 5 minutes. - The maximum count of email addresses used for the rua and ruf tag is limited to the first four addresses each. - The DMARC check no longer fails per default, if any of the SPF or DKIM rules passed. This behavior can be changed: our $followDMARC_RFC = 3; # (0/1/2/3) follow the RFC9989 section -5.3.5 in case the related 'adkim' or 'aspf' author policy is set to strict 's' # assp fully follows the RFC9989 section -5.3.5 in case the related 'adkim' or 'aspf' author policy is set to relax 'r' or is not defined # means: in case this setting is ignored # processing is done like a setting of 3 (full RFC9989 conform) # default value is 3 - means, assp fully follows RFC9989 section -5.3.5 # rfc9989 section-5.3.5 says: if ANY of SPF or DKIM passes, then DMARC passes - regardless of any other DMARC record definition # # 0 - do not follow - DMARC fails, if any of SPF or DKIM failed (even the other passed) # 1 - follow for DKIM - DMARC passes, if DKIM passed and SPF failed # 2 - follow for SPF - DMARC passes, if SPF passed and DKIM failed # 3 - follow for SPF and DKIM - DMARC passes, if any of SPF or DKIM passed (full RFC9989 conform) # # The "strict mode" value 0 is suitable for most systems (when no third party is involved) and was the default behavior # in all assp versions before build 26286 ! # If you want or need to restore the previous behavior after an assp upgrade, change this value to 0 here - or add the outcommended line # $main::followDMARC_RFC = 0; # to the sub set in the module lib/CorrectASSPcfg.pm to make the change permanent. # It is also possible to add the option --followDMARC_RFC:=0 to the start commandline # # This setting may become important when organizations are using a third party system to send mail on their behalf and # have implemented DKIM to authorize the email from those servers. This is common in ticketing and customer service saas systems. # In such case, a value of 1 or 3 should be used. # If DKIM signing can't be done (give the privat key out of hands) on such a third party system, but the SPF-record of the sending domain # covers the sending third party IP's, a value of 2 or 3 should be used added: - ASSP_OCR 3.02 now has an option to define an executable to extract text from PDF attachments. 'ASSP_OCRPDFToText','executable used to extract text from pdf files' 'If defined, this executable will be called to extract text from pdf files. The defined commandline will be executed in a shell session! If not defined (empty / default), the plugin will try to find the "pdftotext" executable in the system/users search path and will call it (using the -q switch). If the full path (no whitespaces allowed) to the executable is defined, it will be used as is. If only the name is defined, the plugin will try to find the executable in the system search path. If no executable can be found and called or this parameter is set to NOPDFTOTEXT, the modules PDF::OCR2 or PDF::OCR::Thorough will be used to extract the text from pdf files. If commandline parameters are required, they have to be defined as usual. The case sensitive literal PDFFILE will be replaced by the pdf filename. The case sensitive literal TXTOUTFILE will be replaced by the output filename (text file). If any literal is used, BOTH have to be defined! If the literals PDFFILE and TXTOUTFILE are not used in the commandline, the pdf filename and the output filename will be quoted and appended in this order to the defined commandline. for example: your_own_pdftotext_exec -q --any_switch_you_need PDFFILE TXTOUTFILE or if you want to use timeout (e.g. to prevent blocking): timeout -k 5 15 /full/path/to/pdftotext_exec -q --any_switch_you_need PDFFILE TXTOUTFILE or if you want to use your own shellscript or command: your_shell_script (e.g.)your_shell_script --any_switch_you_need -i PDFFILE -o TXTOUTFILE or if you want to use an apache-tika servers REST API: curl -s -f --connect-timeout 5 -m 15 -T PDFFILE -o TXTOUTFILE http://localhost:9998/tika/text # works with tika 4.1.0 curl -s -f --connect-timeout 5 -m 15 -T PDFFILE http://localhost:9998/tika | html2text -utf8 -nobs -o TXTOUTFILE # works with tika 2.x up to 3.3.3 hint: instead of htm2text, you may use lynx or pandoc or another tool of your choice to convert the resulting HTML-output of tika to plain UTF8 text The output format of the tika-server depends on the used endpoint (/tika , /tika/text), the tika-server configuration and the used tika-server version. If nothing (empty) is defined here, the following commandline will be internaly used: /WHERE/IT/IS/FOUND/pdftotext -q PDFFILE TXTOUTFILE Notice: if multiple executables are used in the commandline (e.g. using pipes or timeout), only the first one will be checked of its correctness! Executables that are not located in PATH, must be defined using their full path! Make sure, the called executable will not block in any case (e.g. bad PDF files) - because this will lead into stucking workers! Do NOT define any redirection for STDOUT and STDERR at the end of the commandline! If required, the plugin will do the redirection! Thomas
smime.p7s
Description: S/MIME cryptographic signature
_______________________________________________ Assp-test mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/assp-test
