Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

fatal: bad numerical configuration: postscreen_client_connection_count_limit =

312 views
Skip to first unread message

John Fawcett

unread,
Dec 1, 2010, 6:34:31 PM12/1/10
to
I just upgraded to postfix-2.8-20101130 from postfix-2.8-20101108

I am seeing the following being logged

Dec 2 00:16:26 rosalia postfix/postscreen[8147]: fatal: bad numerical
configuration: postscreen_client_connection_count_limit =
Dec 2 00:16:27 rosalia postfix/master[5648]: warning: process
/usr/lib/postfix/postscreen pid 8147 exit status 1
Dec 2 00:16:27 rosalia postfix/master[5648]: warning:
/usr/lib/postfix/postscreen: bad command startup -- throttling

Here is the postconf output for the mentioned parameter (no change from
default)

postconf postscreen_client_connection_count_limit
output:
postscreen_client_connection_count_limit =
$smtpd_client_connection_count_limit

postconf smtpd_client_connection_count_limit
output:
smtpd_client_connection_count_limit = 50

If I explicitly put this in the main.cf
postscreen_client_connection_count_limit = 50

and restart postfix, do not get the error message.

John

Noel Jones

unread,
Dec 1, 2010, 6:55:41 PM12/1/10
to


I am unable to reproduce this. Maybe there was some
unprintable garbage in your first main.cf entry? If you try
it again do you get the same results?


-- Noel Jones

John Fawcett

unread,
Dec 1, 2010, 7:14:49 PM12/1/10
to
On 02/12/10 00:55, Noel Jones wrote:
> On 12/1/2010 5:34 PM, John Fawcett wrote:
>> I just upgraded to postfix-2.8-20101130 from postfix-2.8-20101108
>>
>> I am seeing the following being logged
>>
>> Dec 2 00:16:26 rosalia postfix/postscreen[8147]: fatal: bad numerical
>> configuration: postscreen_client_connection_count_limit =
>> Dec 2 00:16:27 rosalia postfix/master[5648]: warning: process
>> /usr/lib/postfix/postscreen pid 8147 exit status 1
>> Dec 2 00:16:27 rosalia postfix/master[5648]: warning:
>> /usr/lib/postfix/postscreen: bad command startup -- throttling
>>
>
>
> I am unable to reproduce this. Maybe there was some unprintable
> garbage in your first main.cf entry? If you try it again do you get
> the same results?
>
>
> -- Noel Jones
Hi Noel
I confirm I can reproduce it again. The problem happens when:

- I don't set values for postscreen_client_connection_count_limit and
smtpd_client_connection_count_limit in main.cf (so defaults are used)

OR

- I set postscreen_client_connection_count_limit =
$smtpd_client_connection_count_limit in main.cf and do not set a value
for smtpd_client_connection_count_limit in main.cf (so default is used)

Seems that postscreen_client_connection_count_limit does not want to be
initialized from the default value of smtpd_client_connection_count_limit.

John

John Fawcett

unread,
Dec 1, 2010, 7:38:10 PM12/1/10
to
On 02/12/10 01:14, John Fawcett wrote:
> I just upgraded to postfix-2.8-20101130 from postfix-2.8-20101108
>>> I am seeing the following being logged
>>>
>>> Dec 2 00:16:26 rosalia postfix/postscreen[8147]: fatal: bad numerical
>>> configuration: postscreen_client_connection_count_limit =
>>> Dec 2 00:16:27 rosalia postfix/master[5648]: warning: process
>>> /usr/lib/postfix/postscreen pid 8147 exit status 1
>>> Dec 2 00:16:27 rosalia postfix/master[5648]: warning:
>>> /usr/lib/postfix/postscreen: bad command startup -- throttling
>>>
>>>
this patch seems to fix it, though maybe someone who knows more about
how postscreen initializes parameters from default values of other
parameters (via $parm_name) should check that it is what is needed.

--- postscreen.c.orig 2010-12-02 01:24:25.000000000 +0100
+++ postscreen.c 2010-12-02 01:29:23.000000000 +0100
@@ -301,6 +301,7 @@
* Configuration parameters.
*/
int var_proc_limit;
+int var_smtpd_cconn_limit;
char *var_smtpd_service;
char *var_smtpd_banner;
char *var_smtpd_forbid_cmds;
@@ -864,6 +865,7 @@
};
static const CONFIG_INT_TABLE int_table[] = {
VAR_PROC_LIMIT, DEF_PROC_LIMIT, &var_proc_limit, 1, 0,
+ VAR_SMTPD_CCONN_LIMIT, DEF_SMTPD_CCONN_LIMIT,
&var_smtpd_cconn_limit, 0, 0,
VAR_PS_DNSBL_THRESH, DEF_PS_DNSBL_THRESH, &var_ps_dnsbl_thresh, 0, 0,
VAR_PS_CMD_COUNT, DEF_PS_CMD_COUNT, &var_ps_cmd_count, 1, 0,
0,

Wietse Venema

unread,
Dec 1, 2010, 7:45:03 PM12/1/10
to
John Fawcett:

> Seems that postscreen_client_connection_count_limit does not want to be
> initialized from the default value of smtpd_client_connection_count_limit.

Confirmed. I have two machines with postscreen. One has
smtpd_client_connection_count_limit in main.cf, and the other has
postscreen_client_connection_count_limit in main.cf. None had
both parameters left at their defaults.

Wietse

*** /var/tmp/postfix-2.8-20101130/src/postscreen/postscreen.c Tue Nov 30 17:42:19 2010
--- src/postscreen/postscreen.c Wed Dec 1 19:38:19 2010
***************
*** 351,356 ****
--- 351,357 ----
int var_ps_cmd_count;
char *var_ps_cmd_time;

+ int var_smtpd_cconn_limit;
int var_ps_cconn_limit;

/*
***************
*** 866,871 ****
--- 867,873 ----


VAR_PROC_LIMIT, DEF_PROC_LIMIT, &var_proc_limit, 1, 0,

VAR_PS_DNSBL_THRESH, DEF_PS_DNSBL_THRESH, &var_ps_dnsbl_thresh, 0, 0,
VAR_PS_CMD_COUNT, DEF_PS_CMD_COUNT, &var_ps_cmd_count, 1, 0,
+ VAR_SMTPD_CCONN_LIMIT, DEF_SMTPD_CCONN_LIMIT, &var_smtpd_cconn_limit, 0, 0,

0,
};
static const CONFIG_NINT_TABLE nint_table[] = {

Victor Duchovni

unread,
Dec 1, 2010, 7:45:07 PM12/1/10
to
On Thu, Dec 02, 2010 at 01:38:10AM +0100, John Fawcett wrote:

> this patch seems to fix it, though maybe someone who knows more about
> how postscreen initializes parameters from default values of other
> parameters (via $parm_name) should check that it is what is needed.

The patch is correct apart from incorrect indentation.

> --- postscreen.c.orig 2010-12-02 01:24:25.000000000 +0100
> +++ postscreen.c 2010-12-02 01:29:23.000000000 +0100
> @@ -301,6 +301,7 @@
> * Configuration parameters.
> */
> int var_proc_limit;
> +int var_smtpd_cconn_limit;
> char *var_smtpd_service;
> char *var_smtpd_banner;
> char *var_smtpd_forbid_cmds;
> @@ -864,6 +865,7 @@
> };
> static const CONFIG_INT_TABLE int_table[] = {

> VAR_PROC_LIMIT, DEF_PROC_LIMIT, &var_proc_limit, 1, 0,

> + VAR_SMTPD_CCONN_LIMIT, DEF_SMTPD_CCONN_LIMIT,
> &var_smtpd_cconn_limit, 0, 0,
> VAR_PS_DNSBL_THRESH, DEF_PS_DNSBL_THRESH, &var_ps_dnsbl_thresh, 0, 0,
> VAR_PS_CMD_COUNT, DEF_PS_CMD_COUNT, &var_ps_cmd_count, 1, 0,

> 0,

--
Viktor.

Noel Jones

unread,
Dec 1, 2010, 10:08:16 PM12/1/10
to
On 12/1/2010 6:45 PM, Wietse Venema wrote:
> John Fawcett:
>> Seems that postscreen_client_connection_count_limit does not want to be
>> initialized from the default value of smtpd_client_connection_count_limit.
>
> Confirmed. I have two machines with postscreen. One has
> smtpd_client_connection_count_limit in main.cf, and the other has
> postscreen_client_connection_count_limit in main.cf. None had
> both parameters left at their defaults.
>
> Wietse


I missed that both had to be at default to trigger the error;
I have smtpd_client_connection_count_limit defined in main.cf.

-- Noel Jones

0 new messages