/[smecontribs]/rpms/perl-Ezmlm/contribs10/perl-Ezmlm-0.08-2-v722flags.patch
ViewVC logotype

Annotation of /rpms/perl-Ezmlm/contribs10/perl-Ezmlm-0.08-2-v722flags.patch

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.1 - (hide annotations) (download)
Tue Mar 15 19:14:56 2022 UTC (2 years, 8 months ago) by jpp
Branch: MAIN
CVS Tags: perl-Ezmlm-0_08-4_el7_sme, HEAD
Initial import

1 jpp 1.1 --- Ezmlm-0.08.2/Ezmlm.pm.saveconfig722 2016-04-19 10:12:50.000000000 -0400
2     +++ Ezmlm-0.08.2/Ezmlm.pm 2016-04-20 05:39:11.000000000 -0400
3     @@ -170,7 +170,8 @@
4     # can we actually alter this list;
5     ($self->_seterror(-1, 'must setlist() before you update()') && return 0) unless(defined($self->{'LIST_NAME'}));
6     # check for important files: 'config' (idx < v5.0) or 'flags' (idx >= 5.0)
7     - ($self->_seterror(-1, "$self->{'LIST_NAME'} does not appear to be a valid list in update()") && return 0) unless((-e "$self->{'LIST_NAME'}/config") || (-e "$self->{'LIST_NAME'}/flags"));
8     + #nomore config or flags in 7.2.2
9     + ($self->_seterror(-1, "$self->{'LIST_NAME'} does not appear to be a valid list in update()") && return 0) unless((-e "$self->{'LIST_NAME'}/config") || (-e "$self->{'LIST_NAME'}/flags") || (get_version() >= 7));
10    
11     # Work out if this is a vhost.
12     open(OUTHOST, "<$self->{'LIST_NAME'}/outhost") || ($self->_seterror(-1, 'unable to read outhost in update()') && return 0);
13     @@ -205,7 +206,10 @@
14     my($options);
15    
16     # Read the config file
17     - if(-e $self->{LIST_NAME} . "/flags") {
18     + if (get_version() >= 7){
19     + # there are no more flags or config file, but file/flags in directory
20     + $options = $self->_getconfig_idx7();
21     + } elsif(-e $self->{LIST_NAME} . "/flags") {
22     # this file exists since ezmlm-idx-5.0.0
23     # 'config' is not authorative anymore since that version
24     $options = $self->_getconfig_idx5();
25     @@ -860,6 +864,67 @@
26     return $options;
27     }
28    
29     +
30     +# == Internal function to work out a list configuration (idx >= v7.0) ==
31     +sub _getconfig_idx7 {
32     + my($self) = @_;
33     + my ($options, %optionfiles);
34     + my ($file, $opt_num, $temp, $i);
35     + $options = '';
36     + $options .= 'a' if ((-e "$self->{'LIST_NAME'}/archived") || (-e "$self->{'LIST_NAME'}/indexed"));#v7 could be archived or indexed
37     + $options .= 'b' if (-e "$self->{'LIST_NAME'}/modgetonly");
38     + $options .= 'd' if (-e "$self->{'LIST_NAME'}/digested");
39     + $options .= 'f' if (-e "$self->{'LIST_NAME'}/prefix");
40     + $options .= 'g' if (-e "$self->{'LIST_NAME'}/subgetonly");
41     + $options .= 'h' if (-e "$self->{'LIST_NAME'}/nosubconfirm");
42     + $options .= 'i' if (-e "$self->{'LIST_NAME'}/threaded");
43     + $options .= 'j' if (-e "$self->{'LIST_NAME'}/nounsubconfirm");
44     + $options .= 'k' if (-e "$self->{'LIST_NAME'}/blacklist" || -e "$self->{'LIST_NAME'}/deny");
45     + $options .= 'l' if (-e "$self->{'LIST_NAME'}/modcanlist");
46     + $options .= 'm' if (-e "$self->{'LIST_NAME'}/modpost");# for v7 mu for noreturnposts
47     + $options .= 'n' if (-e "$self->{'LIST_NAME'}/modcanedit");
48     + $options .= 'o' if (-e "$self->{'LIST_NAME'}/modpostonly");
49     + $options .= 'p' if (-e "$self->{'LIST_NAME'}/public");
50     + $options .= 'q' ;# always on in v7
51     + $options .= 'r' if (-e "$self->{'LIST_NAME'}/remote");
52     + $options .= 's' if (-e "$self->{'LIST_NAME'}/modsub");
53     + $options .= 't' if (-e "$self->{'LIST_NAME'}/addtrailer");
54     + $options .= 'u' if (-e "$self->{'LIST_NAME'}/subpostonly");
55     + $options .= 'x' if (-e "$self->{'LIST_NAME'}/extra" || -e "$self->{'LIST_NAME'}/allow");
56     + $options .= 'y' if (-e "$self->{'LIST_NAME'}/confirmpost");
57     + # Add the unselected options too
58     + # but we will skip invalid options (any of 'cevz')
59     + foreach $i ('a' .. 'z') {
60     + $options .= uc($i) unless (('cevz' =~ /$i/) || ($options =~ /$i/i))
61     + }
62     +
63     + # values from different files
64     + # first: preset a array with "filename" and "option_number"
65     + %optionfiles = (
66     + 'sublist', 0,
67     + 'fromheader', 3,
68     + 'tstdigopts', 4,
69     + 'owner', 5,
70     + 'sql', 6,
71     + 'modpost', 7,
72     + 'modsub', 8,
73     + 'remote', 9);
74     + while (($file, $opt_num) = each(%optionfiles)) {
75     + if (-e "$self->{'LIST_NAME'}/$file") {
76     + chomp($temp = $self->getpart($file));
77     + $temp =~ m/^(.*)$/m; # take only the first line
78     + $temp = $1;
79     + # the 'owner' setting can be ignored if it is a path (starts with '/')
80     + unless (($opt_num == 5) && ($temp =~ m#^/#)) {
81     + $options .= " -$opt_num '$temp'" if ($temp =~ /\S/);
82     + }
83     + }
84     + }
85     +
86     + return $options;
87     +}
88     +
89     +
90     # == Internal function to work out a list configuration manually (idx < v5.0.0 ) ==
91     sub _getconfigmanual {
92     # use this function for strange lists without

admin@koozali.org
ViewVC Help
Powered by ViewVC 1.2.1 RSS 2.0 feed