head 1.34; access; symbols OPENPKG_E1_MP_HEAD:1.16 OPENPKG_E1_MP:1.16 OPENPKG_E1_MP_2_STABLE:1.12.2.1 OPENPKG_E1_FP:1.12.2.1 OPENPKG_2_STABLE_MP:1.16 OPENPKG_2_STABLE_20061018:1.12.2.1 OPENPKG_2_STABLE_20060622:1.12 OPENPKG_2_STABLE:1.12.0.2 OPENPKG_2_STABLE_BP:1.12 OPENPKG_2_5_RELEASE:1.10 OPENPKG_2_5_SOLID:1.10.0.2 OPENPKG_2_5_SOLID_BP:1.10 OPENPKG_2_4_RELEASE:1.9 OPENPKG_2_4_SOLID:1.9.0.2 OPENPKG_2_4_SOLID_BP:1.9 OPENPKG_CW_FP:1.8 OPENPKG_2_3_RELEASE:1.8 OPENPKG_2_3_SOLID:1.8.0.2 OPENPKG_2_3_SOLID_BP:1.8 OPENPKG_2_2_RELEASE:1.7 OPENPKG_2_2_SOLID:1.7.0.2 OPENPKG_2_2_SOLID_BP:1.7 OPENPKG_2_1_RELEASE:1.6 OPENPKG_2_1_SOLID:1.6.0.2 OPENPKG_2_1_SOLID_BP:1.6 OPENPKG_1_3_SOLID:1.4.0.2 OPENPKG_2_0_RELEASE:1.3 OPENPKG_2_0_SOLID:1.3.0.2 OPENPKG_2_0_SOLID_BP:1.3; locks; strict; comment @# @; 1.34 date 2009.10.12.16.13.14; author rse; state Exp; branches; next 1.33; commitid ulHZogd6l232ng7u; 1.33 date 2009.09.28.15.42.49; author rse; state Exp; branches; next 1.32; commitid 6JIiut3eoHjvEs5u; 1.32 date 2009.09.21.15.54.18; author rse; state Exp; branches; next 1.31; commitid JxgcSVN4BCjoWy4u; 1.31 date 2009.05.19.17.22.37; author rse; state Exp; branches; next 1.30; commitid DIkjpIVToaZNrvOt; 1.30 date 2009.04.30.21.41.24; author rse; state Exp; branches; next 1.29; commitid ToasgiK8ZjMru5Mt; 1.29 date 2009.04.07.21.30.03; author rse; state Exp; branches; next 1.28; commitid K9X6ymvDDnJna8Jt; 1.28 date 2009.02.06.22.24.08; author rse; state Exp; branches; next 1.27; commitid WJR9mo6tqMpwoqBt; 1.27 date 2008.12.16.07.43.03; author rse; state Exp; branches; next 1.26; commitid JJpYqcOSDCiSbFut; 1.26 date 2008.10.05.07.48.44; author rse; state Exp; branches; next 1.25; commitid apbPAhYGlNIjxplt; 1.25 date 2008.09.07.17.59.25; author rse; state Exp; branches; next 1.24; commitid 5pTr563oqIyCORht; 1.24 date 2008.05.21.18.29.49; author rse; state Exp; branches; next 1.23; commitid LcO1Va3QzuEhuR3t; 1.23 date 2008.02.17.17.19.38; author rse; state Exp; branches; next 1.22; commitid R6pqTz5nWqyw7MRs; 1.22 date 2008.01.24.16.02.38; author cs; state Exp; branches; next 1.21; commitid UnWdRKCSHS9WsGOs; 1.21 date 2008.01.23.20.07.53; author rse; state Exp; branches; next 1.20; commitid JO5oGmoh0Sr4RzOs; 1.20 date 2007.12.03.07.28.39; author rse; state Exp; branches; next 1.19; commitid AWTLTKE8pD5fiXHs; 1.19 date 2007.11.13.16.45.31; author cs; state Exp; branches; next 1.18; commitid Ss55qN2rEq991rFs; 1.18 date 2007.08.29.17.24.43; author rse; state Exp; branches; next 1.17; commitid Vtk3hnXxqi43GFvs; 1.17 date 2007.05.14.08.11.51; author rse; state Exp; branches; next 1.16; commitid nbZgc0BJ1F8D3Shs; 1.16 date 2006.09.11.05.38.59; author cs; state Exp; branches; next 1.15; commitid AvxMPjRPBbAr5nMr; 1.15 date 2006.08.24.09.20.30; author rse; state Exp; branches; next 1.14; commitid JW3hqcCE3dhjT4Kr; 1.14 date 2006.07.30.16.14.47; author rse; state Exp; branches; next 1.13; commitid JSpzn8D3Q8egZTGr; 1.13 date 2006.07.14.15.57.03; author thl; state Exp; branches; next 1.12; commitid o3VaHprrQ7i4pQEr; 1.12 date 2006.05.15.07.36.05; author rse; state Exp; branches 1.12.2.1; next 1.11; commitid 6uZoCmuDixRLy5xr; 1.11 date 2006.05.14.19.10.46; author rse; state Exp; branches; next 1.10; commitid J7dX52zRmQt4r1xr; 1.10 date 2005.07.06.14.29.48; author rse; state Exp; branches; next 1.9; 1.9 date 2005.05.03.18.19.16; author rse; state dead; branches 1.9.2.1; next 1.8; 1.8 date 2004.12.29.14.39.18; author rse; state Exp; branches; next 1.7; 1.7 date 2004.08.08.17.48.55; author rse; state Exp; branches; next 1.6; 1.6 date 2004.07.02.08.37.31; author tho; state Exp; branches; next 1.5; 1.5 date 2004.05.13.08.20.18; author rse; state Exp; branches; next 1.4; 1.4 date 2004.04.29.15.06.58; author thl; state Exp; branches 1.4.2.1; next 1.3; 1.3 date 2003.07.22.06.22.03; author thl; state dead; branches 1.3.2.1; next 1.2; 1.2 date 2003.07.04.08.05.34; author rse; state Exp; branches; next 1.1; 1.1 date 2003.02.12.16.03.25; author ps; state Exp; branches; next ; 1.12.2.1 date 2006.10.16.14.55.53; author rse; state Exp; branches; next ; commitid iZxwRSmmWscPXUQr; 1.9.2.1 date 2005.07.09.19.33.59; author rse; state Exp; branches; next ; 1.4.2.1 date 2004.04.29.19.56.27; author thl; state Exp; branches; next 1.4.2.2; 1.4.2.2 date 2004.07.06.13.41.41; author tho; state Exp; branches; next ; 1.3.2.1 date 2004.04.29.16.17.53; author thl; state Exp; branches; next 1.3.2.2; 1.3.2.2 date 2004.07.06.13.33.25; author tho; state Exp; branches; next 1.3.2.3; 1.3.2.3 date 2004.08.04.14.05.41; author thl; state Exp; branches; next ; desc @@ 1.34 log @modifying package: rrdtool-1.3.8 20090928 -> 20091012 @ text @Index: RRDTool-OO-0.27/Makefile.PL --- RRDTool-OO-0.27/Makefile.PL.orig 2009-09-27 22:19:17 +0200 +++ RRDTool-OO-0.27/Makefile.PL 2009-09-28 17:33:53 +0200 @@@@ -2,52 +2,12 @@@@ use ExtUtils::MakeMaker; use File::Basename; -# Check if RRDs is installed - -eval "use RRDs 1.2011"; - - # (1) libcgi is missing on most Linux/FreeBSD systems, and we - # don't need it anyway. - # (2) as of rrdtool-1.2.11, tcl libs didn't compile, so let's - # leave them out. -my $CONFIGURE_OPTS = "--enable-perl-site-install --prefix=/usr --disable-tcl --disable-rrdcgi"; - -my $DIST_URL = -"http://oss.oetiker.ch/rrdtool/pub/rrdtool.tar.gz"; - -if($@@) { - print < != 0) { - die "\nYou need to be root to do this.\n"; - } - eval { install_RRDs() }; - if($@@) { - print $@@; - note(); - exit 0; - } - } else { - note(); - exit 0; - } -} - # See lib/ExtUtils/MakeMaker.pm for details of how to influence # the contents of the Makefile that is written. WriteMakefile( NAME => 'RRDTool::OO', VERSION_FROM => 'lib/RRDTool/OO.pm', # finds $VERSION PREREQ_PM => { - Log::Log4perl => '0.40', RRDs => 0, }, # e.g., Module::Name => 1.1 ($] >= 5.005 ? ## Add these new keywords supported since 5.005 Index: RRDTool-OO-0.27/lib/RRDTool/OO.pm --- RRDTool-OO-0.27/lib/RRDTool/OO.pm.orig 2009-09-27 22:28:16 +0200 +++ RRDTool-OO-0.27/lib/RRDTool/OO.pm 2009-09-28 17:32:58 +0200 @@@@ -5,7 +5,6 @@@@ use warnings; use Carp; use RRDs; -use Log::Log4perl qw(:easy); our $VERSION = '0.26'; @@@@ -188,7 +187,7 @@@@ # Check if we got all mandatory parameters for(@@{$ref->{mandatory}}) { if(! exists $options_hash{$_}) { - Log::Log4perl->get_logger("")->logcroak( + croak( "Mandatory parameter '$_' not set " . "in $method() (@@{[%mandatory]}) (@@$options)"); } @@@@ -200,7 +199,7 @@@@ for(keys %options_hash) { if(! exists $optional{$_} and ! exists $mandatory{$_}) { - Log::Log4perl->get_logger("")->logcroak( + croak( "Illegal parameter '$_' in $method()"); } } Index: bindings/perl-shared/Makefile.PL --- bindings/perl-shared/Makefile.PL.orig 2008-12-05 16:39:55 +0100 +++ bindings/perl-shared/Makefile.PL 2009-09-28 17:32:58 +0200 @@@@ -1,36 +1,7 @@@@ use ExtUtils::MakeMaker; use Config; -# See lib/ExtUtils/MakeMaker.pm for details of how to influence -# the contents of the Makefile that is written. -# if the last argument when calling Makefile.PL is RPATH=/... and ... is the -# path to librrd.so then the Makefile will be written such that RRDs.so knows -# where to find librrd.so later on ... -my $R=""; -if ($ARGV[-1] =~ /RPATH=(\S+)/){ - pop @@ARGV; - my $rp = $1; - for ($^O){ - /linux/ && do{ $R = "-Wl,--rpath -Wl,$rp"}; - /hpux/ && do{ $R = "+b$rp"}; - /solaris/ && do{ $R = "-R$rp"}; - /bsd/ && do{ $R = "-R$rp"}; - /aix/ && do{ $R = "-Wl,-blibpath:$rp"}; - } -} - -# darwin works without this because librrd contains its -# install_name which will includes the final location of the -# library after it is installed. This install_name gets transfered -# to the perl shared object. - -my $librrd; -if ($^O eq 'darwin'){ - $librrd = '-lrrd'; -} -else { - $librrd = "-L../../src/.libs/ $R -lrrd"; -} +my $librrd = "-L../../src/.libs/ -lrrd -L$Config{prefix}/lib -lcairo -lpangocairo -lpixman-1 -lpango -lpangoft2 -lfreetype -lpng -lgobject2 -lgio2 -lgmodule2 -lglib2 -lfontconfig -lfreetype -lxml2 -lexpat -lpcre -lz -liconv -lintl"; WriteMakefile( 'NAME' => 'RRDs', Index: bindings/python/setup.py --- bindings/python/setup.py.orig 2008-03-15 11:39:48 +0100 +++ bindings/python/setup.py 2009-09-28 17:32:58 +0200 @@@@ -47,7 +47,7 @@@@ Extension( "rrdtoolmodule", ["rrdtoolmodule.c"], - libraries=['rrd'], + libraries=['rrd', 'freetype', 'art_lgpl', 'png', 'z'], library_dirs=[library_dir], include_dirs=[include_dir], ) Index: configure --- configure.orig 2009-05-19 15:45:23 +0200 +++ configure 2009-09-28 17:32:58 +0200 @@@@ -23293,7 +23293,7 @@@@ $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS -LIBS="-lpango-1.0 $LIBS" +LIBS="-lpango $LIBS" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF @@@@ -23482,7 +23482,7 @@@@ fi if test "x$ac_cv_header_pango_pango_h" = x""yes; then - LIBS="-lpango-1.0 ${LIBS}";EX_CHECK_STATE=YES + LIBS="-lpango ${LIBS}";EX_CHECK_STATE=YES fi @@@@ -23545,7 +23545,7 @@@@ $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS -LIBS="-lpango-1.0 $LIBS" +LIBS="-lpango $LIBS" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF @@@@ -25049,9 +25049,9 @@@@ $as_echo_n "checking for headers required to compile python extensions... " >&6; } py_prefix=`$PYTHON -c "import sys; print sys.prefix"` py_exec_prefix=`$PYTHON -c "import sys; print sys.exec_prefix"` -PYTHON_INCLUDES="-I${py_prefix}/include/python${PYTHON_VERSION}" +PYTHON_INCLUDES="-I${py_prefix}/include/python${PYTHON_VERSION} -I${py_prefix}/include/python" if test "$py_prefix" != "$py_exec_prefix"; then - PYTHON_INCLUDES="$PYTHON_INCLUDES -I${py_exec_prefix}/include/python${PYTHON_VERSION}" + PYTHON_INCLUDES="$PYTHON_INCLUDES -I${py_exec_prefix}/include/python${PYTHON_VERSION} -I${py_exec_prefix}/include/python" fi save_CPPFLAGS="$CPPFLAGS" Index: src/rrd_open.c --- src/rrd_open.c.orig 2009-05-19 15:45:05 +0200 +++ src/rrd_open.c 2009-09-28 17:32:58 +0200 @@@@ -219,7 +219,7 @@@@ #endif if (rdwr & RRD_CREAT) goto out_done; -#ifdef USE_MADVISE +#if defined(USE_MADVISE) && defined(MADV_WILLNEED) && defined(MADV_SEQUENTIAL) && defined(MADV_RANDOM) if (rdwr & RRD_COPY) { /* We will read everything in a moment (copying) */ madvise(data, rrd_file->file_len, MADV_WILLNEED | MADV_SEQUENTIAL); @@@@ -252,7 +252,7 @@@@ rrd->stat_head->version); goto out_nullify_head; } -#if defined USE_MADVISE +#if defined(USE_MADVISE) && defined(MADV_WILLNEED) /* the ds_def will be needed soonish, so hint accordingly */ madvise(data + PAGE_START(offset), sizeof(ds_def_t) * rrd->stat_head->ds_cnt, MADV_WILLNEED); @@@@ -260,7 +260,7 @@@@ __rrd_read(rrd->ds_def, ds_def_t, rrd->stat_head->ds_cnt); -#if defined USE_MADVISE +#if defined(USE_MADVISE) && defined(MADV_WILLNEED) /* the rra_def will be needed soonish, so hint accordingly */ madvise(data + PAGE_START(offset), sizeof(rra_def_t) * rrd->stat_head->rra_cnt, MADV_WILLNEED); @@@@ -275,7 +275,7 @@@@ rrd_set_error("live_head_t malloc"); goto out_close; } -#if defined USE_MADVISE +#if defined(USE_MADVISE) && defined(MADV_WILLNEED) /* the live_head will be needed soonish, so hint accordingly */ madvise(data + PAGE_START(offset), sizeof(time_t), MADV_WILLNEED); #endif @@@@ -285,7 +285,7 @@@@ rrd->live_head->last_up = *rrd->legacy_last_up; rrd->live_head->last_up_usec = 0; } else { -#if defined USE_MADVISE +#if defined(USE_MADVISE) && defined(MADV_WILLNEED) /* the live_head will be needed soonish, so hint accordingly */ madvise(data + PAGE_START(offset), sizeof(live_head_t), MADV_WILLNEED); @@@@ -415,7 +415,7 @@@@ + rrd->rra_ptr[i].cur_row * rrd->stat_head->ds_cnt * sizeof(rrd_value_t)); if (active_block > dontneed_start) { -#ifdef USE_MADVISE +#if defined(USE_MADVISE) && defined(MADV_DONTNEED) madvise(rrd_file->file_start + dontneed_start, active_block - dontneed_start - 1, MADV_DONTNEED); #endif @@@@ -440,7 +440,7 @@@@ } if (dontneed_start < rrd_file->file_len) { -#ifdef USE_MADVISE +#if defined(USE_MADVISE) && defined(MADV_DONTNEED) madvise(rrd_file->file_start + dontneed_start, rrd_file->file_len - dontneed_start, MADV_DONTNEED); #endif @ 1.33 log @modifying package: rrdtool-1.3.8 20090921 -> 20090928 @ text @d1 3 a3 3 Index: RRDTool-OO-0.26/Makefile.PL --- RRDTool-OO-0.26/Makefile.PL.orig 2009-09-27 22:19:17 +0200 +++ RRDTool-OO-0.26/Makefile.PL 2009-09-28 17:33:53 +0200 d57 3 a59 3 Index: RRDTool-OO-0.26/lib/RRDTool/OO.pm --- RRDTool-OO-0.26/lib/RRDTool/OO.pm.orig 2009-09-27 22:28:16 +0200 +++ RRDTool-OO-0.26/lib/RRDTool/OO.pm 2009-09-28 17:32:58 +0200 @ 1.32 log @fix dependencies for RRDTool::OO @ text @d1 4 a4 4 Index: RRDTool-OO-0.25/Makefile.PL --- RRDTool-OO-0.25/Makefile.PL.orig 2009-04-26 00:51:10 +0200 +++ RRDTool-OO-0.25/Makefile.PL 2009-05-19 19:08:24 +0200 @@@@ -2,55 +2,12 @@@@ a8 2 -my $v = rrdtool_version(); -#print "v=$v\n"; d10 1 a10 1 -eval { require RRDs; }; d21 1 a21 1 -if($@@ or !$v or $v < 1.002011) { d29 1 a29 2 - print "Do you want me to install it for you right now ([y]/n)?"; - my $in = <>; d57 3 a59 3 Index: RRDTool-OO-0.25/lib/RRDTool/OO.pm --- RRDTool-OO-0.25/lib/RRDTool/OO.pm.orig 2009-04-29 16:42:32 +0200 +++ RRDTool-OO-0.25/lib/RRDTool/OO.pm 2009-05-19 19:08:24 +0200 d66 1 a66 1 our $VERSION = '0.25'; d68 1 a68 1 @@@@ -187,7 +186,7 @@@@ d77 1 a77 1 @@@@ -199,7 +198,7 @@@@ d88 1 a88 1 +++ bindings/perl-shared/Makefile.PL 2009-05-19 19:08:24 +0200 d129 1 a129 1 +++ bindings/python/setup.py 2009-05-19 19:08:24 +0200 d141 1 a141 1 +++ configure 2009-05-19 19:13:50 +0200 d183 1 a183 1 +++ src/rrd_open.c 2009-05-19 19:08:24 +0200 @ 1.31 log @upgrading package: rrdtool 1.3.7 -> 1.3.8 @ text @d126 1 a126 1 +my $librrd = "-L../../src/.libs/ -lrrd -L$Config{prefix}/lib -lfreetype -lpng -lz -lart_lgpl"; @ 1.30 log @modifying package: rrdtool-1.3.7 20090407 -> 20090430 @ text @d2 2 a3 2 --- RRDTool-OO-0.25/Makefile.PL.orig 2008-01-24 04:29:54 +0100 +++ RRDTool-OO-0.25/Makefile.PL 2008-12-16 08:35:38 +0100 d61 2 a62 2 --- RRDTool-OO-0.25/lib/RRDTool/OO.pm.orig 2008-05-20 11:17:57 +0200 +++ RRDTool-OO-0.25/lib/RRDTool/OO.pm 2008-12-16 08:35:38 +0100 d69 1 a69 1 our $VERSION = '0.22'; d71 1 a71 1 @@@@ -183,7 +182,7 @@@@ d80 1 a80 1 @@@@ -195,7 +194,7 @@@@ d91 1 a91 1 +++ bindings/perl-shared/Makefile.PL 2008-12-16 08:37:40 +0100 d132 1 a132 1 +++ bindings/python/setup.py 2008-12-16 08:35:38 +0100 d143 4 a146 4 --- configure.orig 2008-12-15 23:06:39 +0100 +++ configure 2008-12-16 08:35:38 +0100 @@@@ -30827,7 +30827,7 @@@@ echo $ECHO_N "(cached) $ECHO_C" >&6 d154 1 a154 1 @@@@ -31010,7 +31010,7 @@@@ d157 1 a157 1 if test $ac_cv_header_pango_pango_h = yes; then d163 2 a164 10 @@@@ -31066,14 +31066,14 @@@@ LDFLAGS=${LDFLAGS}" "`$PKGCONFIG --libs-only-L pangocairo` LDFLAGS=${LDFLAGS}" "`$PKGCONFIG --libs-only-other pangocairo` LIBS=${LIBS}" "`$PKGCONFIG --libs-only-l pangocairo` - unset ac_cv_lib_`echo pango-1.0 | sed 's/[^_a-zA-Z0-9]/_/g;s/^[0-9]/_/'`_pango_cairo_context_set_font_options + unset ac_cv_lib_`echo pango | sed 's/[^_a-zA-Z0-9]/_/g;s/^[0-9]/_/'`_pango_cairo_context_set_font_options { echo "$as_me:$LINENO: checking for pango_cairo_context_set_font_options in -lpango-1.0" >&5 echo $ECHO_N "checking for pango_cairo_context_set_font_options in -lpango-1.0... $ECHO_C" >&6; } if test "${ac_cv_lib_pango_1_0_pango_cairo_context_set_font_options+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 d172 2 a173 2 @@@@ -32551,9 +32551,9 @@@@ echo $ECHO_N "checking for headers required to compile python extensions... $ECHO_C" >&6; } d185 3 a187 3 --- src/rrd_open.c.orig 2008-12-15 23:06:22 +0100 +++ src/rrd_open.c 2008-12-16 08:35:38 +0100 @@@@ -218,7 +218,7 @@@@ d196 1 a196 1 @@@@ -251,7 +251,7 @@@@ d205 1 a205 1 @@@@ -259,7 +259,7 @@@@ d214 1 a214 1 @@@@ -274,7 +274,7 @@@@ d223 1 a223 1 @@@@ -284,7 +284,7 @@@@ d232 1 a232 1 @@@@ -414,7 +414,7 @@@@ d241 1 a241 1 @@@@ -439,7 +439,7 @@@@ @ 1.29 log @modifying package: rrdtool-1.3.7 20090407 again @ text @d1 3 a3 3 Index: RRDTool-OO-0.24/Makefile.PL --- RRDTool-OO-0.24/Makefile.PL.orig 2008-01-24 04:29:54 +0100 +++ RRDTool-OO-0.24/Makefile.PL 2008-12-16 08:35:38 +0100 d60 3 a62 3 Index: RRDTool-OO-0.24/lib/RRDTool/OO.pm --- RRDTool-OO-0.24/lib/RRDTool/OO.pm.orig 2008-05-20 11:17:57 +0200 +++ RRDTool-OO-0.24/lib/RRDTool/OO.pm 2008-12-16 08:35:38 +0100 @ 1.28 log @modifying package: rrdtool-1.3.6 20090119 -> 20090206 @ text @d1 3 a3 3 Index: RRDTool-OO-0.23/Makefile.PL --- RRDTool-OO-0.23/Makefile.PL.orig 2008-01-24 04:29:54 +0100 +++ RRDTool-OO-0.23/Makefile.PL 2008-12-16 08:35:38 +0100 d60 3 a62 3 Index: RRDTool-OO-0.23/lib/RRDTool/OO.pm --- RRDTool-OO-0.23/lib/RRDTool/OO.pm.orig 2008-05-20 11:17:57 +0200 +++ RRDTool-OO-0.23/lib/RRDTool/OO.pm 2008-12-16 08:35:38 +0100 @ 1.27 log @upgrading package: rrdtool 1.3.4 -> 1.3.5 @ text @d1 3 a3 3 Index: RRDTool-OO-0.22/Makefile.PL --- RRDTool-OO-0.22/Makefile.PL.orig 2008-01-24 04:29:54 +0100 +++ RRDTool-OO-0.22/Makefile.PL 2008-12-16 08:35:38 +0100 d60 3 a62 3 Index: RRDTool-OO-0.22/lib/RRDTool/OO.pm --- RRDTool-OO-0.22/lib/RRDTool/OO.pm.orig 2008-05-20 11:17:57 +0200 +++ RRDTool-OO-0.22/lib/RRDTool/OO.pm 2008-12-16 08:35:38 +0100 @ 1.26 log @upgrading package: rrdtool 1.3.3 -> 1.3.4 @ text @d3 1 a3 1 +++ RRDTool-OO-0.22/Makefile.PL 2008-10-05 09:39:11 +0200 d62 1 a62 1 +++ RRDTool-OO-0.22/lib/RRDTool/OO.pm 2008-10-05 09:39:11 +0200 d90 3 a92 3 --- bindings/perl-shared/Makefile.PL.orig 2008-09-19 22:34:42 +0200 +++ bindings/perl-shared/Makefile.PL 2008-10-05 09:40:49 +0200 @@@@ -1,30 +1,7 @@@@ d119 7 a125 1 -my $librrd = "-L../../src/.libs/ $R -lrrd"; d132 1 a132 1 +++ bindings/python/setup.py 2008-10-05 09:39:11 +0200 d143 3 a145 3 --- configure.orig 2008-10-04 18:04:20 +0200 +++ configure 2008-10-05 09:39:11 +0200 @@@@ -30688,7 +30688,7 @@@@ d154 1 a154 1 @@@@ -30871,7 +30871,7 @@@@ d163 1 a163 1 @@@@ -30927,14 +30927,14 @@@@ d180 1 a180 1 @@@@ -32412,9 +32412,9 @@@@ d193 3 a195 3 --- src/rrd_open.c.orig 2008-10-04 18:04:04 +0200 +++ src/rrd_open.c 2008-10-05 09:41:48 +0200 @@@@ -188,7 +188,7 @@@@ d204 1 a204 1 @@@@ -221,7 +221,7 @@@@ d213 1 a213 1 @@@@ -229,7 +229,7 @@@@ d222 1 a222 1 @@@@ -244,7 +244,7 @@@@ d231 1 a231 1 @@@@ -254,7 +254,7 @@@@ d240 1 a240 1 @@@@ -377,7 +377,7 @@@@ d249 1 a249 1 @@@@ -402,7 +402,7 @@@@ @ 1.25 log @upgrading package: rrdtool 1.2.27 -> 1.3.2 @ text @d3 1 a3 1 +++ RRDTool-OO-0.22/Makefile.PL 2008-09-07 19:55:24 +0200 d62 1 a62 1 +++ RRDTool-OO-0.22/lib/RRDTool/OO.pm 2008-09-07 19:55:24 +0200 d90 3 a92 3 --- bindings/perl-shared/Makefile.PL.orig 2008-03-15 11:39:48 +0100 +++ bindings/perl-shared/Makefile.PL 2008-09-07 19:55:24 +0200 @@@@ -1,30 +1,8 @@@@ d97 1 a97 1 - d109 1 d120 1 a121 2 +my $librrd = "-L../../src/.libs/ -lrrd -L$Config{prefix}/lib -lfreetype -lpng -lz -lart_lgpl"; + a123 1 'VERSION_FROM' => 'RRDs.pm', # finds $VERSION d126 1 a126 1 +++ bindings/python/setup.py 2008-09-07 19:55:24 +0200 d137 3 a139 3 --- configure.orig 2008-09-06 16:26:14 +0200 +++ configure 2008-09-07 19:55:56 +0200 @@@@ -30681,7 +30681,7 @@@@ d148 1 a148 1 @@@@ -30864,7 +30864,7 @@@@ d157 1 a157 1 @@@@ -30920,14 +30920,14 @@@@ d174 1 a174 1 @@@@ -32403,9 +32403,9 @@@@ d187 3 a189 3 --- src/rrd_open.c.orig 2008-09-06 16:24:43 +0200 +++ src/rrd_open.c 2008-09-07 19:55:24 +0200 @@@@ -174,7 +174,7 @@@@ d198 1 a198 1 @@@@ -207,7 +207,7 @@@@ d207 1 a207 1 @@@@ -215,7 +215,7 @@@@ d216 1 a216 1 @@@@ -230,7 +230,7 @@@@ d225 1 a225 1 @@@@ -240,7 +240,7 @@@@ d234 1 a234 1 @@@@ -340,7 +340,7 @@@@ d243 1 a243 3 @@@@ -363,7 +363,7 @@@@ rrd->rra_def[i].row_cnt * rrd->stat_head->ds_cnt * sizeof(rrd_value_t); d245 2 d249 2 a250 2 madvise(rrd_file->file_start + dontneed_start, rrd_file->file_len - dontneed_start, MADV_DONTNEED); @ 1.24 log @modifying package: rrdtool-1.2.27 20080312 -> 20080521 @ text @d3 1 a3 1 +++ RRDTool-OO-0.22/Makefile.PL 2008-02-17 18:16:36 +0100 d61 2 a62 2 --- RRDTool-OO-0.22/lib/RRDTool/OO.pm.orig 2008-01-24 04:39:02 +0100 +++ RRDTool-OO-0.22/lib/RRDTool/OO.pm 2008-02-17 18:16:36 +0100 d69 1 a69 1 our $VERSION = '0.21'; d71 1 a71 1 @@@@ -175,7 +174,7 @@@@ d80 1 a80 1 @@@@ -187,7 +186,7 @@@@ d90 2 a91 2 --- bindings/perl-shared/Makefile.PL.orig 2008-02-17 11:26:32 +0100 +++ bindings/perl-shared/Makefile.PL 2008-02-17 18:16:36 +0100 d126 2 a127 2 --- bindings/python/setup.py.orig 2008-02-17 11:26:32 +0100 +++ bindings/python/setup.py 2008-02-17 18:16:36 +0100 d138 38 a175 3 --- configure.orig 2008-02-17 11:26:46 +0100 +++ configure 2008-02-17 18:16:36 +0100 @@@@ -28385,9 +28385,9 @@@@ d187 60 a246 6 Index: src/rrd_update.c --- src/rrd_update.c.orig 2008-02-17 11:26:32 +0100 +++ src/rrd_update.c 2008-02-17 18:17:35 +0100 @@@@ -429,7 +429,7 @@@@ fclose(rrd_file); return(-1); d249 4 a252 4 +#if defined(HAVE_MADVISE) && defined(MADV_RANDOM) /* when we use mmaping we tell the kernel the mmap equivalent of POSIX_FADV_RANDOM */ madvise(rrd_mmaped_file,rrd_filesize,MADV_RANDOM); @ 1.23 log @upgrading package: rrdtool 1.2.26 -> 1.2.27 @ text @d1 3 a3 3 Index: RRDTool-OO-0.21/Makefile.PL --- RRDTool-OO-0.21/Makefile.PL.orig 2008-01-24 04:29:54 +0100 +++ RRDTool-OO-0.21/Makefile.PL 2008-02-17 18:16:36 +0100 d60 3 a62 3 Index: RRDTool-OO-0.21/lib/RRDTool/OO.pm --- RRDTool-OO-0.21/lib/RRDTool/OO.pm.orig 2008-01-24 04:39:02 +0100 +++ RRDTool-OO-0.21/lib/RRDTool/OO.pm 2008-02-17 18:16:36 +0100 @ 1.22 log @modifying package: rrdtool-1.2.26 20080123 -> 20080124 @ text @d2 2 a3 2 --- RRDTool-OO-0.21/Makefile.PL.orig 2008-01-23 08:19:20 +0100 +++ RRDTool-OO-0.21/Makefile.PL 2008-01-23 21:05:33 +0100 d61 2 a62 2 --- RRDTool-OO-0.21/lib/RRDTool/OO.pm.orig 2008-01-23 08:23:52 +0100 +++ RRDTool-OO-0.21/lib/RRDTool/OO.pm 2008-01-23 21:02:36 +0100 d69 1 a69 1 our $VERSION = '0.20'; d71 1 a71 1 @@@@ -173,7 +172,7 @@@@ d80 1 a80 1 @@@@ -185,7 +184,7 @@@@ d90 2 a91 2 --- bindings/perl-shared/Makefile.PL.orig 2007-11-20 01:15:10 +0100 +++ bindings/perl-shared/Makefile.PL 2008-01-23 21:02:36 +0100 d126 2 a127 2 --- bindings/python/setup.py.orig 2007-11-20 01:15:10 +0100 +++ bindings/python/setup.py 2008-01-23 21:02:36 +0100 d138 3 a140 3 --- configure.orig 2007-11-20 01:15:34 +0100 +++ configure 2008-01-23 21:02:36 +0100 @@@@ -27321,9 +27321,9 @@@@ d153 3 a155 3 --- src/rrd_update.c.orig 2007-11-20 01:15:10 +0100 +++ src/rrd_update.c 2008-01-23 21:02:36 +0100 @@@@ -427,7 +427,7 @@@@ d159 2 a160 2 -#ifdef HAVE_MADVISE +#if defined(HAVE_MADVISE) && defined(POSIX_MADV_RANDOM) d163 1 a163 1 madvise(rrd_mmaped_file,rrd_filesize,POSIX_MADV_RANDOM); @ 1.21 log @modifying package: rrdtool-1.2.26 20080101 -> 20080123 @ text @d1 3 a3 3 Index: RRDTool-OO-0.20/Makefile.PL --- RRDTool-OO-0.20/Makefile.PL.orig 2008-01-23 08:19:20 +0100 +++ RRDTool-OO-0.20/Makefile.PL 2008-01-23 21:05:33 +0100 d60 3 a62 3 Index: RRDTool-OO-0.20/lib/RRDTool/OO.pm --- RRDTool-OO-0.20/lib/RRDTool/OO.pm.orig 2008-01-23 08:23:52 +0100 +++ RRDTool-OO-0.20/lib/RRDTool/OO.pm 2008-01-23 21:02:36 +0100 @ 1.20 log @fix building under Solaris 10 @ text @d1 3 a3 3 Index: RRDTool-OO-0.19/Makefile.PL --- RRDTool-OO-0.19/Makefile.PL.orig 2006-09-10 19:21:18 +0200 +++ RRDTool-OO-0.19/Makefile.PL 2007-05-14 10:07:38 +0200 d18 1 a18 1 -my $CONFIGURE_OPTS = "--prefix=/usr --disable-tcl --disable-rrdcgi"; d21 1 a21 1 -"http://people.ee.ethz.ch/~oetiker/webtools/rrdtool/pub/rrdtool.tar.gz"; d60 3 a62 3 Index: RRDTool-OO-0.19/lib/RRDTool/OO.pm --- RRDTool-OO-0.19/lib/RRDTool/OO.pm.orig 2007-05-13 05:59:48 +0200 +++ RRDTool-OO-0.19/lib/RRDTool/OO.pm 2007-05-14 10:08:51 +0200 d69 1 a69 1 our $VERSION = '0.19'; d90 2 a91 2 --- bindings/perl-shared/Makefile.PL.orig 2007-05-02 20:06:11 +0200 +++ bindings/perl-shared/Makefile.PL 2007-05-14 10:07:38 +0200 d126 2 a127 2 --- bindings/python/setup.py.orig 2007-11-13 03:22:56 +0100 +++ bindings/python/setup.py 2007-11-13 17:42:42 +0100 d138 4 a141 4 --- configure.orig 2007-05-02 20:07:06 +0200 +++ configure 2007-08-03 04:37:34 +0200 @@@@ -27259,9 +27259,9 @@@@ echo $ECHO_N "checking for headers required to compile python extensions... $ECHO_C" >&6 d150 1 a150 1 d153 2 a154 2 --- src/rrd_update.c.orig 2007-11-20 01:15:10.000000000 +0100 +++ src/rrd_update.c 2007-12-03 08:21:28.584206100 +0100 @ 1.19 log @upgrading package: rrdtool 1.2.23 -> 1.2.24 @ text @d152 12 @ 1.18 log @make Perl bindings optional and disable by default; add optional and disabled by default Python binding support @ text @d126 2 a127 2 --- bindings/python/setup.py.orig 2007-05-02 20:06 +0200 +++ bindings/python/setup.py 2007-08-03 03:31 +0200 a133 1 runtime_library_dirs=[library_dir], d136 1 @ 1.17 log @modifying package: rrdtool-1.2.23 20070503 -> 20070514 @ text @d125 27 @ 1.16 log @modifying package: rrdtool-1.2.15 20060825 -> 20060911 @ text @d1 3 a3 68 Index: bindings/perl-shared/Makefile.PL --- bindings/perl-shared/Makefile.PL.orig 2006-07-14 14:11:26 +0200 +++ bindings/perl-shared/Makefile.PL 2006-07-14 17:52:24 +0200 @@@@ -1,30 +1,8 @@@@ use ExtUtils::MakeMaker; use Config; -# See lib/ExtUtils/MakeMaker.pm for details of how to influence -# the contents of the Makefile that is written. - -# if the last argument when calling Makefile.PL is RPATH=/... and ... is the -# path to librrd.so then the Makefile will be written such that RRDs.so knows -# where to find librrd.so later on ... -my $R=""; -if ($ARGV[-1] =~ /RPATH=(\S+)/){ - pop @@ARGV; - my $rp = $1; - for ($^O){ - /linux/ && do{ $R = "-Wl,--rpath -Wl,$rp"}; - /hpux/ && do{ $R = "+b$rp"}; - /solaris/ && do{ $R = "-R$rp"}; - /aix/ && do{ $R = "-Wl,-blibpath:$rp"}; - } -} - -# darwin works without this because librrd contains its -# install_name which will includes the final location of the -# library after it is installed. This install_name gets transfered -# to the perl shared object. - -my $librrd = "-L../../src/.libs/ $R -lrrd"; +my $librrd = "-L../../src/.libs/ -lrrd -L$Config{prefix}/lib -lfreetype -lpng -lz -lart_lgpl"; + WriteMakefile( 'NAME' => 'RRDs', 'VERSION_FROM' => 'RRDs.pm', # finds $VERSION Index: RRDTool-OO-0.17/lib/RRDTool/OO.pm --- RRDTool-OO-0.17/lib/RRDTool/OO.pm.orig 2005-08-12 07:21:40 +0200 +++ RRDTool-OO-0.17/lib/RRDTool/OO.pm 2006-05-14 20:59:44 +0200 @@@@ -5,7 +5,6 @@@@ use warnings; use Carp; use RRDs; -use Log::Log4perl qw(:easy); our $VERSION = '0.13'; @@@@ -158,7 +157,7 @@@@ # Check if we got all mandatory parameters for(@@{$ref->{mandatory}}) { if(! exists $options_hash{$_}) { - Log::Log4perl->get_logger("")->logcroak( + croak( "Mandatory parameter '$_' not set " . "in $method() (@@{[%mandatory]}) (@@$options)"); } @@@@ -169,7 +168,7 @@@@ for(keys %options_hash) { if(! exists $optional{$_} and ! exists $mandatory{$_}) { - Log::Log4perl->get_logger("")->logcroak( + croak( "Illegal parameter '$_' in $method()"); } } Index: RRDTool-OO-0.17/Makefile.PL --- RRDTool-OO-0.17.orig/Makefile.PL 2006-09-10 19:21:18 +0200 +++ RRDTool-OO-0.17/Makefile.PL 2006-09-11 07:36:14 +0200 d60 65 @ 1.15 log @modifying package: rrdtool-1.2.15 20060730 -> 20060824 @ text @d37 3 a39 3 Index: RRDTool-OO-0.16/lib/RRDTool/OO.pm --- RRDTool-OO-0.16/lib/RRDTool/OO.pm.orig 2005-08-12 07:21:40 +0200 +++ RRDTool-OO-0.16/lib/RRDTool/OO.pm 2006-05-14 20:59:44 +0200 d66 3 a68 3 Index: RRDTool-OO-0.16/Makefile.PL --- RRDTool-OO-0.16/Makefile.PL.orig 2005-08-12 07:45:16 +0200 +++ RRDTool-OO-0.16/Makefile.PL 2006-05-14 21:01:36 +0200 @ 1.14 log @modifying package: rrdtool-1.2.15 20060714 -> 20060730 @ text @d37 3 a39 3 Index: RRDTool-OO-0.15/lib/RRDTool/OO.pm --- RRDTool-OO-0.15/lib/RRDTool/OO.pm.orig 2005-08-12 07:21:40 +0200 +++ RRDTool-OO-0.15/lib/RRDTool/OO.pm 2006-05-14 20:59:44 +0200 d66 3 a68 3 Index: RRDTool-OO-0.15/Makefile.PL --- RRDTool-OO-0.15/Makefile.PL.orig 2005-08-12 07:45:16 +0200 +++ RRDTool-OO-0.15/Makefile.PL 2006-05-14 21:01:36 +0200 @ 1.13 log @upgrading package: rrdtool 1.2.13 -> 1.2.15 @ text @d37 3 a39 3 Index: RRDTool-OO-0.14/lib/RRDTool/OO.pm --- RRDTool-OO-0.14/lib/RRDTool/OO.pm.orig 2005-08-12 07:21:40 +0200 +++ RRDTool-OO-0.14/lib/RRDTool/OO.pm 2006-05-14 20:59:44 +0200 d66 3 a68 3 Index: RRDTool-OO-0.14/Makefile.PL --- RRDTool-OO-0.14/Makefile.PL.orig 2005-08-12 07:45:16 +0200 +++ RRDTool-OO-0.14/Makefile.PL 2006-05-14 21:01:36 +0200 @ 1.12 log @modifying package: rrdtool-1.2.13 20060514 -> 20060515 @ text @d2 3 a4 3 --- bindings/perl-shared/Makefile.PL.orig 2006-05-04 15:26:28 +0200 +++ bindings/perl-shared/Makefile.PL 2006-05-05 09:19:56 +0200 @@@@ -1,28 +1,7 @@@@ d9 1 a9 1 d21 1 d31 1 d33 1 a33 1 d36 1 @ 1.12.2.1 log @Mass merge from CURRENT to 2-STABLE (all packages except those of JUNK class) @ text @d2 3 a4 3 --- bindings/perl-shared/Makefile.PL.orig 2006-07-14 14:11:26 +0200 +++ bindings/perl-shared/Makefile.PL 2006-07-14 17:52:24 +0200 @@@@ -1,30 +1,8 @@@@ d9 1 a9 1 - a20 1 - /aix/ && do{ $R = "-Wl,-blibpath:$rp"}; d30 1 a31 2 +my $librrd = "-L../../src/.libs/ -lrrd -L$Config{prefix}/lib -lfreetype -lpng -lz -lart_lgpl"; + d34 3 a36 4 'VERSION_FROM' => 'RRDs.pm', # finds $VERSION Index: RRDTool-OO-0.17/lib/RRDTool/OO.pm --- RRDTool-OO-0.17/lib/RRDTool/OO.pm.orig 2005-08-12 07:21:40 +0200 +++ RRDTool-OO-0.17/lib/RRDTool/OO.pm 2006-05-14 20:59:44 +0200 d63 3 a65 3 Index: RRDTool-OO-0.17/Makefile.PL --- RRDTool-OO-0.17.orig/Makefile.PL 2006-09-10 19:21:18 +0200 +++ RRDTool-OO-0.17/Makefile.PL 2006-09-11 07:36:14 +0200 @ 1.11 log @upgrading package: rrdtool 1.2.12 -> 1.2.13 @ text @d34 3 a36 3 Index: RRDTool-OO-0.13/lib/RRDTool/OO.pm --- RRDTool-OO-0.13/lib/RRDTool/OO.pm.orig 2005-08-12 07:21:40 +0200 +++ RRDTool-OO-0.13/lib/RRDTool/OO.pm 2006-05-14 20:59:44 +0200 d63 3 a65 3 Index: RRDTool-OO-0.13/Makefile.PL --- RRDTool-OO-0.13/Makefile.PL.orig 2005-08-12 07:45:16 +0200 +++ RRDTool-OO-0.13/Makefile.PL 2006-05-14 21:01:36 +0200 @ 1.10 log @A recent package change was: > because we provide a shared object for use with perl, its unresolved > freetype dependencies must match symbols in a freetype shared object Just because a Perl DSO RRDs.so requires the FreeType library doesn't mean that we need FreeType in turn as a DSO! Our usual approach since many years is to link those dependency libraries (libfreetype.a) directly into the resulting DSO (RRD.so). That's all which is required. Even if a DSO libfreetype.so exists and is linked, for portability reasons one would need some -Rxxx hacks in addition. So, back out this change and instead fix it the way similar DSO linkage problems were fixed: by linking the DSOs against the static libs. Finally, just linking FreeType was not enough! GD actually in addition requires PNG/ZLib. So, link in those, too. @ text @d2 3 a4 3 --- bindings/perl-shared/Makefile.PL.orig 2005-07-06 16:06:03 +0200 +++ bindings/perl-shared/Makefile.PL 2005-07-06 16:20:33 +0200 @@@@ -1,24 +1,7 @@@@ d10 12 a21 8 -# Specify the location of the archive containing PIC compiled object files. -my $R = ""; - - -for ($^O){ - /linux/ && do{ $R = "-Wl,--rpath -Wl,\$(RPATH)"}; - /hpux/ && do{ $R = "+b\$(RPATH)"}; - /solaris/ && do{ $R = "-R\$(RPATH)"}; d34 88 @ 1.9 log @upgrading package: rrdtool 1.0.49 -> 1.2.1 @ text @d1 26 a26 18 Index: doc/rrdgraph.pod --- doc/rrdgraph.pod.orig 2004-04-06 23:20:25 +0200 +++ doc/rrdgraph.pod 2004-12-29 15:33:30 +0100 @@@@ -16,8 +16,8 @@@@ S<[B<-A>|B<--alt-autoscale>]> S<[B<-M>|B<--alt-autoscale-max>]> S<[B<-N>|B<--no-minor>]> -S<[B<-X>|B<--units-exponent>]> I]> -S<[B<-L>|B<--units-length>]> I]> +S<[B<-X>|B<--units-exponent> I]> +S<[B<-L>|B<--units-length> I]> S<[B<-v>|B<--vertical-label> I]> S<[B<-w>|B<--width> I]> S<[B<-h>|B<--height> I]> Index: doc/rrdtool.pod --- doc/rrdtool.pod.orig 2004-01-17 11:42:37 +0100 +++ doc/rrdtool.pod 2004-12-29 15:37:04 +0100 @@@@ -196,7 +196,25 @@@@ d28 2 a29 37 =head1 SEE ALSO -rrdcreate, rrdupdate, rrdgraph, rrddump, rrdfetch, rrdtune, rrdlast, rrdxport +rrdcgi(1), +rrdcreate(1), +rrddump(1), +rrdfetch(1), +rrdgraph(1), +rrdinfo(1), +rrdlast(1), +rrdresize(1), +rrdrestore(1), +rrdtool(1), +rrdtune(1), +rrdupdate(1), +rrdxport(1). + +rrd-beginners(1), +rrdtutorial(1), +rpntutorial(1), +cdeftutorial(1), +bin_dec_hex(1). =head1 BUGS Index: src/rrd_graph.c --- src/rrd_graph.c.orig 2004-08-08 12:58:13 +0200 +++ src/rrd_graph.c 2004-12-29 15:32:14 +0100 @@@@ -2966,7 +2966,7 @@@@ opt = getopt_long(argc, argv, - "s:e:x:y:v:w:h:iu:l:rb:oc:t:f:a:zgjFYAMX:L:S:RB:O:U:", + "s:e:x:y:v:w:h:iu:l:rb:oc:t:f:a:zgjFYNAMX:L:S:RB:O:U:", long_options, &option_index); if (opt == EOF) @ 1.9.2.1 log @MFC: all latest packaging cleanups and fixes @ text @d1 18 a18 26 Index: bindings/perl-shared/Makefile.PL --- bindings/perl-shared/Makefile.PL.orig 2005-07-06 16:06:03 +0200 +++ bindings/perl-shared/Makefile.PL 2005-07-06 16:20:33 +0200 @@@@ -1,24 +1,7 @@@@ use ExtUtils::MakeMaker; use Config; -# See lib/ExtUtils/MakeMaker.pm for details of how to influence -# the contents of the Makefile that is written. -# Specify the location of the archive containing PIC compiled object files. -my $R = ""; - - -for ($^O){ - /linux/ && do{ $R = "-Wl,--rpath -Wl,\$(RPATH)"}; - /hpux/ && do{ $R = "+b\$(RPATH)"}; - /solaris/ && do{ $R = "-R\$(RPATH)"}; -} - -# darwin works without this because librrd contains its -# install_name which will includes the final location of the -# library after it is installed. This install_name gets transfered -# to the perl shared object. - -my $librrd = "-L../../src/.libs/ $R -lrrd"; +my $librrd = "-L../../src/.libs/ -lrrd -L$Config{prefix}/lib -lfreetype -lpng -lz -lart_lgpl"; d20 37 a56 2 WriteMakefile( 'NAME' => 'RRDs', @ 1.8 log @fix rrdgraph(1) formatting and reference all manpages in rrdtool(1) @ text @@ 1.7 log @upgrading package: rrdtool 1.0.48 -> 1.0.49 @ text @d1 44 d47 1 a47 1 +++ src/rrd_graph.c 2004-08-08 19:43:18 +0200 @ 1.6 log @changed usage of zlib and png from internal to system because of Security Fix (CAN-2002-1363) for png @ text @d2 2 a3 2 --- src/rrd_graph.c.orig 2004-04-06 23:38:14.000000000 +0200 +++ src/rrd_graph.c 2004-05-13 10:17:49.000000000 +0200 d8 1 a8 1 - "s:e:x:y:v:w:h:iu:l:rb:oc:t:f:a:zgjFYAMXL:S:RB:O:U:", a12 19 Index: src/rrd_tool.c --- src/rrd_tool.c.orig 2004-04-06 23:38:15.000000000 +0200 +++ src/rrd_tool.c 2004-05-13 10:17:49.000000000 +0200 @@@@ -340,12 +340,12 @@@@ datai=data; printf(" "); for (i = 0; i Libpng accesses memory that is out of bounds when creating an error message Index: pngerror.c --- libpng-1.0.9/pngerror.c.orig 2002-10-03 13:32:27.000000000 +0200 +++ libpng-1.0.9/pngerror.c 2004-04-28 13:24:22.000000000 +0200 @@@@ -135,10 +135,13 @@@@ buffer[iout] = 0; else { + png_size_t len; + if ((len = png_strlen(message)) > 63) + len = 63; buffer[iout++] = ':'; buffer[iout++] = ' '; - png_memcpy(buffer+iout, message, 64); - buffer[iout+63] = 0; + png_memcpy(buffer+iout, message, len); + buffer[iout+len] = 0; } } @ 1.4 log @SA-2004.017-png @ text @d48 31 @ 1.4.2.1 log @SA-2004.017-png @ text @@ 1.4.2.2 log @SA-2004.030; CAN-2002-1363 @ text @d1 3 a3 45 Index: libpng-1.0.9/pngerror.c --- libpng-1.0.9/pngerror.c.orig 2002-02-26 11:21:54 +0100 +++ libpng-1.0.9/pngerror.c 2004-07-05 17:14:56 +0200 @@@@ -89,10 +89,13 @@@@ buffer[iout] = 0; else { + png_size_t len; + if ((len = png_strlen(message)) > 63) + len = 63; buffer[iout++] = ':'; buffer[iout++] = ' '; - png_memcpy(buffer+iout, message, 64); - buffer[iout+63] = 0; + png_memcpy(buffer+iout, message, len); + buffer[iout+len] = 0; } } Index: libpng-1.0.9/pngrtran.c --- libpng-1.0.9/pngrtran.c.orig 2002-02-26 11:21:54 +0100 +++ libpng-1.0.9/pngrtran.c 2004-07-05 17:13:00 +0200 @@@@ -1848,8 +1848,8 @@@@ /* This changes the data from GG to GGXX */ if (flags & PNG_FLAG_FILLER_AFTER) { - png_bytep sp = row + (png_size_t)row_width; - png_bytep dp = sp + (png_size_t)row_width; + png_bytep sp = row + (png_size_t)row_width * 2; + png_bytep dp = sp + (png_size_t)row_width * 2; for (i = 1; i < row_width; i++) { *(--dp) = hi_filler; @@@@ -1866,8 +1866,8 @@@@ /* This changes the data from GG to XXGG */ else { - png_bytep sp = row + (png_size_t)row_width; - png_bytep dp = sp + (png_size_t)row_width; + png_bytep sp = row + (png_size_t)row_width * 2; + png_bytep dp = sp + (png_size_t)row_width * 2; for (i = 0; i < row_width; i++) { *(--dp) = *(--sp); @@@@ -1924,8 +1924,8 @@@@ d14 1 a14 1 @@@@ -1946,8 +1946,8 @@@@ d25 23 @ 1.3 log @upgrading package: rrdtool 1.0.44 -> 1.0.45 @ text @d1 46 a46 10 --- Makefile.in.orig Thu Jul 3 19:03:40 2003 +++ Makefile.in Fri Jul 4 09:39:53 2003 @@@@ -398,8 +398,8 @@@@ $(INSTALL) -m 644 perl-piped/RRDp.pm $(DESTDIR)$(prefix)/lib/perl $(INSTALL) -m 644 perl-shared/RRDs.pm $(DESTDIR)$(prefix)/lib/perl $(INSTALL) -m 644 perl-shared/blib/arch/auto/RRDs/RRDs.bs $(DESTDIR)$(prefix)/lib/perl/auto/RRDs - [ -f perl-shared/blib/arch/auto/RRDs/RRDs.@@SO_EXT@@ ] && $(INSTALL) -m 755 perl-shared/blib/arch/auto/RRDs/RRDs.@@SO_EXT@@ $(DESTDIR)$(prefix)/lib/perl/auto/RRDs - [ -f perl-shared/blib/arch/auto/RRDs/RRDs.bundle ] && $(INSTALL) -m 755 perl-shared/blib/arch/auto/RRDs/RRDs.bundle $(DESTDIR)$(prefix)/lib/perl/auto/RRDs + [ -f perl-shared/blib/arch/auto/RRDs/RRDs.@@SO_EXT@@ ] && $(INSTALL) -m 755 perl-shared/blib/arch/auto/RRDs/RRDs.@@SO_EXT@@ $(DESTDIR)$(prefix)/lib/perl/auto/RRDs || true + [ -f perl-shared/blib/arch/auto/RRDs/RRDs.bundle ] && $(INSTALL) -m 755 perl-shared/blib/arch/auto/RRDs/RRDs.bundle $(DESTDIR)$(prefix)/lib/perl/auto/RRDs || true a47 2 perl_piped:: $(top_builddir)/perl-piped test -d perl-piped \ @ 1.3.2.1 log @SA-2004.017-png @ text @d1 10 a10 46 --- libpng-1.0.9/pngrtran.c.orig Wed Oct 2 20:20:24 2002 +++ libpng-1.0.9/pngrtran.c Wed Jan 15 11:30:23 2003 @@@@ -1965,8 +1965,8 @@@@ /* This changes the data from RRGGBB to RRGGBBXX */ if (flags & PNG_FLAG_FILLER_AFTER) { - png_bytep sp = row + (png_size_t)row_width * 3; - png_bytep dp = sp + (png_size_t)row_width; + png_bytep sp = row + (png_size_t)row_width * 6; + png_bytep dp = sp + (png_size_t)row_width * 2; for (i = 1; i < row_width; i++) { *(--dp) = hi_filler; @@@@ -1987,8 +1987,8 @@@@ /* This changes the data from RRGGBB to XXRRGGBB */ else { - png_bytep sp = row + (png_size_t)row_width * 3; - png_bytep dp = sp + (png_size_t)row_width; + png_bytep sp = row + (png_size_t)row_width * 6; + png_bytep dp = sp + (png_size_t)row_width * 2; for (i = 0; i < row_width; i++) { *(--dp) = *(--sp); Steve G Libpng accesses memory that is out of bounds when creating an error message Index: pngerror.c --- libpng-1.0.9/pngerror.c.orig 2002-10-03 13:32:27.000000000 +0200 +++ libpng-1.0.9/pngerror.c 2004-04-28 13:24:22.000000000 +0200 @@@@ -135,10 +135,13 @@@@ buffer[iout] = 0; else { + png_size_t len; + if ((len = png_strlen(message)) > 63) + len = 63; buffer[iout++] = ':'; buffer[iout++] = ' '; - png_memcpy(buffer+iout, message, 64); - buffer[iout+63] = 0; + png_memcpy(buffer+iout, message, len); + buffer[iout+len] = 0; } } d12 2 @ 1.3.2.2 log @SA-2004.030; CAN-2002-1363 @ text @d1 3 a3 45 Index: libpng-1.0.9/pngerror.c --- libpng-1.0.9/pngerror.c.orig 2002-02-26 11:21:54 +0100 +++ libpng-1.0.9/pngerror.c 2004-07-05 15:18:58 +0200 @@@@ -89,10 +89,13 @@@@ buffer[iout] = 0; else { + png_size_t len; + if ((len = png_strlen(message)) > 63) + len = 63; buffer[iout++] = ':'; buffer[iout++] = ' '; - png_memcpy(buffer+iout, message, 64); - buffer[iout+63] = 0; + png_memcpy(buffer+iout, message, len); + buffer[iout+len] = 0; } } Index: libpng-1.0.9/pngrtran.c --- libpng-1.0.9/pngrtran.c.orig 2002-02-26 11:21:54 +0100 +++ libpng-1.0.9/pngrtran.c 2004-07-05 15:03:47 +0200 @@@@ -1848,8 +1848,8 @@@@ /* This changes the data from GG to GGXX */ if (flags & PNG_FLAG_FILLER_AFTER) { - png_bytep sp = row + (png_size_t)row_width; - png_bytep dp = sp + (png_size_t)row_width; + png_bytep sp = row + (png_size_t)row_width * 2; + png_bytep dp = sp + (png_size_t)row_width * 2; for (i = 1; i < row_width; i++) { *(--dp) = hi_filler; @@@@ -1866,8 +1866,8 @@@@ /* This changes the data from GG to XXGG */ else { - png_bytep sp = row + (png_size_t)row_width; - png_bytep dp = sp + (png_size_t)row_width; + png_bytep sp = row + (png_size_t)row_width * 2; + png_bytep dp = sp + (png_size_t)row_width * 2; for (i = 0; i < row_width; i++) { *(--dp) = *(--sp); @@@@ -1924,8 +1924,8 @@@@ d14 1 a14 1 @@@@ -1946,8 +1946,8 @@@@ d25 23 @ 1.3.2.3 log @SA-2004.035-png; CAN-2004-0597, CAN-2004-0598, CAN-2004-0599 @ text @a66 353 http://www.graphicsmagick.org/libpng/beta/patches/INFO.txt > [Problems discovered and fixed by] Chris Evans > > 1) Remotely exploitable stack-based buffer overrun in png_handle_tRNS (pngrutil.c) > 2) Dangerous code in png_handle_sBIT (pngrutil.c) CAN-2004-0597 > 3) Possible NULL-pointer crash in png_handle_iCCP (pngrutil.c) > this flaw is duplicated in multiple other locations. CAN-2004-0598 > 4) Theoretical integer overflow in allocation in png_handle_sPLT (pngrutil.c) > 5) Integer overflow in png_read_png (pngread.c) > 6) Integer overflows during progressive reading. > 7) Other flaws. [integer overflows] CAN-2004-0599 http://www.graphicsmagick.org/libpng/beta/patches/libpng-patch03-trns-chunk-overflow.txt Use to patch libpng-1.0.9 through 1.2.5 This fixes the most dangerous of the newly reported vulnerabilities diff -r -U 3 libpng-1.2.5/pngrutil.c libpng-1.2.5patch03/pngrutil.c --- libpng-1.0.9/pngrutil.c.orig Thu Oct 3 06:32:30 2002 +++ libpng-1.0.9/pngrutil.c Fri Jul 23 18:54:36 2004 @@@@ -1241,7 +1241,8 @@@@ /* Should be an error, but we can cope with it */ png_warning(png_ptr, "Missing PLTE before tRNS"); } - else if (length > (png_uint_32)png_ptr->num_palette) + if (length > (png_uint_32)png_ptr->num_palette || + length > PNG_MAX_PALETTE_LENGTH) { png_warning(png_ptr, "Incorrect tRNS chunk length"); png_crc_finish(png_ptr, length); http://www.graphicsmagick.org/libpng/beta/patches/libpng-patch04-get-uint-31.txt Use to patch libpng-1.0.6 through 1.2.5 This patch defines PNG_UINT_31_MAX, PNG_UINT_32_MAX, PNG_SIZE_MAX, and png_get_uint_31(), which are needed by patches 05-08. diff -r -U 3 libpng-1.2.5/png.h libpng-1.2.5patch04/png.h --- libpng-1.0.9/png.h.orig Thu Oct 3 06:32:26 2002 +++ libpng-1.0.9/png.h Fri Jul 23 18:56:27 2004 @@@@ -833,7 +833,11 @@@@ typedef png_info FAR * FAR * png_infopp; /* Maximum positive integer used in PNG is (2^31)-1 */ -#define PNG_MAX_UINT ((png_uint_32)0x7fffffffL) +#define PNG_UINT_31_MAX ((png_uint_32)0x7fffffffL) +#define PNG_UINT_32_MAX (~((png_uint_32)0)) +#define PNG_SIZE_MAX (~((png_size_t)0)) +/* PNG_MAX_UINT is deprecated; use PNG_UINT_31_MAX instead. */ +#define PNG_MAX_UINT PNG_UINT_31_MAX /* These describe the color_type field in png_info. */ /* color type masks */ @@@@ -2655,6 +2659,8 @@@@ PNG_EXTERN png_uint_32 png_get_uint_32 PNGARG((png_bytep buf)); PNG_EXTERN png_uint_16 png_get_uint_16 PNGARG((png_bytep buf)); #endif /* !PNG_READ_BIG_ENDIAN_SUPPORTED */ +PNG_EXTERN png_uint_32 png_get_uint_31 PNGARG((png_structp png_ptr, + png_bytep buf)); /* Initialize png_ptr struct for reading, and allocate any other memory. * (old interface - DEPRECATED - use png_create_read_struct instead). diff -r -U 3 libpng-1.2.5/pngrutil.c libpng-1.2.5patch04/pngrutil.c --- libpng-1.0.9/pngrutil.c.orig Thu Oct 3 06:32:30 2002 +++ libpng-1.0.9/pngrutil.c Fri Jul 23 18:56:27 2004 @@@@ -38,6 +38,14 @@@@ # endif #endif +png_uint_32 /* PRIVATE */ +png_get_uint_31(png_structp png_ptr, png_bytep buf) +{ + png_uint_32 i = png_get_uint_32(buf); + if (i > PNG_UINT_31_MAX) + png_error(png_ptr, "PNG unsigned integer out of range.\n"); + return (i); +} #ifndef PNG_READ_BIG_ENDIAN_SUPPORTED /* Grab an unsigned 32-bit integer from a buffer in big-endian format. */ png_uint_32 /* PRIVATE */ http://www.graphicsmagick.org/libpng/beta/patches/libpng-patch05-pngpread-chunklength.txt Use to patch libpng-1.0.0 through 1.2.5 Requires one of libpng-patch04* diff -r -U 3 libpng-1.2.5/pngpread.c libpng-1.2.5patch05/pngpread.c --- libpng-1.0.9/pngpread.c.orig Thu Oct 3 06:32:28 2002 +++ libpng-1.0.9/pngpread.c Fri Jul 23 18:57:39 2004 @@@@ -208,7 +208,7 @@@@ } png_push_fill_buffer(png_ptr, chunk_length, 4); - png_ptr->push_length = png_get_uint_32(chunk_length); + png_ptr->push_length = png_get_uint_31(png_ptr,chunk_length); png_reset_crc(png_ptr); png_crc_read(png_ptr, png_ptr->chunk_name, 4); png_ptr->mode |= PNG_HAVE_CHUNK_HEADER; @@@@ -591,6 +591,11 @@@@ png_size_t new_max; png_bytep old_buffer; + if (png_ptr->save_buffer_size > PNG_SIZE_MAX - + (png_ptr->current_buffer_size + 256)) + { + png_error(png_ptr, "Potential overflow of save_buffer"); + } new_max = png_ptr->save_buffer_size + png_ptr->current_buffer_size + 256; old_buffer = png_ptr->save_buffer; png_ptr->save_buffer = (png_bytep)png_malloc(png_ptr, @@@@ -637,8 +642,7 @@@@ } png_push_fill_buffer(png_ptr, chunk_length, 4); - png_ptr->push_length = png_get_uint_32(chunk_length); - + png_ptr->push_length = png_get_uint_31(png_ptr,chunk_length); png_reset_crc(png_ptr); png_crc_read(png_ptr, png_ptr->chunk_name, 4); png_ptr->mode |= PNG_HAVE_CHUNK_HEADER; http://www.graphicsmagick.org/libpng/beta/patches/libpng-patch06a-pngread-chunklength.txt Use to patch libpng-1.0.0 through 1.0.12, 1.2.0, and 1.2.1. Requires libpng-patch04-* diff -r -U 3 libpng-1.2.1/pngread.c libpng-1.2.1patch06a/pngread.c --- libpng-1.0.9/pngread.c.orig Wed Dec 12 17:37:21 2001 +++ libpng-1.0.9/pngread.c Fri Jul 23 20:15:23 2004 @@@@ -365,7 +365,7 @@@@ png_uint_32 length; png_read_data(png_ptr, chunk_length, 4); - length = png_get_uint_32(chunk_length); + length = png_get_uint_31(png_ptr,chunk_length); png_reset_crc(png_ptr); png_crc_read(png_ptr, png_ptr->chunk_name, 4); @@@@ -654,7 +654,7 @@@@ png_crc_finish(png_ptr, 0); png_read_data(png_ptr, chunk_length, 4); - png_ptr->idat_size = png_get_uint_32(chunk_length); + png_ptr->idat_size = png_get_uint_31(png_ptr,chunk_length); png_reset_crc(png_ptr); png_crc_read(png_ptr, png_ptr->chunk_name, 4); @@@@ -927,7 +927,7 @@@@ #endif /* PNG_GLOBAL_ARRAYS */ png_read_data(png_ptr, chunk_length, 4); - length = png_get_uint_32(chunk_length); + length = png_get_uint_31(png_ptr,chunk_length); png_reset_crc(png_ptr); png_crc_read(png_ptr, png_ptr->chunk_name, 4); http://www.graphicsmagick.org/libpng/beta/patches/libpng-patch07-png-read-png-overflow.txt Use to patch libpng-1.0.6 through 1.2.5. Libpng-1.0.5 and earlier didn't implement png_read_png(). Requires libpng-patch04-* diff -r -U 3 libpng-1.2.5/pngread.c libpng-1.2.5patch07/pngread.c --- libpng-1.0.9/pngread.c.orig Thu Oct 3 06:32:29 2002 +++ libpng-1.0.9/pngread.c Fri Jul 23 19:01:39 2004 @@@@ -1299,6 +1299,9 @@@@ */ png_read_info(png_ptr, info_ptr); + if (info_ptr->height > PNG_UINT_32_MAX/sizeof(png_bytep)) + png_error(png_ptr,"Image is too high to process with png_read_png()"); + /* -------------- image transformations start here ------------------- */ #if defined(PNG_READ_16_TO_8_SUPPORTED) http://www.graphicsmagick.org/libpng/beta/patches/libpng-patch08-splt-buffer-overflow.txt Use to patch libpng-1.0.6 through 1.2.5. Libpng-1.0.5 and earlier didn't implement png_read_png(). Requires libpng-patch04-* The "sPLT chunk too long" check from Matthias Clasen (RedHat libpng package maintainer) diff -r -U 3 libpng-1.2.5/pngrutil.c libpng-1.2.5patch08/pngrutil.c --- libpng-1.0.9/pngrutil.c.orig Thu Oct 3 06:32:30 2002 +++ libpng-1.0.9/pngrutil.c Fri Jul 23 19:02:48 2004 @@@@ -1154,8 +1154,18 @@@@ } new_palette.nentries = data_length / entry_size; - new_palette.entries = (png_sPLT_entryp)png_malloc( + if (new_palette.nentries > PNG_SIZE_MAX / sizeof(png_sPLT_entry)) + { + png_warning(png_ptr, "sPLT chunk too long"); + return; + } + new_palette.entries = (png_sPLT_entryp)png_malloc( png_ptr, new_palette.nentries * sizeof(png_sPLT_entry)); + if (new_palette.entries == NULL) + { + png_warning(png_ptr, "sPLT chunk requires too much memory"); + return; + } #ifndef PNG_NO_POINTER_INDEXING for (i = 0; i < new_palette.nentries; i++) http://www.graphicsmagick.org/libpng/beta/patches/libpng-patch09-null-iccp-profile.txt Use to patch libpng-1.0.9 through 1.2.5. Does not work with libpng-1.0.6-1.0.8. Libpng-1.0.5 and earlier didn't implement iCCP chunk reading. diff -r -U 3 libpng-1.2.5/pngrutil.c libpng-1.2.5patch09/pngrutil.c --- libpng-1.0.9/pngrutil.c.orig Thu Oct 3 06:32:30 2002 +++ libpng-1.0.9/pngrutil.c Fri Jul 23 19:04:28 2004 @@@@ -977,8 +977,7 @@@@ png_bytep pC; png_charp profile; png_uint_32 skip = 0; - png_uint_32 profile_size = 0; - png_uint_32 profile_length = 0; + png_uint_32 profile_size, profile_length; png_size_t slength, prefix_length, data_length; png_debug(1, "in png_handle_iCCP\n"); http://www.graphicsmagick.org/libpng/beta/patches/libpng-patch10-find-duplicate-chunk.txt Use to patch libpng-1.0.6 through 1.2.5 Does not work with libpng-1.0.5 and earlier. No security problem. The bugs are similar to the one fixed in patch 03, but the only effect is that libpng will fail to detect misplaced harmless duplicate chunks. diff -r -U 3 libpng-1.2.5/pngrutil.c libpng-1.2.5patch10/pngrutil.c --- libpng-1.0.9/pngrutil.c.orig Thu Oct 3 06:32:30 2002 +++ libpng-1.0.9/pngrutil.c Fri Jul 23 19:05:40 2004 @@@@ -579,7 +579,7 @@@@ /* Should be an error, but we can cope with it */ png_warning(png_ptr, "Out of place gAMA chunk"); - else if (info_ptr != NULL && (info_ptr->valid & PNG_INFO_gAMA) + if (info_ptr != NULL && (info_ptr->valid & PNG_INFO_gAMA) #if defined(PNG_READ_sRGB_SUPPORTED) && !(info_ptr->valid & PNG_INFO_sRGB) #endif @@@@ -660,7 +660,7 @@@@ /* Should be an error, but we can cope with it */ png_warning(png_ptr, "Out of place sBIT chunk"); } - else if (info_ptr != NULL && (info_ptr->valid & PNG_INFO_sBIT)) + if (info_ptr != NULL && (info_ptr->valid & PNG_INFO_sBIT)) { png_warning(png_ptr, "Duplicate sBIT chunk"); png_crc_finish(png_ptr, length); @@@@ -729,7 +729,7 @@@@ /* Should be an error, but we can cope with it */ png_warning(png_ptr, "Missing PLTE before cHRM"); - else if (info_ptr != NULL && (info_ptr->valid & PNG_INFO_cHRM) + if (info_ptr != NULL && (info_ptr->valid & PNG_INFO_cHRM) #if defined(PNG_READ_sRGB_SUPPORTED) && !(info_ptr->valid & PNG_INFO_sRGB) #endif @@@@ -891,7 +891,7 @@@@ /* Should be an error, but we can cope with it */ png_warning(png_ptr, "Out of place sRGB chunk"); - else if (info_ptr != NULL && (info_ptr->valid & PNG_INFO_sRGB)) + if (info_ptr != NULL && (info_ptr->valid & PNG_INFO_sRGB)) { png_warning(png_ptr, "Duplicate sRGB chunk"); png_crc_finish(png_ptr, length); @@@@ -995,7 +995,7 @@@@ /* Should be an error, but we can cope with it */ png_warning(png_ptr, "Out of place iCCP chunk"); - else if (info_ptr != NULL && (info_ptr->valid & PNG_INFO_iCCP)) + if (info_ptr != NULL && (info_ptr->valid & PNG_INFO_iCCP)) { png_warning(png_ptr, "Duplicate iCCP chunk"); png_crc_finish(png_ptr, length); This patch from Chris Evans avoids a host of security problems related to buffer overflows that might occur when processing very large images. It causes the reader to reject any images claiming to have more rows or columns the png format supports. diff -ru libpng-1.2.5/png.h libpng-1.2.5.fix/png.h --- libpng-1.0.9/png.h.orig 2002-10-03 12:32:26.000000000 +0100 +++ libpng-1.0.9/png.h 2004-07-13 23:18:10.000000000 +0100 @@@@ -835,6 +835,9 @@@@ /* Maximum positive integer used in PNG is (2^31)-1 */ #define PNG_MAX_UINT ((png_uint_32)0x7fffffffL) +/* Constraints on width, height, (2 ^ 24) - 1*/ +#define PNG_MAX_DIMENSION 16777215 + /* These describe the color_type field in png_info. */ /* color type masks */ #define PNG_COLOR_MASK_PALETTE 1 diff -ru libpng-1.2.5/pngrutil.c libpng-1.2.5.fix/pngrutil.c --- libpng-1.0.9/pngrutil.c.orig 2004-07-13 13:36:37.000000000 +0100 +++ libpng-1.0.9/pngrutil.c 2004-07-13 23:43:02.000000000 +0100 @@@@ -350,7 +350,11 @@@@ png_crc_finish(png_ptr, 0); width = png_get_uint_32(buf); + if (width > PNG_MAX_DIMENSION) + png_error(png_ptr, "Width is too large"); height = png_get_uint_32(buf + 4); + if (height > PNG_MAX_DIMENSION) + png_error(png_ptr, "Height is too large"); bit_depth = buf[8]; color_type = buf[9]; compression_type = buf[10]; @@@@ -675,7 +679,7 @@@@ else truelen = (png_size_t)png_ptr->channels; - if (length != truelen) + if (length != truelen || length > 4) { png_warning(png_ptr, "Incorrect sBIT chunk length"); png_crc_finish(png_ptr, length); @@@@ -1400,7 +1405,7 @@@@ void /* PRIVATE */ png_handle_hIST(png_structp png_ptr, png_infop info_ptr, png_uint_32 length) { - int num, i; + unsigned int num, i; png_uint_16 readbuf[PNG_MAX_PALETTE_LENGTH]; png_debug(1, "in png_handle_hIST\n"); @@@@ -1426,8 +1431,8 @@@@ return; } - num = (int)length / 2 ; - if (num != png_ptr->num_palette) + num = length / 2 ; + if (num != png_ptr->num_palette || num > PNG_MAX_PALETTE_LENGTH) { png_warning(png_ptr, "Incorrect hIST chunk length"); png_crc_finish(png_ptr, length); @@@@ -2868,6 +2873,9 @@@@ png_read_data(png_ptr, chunk_length, 4); png_ptr->idat_size = png_get_uint_32(chunk_length); + if (png_ptr->idat_size > PNG_MAX_UINT) + png_error(png_ptr, "Invalid chunk length."); + png_reset_crc(png_ptr); png_crc_read(png_ptr, png_ptr->chunk_name, 4); if (png_memcmp(png_ptr->chunk_name, (png_bytep)png_IDAT, 4)) @ 1.2 log @update to 1.0.43; reanimate and strip down patch; cleanup packaging; fix manpage installation @ text @@ 1.1 log @Appending Solaris 2.6 patch @ text @d1 10 a10 3 --- doc/Makefile.in.org Wed Feb 12 16:30:25 2003 +++ doc/Makefile.in Wed Feb 12 16:31:26 2003 @@@@ -95,7 +95,7 @@@@ d12 2 a13 18 CLEANFILES = *.1 *.html *.txt *-dircache *.pm *.pdf *~ core *itemcache *.rej *.orig -POD = rrdtool.pod rrdlast.pod rrdcreate.pod rrdupdate.pod rrdtutorial.es.pod cdeftutorial.pod rpntutorial.pod rrdgraph.pod bin_dec_hex.pod rrdfetch.pod rrdrestore.pod rrddump.pod rrdtune.pod rrdresize.pod rrdcgi.pod rrdtutorial.pod rrdinfo.pod rrdxport.pod +POD = rrdtool.pod rrdlast.pod rrdcreate.pod rrdupdate.pod cdeftutorial.pod rpntutorial.pod rrdgraph.pod bin_dec_hex.pod rrdfetch.pod rrdrestore.pod rrddump.pod rrdtune.pod rrdresize.pod rrdcgi.pod rrdtutorial.pod rrdinfo.pod rrdxport.pod PMP = RRDs.pm RRDp.pm --- doc/Makefile.am.org Wed Feb 12 16:30:44 2003 +++ doc/Makefile.am Wed Feb 12 16:31:40 2003 @@@@ -8,7 +8,7 @@@@ CLEANFILES = *.1 *.html *.txt *-dircache *.pm *.pdf *~ core *itemcache *.rej *.orig -POD = rrdtool.pod rrdlast.pod rrdcreate.pod rrdupdate.pod rrdtutorial.es.pod \ +POD = rrdtool.pod rrdlast.pod rrdcreate.pod rrdupdate.pod \ cdeftutorial.pod rpntutorial.pod rrdgraph.pod bin_dec_hex.pod \ rrdfetch.pod rrdrestore.pod rrddump.pod rrdtune.pod rrdresize.pod \ rrdcgi.pod rrdtutorial.pod rrdinfo.pod rrdxport.pod @