Viktor Dukhovni:
> On Thu, Sep 11, 2014 at 02:20:41AM +0200, Bostjan Skufca wrote:
> 
> > I am sending this email because I think that we need to do something
> > about it, and hope that this will help communicate valid ideas around.
> 
> It is not difficult to merge main.cf fragments without creating
> duplicate definitions of parameters.  The warnings are useful for
> users who accidentally define the same setting twice.
> 
> > Does anyone else think this "issue" needs attention?
> 
> A simple merge script will suffice:

I sent a solution that uses "postconf -n >file" to produce a file
without duplicates.

        Wietse

> -- 
>       Viktor.
> 
> #! /usr/pkg/bin/perl -w
> 
> sub parse {
>     my ($s, $l) = @_;
>     if ($s =~ m{^(\S+?)\s*=\s*(.*?)\s*$}) {
>       $dict{$1} = $2;
>     } else {
>       print STDERR $s, "\n";
>       die sprintf("%s: malformed setting at line %d\n", $ARGV, $l);
>     }
> }
> while (<>) {
>     chomp;
>     next if (/^\s*(#|$)/);
>     if (m{^\s}) { $buf .= $_; next }
>     parse($buf, $line) if defined($buf);
>     $buf = $_; $line = $.;
> } continue {
>     if (eof) {
>       parse($buf, $line)  if defined($buf);
>       close ARGV;
>       undef $buf;
>     }
> }
> foreach $k (sort keys %dict) {
>     printf "%s = %s\n", $k, $dict{$k};
> }
> 

Reply via email to