mirror of
https://github.com/void-linux/void-packages.git
synced 2025-08-02 10:52:57 +02:00
clamav: update to 0.99.4
This commit is contained in:
parent
b28c24d3ad
commit
0be39101a4
2 changed files with 3 additions and 131 deletions
|
@ -1,128 +0,0 @@
|
||||||
--- libclamav/scanners.c.orig 2018-01-26 14:35:23.299386703 +0100
|
|
||||||
+++ libclamav/scanners.c 2018-01-26 14:47:44.422451335 +0100
|
|
||||||
@@ -1342,39 +1342,35 @@
|
|
||||||
return CL_CLEAN;
|
|
||||||
}
|
|
||||||
|
|
||||||
- /* dump to disk only if explicitly asked to
|
|
||||||
- * or if necessary to check relative offsets,
|
|
||||||
- * otherwise we can process just in-memory */
|
|
||||||
- if(ctx->engine->keeptmp || (troot && troot->ac_reloff_num > 0)) {
|
|
||||||
- if((ret = cli_gentempfd(ctx->engine->tmpdir, &tmpname, &ofd))) {
|
|
||||||
- cli_dbgmsg("cli_scanscript: Can't generate temporary file/descriptor\n");
|
|
||||||
- return ret;
|
|
||||||
- }
|
|
||||||
- if (ctx->engine->keeptmp)
|
|
||||||
- cli_dbgmsg("cli_scanscript: saving normalized file to %s\n", tmpname);
|
|
||||||
- }
|
|
||||||
-
|
|
||||||
if(!(normalized = cli_malloc(SCANBUFF + maxpatlen))) {
|
|
||||||
cli_dbgmsg("cli_scanscript: Unable to malloc %u bytes\n", SCANBUFF);
|
|
||||||
- free(tmpname);
|
|
||||||
return CL_EMEM;
|
|
||||||
}
|
|
||||||
-
|
|
||||||
text_normalize_init(&state, normalized, SCANBUFF + maxpatlen);
|
|
||||||
- ret = CL_CLEAN;
|
|
||||||
-
|
|
||||||
|
|
||||||
if ((ret = cli_ac_initdata(&tmdata, troot?troot->ac_partsigs:0, troot?troot->ac_lsigs:0, troot?troot->ac_reloff_num:0, CLI_DEFAULT_AC_TRACKLEN))) {
|
|
||||||
- free(tmpname);
|
|
||||||
+ free(normalized);
|
|
||||||
return ret;
|
|
||||||
}
|
|
||||||
|
|
||||||
if ((ret = cli_ac_initdata(&gmdata, groot->ac_partsigs, groot->ac_lsigs, groot->ac_reloff_num, CLI_DEFAULT_AC_TRACKLEN))) {
|
|
||||||
cli_ac_freedata(&tmdata);
|
|
||||||
- free(tmpname);
|
|
||||||
+ free(normalized);
|
|
||||||
return ret;
|
|
||||||
}
|
|
||||||
|
|
||||||
+ /* dump to disk only if explicitly asked to
|
|
||||||
+ * or if necessary to check relative offsets,
|
|
||||||
+ * otherwise we can process just in-memory */
|
|
||||||
+ if(ctx->engine->keeptmp || (troot && troot->ac_reloff_num > 0)) {
|
|
||||||
+ if((ret = cli_gentempfd(ctx->engine->tmpdir, &tmpname, &ofd))) {
|
|
||||||
+ cli_dbgmsg("cli_scanscript: Can't generate temporary file/descriptor\n");
|
|
||||||
+ goto done;
|
|
||||||
+ }
|
|
||||||
+ if (ctx->engine->keeptmp)
|
|
||||||
+ cli_dbgmsg("cli_scanscript: saving normalized file to %s\n", tmpname);
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
mdata[0] = &tmdata;
|
|
||||||
mdata[1] = &gmdata;
|
|
||||||
|
|
||||||
@@ -1388,9 +1384,8 @@
|
|
||||||
|
|
||||||
if (write(ofd, state.out, state.out_pos) == -1) {
|
|
||||||
cli_errmsg("cli_scanscript: can't write to file %s\n",tmpname);
|
|
||||||
- close(ofd);
|
|
||||||
- free(tmpname);
|
|
||||||
- return CL_EWRITE;
|
|
||||||
+ ret = CL_EWRITE;
|
|
||||||
+ goto done;
|
|
||||||
}
|
|
||||||
text_normalize_reset(&state);
|
|
||||||
}
|
|
||||||
@@ -1409,11 +1404,6 @@
|
|
||||||
funmap(*ctx->fmap);
|
|
||||||
}
|
|
||||||
*ctx->fmap = map;
|
|
||||||
-
|
|
||||||
- /* If we aren't keeping temps, delete the normalized file after scan. */
|
|
||||||
- if(!(ctx->engine->keeptmp))
|
|
||||||
- if (cli_unlink(tmpname)) ret = CL_EUNLINK;
|
|
||||||
-
|
|
||||||
} else {
|
|
||||||
/* Since the above is moderately costly all in all,
|
|
||||||
* do the old stuff if there's no relative offsets. */
|
|
||||||
@@ -1421,11 +1411,8 @@
|
|
||||||
if (troot) {
|
|
||||||
cli_targetinfo(&info, 7, map);
|
|
||||||
ret = cli_ac_caloff(troot, &tmdata, &info);
|
|
||||||
- if (ret) {
|
|
||||||
- cli_ac_freedata(&tmdata);
|
|
||||||
- free(tmpname);
|
|
||||||
- return ret;
|
|
||||||
- }
|
|
||||||
+ if (ret)
|
|
||||||
+ goto done;
|
|
||||||
}
|
|
||||||
|
|
||||||
while(1) {
|
|
||||||
@@ -1466,13 +1453,6 @@
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
- if(ctx->engine->keeptmp) {
|
|
||||||
- free(tmpname);
|
|
||||||
- if (ofd >= 0)
|
|
||||||
- close(ofd);
|
|
||||||
- }
|
|
||||||
- free(normalized);
|
|
||||||
-
|
|
||||||
if(ret != CL_VIRUS || SCAN_ALL) {
|
|
||||||
if ((ret = cli_exp_eval(ctx, troot, &tmdata, NULL, NULL)) == CL_VIRUS)
|
|
||||||
viruses_found++;
|
|
||||||
@@ -1481,9 +1461,19 @@
|
|
||||||
viruses_found++;
|
|
||||||
}
|
|
||||||
|
|
||||||
+done:
|
|
||||||
+ free(normalized);
|
|
||||||
cli_ac_freedata(&tmdata);
|
|
||||||
cli_ac_freedata(&gmdata);
|
|
||||||
|
|
||||||
+ if (ofd != -1)
|
|
||||||
+ close(ofd);
|
|
||||||
+ if (tmpname != NULL) {
|
|
||||||
+ if (!ctx->engine->keeptmp)
|
|
||||||
+ if (cli_unlink(tmpname)) ret = CL_EUNLINK;
|
|
||||||
+ free(tmpname);
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
if (SCAN_ALL && viruses_found)
|
|
||||||
return CL_VIRUS;
|
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
# Template file for 'clamav'
|
# Template file for 'clamav'
|
||||||
pkgname=clamav
|
pkgname=clamav
|
||||||
version=0.99.3
|
version=0.99.4
|
||||||
revision=3
|
revision=1
|
||||||
build_style=gnu-configure
|
build_style=gnu-configure
|
||||||
# XXX: system llvm is too new (< 3.7 required)
|
# XXX: system llvm is too new (< 3.7 required)
|
||||||
# Shipped llvm does not build with gcc6
|
# Shipped llvm does not build with gcc6
|
||||||
|
@ -19,7 +19,7 @@ maintainer="Jürgen Buchmüller <pullmoll@t-online.de>"
|
||||||
license="GPL-2"
|
license="GPL-2"
|
||||||
homepage="http://www.clamav.net/"
|
homepage="http://www.clamav.net/"
|
||||||
distfiles="http://www.clamav.net/downloads/production/${pkgname}-${version}.tar.gz"
|
distfiles="http://www.clamav.net/downloads/production/${pkgname}-${version}.tar.gz"
|
||||||
checksum=00fa5292a6e00a3a4035b826267748965d5d2c4943d8ff417d740238263e8e84
|
checksum=d72ac3273bde8d2e5e28ec9978373ee3ab4529fd868bc3fc4d2d2671228f2461
|
||||||
|
|
||||||
CPPFLAGS="-Wno-unused-local-typedefs"
|
CPPFLAGS="-Wno-unused-local-typedefs"
|
||||||
if [ "$CROSS_BUILD" ]; then
|
if [ "$CROSS_BUILD" ]; then
|
||||||
|
|
Loading…
Add table
Reference in a new issue