-
Notifications
You must be signed in to change notification settings - Fork 20
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Class 'DKIM_Verify' not found #12
Comments
Thank you for the report, thanks to the recent commits of Takika you should be able to include a config.inc.php in the plugin root folder (see config.inc.php.dist) to set this option globally. Also, please make sure you have all dependencies installed. The DKIM_Verify class is provided by the angrychimp/php-dkim package, please check whether this package is available in <rc_webroot>/vendor |
Yes, I found config.inc.php.dist, but options without description. Dependencies is installed. Module work's properly, but with exceptions. |
Sorry for asking, but is your report about the missing DKIM_Verify class or about how to always disable the internal DKIM verifier? |
Both. |
Which php version are you using? I will look at adding some docs about the configuration |
As I see I forgot to call load_config() in init() so config.inc.php never loaded. |
[k0ste@mx ~]$ php --version
PHP 7.0.7 (cli) (built: May 25 2016 18:40:26) ( NTS )
Copyright (c) 1997-2016 The PHP Group
Zend Engine v3.0.0, Copyright (c) 1998-2016 Zend Technologies
[k0ste@mx ~]$ php -m
[PHP Modules]
Core
ctype
curl
date
dom
exif
fileinfo
filter
gettext
hash
iconv
imap
intl
json
ldap
libxml
mbstring
mcrypt
mysqli
mysqlnd
openssl
pcntl
pcre
PDO
pdo_pgsql
pgsql
Phar
posix
readline
Reflection
session
SimpleXML
SPL
standard
tokenizer
xml
xmlreader
xmlwriter
zlib |
@Takika, thanks. Was just looking at that indeed. But it also seems there are still places not checking $this->override when using config variables. E.g. line 370, did you do that on purpose? @k0ste, could it be an autoloading issue with php7? What happens if you explictly include the DKIM class? At line 375: |
If you want to disable a config option and hard config it:
If you do this the use_fallback_verifier config option won't show in Preferences/Authentication Status. |
@pimlie : |
Yeah, work fine. |
@Takika, there still seems to be an issue. I expect that when I set: the internal verifier is always used. But it isn't, probably this is because $config only sets the default value and I am using an already configured account. Shouldn't we enforce thus overwrite any pre-existing config values for dont_override variables? |
@k0ste, could you try to change line 371 to It could be that the vendor autoloader is not loaded because the Crypt_RSA class already exists. |
@pimlie, same errors. |
@k0ste, unfortunately I am unable to reproduce this error. I have checked with php 7.0.7 and my configuration is able to load DKIM_Verify without problems. If you could debug the problem yourself a bit more that would be appreciated. I have pushed a new config.inc.php.dist with better descriptions |
@Takika, ok it seems this is a problem within RC. They only check dont_override in rcube_config::set_user_prefs but when that method is called the plugins have not been initted yet it seems so dont_override from the plugin configs are ignored. @k0ste, I will close this issue as there is nothing I can do atm to help you. Let me know if you have more information |
@pimlie : If you check the dont_override when you show the preferences and hide the option to change an admin only setting we don't need the check in set_user_prefs. |
@Takika, why not? I want to be able to change the admin only settings regardless of the preferences of the user and whether the user already exists or not. Those admin only settings should always be applied, which without a dont_override implementation for userprefs wont be available. We could implement our own configuration file check, but I actually think we should either honor the fact that dont_override should be set in global config (not plugin config) or the rcube_config class should implement dont_override for plugin configurations as well. I already made a pull request for the last one: roundcube/roundcubemail#5303 |
@pimlie : You can see how the main roundcube handle the dont_override settings, eg.: |
Same issue for me in:
This didn't work as DKIM Verifier still gets called further down in the script throwing the same error.
This fixed it for me. I manually copied angrychimp over into the vendor directory then included it on top of authress_status.php. |
Hello. Plugin works okay. But if in Folder "bad" message, have this error (internal server error in Roundcube):
Error:
It's easy to reproduce, catch this on messages from any message from my domain...
Just send message from me to me via roundcube or thunderbird.
Example message:
Env:
plugin version 0.2.5
roundcube 1.2 stable
Resolved by:
Use internal DKIM verifier (if signature found but no auth. results header) = Disabled.
How I can set this option globally?
The text was updated successfully, but these errors were encountered: