~louis/ubuntu/trusty/clamav/lp799623_fix_logrotate

« back to all changes in this revision

Viewing changes to libclamav/phishcheck.c

  • Committer: Bazaar Package Importer
  • Author(s): Scott Kitterman
  • Date: 2010-03-12 11:30:04 UTC
  • mfrom: (0.41.1 upstream)
  • Revision ID: james.westby@ubuntu.com-20100312113004-b0fop4bkycszdd0z
Tags: 0.96~rc1+dfsg-0ubuntu1
* New upstream RC - FFE (LP: #537636):
  - Add OfficialDatabaseOnly option to clamav-base.postinst.in
  - Add LocalSocketGroup option to clamav-base.postinst.in
  - Add LocalSocketMode option to clamav-base.postinst.in
  - Add CrossFilesystems option to clamav-base.postinst.in
  - Add ClamukoScannerCount option to clamav-base.postinst.in
  - Add BytecodeSecurity opiton to clamav-base.postinst.in
  - Add DetectionStatsHostID option to clamav-freshclam.postinst.in
  - Add Bytecode option to clamav-freshclam.postinst.in
  - Add MilterSocketGroup option to clamav-milter.postinst.in
  - Add MilterSocketMode option to clamav-milter.postinst.in
  - Add ReportHostname option to clamav-milter.postinst.in
  - Bump libclamav SO version to 6.1.0 in libclamav6.install
  - Drop clamdmon from clamav.examples (no longer shipped by upstream)
  - Drop libclamav.a from libclamav-dev.install (not built by upstream)
  - Update SO version for lintian override for libclamav6
  - Add new Bytecode Testing Tool, usr/bin/clambc, to clamav.install
  - Add build-depends on python and python-setuptools for new test suite
  - Update debian/copyright for the embedded copy of llvm (using the system
    llvm is not currently feasible)

Show diffs side-by-side

added added

removed removed

Lines of Context:
322
322
        rc = cli_regcomp(preg,regex,REG_EXTENDED|REG_ICASE|(nosub ? REG_NOSUB :0));
323
323
        if(rc) {
324
324
 
325
 
#ifdef  C_WINDOWS
326
 
                cli_errmsg("Phishcheck: Error in compiling regex, disabling phishing checks\n");
327
 
#else
328
325
                size_t buflen = cli_regerror(rc,preg,NULL,0);
329
326
                char *errbuf = cli_malloc(buflen);
330
327
 
334
331
                        free(errbuf);
335
332
                } else
336
333
                        cli_errmsg("Phishcheck: Error in compiling regex, disabling phishing checks. Additionally an Out-of-memory error was encountered while generating a detailed error message\n");
337
 
#endif
338
334
                return 1;
339
335
        }
340
336
        return CL_SUCCESS;
814
810
                                case CL_PHISH_CLEAN:
815
811
                                        continue;
816
812
                                case CL_PHISH_NUMERIC_IP:
817
 
                                        *ctx->virname="Phishing.Heuristics.Email.Cloaked.NumericIP";
 
813
                                        *ctx->virname="Heuristics.Phishing.Email.Cloaked.NumericIP";
818
814
                                        break;
819
815
                                case CL_PHISH_CLOAKED_NULL:
820
 
                                        *ctx->virname="Phishing.Heuristics.Email.Cloaked.Null";/*fakesite%01%00@fake.example.com*/
 
816
                                        *ctx->virname="Heuristics.Phishing.Email.Cloaked.Null";/*fakesite%01%00@fake.example.com*/
821
817
                                        break;
822
818
                                case CL_PHISH_SSL_SPOOF:
823
 
                                        *ctx->virname="Phishing.Heuristics.Email.SSL-Spoof";
 
819
                                        *ctx->virname="Heuristics.Phishing.Email.SSL-Spoof";
824
820
                                        break;
825
821
                                case CL_PHISH_CLOAKED_UIU:
826
 
                                        *ctx->virname="Phishing.Heuristics.Email.Cloaked.Username";/*http://banksite@fake.example.com*/
 
822
                                        *ctx->virname="Heuristics.Phishing.Email.Cloaked.Username";/*http://banksite@fake.example.com*/
827
823
                                        break;
828
824
                                case CL_PHISH_HASH0:
829
 
                                        *ctx->virname="Safebrowsing.Suspected-malware_safebrowsing.clamav.net";
 
825
                                        *ctx->virname="Heuristics.Safebrowsing.Suspected-malware_safebrowsing.clamav.net";
830
826
                                        break;
831
827
                                case CL_PHISH_HASH1:
832
 
                                        *ctx->virname="Phishing.URL.Blacklisted";
 
828
                                        *ctx->virname="Heuristics.Phishing.URL.Blacklisted";
833
829
                                        break;
834
830
                                case CL_PHISH_HASH2:
835
 
                                        *ctx->virname="Safebrowsing.Suspected-phishing_safebrowsing.clamav.net";
 
831
                                        *ctx->virname="Heuristics.Safebrowsing.Suspected-phishing_safebrowsing.clamav.net";
836
832
                                        break;
837
833
                                case CL_PHISH_NOMATCH:
838
834
                                default:
839
 
                                        *ctx->virname="Phishing.Heuristics.Email.SpoofedDomain";
 
835
                                        *ctx->virname="Heuristics.Phishing.Email.SpoofedDomain";
840
836
                                        break;
841
837
                        }
842
838
                        return cli_found_possibly_unwanted(ctx);
1198
1194
            h[64]='\0';
1199
1195
            cli_dbgmsg("Looking up hash %s for %s(%u)%s(%u)\n", h, host, (unsigned)hlen, path, (unsigned)plen);
1200
1196
            if (prefix_matched) {
1201
 
                if (cli_bm_scanbuff(sha256_dig, 4, &virname, NULL, &rlist->hostkey_prefix,0,0,-1) == CL_VIRUS) {
 
1197
                if (cli_bm_scanbuff(sha256_dig, 4, &virname, NULL, &rlist->hostkey_prefix,0,NULL,NULL) == CL_VIRUS) {
1202
1198
                    cli_dbgmsg("prefix matched\n");
1203
1199
                    *prefix_matched = 1;
1204
1200
                } else
1205
1201
                    return CL_SUCCESS;
1206
1202
            }
1207
 
            if (cli_bm_scanbuff(sha256_dig, 32, &virname, NULL, &rlist->sha256_hashes,0,0,-1) == CL_VIRUS) {
 
1203
            if (cli_bm_scanbuff(sha256_dig, 32, &virname, NULL, &rlist->sha256_hashes,0,NULL,NULL) == CL_VIRUS) {
1208
1204
                cli_dbgmsg("This hash matched: %s\n", h);
1209
1205
                switch(*virname) {
1210
1206
                    case 'W':