Majordomo digest fails to locate config_parse.pl

kristian

Verified User
Joined
Nov 4, 2005
Messages
436
Location
Norway
Good evening!

Majordomo is bouncing mail that, from what I can tell, are sent to digest addresses. This is the bounce message:

Code:
This message was created automatically by mail delivery software.

A message that you sent could not be delivered to one or more of its
recipients. This is a permanent error. The following address(es) failed:

pipe to |/etc/virtual/majordomo/wrapper digest -r -C -c 
/etc/virtual/<domain redacted>/majordomo/majordomo.cf -l 
vandrerledere-digest vandrerledere-digest-outgoing
generated by vandrerledere-out@<domain redacted>
local delivery failed

The following text was generated during the delivery attempt:

------ pipe to |/etc/virtual/majordomo/wrapper digest -r -C -c 
/etc/virtual/<domain redacted>/majordomo/majordomo.cf -l 
vandrerledere-digest vandrerledere-digest-outgoing
generated by vandrerledere-out@<domain redacted> ------

$* is no longer supported at /etc/virtual/majordomo/digest line 305.
Can't locate config_parse.pl in @INC (@INC contains: /etc/perl 
/usr/local/lib/x86_64-linux-gnu/perl/5.24.1 /usr/local/share/perl/5.24.1 
/usr/lib/x86_64-linux-gnu/perl5/5.24 /usr/share/perl5 
/usr/lib/x86_64-linux-gnu/perl/5.24 /usr/share/perl/5.24 
/usr/local/lib/site_perl /usr/lib/x86_64-linux-gnu/perl-base) at 
/etc/virtual/majordomo/digest line 333.

From what I understand, the message aboout "$* is no longer supported" is just a warning, and not relevant to the actual problem.

The main problem is the missing config_parse.pl. The file actually comes with the Majordomo code itself, and exists at /etc/virtual/majordomo/config_parse.pl.

It looks like @INC should either contain one more directory (/etc/virtual/majordomo/), or the /etc/virtual/majordomo/config_parse.pl should be copied to a path that already is in @INC during installation of Majordomo.

This is on Debian 9.

What would be the best way of resolving this?
 
I tried symlinking the config_parse.pl into a directory in @INC like this:

Code:
ln -s /etc/virtual/majordomo/config_parse.pl /usr/local/lib/site_perl/

However, the same error appeared. Not sure if I did something wrong, or if something must be restarted for it to take effect.
 
Just to be sure, just created a ticket #27882 referring to this thread as well. Will report back here as well if they respond with a solution.
 
Thanks! coincidentally, today I also reported to DirectAdmin about this problem :) hopefully quick response.
 
Unfortunately we never got this solved. We had/have a ticket open with DA about it as well, but we haven't prioritized it. It would be nice to get it solved, but it would be even better to replace Majordomo with something more modern. :)
 
Just got the standard:

"Unfortunately, we can no longer offer support on old lifetime licenses. These licenses were very low in price and came with a guarantee of updates for life (which you will continue to get), but we no longer have the resources to offer free and unlimited support on them."

Back from them which is pretty weird because it feels like a bug with Debian and DirectAdmin. Now on every email sent to any of the mailinglist the main DA user for that domain gets an error message. Hope they will solve it for one of you guys.
 
This is really an issue with majordomo, it is ancient and relies on an equally ancient perl syntax. The error is due to the fact that the version of perl you are using is too new for that version of majordomo and is complaining it is is using a deprecated variable. Personally I would look at migrating to mailman, which is not exactly easy but it offers way better support for delivering emails to certain providers. A lot providers years ago blocked or treated as spam any messages from a majordomo where the from field was one of the users.

This "error" is not something I would expect DA to fix, since they didn't write majordomo and the changes required would be extensive. The "$*" setting was used in majordomo to tell perl that when doing regular expressions, treat the matches as multi-lines. Since it was deprecated, the changes require that every single regular expression be modified to include the /m. I was hoping that they would have migrated to mailman or even mlmmj by now. Majordomo is so out of date now.
 
Thanks for the thorough explanation @toml.

Since Majordomo is supplied as default and only choice with DirectAdmin and also still advertised as a feature:
Screenshot 2020-07-14 at 08.56.55.png
a fix to at least suppress that email every time a mailing list is used would be greatly appreciated.

Agree completely on the migration to something more modern by the way, can't wait for that to to happen. Weirdly enough I didn't see it yet on the feature request page so I created a feature request to migrate Majordomo to Mailman. Feel free to add any suggestions and your votes there as well.
 
Last edited:
In my CentOS 8, I encountered the same.

I manually solved it by
cd /usr/local/share/perl5/
ln -s /etc/virtual/majordomo/config_parse.pl config_parse.pl
ln -s /etc/virtual/majordomo/majordomo.pl majordomo.pl
ln -s /etc/virtual/majordomo/shlock.pl shlock.pl
 
Update:
I've confirmed the fix from @ccto appears to work (thanks!)

I've also found that adding the code
Code:
use lib '.';
to the top of the template
Code:
/usr/local/directadmin/data/templates/majordomo.cf
is a less intrusive solution, so that other non-majordomo scripts wouldn't be affected. After the template has the new line, a simply re-save of the list's majordomo settings should update /etc/virtual/domain.com/majordomo/majordomo.cf accordingly.

The pre-release binaries have the updated template should anyway want it now, or manually updating the data/templates/majordomo.cf to add that 1 line at the top would work too (next DA release will overwrite it with the same). Again, you must save the list settings to have it update the domain's majordomo.cf file.

Versions entry for the change:

John
 
Wow very nice to see you active again on the forum John/@DirectAdmin Support, hope this is a start of things to come and more of these bugs posted through the forum by volunteers will be fixed. So nice to finally see this one fixed at least, thanks again!
 
Back
Top