Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 13 Sep 2017 16:30:46 +0000
From:      Brooks Davis <brooks@freebsd.org>
To:        "Ngie Cooper (yaneurabeya)" <yaneurabeya@gmail.com>
Cc:        Mariusz Zaborski <oshogbo@FreeBSD.org>, FreeBSD Hackers <freebsd-hackers@freebsd.org>
Subject:   Re: Bypassing libcasper (for fun and profit)...?
Message-ID:  <20170913163046.GB89845@spindle.one-eyed-alien.net>
In-Reply-To: <EC7A9660-6BCE-42F3-9F3A-B7E39414767F@gmail.com>
References:  <EC7A9660-6BCE-42F3-9F3A-B7E39414767F@gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, Sep 11, 2017 at 01:55:13PM -0700, Ngie Cooper (yaneurabeya) wrote:
> Hi Mariusz,
> 	I???m trying to get runtime coverage to work on ^/projects/runtime-coverage . I noticed that libcasper is unfortunately getting in the way of writing .gcda files via install(1) (libgcov and libprofile_rt hijack binaries and libraries to write out profiling information at runtime, which doesn???t seem to jive with libcasper). I assume install(1) won???t be the only program to have this issue, so a generic solution should probably be implemented.
> 	I was wondering if there???s a way that you would like to design a formalized hook to bypass this, was wondering if you think conditionally compiling out the functions (as stubs) was the proper way to do it (security vs flexibility), have the the library implement weak symbols and override with another library using strong symbols as a bypass, or use a combination of LD_PRELOAD and hooks to disable libcasper/turn the calls into warnings (instead of fatal errors).

I attempted to suggest solutions and then realized that I don't
understand the problem.  How does install interact with libgcov and
libprofile_rt?

-- Brooks



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