Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 27 Aug 2010 21:58:38 +0300
From:      Kostik Belousov <kostikbel@gmail.com>
To:        Glen Barber <glen.j.barber@gmail.com>
Cc:        ports@freebsd.org, Kurt Jaeger <lists@opsec.eu>, Jeremy Chadwick <freebsd@jdc.parodius.com>
Subject:   Re: security/clamav: Segmentation fault when running clamav in a 32-bit jail on a 64-bit host
Message-ID:  <20100827185837.GZ2396@deviant.kiev.zoral.com.ua>
In-Reply-To: <4C77F0A9.6030807@gmail.com>
References:  <4C77DB15.5010501@gmail.com> <20100827163310.GD67795@home.opsec.eu> <4C77EBF8.9020405@gmail.com> <20100827165423.GA32102@icarus.home.lan> <4C77F0A9.6030807@gmail.com>

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

--sUEwCCp6oxC9Oap7
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Fri, Aug 27, 2010 at 01:06:49PM -0400, Glen Barber wrote:
> On 8/27/10 12:54 PM, Jeremy Chadwick wrote:
> > On Fri, Aug 27, 2010 at 12:46:48PM -0400, Glen Barber wrote:
> >> On 8/27/10 12:33 PM, Kurt Jaeger wrote:
> >>> Hi!
> >>>
> >>>> I have a few clamav instances running in jails on 32-bit hosts witho=
ut
> >>>> any issues.  A few days ago one of these jails was migrated to a 64-=
bit
> >>>> host (8.1-RELEASE), where I noticed clamd (0.96.2_1) segfaults when =
queried.
> >>>>
> >>>> The issue seems specific to 32bit/64bit compatibility.  I have a gdb
> >>>> session available here: http://gist.github.com/549964
> >>>>
> >>>> Any thoughts on if this is possible?
> >>>
> >>> Try
> >>>
> >>> Bytecode no
> >>>
> >>> in clamd.conf ?
> >>>
> >>
> >> It was set to 'yes' initially.  I thought it was disabled with building
> >> without JIT.  At any rate, no, it still segfaults with the same backtr=
ace.
> >=20
> > 1) Is clamd built with debugging symbols enabled?  If not, you might wa=
nt
> > to rebuild it with such, else it might be difficult to debug the
> > problem.
> >=20
>=20
> It wasn't initially, but is now.
>=20
> > Also, if the segfault happens after performing the above, can you
> > provide output from "bt full" instead of just "bt"?
> >=20
>=20
> Of course.  The new backtrace is here: http://gist.github.com/553734
I suspect that this was fixed in r210796/HEAD and r211138/RELENG_8.

>=20
> > 2) Was the software rebuilt from source after the upgrade from i386 to
> > amd64, or are you expecting the software to work without any hitches
> > running on amd64 with lib32 (32-bit compatibility libaries)?  The latter
> > is not always possible/the case.
> >=20
>=20
> clamav was rebuilt from ports.  I previously went as far as downgrading
> to the previous version, to rule out something between 0.96.1 and
> 0.96.2; same results there.
Was clamav rebuilt in the 32-bit jail ? At least your backtrace shows
32-bit image being executed.

>=20
> > I have no familiarity with the software or functions in question, but an
> > initial guess would be that some piece of the code is making assumptions
> > about the size of pointers (expecting 4 (32-bit) rather than 8
> > (64-bit)).  Speculative on my part, but I ponder such when seeing code
> > like somefunc(sizeof(int)).
Absolute nonsense.

--sUEwCCp6oxC9Oap7
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (FreeBSD)

iEYEARECAAYFAkx4Ct0ACgkQC3+MBN1Mb4hjMQCg936UkpSiEJ1wOF2jMmeCojN0
SxUAoM+/oeBs7wwOSSYNgiGUADXPOjtq
=4w1R
-----END PGP SIGNATURE-----

--sUEwCCp6oxC9Oap7--



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