Loading ...
Sorry, an error occurred while loading the content.

Re: spaces when using "-o" in master.cf

Expand Messages
  • Stan Hoeppner
    ... You override by NOT including it in the -o list. Here you are explicitly telling the submission service to execute this policy server. Is this really
    Message 1 of 7 , Dec 3, 2012
    • 0 Attachment
      On 12/3/2012 7:42 AM, Tomas Macek wrote:
      > I have line like this
      >
      > smtpd_client_restrictions = check_policy_service inet:127.0.0.1:24575, ...
      >
      > in my main.cf
      >
      > I would like the $smtpd_client_restrictions to override in master.cf,
      > something like:
      >
      > submission inet n - n - - smtpd
      > -o smtpd_client_restrictions=check_policy_service inet:127.0.0.1:24575

      You override by NOT including it in the "-o" list. Here you are
      explicitly telling the submission service to execute this policy server.
      Is this really what you want? Or are you trying to exclude this policy
      server from submission? Note in my example there were BLANK lines after
      "=" which excludes everything for the restriction class.

      submission inet n - n - - smtpd
      -o smtpd_client_restrictions=

      means do not execute any client restrictions in the submission service.
      Only list a restriction here if you DO want it to execute.

      --
      Stan
    • Noel Jones
      ... A comma is treated as whitespace by the postfix option parser. This is a safe workaround for master.cf options. I m certain this is documented somewhere,
      Message 2 of 7 , Dec 3, 2012
      • 0 Attachment
        On 12/3/2012 7:59 AM, Tomas Macek wrote:
        > On Mon, 3 Dec 2012, Reindl Harald wrote:
        >
        >>
        >>
        >> Am 03.12.2012 14:42, schrieb Tomas Macek:
        >>> I have line like this
        >>>
        >>> smtpd_client_restrictions = check_policy_service
        >>> inet:127.0.0.1:24575, ...
        >>>
        >>> in my main.cf
        >>>
        >>> I would like the $smtpd_client_restrictions to override in
        >>> master.cf, something like:
        >>>
        >>> submission inet n - n - - smtpd
        >>> -o smtpd_client_restrictions=check_policy_service
        >>> inet:127.0.0.1:24575
        >>>
        >>> but the space between "check_policy_service" and "inet" is a
        >>> problem.
        >>>
        >>> How can I write this (if it's possible generally)? I know, that
        >>> the doc says, the spaces are not allowed but maybe
        >>> there is a way...
        >>
        >> main.cf
        >> whatever_smtpd_client_restrictions = check_policy_service
        >> inet:127.0.0.1:24575
        >>
        >> master.cf:
        >> -o smtpd_client_restrictions=$whatever_smtpd_client_restrictions
        >
        > Thanks, this seems to be also the solution.
        >
        > But according to the
        > http://marc.info/?l=postfix-users&m=108075412814545 (found after
        > really long time) the "," (comma) did the job:
        >
        > -o smtpd_client_restrictions=check_policy_service,inet:127.0.0.1:24575
        >
        > How this can work?? :-o


        A comma is treated as whitespace by the postfix option parser. This
        is a safe workaround for master.cf options. I'm certain this is
        documented somewhere, but I don't see it right now...

        If you have a long list of options, it's easier & cleaner to define
        them in main.cf as suggested by Reindl, but either method is equally
        valid.



        -- Noel Jones
      • Wietse Venema
        ... This is the recommended solution. It is mentioned in the master(5) manpage, but the text is somewhat obscure. I have made the text more explicit. OLD: NOTE
        Message 3 of 7 , Dec 3, 2012
        • 0 Attachment
          Reindl Harald:
          > main.cf
          > whatever_smtpd_client_restrictions = check_policy_service inet:127.0.0.1:24575
          >
          > master.cf:
          > -o smtpd_client_restrictions=$whatever_smtpd_client_restrictions

          This is the recommended solution. It is mentioned in the master(5)
          manpage, but the text is somewhat obscure. I have made the text
          more explicit.

          OLD: NOTE 1: do not specify whitespace around the "=". In
          parameter values, either avoid whitespace altogether, use
          commas instead of spaces, or consider overrides like "-o
          name=$override_parameter" with $override_parameter set in
          main.cf.

          NEW: NOTE 1: do not specify whitespace around the "=" or in
          parameter values. To specify a parameter value that con-
          tains whitespace, use commas instead of spaces, or spec-
          ify the value in main.cf. Example:

          /etc/postfix/master.cf:
          submission inet .... smtpd
          -o smtpd_mumble=$submission_mumble

          /etc/postfix/main.cf
          submission_mumble = text with whitespace...

          Postfix 2.9 and later will check that a user-defined $name in
          master.cf has a definition in main.cf. It will log a warning if the
          definition is missing (or mis-typed).

          Wietse
        • mouss
          ... it s not also . it s the . ... , is a separator. so that works, but it is obscure. avoid it.
          Message 4 of 7 , Dec 3, 2012
          • 0 Attachment
            Le 03/12/2012 14:59, Tomas Macek a écrit :
            > On Mon, 3 Dec 2012, Reindl Harald wrote:
            >
            >>
            >>
            >> Am 03.12.2012 14:42, schrieb Tomas Macek:
            >>> I have line like this
            >>>
            >>> smtpd_client_restrictions = check_policy_service
            >>> inet:127.0.0.1:24575, ...
            >>>
            >>> in my main.cf
            >>>
            >>> I would like the $smtpd_client_restrictions to override in
            >>> master.cf, something like:
            >>>
            >>> submission inet n - n - - smtpd
            >>> -o smtpd_client_restrictions=check_policy_service
            >>> inet:127.0.0.1:24575
            >>>
            >>> but the space between "check_policy_service" and "inet" is a problem.
            >>>
            >>> How can I write this (if it's possible generally)? I know, that the
            >>> doc says, the spaces are not allowed but maybe
            >>> there is a way...
            >>
            >> main.cf
            >> whatever_smtpd_client_restrictions = check_policy_service
            >> inet:127.0.0.1:24575
            >>
            >> master.cf:
            >> -o smtpd_client_restrictions=$whatever_smtpd_client_restrictions
            >
            > Thanks, this seems to be also the solution.

            it's not "also". it's "the".

            >
            > But according to the
            > http://marc.info/?l=postfix-users&m=108075412814545 (found after
            > really long time) the "," (comma) did the job:
            >
            > -o smtpd_client_restrictions=check_policy_service,inet:127.0.0.1:24575
            >
            > How this can work?? :-o

            ',' is a separator. so that works, but it is obscure. avoid it.
          Your message has been successfully submitted and would be delivered to recipients shortly.