Skip site navigation (1)Skip section navigation (2)
Date:      5 Feb 2005 07:27:18 -0000
From:      "Alexey A.Ukhov" <a.ukhov@gmail.com>
To:        FreeBSD-gnats-submit@FreeBSD.org
Subject:   ports/77122: fixed serious bug in AxKit::CharsetConv class. Updated to AxKit 1.6.2 version
Message-ID:  <20050205072718.69934.qmail@sml.tomsk.ru>
Resent-Message-ID: <200502050730.j157UIXX037131@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         77122
>Category:       ports
>Synopsis:       fixed serious bug in AxKit::CharsetConv class. Updated to AxKit 1.6.2 version
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Sat Feb 05 07:30:17 GMT 2005
>Closed-Date:
>Last-Modified:
>Originator:     Alexey A. Ukhov
>Release:        FreeBSD 5.3-RELEASE-p5 i386
>Organization:
startext Unternehmensberatung GmbH
>Environment:
System: FreeBSD sml.tomsk.ru 5.3-RELEASE-p5 FreeBSD 5.3-RELEASE-p5 #1: Sun Jan 16 20:27:10 NOVT 2005 ukhov@sml.tomsk.ru:/usr/obj/usr/src/sys/Gateway i386
>Description:
        !!! I sent this bug before, but forgot to attach port itself !!!

	Fixed critical bug in AxKit::CharsetConv class.
        We had crash of Apache child and multiple errors in log file like
                httpd in free(): error: pointer to wrong page
                httpd in free(): error: pointer to wrong page
                httpd in free(): error: pointer to wrong page
        Updated to AxKit 1.6.2 version.
>How-To-Repeat:
        Just use Apache::AxKit::CharsetConv class
            {
                my $encoding = <param:encoding />;
                my $iconv = Apache::AxKit::CharsetConv->new($encoding,"UTF-8");
                $query = $iconv->convert($query);
            }
        On exit from local scope you will have apache child crash and zero length request in browser.

>Fix:
# This is a shell archive.  Save it in a file, remove anything before
# this line, and then unpack it by entering "sh file".  Note, it may
# create directories; files and directories will be owned by you and
# have default permissions.
#
# This archive contains:
#
#	p5-AxKit
#	p5-AxKit/Makefile
#	p5-AxKit/distinfo
#	p5-AxKit/pkg-descr
#	p5-AxKit/pkg-message
#	p5-AxKit/pkg-plist
#	p5-AxKit/files
#	p5-AxKit/files/patch-AxKit::CharsetConv.xs
#
echo c - p5-AxKit
mkdir -p p5-AxKit > /dev/null 2>&1
echo x - p5-AxKit/Makefile
sed 's/^X//' >p5-AxKit/Makefile << 'END-of-p5-AxKit/Makefile'
X# Ports collection Makefile for:		AxKit
X# Date created:					17 Jan 2001
X# Whom:						dom@happygiraffe.net
X#
X# $FreeBSD: ports/www/p5-AxKit/Makefile,v 1.14 2004/03/30 19:56:43 krion Exp $
X#
X
XPORTNAME=	AxKit
XPORTVERSION=	1.6.2
XCATEGORIES=	www
XMASTER_SITES=	http://www.axkit.org/download/
XPKGNAMEPREFIX=	p5-
X
XMAINTAINER=	dom@happygiraffe.net
XCOMMENT=	XML Delivery Toolkit for Apache/Perl
X
XBUILD_DEPENDS=	\
X		${SITE_PERL}/${PERL_ARCH}/Apache/libapreq.pm:${PORTSDIR}/www/p5-libapreq \
X		${SITE_PERL}/${PERL_ARCH}/Compress/Zlib.pm:${PORTSDIR}/archivers/p5-Compress-Zlib \
X		${SITE_PERL}/${PERL_ARCH}/Digest/MD5.pm:${PORTSDIR}/security/p5-Digest-MD5 \
X		${SITE_PERL}/${PERL_ARCH}/HTTP/GHTTP.pm:${PORTSDIR}/www/p5-HTTP-GHTTP \
X		${SITE_PERL}/${PERL_ARCH}/MIME/Base64.pm:${PORTSDIR}/converters/p5-MIME-Base64 \
X		${SITE_PERL}/${PERL_ARCH}/Storable.pm:${PORTSDIR}/devel/p5-Storable \
X		${SITE_PERL}/${PERL_ARCH}/XML/Parser.pm:${PORTSDIR}/textproc/p5-XML-Parser \
X		${SITE_PERL}/${PERL_ARCH}/XML/LibXSLT.pm:${PORTSDIR}/textproc/p5-XML-LibXSLT \
X		${SITE_PERL}/${PERL_ARCH}/mod_perl.pm:${PORTSDIR}/www/mod_perl \
X		${SITE_PERL}/Error.pm:${PORTSDIR}/lang/p5-Error \
X		${SITE_PERL}/LWP.pm:${PORTSDIR}/www/p5-libwww \
X		${SITE_PERL}/XML/XPath.pm:${PORTSDIR}/textproc/p5-XML-XPath
XRUN_DEPENDS=	${BUILD_DEPENDS}
X
X# XXX Glitch in this release...
XWRKSRC=		${WRKDIR}/${PORTNAME}-1.62
X
X#MAN3PREFIX=	${PREFIX}/lib/perl5/${PERL_VERSION}
XMAN3=		\
X		Apache::AxKit::Language.3 \
X		Apache::AxKit::Language::AxPoint.3 \
X		Apache::AxKit::Language::HtmlDoc.3 \
X		Apache::AxKit::Language::SAXMachines.3 \
X		Apache::AxKit::Language::XPathScript.3 \
X		Apache::AxKit::Language::XSP.3 \
X		Apache::AxKit::Language::XSP::SimpleTaglib.3 \
X		Apache::AxKit::Language::XSP::TaglibHelper.3 \
X		Apache::AxKit::MediaChooser::WAPCheck.3 \
X		Apache::AxKit::Plugin::Fragment.3 \
X		Apache::AxKit::Plugin::Passthru.3 \
X		Apache::AxKit::Plugin::QueryStringCache.3 \
X		Apache::AxKit::Provider.3 \
X		Apache::AxKit::Provider::FileWrite.3 \
X		Apache::AxKit::StyleChooser::Cookie.3 \
X		Apache::AxKit::StyleChooser::FileSuffix.3 \
X		Apache::AxKit::StyleChooser::PathInfo.3 \
X		Apache::AxKit::StyleChooser::QueryString.3 \
X		Apache::AxKit::StyleChooser::UserAgent.3 \
X		AxKit.3
X
XUSE_ICONV=	yes
XPERL_CONFIGURE=	yes
XCONFIGURE_ARGS=	INC='-I${LOCALBASE}/include -I${LOCALBASE}/include/libxml2' \
X		LIBS='-L${LOCALBASE}/lib' \
X		OPTIMIZE="${CFLAGS}"
XCONFIGURE_ENV+=	PERL_EXTUTILS_AUTOINSTALL='--defaultdeps'
X
XEX_DIR=${PREFIX}/share/examples/${PORTNAME}
Xpost-install:
X.if !defined(NOPORTDOCS)
X	${MKDIR} ${EX_DIR}
X	${INSTALL_DATA} ${WRKSRC}/examples/* ${EX_DIR}
X	${CP} -R ${WRKSRC}/axkit.org ${EX_DIR}
X.endif
X
X.include <bsd.port.mk>
END-of-p5-AxKit/Makefile
echo x - p5-AxKit/distinfo
sed 's/^X//' >p5-AxKit/distinfo << 'END-of-p5-AxKit/distinfo'
XMD5 (AxKit-1.6.2.tar.gz) = 1634ad62ac941c7d2ee3b1a2d129c14a
XSIZE (AxKit-1.6.2.tar.gz) = 305698
END-of-p5-AxKit/distinfo
echo x - p5-AxKit/pkg-descr
sed 's/^X//' >p5-AxKit/pkg-descr << 'END-of-p5-AxKit/pkg-descr'
XAxKit --- XML Delivery Toolkit for Apache
X
XAxKit allows serving XML pages through Apache and mod_perl.  It uses
XXSLT stylesheets to transform pages before sending them to the browser.
XIt also allows Perl stylesheets for extra flexibility.
X
XAxKit has good caching of results, and can be up to 80% of the speed of
XApache when serving from it's cache.
X
XWWW: http://www.axkit.org/
END-of-p5-AxKit/pkg-descr
echo x - p5-AxKit/pkg-message
sed 's/^X//' >p5-AxKit/pkg-message << 'END-of-p5-AxKit/pkg-message'
XPlease consult ``man AxKit'' for instructions on installing AxKit into
Xyour Apache configuration.
X
XNB: This version of AxKit is only compiled with the ability to use XSLT
Xstylesheets.  If you wish to use XPathScript or XSP, you must also
Xinstall the p5-XML-Sablotron port/package.  However, you must also
Xrecompile your Apache binary to *not* include a builtin version of
Xexpat.  To see if you need to do this, type in:
X
X	strings `which httpd` | grep XML
X
XIf this produces any output, you must recompile apache passing the
X--disable-rule=EXPAT argument to the configure program.  See the FAQ on
Xhttp://axkit.org for full details.
END-of-p5-AxKit/pkg-message
echo x - p5-AxKit/pkg-plist
sed 's/^X//' >p5-AxKit/pkg-plist << 'END-of-p5-AxKit/pkg-plist'
X%%SITE_PERL%%/%%PERL_ARCH%%/Apache/AxKit/Cache.pm
X%%SITE_PERL%%/%%PERL_ARCH%%/Apache/AxKit/CharsetConv.pm
X%%SITE_PERL%%/%%PERL_ARCH%%/Apache/AxKit/CharsetConv.xs
X%%SITE_PERL%%/%%PERL_ARCH%%/Apache/AxKit/ConfigReader.pm
X%%SITE_PERL%%/%%PERL_ARCH%%/Apache/AxKit/Exception.pm
X%%SITE_PERL%%/%%PERL_ARCH%%/Apache/AxKit/Language.pm
X%%SITE_PERL%%/%%PERL_ARCH%%/Apache/AxKit/Language/AxPoint.pm
X%%SITE_PERL%%/%%PERL_ARCH%%/Apache/AxKit/Language/HtmlDoc.pm
X%%SITE_PERL%%/%%PERL_ARCH%%/Apache/AxKit/Language/LibXSLT.pm
X%%SITE_PERL%%/%%PERL_ARCH%%/Apache/AxKit/Language/PassiveTeX.pm
X%%SITE_PERL%%/%%PERL_ARCH%%/Apache/AxKit/Language/Query.pm
X%%SITE_PERL%%/%%PERL_ARCH%%/Apache/AxKit/Language/SAXMachines.pm
X%%SITE_PERL%%/%%PERL_ARCH%%/Apache/AxKit/Language/Sablot.pm
X%%SITE_PERL%%/%%PERL_ARCH%%/Apache/AxKit/Language/XMLNewsNITF.pm
X%%SITE_PERL%%/%%PERL_ARCH%%/Apache/AxKit/Language/XMLNewsRDF.pm
X%%SITE_PERL%%/%%PERL_ARCH%%/Apache/AxKit/Language/XPathScript.pm
X%%SITE_PERL%%/%%PERL_ARCH%%/Apache/AxKit/Language/XSP.pm
X%%SITE_PERL%%/%%PERL_ARCH%%/Apache/AxKit/Language/XSP/SimpleTaglib.pm
X%%SITE_PERL%%/%%PERL_ARCH%%/Apache/AxKit/Language/XSP/TaglibHelper.pm
X%%SITE_PERL%%/%%PERL_ARCH%%/Apache/AxKit/Makefile.PL
X%%SITE_PERL%%/%%PERL_ARCH%%/Apache/AxKit/MediaChooser/WAPCheck.pm
X%%SITE_PERL%%/%%PERL_ARCH%%/Apache/AxKit/Plugin/Fragment.pm
X%%SITE_PERL%%/%%PERL_ARCH%%/Apache/AxKit/Plugin/Passthru.pm
X%%SITE_PERL%%/%%PERL_ARCH%%/Apache/AxKit/Plugin/QueryStringCache.pm
X%%SITE_PERL%%/%%PERL_ARCH%%/Apache/AxKit/Provider.pm
X%%SITE_PERL%%/%%PERL_ARCH%%/Apache/AxKit/Provider/File.pm
X%%SITE_PERL%%/%%PERL_ARCH%%/Apache/AxKit/Provider/FileWrite.pm
X%%SITE_PERL%%/%%PERL_ARCH%%/Apache/AxKit/Provider/Filter.pm
X%%SITE_PERL%%/%%PERL_ARCH%%/Apache/AxKit/Provider/Scalar.pm
X%%SITE_PERL%%/%%PERL_ARCH%%/Apache/AxKit/StyleChooser/Cookie.pm
X%%SITE_PERL%%/%%PERL_ARCH%%/Apache/AxKit/StyleChooser/FileSuffix.pm
X%%SITE_PERL%%/%%PERL_ARCH%%/Apache/AxKit/StyleChooser/PathInfo.pm
X%%SITE_PERL%%/%%PERL_ARCH%%/Apache/AxKit/StyleChooser/QueryString.pm
X%%SITE_PERL%%/%%PERL_ARCH%%/Apache/AxKit/StyleChooser/UserAgent.pm
X%%SITE_PERL%%/%%PERL_ARCH%%/Apache/AxKit/typemap
X%%SITE_PERL%%/%%PERL_ARCH%%/AxKit.pm
X%%SITE_PERL%%/%%PERL_ARCH%%/auto/Apache/AxKit/CharsetConv/CharsetConv.bs
X%%SITE_PERL%%/%%PERL_ARCH%%/auto/Apache/AxKit/CharsetConv/CharsetConv.so
X%%SITE_PERL%%/%%PERL_ARCH%%/auto/AxKit/.packlist
X%%SITE_PERL%%/%%PERL_ARCH%%/auto/AxKit/AxKit.bs
X%%SITE_PERL%%/%%PERL_ARCH%%/auto/AxKit/AxKit.so
Xshare/examples/AxKit/axkit.org/docs/associating_stylesheets.xml
Xshare/examples/AxKit/axkit.org/docs/index.xml
Xshare/examples/AxKit/axkit.org/docs/introduction.dkb
Xshare/examples/AxKit/axkit.org/docs/presentations/tpc2001/ax_logo.png
Xshare/examples/AxKit/axkit.org/docs/presentations/tpc2001/redbg.png
Xshare/examples/AxKit/axkit.org/docs/presentations/tpc2001/tpc-axkit.axp
Xshare/examples/AxKit/axkit.org/docs/provider-howto.dkb
Xshare/examples/AxKit/axkit.org/docs/quick_start.dkb
Xshare/examples/AxKit/axkit.org/docs/xpathscript/guide.dkb
Xshare/examples/AxKit/axkit.org/docs/xsp/guide.dkb
Xshare/examples/AxKit/axkit.org/docs/xsp/index.xml
Xshare/examples/AxKit/axkit.org/examples/cv.css
Xshare/examples/AxKit/axkit.org/examples/cv.xml
Xshare/examples/AxKit/axkit.org/examples/cv.xps
Xshare/examples/AxKit/axkit.org/examples/cv_example.xml
Xshare/examples/AxKit/axkit.org/examples/docbook.dkb
Xshare/examples/AxKit/axkit.org/examples/resume.dtd
Xshare/examples/AxKit/axkit.org/faq.xml
Xshare/examples/AxKit/axkit.org/features.xml
Xshare/examples/AxKit/axkit.org/img/arrow.gif
Xshare/examples/AxKit/axkit.org/img/arrow_sel.gif
Xshare/examples/AxKit/axkit.org/img/banner2.gif
Xshare/examples/AxKit/axkit.org/img/banner3.gif
Xshare/examples/AxKit/axkit.org/img/banner_axkit.gif
Xshare/examples/AxKit/axkit.org/img/banner_bg.gif
Xshare/examples/AxKit/axkit.org/img/banner_end.gif
Xshare/examples/AxKit/axkit.org/img/bg.gif
Xshare/examples/AxKit/axkit.org/img/bullet.gif
Xshare/examples/AxKit/axkit.org/img/corner_logo.jpg
Xshare/examples/AxKit/axkit.org/img/corner_logo.png
Xshare/examples/AxKit/axkit.org/img/nav_bot.gif
Xshare/examples/AxKit/axkit.org/img/nav_left.gif
Xshare/examples/AxKit/axkit.org/img/nav_right.gif
Xshare/examples/AxKit/axkit.org/img/nav_top.gif
Xshare/examples/AxKit/axkit.org/img/pix.gif
Xshare/examples/AxKit/axkit.org/img/rcorner_br.gif
Xshare/examples/AxKit/axkit.org/img/rcorner_wh.gif
Xshare/examples/AxKit/axkit.org/img/vsep.gif
Xshare/examples/AxKit/axkit.org/index.xml
Xshare/examples/AxKit/axkit.org/install.xml
Xshare/examples/AxKit/axkit.org/license.xml
Xshare/examples/AxKit/axkit.org/mailinglist.xml
Xshare/examples/AxKit/axkit.org/news.xml
Xshare/examples/AxKit/axkit.org/sidebar.xml
Xshare/examples/AxKit/axkit.org/stylesheets/axkit.css
Xshare/examples/AxKit/axkit.org/stylesheets/axkit_html.css
Xshare/examples/AxKit/axkit.org/stylesheets/body_print_html.xps
Xshare/examples/AxKit/axkit.org/stylesheets/body_tag_html.xps
Xshare/examples/AxKit/axkit.org/stylesheets/docbook_example.xml
Xshare/examples/AxKit/axkit.org/stylesheets/docbook_print.xps
Xshare/examples/AxKit/axkit.org/stylesheets/docbook_screen.xps
Xshare/examples/AxKit/axkit.org/stylesheets/docbook_tags.xps
Xshare/examples/AxKit/axkit.org/stylesheets/error.xps
Xshare/examples/AxKit/axkit.org/stylesheets/error.xsl
Xshare/examples/AxKit/axkit.org/stylesheets/irc.xps
Xshare/examples/AxKit/axkit.org/stylesheets/navbar_html.xps
Xshare/examples/AxKit/axkit.org/stylesheets/new/rdf_html.xps
Xshare/examples/AxKit/axkit.org/stylesheets/new/sidebar_html.xps
Xshare/examples/AxKit/axkit.org/stylesheets/new/webpage_html.xps
Xshare/examples/AxKit/axkit.org/stylesheets/rdf_html.xps
Xshare/examples/AxKit/axkit.org/stylesheets/sidebar_html.xps
Xshare/examples/AxKit/axkit.org/stylesheets/spacer.xps
Xshare/examples/AxKit/axkit.org/stylesheets/webpage_html.xps
Xshare/examples/AxKit/axkit.org/support.xml
Xshare/examples/AxKit/default.notxslt
Xshare/examples/AxKit/default.xps
Xshare/examples/AxKit/docbook.dkb
Xshare/examples/AxKit/docbook_print.xps
Xshare/examples/AxKit/docbook_screen.xps
Xshare/examples/AxKit/docbook_tags.xps
Xshare/examples/AxKit/index.xml
X@dirrm %%SITE_PERL%%/%%PERL_ARCH%%/Apache/AxKit/Language/XSP
X@dirrm %%SITE_PERL%%/%%PERL_ARCH%%/Apache/AxKit/Language
X@dirrm %%SITE_PERL%%/%%PERL_ARCH%%/Apache/AxKit/MediaChooser
X@dirrm %%SITE_PERL%%/%%PERL_ARCH%%/Apache/AxKit/Plugin
X@dirrm %%SITE_PERL%%/%%PERL_ARCH%%/Apache/AxKit/Provider
X@dirrm %%SITE_PERL%%/%%PERL_ARCH%%/Apache/AxKit/StyleChooser
X@dirrm %%SITE_PERL%%/%%PERL_ARCH%%/Apache/AxKit
X@dirrm %%SITE_PERL%%/%%PERL_ARCH%%/auto/Apache/AxKit/CharsetConv
X@dirrm %%SITE_PERL%%/%%PERL_ARCH%%/auto/Apache/AxKit
X@dirrm %%SITE_PERL%%/%%PERL_ARCH%%/auto/AxKit
X@dirrm share/examples/AxKit/axkit.org/docs/xsp
X@dirrm share/examples/AxKit/axkit.org/docs/presentations/tpc2001
X@dirrm share/examples/AxKit/axkit.org/docs/presentations
X@dirrm share/examples/AxKit/axkit.org/docs/xpathscript
X@dirrm share/examples/AxKit/axkit.org/docs
X@dirrm share/examples/AxKit/axkit.org/examples
X@dirrm share/examples/AxKit/axkit.org/stylesheets/new
X@dirrm share/examples/AxKit/axkit.org/stylesheets
X@dirrm share/examples/AxKit/axkit.org/img
X@dirrm share/examples/AxKit/axkit.org
X@dirrm share/examples/AxKit
END-of-p5-AxKit/pkg-plist
echo c - p5-AxKit/files
mkdir -p p5-AxKit/files > /dev/null 2>&1
echo x - p5-AxKit/files/patch-AxKit::CharsetConv.xs
sed 's/^X//' >p5-AxKit/files/patch-AxKit::CharsetConv.xs << 'END-of-p5-AxKit/files/patch-AxKit::CharsetConv.xs'
X--- lib/Apache/AxKit/CharsetConv.xs.orig Wed Aug 14 00:21:57 2002
X+++ lib/Apache/AxKit/CharsetConv.xs      Sat Feb  5 11:55:13 2005
X@@ -195,4 +195,4 @@
X      /* printf("Now in Apache::AxKit::CharsetConv::DESTROY\n"); */
X      (void) iconv_close(self->iconv_handle);
X-      free(self);
X+      Safefree(self);
X
END-of-p5-AxKit/files/patch-AxKit::CharsetConv.xs
exit


>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20050205072718.69934.qmail>