Date: Mon, 26 Apr 2004 13:09:57 +0300 (EEST) From: Serge Negodyuck <petr@petrovich.kiev.ua> To: FreeBSD-gnats-submit@FreeBSD.org Subject: ports/65983: update: ports/security/drweb Message-ID: <200404261009.i3QA9vOS009963@petrovich.com.ua> Resent-Message-ID: <200404261020.i3QAKIpp091326@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 65983 >Category: ports >Synopsis: update: ports/security/drweb >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: update >Submitter-Id: current-users >Arrival-Date: Mon Apr 26 03:20:18 PDT 2004 >Closed-Date: >Last-Modified: >Originator: Serge Negodyuck >Release: FreeBSD 4.10-BETA i386 >Organization: >Environment: System: FreeBSD petrovich.com.ua 4.10-BETA >Description: drweb version 4.31.4 released: - update to version 4.31.4 - use old version of update.pl instead of new broken one >How-To-Repeat: >Fix: diff -ruN drweb/Makefile drweb.new/Makefile --- drweb/Makefile Thu Mar 25 21:28:30 2004 +++ drweb.new/Makefile Mon Apr 26 12:55:00 2004 @@ -6,10 +6,9 @@ # PORTNAME= drweb -PORTVERSION= 4.31.3 -PORTREVISION= 1 +PORTVERSION= 4.31.4 CATEGORIES= security -MASTER_SITES= ftp://ftp.drweb.ru/pub/unix/ \ +MASTER_SITES= ftp://ftp.drweb.ru/pub/unix/generic/ \ ftp://ftp.drweb.ru/pub/unix/archive/ \ ftp://ftp.drweb.ru/pub/unix/archive/${PORTNAME}-${PORTVERSION}/ @@ -44,32 +43,32 @@ ${TAR} -xf - -C ${DRWEB_PREFIX} ${CHMOD} 755 ${DRWEB_PREFIX}/bases ${DRWEB_PREFIX}/doc \ ${DRWEB_PREFIX}/lib ${DRWEB_PREFIX}/updates - ${INSTALL_DATA} ${WRKSRC}/usr/local/drweb/drweb.key \ - ${DRWEB_PREFIX}/drweb.key-dist - ${INSTALL_DATA} ${WRKSRC}/usr/local/drweb/drwebd.key \ - ${DRWEB_PREFIX}/drwebd.key-dist + ${INSTALL_DATA} ${WRKSRC}/usr/local/drweb/drweb.key-distr \ + ${DRWEB_PREFIX}/drweb.key-distr + ${INSTALL_DATA} ${WRKSRC}/usr/local/drweb/drwebd.key-distr \ + ${DRWEB_PREFIX}/drwebd.key-distr ${SED} 's#%INSTALL%#${DRWEB_PREFIX}#g' \ < ${WRKSRC}/usr/local/drweb/update/update.pl \ > ${DRWEB_PREFIX}/update/update.pl ${CHMOD} 750 ${DRWEB_PREFIX}/update/update.pl ${SED} 's#%INSTALL%#${DRWEB_PREFIX}#g' \ < ${WRKSRC}/usr/local/etc/drweb/drweb32.ini \ - > ${PREFIX}/drweb/drweb32.ini-dist + > ${PREFIX}/drweb/drweb32.ini-distr ${RM} -f ${PREFIX}/bin/drweb ${SED} 's#%INSTALL%#${DRWEB_PREFIX}#g' \ < ${WRKSRC}/usr/local/etc/rc.d/00drwebd.sh \ > ${PREFIX}/etc/rc.d/00drwebd.sh ${CHMOD} 755 ${PREFIX}/etc/rc.d/00drwebd.sh if [ ! -f ${PREFIX}/drweb/drweb32.ini ] ; then \ - ${CP} ${PREFIX}/drweb/drweb32.ini-dist \ + ${CP} ${PREFIX}/drweb/drweb32.ini-distr \ ${PREFIX}/drweb/drweb32.ini; \ fi if [ ! -f ${DRWEB_PREFIX}/drweb.key ] ; then \ - ${CP} ${DRWEB_PREFIX}/drweb.key-dist \ + ${CP} ${DRWEB_PREFIX}/drweb.key-distr \ ${DRWEB_PREFIX}/drweb.key; \ fi if [ ! -f ${DRWEB_PREFIX}/drwebd.key ] ; then \ - ${CP} ${DRWEB_PREFIX}/drwebd.key-dist \ + ${CP} ${DRWEB_PREFIX}/drwebd.key-distr \ ${DRWEB_PREFIX}/drwebd.key; \ fi ${SED} 's#%INSTALL%#${DRWEB_PREFIX}#g' \ diff -ruN drweb/distinfo drweb.new/distinfo --- drweb/distinfo Thu Mar 25 00:04:13 2004 +++ drweb.new/distinfo Mon Apr 26 12:23:18 2004 @@ -1,4 +1,4 @@ -MD5 (drweb-4.31.3-freebsd4.tar.gz) = 1c6d87efe66fd6bc0bf8aaeb4d4e9b53 -SIZE (drweb-4.31.3-freebsd4.tar.gz) = 2045333 -MD5 (drweb-4.31.3-freebsd5.tar.gz) = 8e87bcd9f53b254ce736ea5c2dd498c3 -SIZE (drweb-4.31.3-freebsd5.tar.gz) = 2350075 +MD5 (drweb-4.31.4-freebsd4.tar.gz) = 346885bf714f8b4c0781d6f8f7b47fc3 +SIZE (drweb-4.31.4-freebsd4.tar.gz) = 2136664 +MD5 (drweb-4.31.4-freebsd5.tar.gz) = be12c95a4ec84081bbcd605f709e627a +SIZE (drweb-4.31.4-freebsd5.tar.gz) = 2441506 diff -ruN drweb/files/patch-ab drweb.new/files/patch-ab --- drweb/files/patch-ab Sat Feb 28 17:17:44 2004 +++ drweb.new/files/patch-ab Mon Apr 26 12:23:18 2004 @@ -1,6 +1,52 @@ ---- usr/local/drweb/update/update.pl.orig Sat Nov 1 07:59:33 2003 -+++ usr/local/drweb/update/update.pl Sat Nov 1 08:00:54 2003 -@@ -41,7 +41,7 @@ +--- usr/local/drweb/update/update.pl.orig Thu Apr 22 21:49:14 2004 ++++ usr/local/drweb/update/update.pl Mon Apr 26 12:17:54 2004 +@@ -1,19 +1,47 @@ + #! /usr/bin/perl + #------------------------------------------------------------------------------ +-# drwebd update script (Linux only!), version 1.02 ++# drwebd update script, version 1.01 + #------------------------------------------------------------------------------ +-use strict; ++# ++# ChangeLog ++# ++# 24-11-2002, Vsevolod Lutovinov <vla@drweb.ru> ++# ++# * CRC32 implementation, no more String::CRC32 needed ++# * fetch or wget search rewritten ++# ++#------------------------------------------------------------------------------ ++#use strict; + + #------------------------------------------------------------------------------ +-my $TEMP = '/tmp'; +-my $url = 'http://update.drweb.com'; +-my $md5 = 'md5sum'; +-my $md5sum = ''; ++my $TEMP = "/tmp"; ++ ++my $system = ''; ++$system = "linux" if( $^O =~ /Linux/i ); ++$system = "freebsd4" if( $^O =~ /FreeBSD/i ); ++$system = "openbsd" if( $^O =~ /OpenBSD/i ); ++$system = "solaris" if( $^O =~ /Solaris/i ); ++$system = "netbsd" if( $^O =~ /NetBSD/i ); ++die "Unsupported OS!\n" unless $system; ++ ++my @urls = ++( ++# ++# commercial URL example: ++# "http://LOGIN:PASSWORD\@updates.drweb.ru/$system/drweb32.lst" ++# ++ # main URL: ++ "http://updates.drweb.ru/free/$system/drweb32.lst", ++ # emergency URL's: ++ "http://www.dials.ru/drweb/$system/drweb32.lst" ++ # ... ++ # ... ++); + my $ini = $ARGV[0]; if( $ini eq '' ) { @@ -9,12 +55,82 @@ $ini = '/etc/drweb/drweb32.ini' if $ini eq ''; } -@@ -79,7 +79,7 @@ +@@ -45,21 +73,13 @@ + my $bases = ''; + my $update = ''; + my $pidFile = ''; +-my $keyFile = ''; + + readIniFile( $ini ); + die "Engine is not defined!" unless $engine; die "Bases path is not defined!" unless $bases; die "Update path is not defined!" unless $update; +- die "Key file is not defined!" unless $keyFile; +- +- $md5sum = `$md5 $keyFile`; +- ( $md5sum, undef ) = split( '[\s*]', $md5sum ); +- chomp $md5sum; +- die "Can not calculate md5 sum of file $keyFile\n" +- unless $md5sum; - $pidFile = "/var/drweb/run/drwebd.pid" if( $pidFile eq '' ); + $pidFile = "%INSTALL%/drwebd.pid" if( $pidFile eq '' ); my $version = readVersion( $engine ); die "Engine version error (invalid engine?)" unless $version; +@@ -70,10 +90,12 @@ + $Paths{ "vdb\$" } = "$bases"; + $Paths{ "dll\$" } = "$engine"; + +-print "$fetch - $url/$md5sum/linux/drweb32.lst\n"; ++ foreach my $url ( @urls ) ++ { ++ next if $url !~ m/^(.*)\/([\w.]+)$/o; # invalid URL ++ my ( $b_url, $l_url ) = ( $1, $2 ); + +- open FH, "$fetch - $url/$md5sum/linux/drweb32.lst |" +- or die "Can not fetch $url/$md5sum/linux/drweb32.lst\n"; ++ open FH, "$fetch - $url |" or next; + my $my_section = 0; + + while ( <FH> ) +@@ -125,10 +147,9 @@ + } + + my $newfile = "$TEMP/$file".rand(); +- system( "$fetch $newfile $url/$md5sum/linux/$file" ); ++ system( "$fetch $newfile $b_url/$file" ); + warn "Can't get $file" unless -e "$newfile"; +- $added{ fullPath( $file ) } = $newfile, +- next if $add{$file} ne '' and $add{$file} == &filecrc32( "$newfile" ); ++ $added{ fullPath( $file ) } = $newfile, next if $add{$file} ne '' and $add{$file} == &filecrc32( "$newfile" ); + warn "Can't get $file with valid CRC32"; + unlink "$newfile"; + } +@@ -152,6 +173,9 @@ + chomp( $pid ); + kill 'HUP', $pid; + } ++ exit; ++ } ++ + + #------------------------------------------------------------------------------ + sub readVersion +@@ -197,16 +221,6 @@ + $pidFile= $v; + $pidFile =~ s/^[\"\t =]*//g; + $pidFile =~ s/[\" \t]*$//g; +- } +- } +- elsif( /^Key/ ) +- { +- my ( $k, $v ) = split( 'Key' ); +- if( $v ne '' ) +- { +- $keyFile= $v; +- $keyFile =~ s/^[\"\t =]*//g; +- $keyFile =~ s/[\" \t]*$//g; + } + } + elsif( /^VirusBase/ && $bases eq '' ) # first base path only diff -ruN drweb/pkg-install drweb.new/pkg-install --- drweb/pkg-install Fri Mar 26 02:14:40 2004 +++ drweb.new/pkg-install Mon Apr 26 12:57:36 2004 @@ -36,6 +36,7 @@ if ! grep -q "^!${USER}" /etc/syslog.conf; then echo "You may also add this lines to your /etc/syslog.conf:" + echo "!drwebd" echo "*.* /var/log/drwebd.log" echo "" fi diff -ruN drweb/pkg-plist drweb.new/pkg-plist --- drweb/pkg-plist Fri Mar 26 02:14:40 2004 +++ drweb.new/pkg-plist Mon Apr 26 12:55:32 2004 @@ -3,6 +3,17 @@ drweb/ChangeLog drweb/README drweb/README.RUS +drweb/bases/drw43112.vdb +drweb/bases/drw43111.vdb +drweb/bases/drw43110.vdb +drweb/bases/drw43109.vdb +drweb/bases/drw43108.vdb +drweb/bases/drw43107.vdb +drweb/bases/drw43106.vdb +drweb/bases/drw43105.vdb +drweb/bases/drw43104.vdb +drweb/bases/drw43103.vdb +drweb/bases/drw43102.vdb drweb/bases/drw43101.vdb drweb/bases/drwebase.vdb drweb/doc/readme.daemon @@ -11,15 +22,15 @@ drweb/doc/readme.scanner drweb/doc/readme.scanner.rus drweb/drweb -@unexec if [ -f %D/drweb/drweb.key ] && cmp -s %D/drweb/drweb.key %D/drweb/drweb.key-dist; then rm -f %D/drweb/drweb.key; fi -drweb/drweb.key-dist +@unexec if [ -f %D/drweb/drweb.key ] && cmp -s %D/drweb/drweb.key %D/drweb/drweb.key-distr; then rm -f %D/drweb/drweb.key; fi +drweb/drweb.key-distr @exec if [ ! -f %D/drweb/drweb.key ] ; then cp -p %D/%F %B/drweb.key; fi -@unexec if [ -f %D/drweb/drweb32.ini ] && cmp -s %D/drweb/drweb32.ini %D/drweb/drweb32.ini-dist; then rm -f %D/drweb/drweb32.ini; fi -drweb/drweb32.ini-dist +@unexec if [ -f %D/drweb/drweb32.ini ] && cmp -s %D/drweb/drweb32.ini %D/drweb/drweb32.ini-distr; then rm -f %D/drweb/drweb32.ini; fi +drweb/drweb32.ini-distr @exec if [ ! -f %D/drweb/drweb32.ini ] ; then cp -p %D/%F %B/drweb32.ini; fi drweb/drwebd -@unexec if [ -f %D/drweb/drwebd.key ] && cmp -s %D/drweb/drwebd.key %D/drweb/drwebd.key-dist; then rm -f %D/drweb/drwebd.key; fi -drweb/drwebd.key-dist +@unexec if [ -f %D/drweb/drwebd.key ] && cmp -s %D/drweb/drwebd.key %D/drweb/drwebd.key-distr; then rm -f %D/drweb/drwebd.key; fi +drweb/drwebd.key-distr @exec if [ ! -f %D/drweb/drwebd.key ] ; then cp -p %D/%F %B/drwebd.key; fi drweb/drwebdc drweb/lib/drweb32.dll >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200404261009.i3QA9vOS009963>