~ubuntu-branches/ubuntu/dapper/clamav/dapper-backports

« back to all changes in this revision

Viewing changes to debian/clamav-milter.postinst.in

  • Committer: Bazaar Package Importer
  • Author(s): Imre Gergely
  • Date: 2009-09-03 18:59:26 UTC
  • mfrom: (9.4.10 jaunty-proposed)
  • Revision ID: james.westby@ubuntu.com-20090903185926-92kh3x3gqja2vlya
Tags: 0.95.2+dfsg-4ubuntu1.1~dapper1
* Source backport for clamav (LP: 423793)
  - Drop deny rule in freshclam apparmor profile since deny is not
    supported in Dapper's apparmor
  - Drop dh_lintian from debian/rules and adjust version of debhelper
    build-dep
  - Drop build-dep and libclamav-dev depends on non-existent libtommath-dev
  - Changed Section to 'utils' for clamav-dbg package
  - Drop versioning of lsb-base depends
  - Build with GCC 3.4 to work around known bugs in 4.1
  - Drop po template file comments to work around bugs in the Dapper build
    system   
  - Switch back to older dpkg-dev Source-Version style
  - Restore build-dep on dpkg-dev
* Updated clamd apparmor profile
  - debian/usr.sbin.clamd: added support for havp (LP: #423669)

Show diffs side-by-side

added added

removed removed

Lines of Context:
39
39
  db_metaget clamav-milter/debconf value || true
40
40
  if [ "$RET" = "true" ]; then
41
41
    db_metaget clamav-milter/MilterSocket value || true
42
 
    MilterSocket="$RET"
 
42
    miltersocket="$RET"
43
43
    db_metaget clamav-milter/FixStaleSocket value || true
44
 
    FixStaleSocket="$RET"
 
44
    fixstalesocket="$RET"
45
45
    db_metaget clamav-milter/User value || true
46
 
    User="$RET"
 
46
    user="$RET"
47
47
    db_metaget clamav-milter/AddGroups value || true
48
 
    AddGroups="$RET"
 
48
    addgroups="$RET"
49
49
    db_metaget clamav-milter/ReadTimeout value || true
50
 
    ReadTimeout="$RET"
 
50
    readtimeout="$RET"
51
51
    db_metaget clamav-milter/Foreground value || true
52
 
    Foreground="$RET"
 
52
    foreground="$RET"
53
53
    db_metaget clamav-milter/Chroot value || true
54
 
    Chroot="$RET"
 
54
    chroot="$RET"
55
55
    db_metaget clamav-milter/PidFile value || true
56
 
    PidFile="$RET"
 
56
    pidfile="$RET"
57
57
    db_metaget clamav-milter/TemporaryDirectory value || true
58
 
    TemporaryDirectory="$RET"
 
58
    temporarydirectory="$RET"
59
59
    db_metaget clamav-milter/ClamdSocket value || true
60
 
    ClamdSocket="$RET"
 
60
    clamdsocket="$RET"
61
61
    db_metaget clamav-milter/LocalNet value || true
62
 
    LocalNet="$RET"
 
62
    localnet="$RET"
63
63
    db_metaget clamav-milter/Whitelist value || true
64
 
    Whitelist="$RET"
65
 
    db_metaget clamav-milter/OnClean value || true
66
 
    OnClean="$RET"
 
64
    whitelist="$RET"
67
65
    db_metaget clamav-milter/OnInfected value || true
68
 
    OnInfected="$RET"
 
66
    oninfected="$RET"
69
67
    db_metaget clamav-milter/OnFail value || true
70
 
    OnFail="$RET"
 
68
    onfail="$RET"
71
69
    db_metaget clamav-milter/RejectMsg value || true
72
 
    RejectMsg="$RET"
 
70
    rejectmsg="$RET"
73
71
    db_metaget clamav-milter/AddHeader value || true
74
 
    AddHeader="$RET"
 
72
    addheader="$RET"
75
73
    db_metaget clamav-milter/LogFile value || true
76
 
    LogFile="$RET"
 
74
    logfile="$RET"
77
75
    db_metaget clamav-milter/LogFileUnlock value || true
78
 
    LogFileUnlock="$RET"
 
76
    logfileunlock="$RET"
79
77
    db_metaget clamav-milter/LogFileMaxSize value || true
80
 
    LogFileMaxSize="${RET}M"
 
78
    logfilemaxsize="${RET}M"
81
79
    db_metaget clamav-milter/LogTime value || true
82
 
    LogTime="$RET"
 
80
    logtime="$RET"
83
81
    db_metaget clamav-milter/LogSyslog value || true
84
 
    LogSyslog="$RET"
 
82
    logsyslog="$RET"
85
83
    db_metaget clamav-milter/LogFacility value || true
86
 
    LogFacility="$RET"
 
84
    logfacility="$RET"
87
85
    db_metaget clamav-milter/LogVerbose value || true
88
 
    LogVerbose="$RET"
 
86
    logverbose="$RET"
89
87
    db_metaget clamav-milter/LogInfected value || true
90
 
    LogInfected="$RET"
 
88
    loginfected="$RET"
91
89
    db_metaget clamav-milter/MaxFileSize value || true
92
90
    maxfilesize="`echo $RET | sed -e s/M//g`"
93
 
    MaxFileSize="${maxfilesize}M"
94
 
 
95
 
    if [ -z "$LogFile" ] || [ "$LogFile" = 'none' ]; then
96
 
      LogSyslog=true
 
91
    MaxFSize="${maxfilesize}M"
 
92
 
 
93
    if [ -z "$logfile" ] || [ "$logfile" = 'none' ]; then
 
94
      logsyslog=true
 
95
    fi
 
96
 
 
97
    if is_false $addheader; then
 
98
      addheader=no
 
99
    elif is_true $addheader; then
 
100
      addheader=Replace
97
101
    fi
98
102
 
99
103
    slurp_config "$CLAMAVMILTERCONF"
101
105
    echo "#Automatically Generated by clamav-milter postinst" > $DEBCONFFILE
102
106
    echo "#To reconfigure clamav-milter run #dpkg-reconfigure clamav-milter" >> $DEBCONFFILE
103
107
    echo "#Please read /usr/share/doc/clamav-base/README.Debian.gz for details" >> $DEBCONFFILE
104
 
    [ -z "$MilterSocket" ] && MilterSocket="/var/run/clamav/milter.ctl"
105
 
    [ -z "$FixStaleSocket" ] && FixStaleSocket="true"
106
 
    [ -z "$User" ] && User=clamav
 
108
    [ -z "$MilterSocket" ] || [ "$MilterSocket" = 'true' ] && miltersocket="/var/run/clamav/milter.ctl"
 
109
    [ -z "$FixStaleSocket" ] && fixstalesocket="true"
 
110
    [ -z "$User" ] && user=clamav
107
111
    [ -z "$AllowSupplementaryGroups" -o -n "$AddGroups" ] && AllowSupplementaryGroups=true
108
 
    [ -z "$ReadTimeout" ] && ReadTimeout="120"
109
 
    [ -z "$Foreground" ] && Foreground="false"
110
 
    [ -z "$PidFile" ] && PidFile="/var/run/clamav/clamav-milter.pid"
111
 
    [ -z "$ClamdSocket" ] && ClamdSocket="unix:/var/run/clamav/clamd.ctl"
112
 
    [ -z "$OnClean" ] && OnClean="Accept"
113
 
    [ -z "$OnInfected" ] && OnInfected="Quarantine"
114
 
    [ -z "$OnFail" ] && OnFail="Defer"
115
 
    [ -z "$AddHeader" ] && AddHeader="false"
116
 
    [ -z "$LogSyslog" ] && LogSyslog="false"
117
 
    [ -z "$LogFacility" ] && LogFacility="LOG_LOCAL6"
118
 
    [ -z "$LogVerbose" ] && LogVerbose="false"
119
 
    [ -z "$LogInfected" ] && LogInfected="Off"
120
 
    [ -z "$MaxFileSize" ] && MaxFileSize="25M"
 
112
    [ -z "$ReadTimeout" ] && readtimeout="120"
 
113
    [ -z "$Foreground" ] && foreground="false"
 
114
    [ -z "$PidFile" ] && pidfile="/var/run/clamav/clamav-milter.pid"
 
115
    [ -z "$ClamdSocket" ] && clamdsocket="unix:/var/run/clamav/clamd.ctl"
 
116
    [ -z "$OnClean" ] || [ "$OnClean" = 'true' ] && onclean="Accept"
 
117
    [ -z "$OnInfected" ] && oninfected="Quarantine"
 
118
    [ -z "$OnFail" ] && onfail="Defer"
 
119
    [ -z "$AddHeader" ] && addheader="Replace"
 
120
    [ -z "$LogSyslog" ] && logsyslog="false"
 
121
    [ -z "$LogFacility" ] && logfacility="LOG_LOCAL6"
 
122
    [ -z "$LogVerbose" ] && logverbose="false"
 
123
    [ -z "$LogInfected" ] && loginfected="Off"
 
124
    [ -z "$MaxFileSize" ] && MaxFSize="25M"
 
125
    [ -z "$LogFile" ] && [ -z "$logfile" ] && is_false "$logsyslog" && logfile=/var/log/clamav/clamav-milter.log
 
126
 
 
127
    if [ -z "$allowsupplementarygroups" ] && [ -n "$AllowSupplementaryGroups" ]; then
 
128
      allowsupplementarygroups="$AllowSupplementaryGroups"
 
129
    fi
 
130
 
 
131
    if [ -z "$onclean" ] && [ -n "$OnClean" ]; then
 
132
      onclean="$OnClean"
 
133
    fi
121
134
 
122
135
    cat >> $DEBCONFFILE << EOF
123
 
MilterSocket $MilterSocket
124
 
FixStaleSocket $FixStaleSocket
125
 
User $User
126
 
AllowSupplementaryGroups $AllowSupplementaryGroups
127
 
ReadTimeout $ReadTimeout
128
 
Foreground $Foreground
129
 
PidFile $PidFile
130
 
ClamdSocket $ClamdSocket
131
 
OnClean $OnClean
132
 
OnInfected $OnInfected
133
 
OnFail $OnFail
134
 
AddHeader $AddHeader
135
 
LogSyslog $LogSyslog
136
 
LogFacility $LogFacility
137
 
LogVerbose $LogVerbose
138
 
LogInfected $LogInfected
139
 
MaxFileSize $MaxFileSize
 
136
MilterSocket $miltersocket
 
137
FixStaleSocket $fixstalesocket
 
138
User $user
 
139
AllowSupplementaryGroups $allowsupplementarygroups
 
140
ReadTimeout $readtimeout
 
141
Foreground $foreground
 
142
PidFile $pidfile
 
143
ClamdSocket $clamdsocket
 
144
OnClean $onclean
 
145
OnInfected $oninfected
 
146
OnFail $onfail
 
147
AddHeader $addheader
 
148
LogSyslog $logsyslog
 
149
LogFacility $logfacility
 
150
LogVerbose $logverbose
 
151
LogInfected $loginfected
 
152
MaxFileSize $MaxFSize
140
153
EOF
141
154
    if [ -n "$SkipAuthenticated" ]; then
142
155
      cat >> $DEBCONFFILE << EOF
144
157
EOF
145
158
    fi
146
159
 
147
 
    if [ -n "$Chroot" ]; then
148
 
      cat >> $DEBCONFFILE << EOF
149
 
Chroot $Chroot
150
 
EOF
151
 
    fi
152
 
 
153
 
    if [ -n "$LocalNet" ]; then
154
 
      cat >> $DEBCONFFILE << EOF
155
 
LocalNet $LocalNet
156
 
EOF
157
 
    fi
158
 
 
159
 
    if [ -n "$Whitelist" ]; then
160
 
      cat >> $DEBCONFFILE << EOF
161
 
Whitelist $Whitelist
162
 
EOF
163
 
    fi
164
 
 
165
 
    if [ -n "$RejectMsg" ]; then
166
 
      cat >> $DEBCONFFILE << EOF
167
 
RejectMsg $RejectMsg
168
 
EOF
169
 
    fi
170
 
 
171
 
    if [ -n "$TemporaryDirectory" ]; then
 
160
    if [ -n "$chroot" ]; then
 
161
      cat >> $DEBCONFFILE << EOF
 
162
Chroot $chroot
 
163
EOF
 
164
    fi
 
165
 
 
166
    if [ -n "$localnet" ]; then
 
167
      cat >> $DEBCONFFILE << EOF
 
168
LocalNet $localnet
 
169
EOF
 
170
    fi
 
171
 
 
172
    if [ -n "$whitelist" ]; then
 
173
      cat >> $DEBCONFFILE << EOF
 
174
Whitelist $whitelist
 
175
EOF
 
176
    fi
 
177
 
 
178
    if [ -n "$rejectmsg" ]; then
 
179
      cat >> $DEBCONFFILE << EOF
 
180
RejectMsg $rejectmsg
 
181
EOF
 
182
    fi
 
183
 
 
184
    if [ -n "$temporarydirectory" ]; then
172
185
        cat >> $DEBCONFFILE << EOF
173
 
TemporaryDirectory $TemporaryDirectory
 
186
TemporaryDirectory $temporarydirectory
174
187
EOF
175
188
    else
176
189
        cat >> $DEBCONFFILE << EOF
179
192
EOF
180
193
    fi
181
194
 
182
 
    if [ -n "$LogFile" ] && [ "$LogFile" != 'none' ]; then
183
 
      echo "LogFile $LogFile" >> $DEBCONFFILE
184
 
      echo "LogTime $LogTime" >> $DEBCONFFILE
185
 
      echo "LogFileUnlock $LogFileUnlock" >> $DEBCONFFILE
186
 
      echo "LogFileMaxSize $LogFileMaxSize" >> $DEBCONFFILE
 
195
    if [ -n "$logfile" ] && [ "$logfile" != 'none' ]; then
 
196
      echo "LogFile $logfile" >> $DEBCONFFILE
 
197
      echo "LogTime $logtime" >> $DEBCONFFILE
 
198
      echo "LogFileUnlock $logfileunlock" >> $DEBCONFFILE
 
199
      echo "LogFileMaxSize $logfilemaxsize" >> $DEBCONFFILE
187
200
    fi
188
201
    
189
202
    ucf_cleanup "$CLAMAVMILTERCONF"
204
217
  chmod 644 $CLAMAVMILTERCONF || true
205
218
  chown root:root $CLAMAVMILTERCONF || true
206
219
  
207
 
  slurp_config "$CLAMAVMILTERCONF"
208
 
 
209
 
  if [ -n "$LogFile" ] && [ "$LogFile" != 'none' ]; then
210
 
    if echo "$LogFile" | grep -q '^/dev/'; then
 
220
  if [ -n "$logfile" ] && [ "$logfile" != 'none' ]; then
 
221
    if echo "$logfile" | grep -q '^/dev/'; then
211
222
      make_logrotate=false
212
223
    else
213
224
      make_logrotate=true
214
225
    fi
215
 
    [ -n "$User" ] || User=clamav
 
226
    [ -n "$user" ] || user=clamav
216
227
    if [ "$make_logrotate" = 'true' ]; then
217
 
      echo "$LogFile {" > $DEBROTATEFILE
 
228
      echo "$logfile {" > $DEBROTATEFILE
218
229
      echo "     rotate 12" >> $DEBROTATEFILE
219
230
      echo "     weekly" >> $DEBROTATEFILE
220
231
      echo "     compress" >> $DEBROTATEFILE
224
235
      echo "     /etc/init.d/clamav-milter restart > /dev/null" >> $DEBROTATEFILE
225
236
      echo "     endscript" >> $DEBROTATEFILE
226
237
      echo "     }" >> $DEBROTATEFILE
227
 
      touch "$LogFile"
228
 
      chown "$User":adm "$LogFile"
229
 
      chmod 0640 "$LogFile"
 
238
      touch "$logfile"
 
239
      chown "$user":adm "$logfile"
 
240
      chmod 0640 "$logfile"
230
241
      ucf_cleanup "$CLAMAVROTATEFILE"
231
242
      ucf_upgrade_check "$CLAMAVROTATEFILE" "$DEBROTATEFILE" /var/lib/ucf/cache/:etc:logrotate.d:clamav-milter
232
243
      rm -f $DEBROTATEFILE
254
265
  ;;
255
266
esac
256
267
 
257
 
# clamav-milter between 0.95+dfsg-2ubuntu1 and 0.95.1+dfsg-1ubuntu1.1 had
258
 
# broken init and postinst scripts, which did some bad things
259
 
# this should clean it up (LP: #365823, #363796, #363804)
260
 
if dpkg --compare-versions "$2" le-nl "0.95.1+dfsg-1ubuntu1.2~" &&
261
 
   dpkg --compare-versions "$2" ge "0.95+dfsg-2ubuntu1"
262
 
then
263
 
        # fix '/' owner
264
 
        chown root /
265
 
 
266
 
        # remove rogue /none file created by postinst
267
 
        find /none -type f -size 0 -user clamav -exec rm -f {} \; 2>/dev/null || true
268
 
 
269
 
        # search for and fix other directories' owner
270
 
        DIR_LIST=" \
271
 
                /bin /boot /dev /etc /lib /lib32 /lib64 /root /sbin /usr \
272
 
                /var/backups /var/cache /var/games /var/lib /var/local \
273
 
                /var/log /var/mail /var/spool"
274
 
        find -H $DIR_LIST -type d -user clamav -gid 0 -print0 2>/dev/null | xargs -r -0 chown root -- || true
275
 
 
276
 
        STICKY_DIR_LIST="/tmp /var/crash /var/lock /var/tmp"
277
 
        find $STICKY_DIR_LIST -maxdepth 0 -user clamav -gid 0 -print0 2>/dev/null | xargs -r -0 chown root -- || true
278
 
 
279
 
        # clean up rogue clamav-milter logrotate config
280
 
        if [ -f /etc/logrotate.d/clamav-milter ] &&
281
 
           head -1 /etc/logrotate.d/clamav-milter | grep -q "^none"
282
 
        then
283
 
                rm -f /etc/logrotate.d/clamav-milter
284
 
        fi
285
 
fi
286
 
 
287
268
# dh_installdeb will replace this with shell code automatically
288
269
# generated by other debhelper scripts.
289
270