PMG Error: Parameter Verification Failed (400)

dlhendup

New Member
Nov 9, 2020
2
0
1
40
I have a PMG 5.2.7 installation, cannot upgrade to the newest version due to some compatibility issues.

Anyway, once in a while, I have mails in quarantine that I cannot view at all, throwing a "Parameter Verification Failed (400)" message. When I click on the mail, in chrome console I get this message: {pmail: "value does not match the regex pattern"}.

Looks like a malformed message or a bug in PMG that prevents it from decoding it properly.

Anyway, is there a manual way from CLI/File System to delete the particular mail from quarantine?
 
you can check the quarantine also via `pmgsh` - however this also verifies the parameters against the api..

without knowing for which e-mail address the mail was put in quarantine (this is what the 'pmail' parameter is for) it's not really possible to analyze this further...

just for completeness sake - consider upgrading ASAP - PMG 5.2 has been EOL for quite a long while now - you're missing security updates (and bugfixes - maybe even for your problem...)

I hope this helps!
 
This is the recipient email: ahztmm/k8sn6n2fubjijmdg==_1112375229161_9wdp8svueeqdojcxhdum4q==@in.constantcontact.com

PMG is in an openvz container, on a RHEL6 host node. PMG 6.X does not seem to work on it.
 
This is the recipient email: ahztmm/k8sn6n2fubjijmdg==_1112375229161_9wdp8svueeqdojcxhdum4q==@in.constantcontact.com
here the slash '/' is the not allowed character - is that an actual mailbox - and if - does it need to have a slash in the localpart?
(while the relevant RFC are quite liberal in the characters they allow as localpart, I've never seen a system where a regular mailbox contains a slash)

The issue here is that a slash is also used as path-separator in the API - and encoding this in a stable manner is quite tricky - also I'm inclined not to allow even more addresses as valid, unless there is a good reason and a valid use case for such an address..

If this was a spam email to a bogus e-mail-address I would suggest to enable recipient verfication - then postfix would simply deny such a request.

regarding the message which is currently in the quarantine - it will get removed from there after it expires (has been in the quarantine longer than your configured quarantine lifetime
 
here the slash '/' is the not allowed character - is that an actual mailbox - and if - does it need to have a slash in the localpart?
(while the relevant RFC are quite liberal in the characters they allow as localpart, I've never seen a system where a regular mailbox contains a slash)

The issue here is that a slash is also used as path-separator in the API - and encoding this in a stable manner is quite tricky - also I'm inclined not to allow even more addresses as valid, unless there is a good reason and a valid use case for such an address..

If this was a spam email to a bogus e-mail-address I would suggest to enable recipient verfication - then postfix would simply deny such a request.

regarding the message which is currently in the quarantine - it will get removed from there after it expires (has been in the quarantine longer than your configured quarantine lifetime
Having same issue here, for bouncing mails or idmails i got them stuck and can not remove them:


1617917245562.png


Also I can not get id from those mails with:

Code:
/usr/bin/pmgsh get /quarantine/spam  --starttime 1617306350 --endtime 1617911150 -pmail a0/a5bkafr/65/eoy4pvjng==_1131923575461_fd4grghseeuufdsuupqcsg==@in.constantcontact.com  2>/dev/null
 
Last edited:
Having same issue here, for bouncing mails or idmails i got them stuck and can not remove them:
please post `pmgversion -v`
(and make sure you've installed the latest updates)

I hope this helps!
 
please post `pmgversion -v`
(and make sure you've installed the latest updates)

I hope this helps!


Code:
proxmox-mailgateway-container: 6.2-2 (API: 6.2-6/3e362107, running kernel: 5.3.10-1-pve)
pmg-api: 6.2-6
pmg-gui: 2.2-2
clamav-daemon: 0.102.4+dfsg-0+deb10u1
libarchive-perl: 3.3.3-1
libjs-extjs: 6.0.1-10
libjs-framework7: 4.4.7-1
libpve-apiclient-perl: 3.0-3
libpve-common-perl: 6.2-2
libpve-http-server-perl: 3.0-6
libxdgmime-perl: 0.01-5
lvm2: not correctly installed
pmg-docs: 6.2-2
pmg-log-tracker: 2.1.7-1
postgresql-11: 11.9-0+deb10u1
proxmox-mini-journalreader: 1.1-1
proxmox-spamassassin: 3.4.4-2
proxmox-widget-toolkit: 2.3-2
pve-xtermjs: 4.3.0-1
 
Glad that worked - please mark the thread as 'SOLVED' - this helps others who also run into similar issues
Thanks!