~ubuntu-branches/ubuntu/jaunty/clamav/jaunty-security

« back to all changes in this revision

Viewing changes to unit_tests/check_clamscan.sh

  • Committer: Bazaar Package Importer
  • Author(s): Jamie Strandboge
  • Date: 2010-04-06 14:21:16 UTC
  • mfrom: (0.35.9 sid)
  • Revision ID: james.westby@ubuntu.com-20100406142116-9jwi9mqh3mdvi8mq
Tags: 0.95.3+dfsg-1ubuntu0.09.04.1
* SECURITY UPDATE: (LP: #553266)
* References clamav bugs #1771 and #1826
* libclamav/mspack.c: fix Quantum decompressor (bb#1771)
  - clamav git 224fee54dd6cd8933d7007331ec2bfca0398d4b4
* libclamav/mspack.c: improve unpacking of malformed cabinets (bb#1826)
  - clamav git 31b77b3fb589ab07e7b4d84f8b3825178864ee51
* based on work by Scott Kitterman

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
#!/bin/sh 
2
 
CLAMSCAN_WRAPPER=${CLAMSCAN_WRAPPER-}
3
 
die() {
4
 
        rm -rf test-db
5
 
        exit $1;
6
 
}
7
 
 
8
 
scan_failed() {
9
 
        if test "X$unrar_disabled" = "X1" && test `grep -v '\.rar' $1 | grep OK | wc -l` -eq 0
10
 
        then
11
 
                echo "***" >&2;
12
 
                echo "*** UNRAR is disabled, won't be able to detect unrar files!" >&2;
13
 
                echo "***" >&2;
14
 
        else
15
 
                echo "clamscan did not detect all testfiles correctly!" >&2;
16
 
                die 2;
17
 
        fi
18
 
}
19
 
 
20
 
mkdir test-db
21
 
cat <<EOF >test-db/test.hdb
22
 
aa15bcf478d165efd2065190eb473bcb:544:ClamAV-Test-File
23
 
EOF
24
 
rm -f clamscan.log
25
 
../libtool --mode=execute $CLAMSCAN_WRAPPER ../clamscan/clamscan --quiet -dtest-db/test.hdb ../test/clam* --log=clamscan.log
26
 
if test $? != 1; then
27
 
        echo "Error running clamscan: $?" >&2;
28
 
        grep OK clamscan.log >&2;
29
 
        die 1;
30
 
fi
31
 
NFILES=`ls -1 ../test/clam* | wc -l`
32
 
NINFECTED=`grep "Infected files" clamscan.log | cut -f2 -d: |sed -e 's/ //g'`
33
 
if test "$NFILES" -ne "0$NINFECTED"; then
34
 
        grep OK clamscan.log >&2;
35
 
        scan_failed clamscan.log
36
 
fi
37
 
 
38
 
cat <<EOF >test-db/test.pdb
39
 
H:example.com
40
 
EOF
41
 
rm -f clamscan2.log
42
 
../clamscan/clamscan  -dtest-db $abs_srcdir/input/phish-test-* --log=clamscan2.log --quiet
43
 
val=$?
44
 
if test $val != 0; then
45
 
        if test $val = 1; then
46
 
                echo "clamscan detected a file it shouldn't" >&2
47
 
                grep FOUND clamscan2.log
48
 
                die 3;
49
 
        fi
50
 
        echo "Error running clamscan: $val" >&2;
51
 
        die 3;
52
 
fi
53
 
 
54
 
rm -f clamscan2.log
55
 
../clamscan/clamscan --phishing-ssl --phishing-cloak -dtest-db $abs_srcdir/input/phish-test-* --log=clamscan2.log --quiet
56
 
val=$?
57
 
if test $val != 1; then
58
 
        echo "Error running clamscan: $val" >&2;
59
 
        die 3;
60
 
fi
61
 
grep "phish-test-ssl: Phishing.Heuristics.Email.SSL-Spoof FOUND" clamscan2.log >/dev/null && grep "phish-test-cloak: Phishing.Heuristics.Email.Cloaked.Null FOUND" clamscan2.log >/dev/null
62
 
if test $? -ne 0; then
63
 
        echo "Error on ssl/cloak phishing test" >&2;
64
 
        die 4;
65
 
fi
66
 
die 0;