Michael Schroeder [Fri, 13 May 2011 12:33:55 +0000 (15:33 +0300)]
Fix "method not permitted before handle's open method" on --verifydb
- In verify mode, the db is not really opened, thus it's an error
to call dbiFlags() which calls db->get_open_flags().
Signed-off-by: Panu Matilainen <pmatilai@redhat.com>
Panu Matilainen [Tue, 3 May 2011 12:02:42 +0000 (15:02 +0300)]
Clean up file type verification logic a bit
- Non-regular files mostly share the same unverifiable properties,
no point in listing all the cases separately. Links are a notable
exception in that they're different from everything else, handle
that separately.
- Also clean up other formatting: wrap lines at a better point +
avoid multiline-comments when single line suffices.
Jindrich Novy [Tue, 3 May 2011 08:42:53 +0000 (10:42 +0200)]
Remove obsolete timedRead() from API
Panu Matilainen [Tue, 3 May 2011 08:19:37 +0000 (11:19 +0300)]
RIP rpmsqFork() + rpmsqWait() and the related bits
- Also remove additional thread protection: we're not supporting
threads anywhere else either. If/when thread-protection is added,
this is ulikely to be the first place anyway...
Panu Matilainen [Mon, 2 May 2011 10:00:53 +0000 (13:00 +0300)]
Use good ol' fork() + waitpid() for running scriptlets
- We have no need for anything fancier, this makes 80% of the
overly complex & subtle semi-threaded and in places just broken
code in rpmsq.[ch] unused and unnecessary.
Ville Skyttä [Sun, 24 Apr 2011 12:59:20 +0000 (15:59 +0300)]
Remove unneeded regex grouping.
Signed-off-by: Panu Matilainen <pmatilai@redhat.com>
Ville Skyttä [Sun, 24 Apr 2011 12:58:40 +0000 (15:58 +0300)]
Comment spelling fix.
Signed-off-by: Panu Matilainen <pmatilai@redhat.com>
Ville Skyttä [Sun, 24 Apr 2011 12:57:23 +0000 (15:57 +0300)]
Add lrzip support.
Signed-off-by: Panu Matilainen <pmatilai@redhat.com>
Ville Skyttä [Sun, 24 Apr 2011 12:56:11 +0000 (15:56 +0300)]
Add lzip support.
Signed-off-by: Panu Matilainen <pmatilai@redhat.com>
Panu Matilainen [Thu, 28 Apr 2011 12:23:10 +0000 (15:23 +0300)]
Remove duplicate fpLookup() doxygen annotation
Panu Matilainen [Thu, 28 Apr 2011 07:31:23 +0000 (10:31 +0300)]
Remove redundant strlen()'s on sha1 digest verification
- string comparison notices different length anyway, avoid going
through the same data twice
Panu Matilainen [Wed, 27 Apr 2011 13:11:57 +0000 (16:11 +0300)]
Avoid malloc() + redundant strlen() calls in dbiFindByLabel()
Jindrich Novy [Thu, 28 Apr 2011 11:22:41 +0000 (13:22 +0200)]
Simplify findTag()
Jindrich Novy [Wed, 27 Apr 2011 08:28:43 +0000 (10:28 +0200)]
Fix find-lang so that it finds *@*.qm QT i18n files (RhBug:699945)
Jindrich Novy [Tue, 26 Apr 2011 04:33:19 +0000 (06:33 +0200)]
Understand 'PK00' zip archives (RhBug:699529)
- it is historically used by PKZIP when storing archive to removable
media (floppy), some java apps still use it
- thanks to Karel Klic
Jindrich Novy [Fri, 22 Apr 2011 07:30:45 +0000 (09:30 +0200)]
Do not compile unused functions when SELinux support is disabled
Panu Matilainen [Thu, 21 Apr 2011 08:09:28 +0000 (11:09 +0300)]
Handle errors from moving target file into place in rpmSign()
- Signing isn't successful unless we manage to replace the original
file with the signed one, take the stat() etc returns into count.
Panu Matilainen [Thu, 21 Apr 2011 07:55:00 +0000 (10:55 +0300)]
headerPut() and headerDel() returns aren't interesting here
Panu Matilainen [Thu, 21 Apr 2011 07:47:31 +0000 (10:47 +0300)]
Remove redundant indentation block from rpmSign()
- No code changes, just formatting sanity/prettiness
Panu Matilainen [Thu, 21 Apr 2011 07:13:45 +0000 (10:13 +0300)]
Just ignore miFreeHeader() return on rpmdbNextIterator() too
- There's no meaningful way to return a write-error here,
rpmdbNextIterator() caller wouldn't know whether NULL at termination
is early due to error or not. So just ignore the return from
miFreeHeader(), it can only fail on rewrite mode (ie markReplacedFiles())
so impact is rather limited anyway.
Panu Matilainen [Thu, 21 Apr 2011 07:03:11 +0000 (10:03 +0300)]
Ignore dbiSync() return code everywhere
- Since we're not checking the return then dont bother storing it either.
The sync is fairly unlikely to fail if other operations succeed
as sync failures generally revolve around invalid file descriptors etc.
Panu Matilainen [Wed, 20 Apr 2011 13:11:41 +0000 (16:11 +0300)]
Panu Matilainen [Wed, 20 Apr 2011 12:50:24 +0000 (15:50 +0300)]
Remove pointless xx tmp return code from dbiAppendSet() result
Panu Matilainen [Wed, 20 Apr 2011 12:41:53 +0000 (15:41 +0300)]
Eliminate last three assert()'s from the backend
- We can trivially handle these "can't happen" cases as EINVAL returns
instead of blowing up, do so.
Panu Matilainen [Wed, 20 Apr 2011 12:38:40 +0000 (15:38 +0300)]
And finally at six feet, the old cursor api is officially dead
- Inline the last remains into the new api, handling NULL pointers
more gracefully than the old version
Panu Matilainen [Wed, 20 Apr 2011 12:22:42 +0000 (15:22 +0300)]
And another foot deeper...
- Inline dbiGet(), dbiPut(), dbiDel() and dbiCount() implementations
to the new interface
Panu Matilainen [Wed, 20 Apr 2011 12:04:44 +0000 (15:04 +0300)]
Bury the old cursor api one foot deeper
- Make it static and move doxygen bits to the new API, adjust as necessary
Panu Matilainen [Wed, 20 Apr 2011 11:49:14 +0000 (14:49 +0300)]
Convert the other (rpmdb iterators etc) uses to the new cursor api
Panu Matilainen [Wed, 20 Apr 2011 11:23:37 +0000 (14:23 +0300)]
Convert local-only uses of DBC to dbiCursor interface
Panu Matilainen [Wed, 20 Apr 2011 10:52:41 +0000 (13:52 +0300)]
Add a db cursor abstraction and interfaces for using it
- Callers are currently required to pass all sorts of unnecessary
gunk to the cursor operations just for performance statistics
etc, and the interface doesn't match the uses inside rpmdb.c
very well. This adds a more "rpm-style" interface around the
BDB API.
- Cursor open + close can only fail on invalid arguments (which would
be programmer errors), and various conditions on replication which
we dont care about. So we essentially ignore the errors, except
for cursor open which will return NULL to indicate an error.
- As an intermediate step, these are just wrappers to the older
dbiFoo interfaces to permit converting things to the new interfaces
piece by piece.
Panu Matilainen [Wed, 20 Apr 2011 10:23:57 +0000 (13:23 +0300)]
Rename _dbConfig and _dbiIndex structs to common foo_s style
- No functional changes, just renaming to be in line with everything
else (for better or worse)
Panu Matilainen [Wed, 20 Apr 2011 10:18:54 +0000 (13:18 +0300)]
Remove non-cursor support from dbiDel(), dbiPut() and dbiGet()
- Previously these functions would silently fall back to non-cursor
access when (accidentally) called with NULL cursor. This can lead
to different results for cases where cursor is actually required,
without any indication of it being an error. Make them fail
with EINVAL for NULL cursors so it gets trapped in rpmdb.c uses.
Panu Matilainen [Tue, 19 Apr 2011 10:46:41 +0000 (13:46 +0300)]
Return explicit NULL's from db iterator free functions for clarity
Panu Matilainen [Tue, 19 Apr 2011 10:42:46 +0000 (13:42 +0300)]
Ignore error codes in rpmdbIndexIteratorFree()
- Similarly to commit
b35081600135b4a3d54fa7e832125a89d3bdee48,
we can't do anything about dbiCclose() failure here, just ignore.
Panu Matilainen [Tue, 19 Apr 2011 10:34:02 +0000 (13:34 +0300)]
Ignore error codes in rpmdbFreeIterator()
- We can't do anything about miFreeHeader() or dbiClose() errors
here, no point storing them to temp variable either. Error on
miFreeHeader() will at least log something on header rewrite-failure.
Jindrich Novy [Tue, 19 Apr 2011 11:24:34 +0000 (13:24 +0200)]
Attempt to fetch sources/patches when they are missing from %_sourcedir
- use _default_source_url macro to specify default URL when it is
missing from the spec Source/Patch line
- this feature can be disabled by defining _disable_source_fetch to 1
Panu Matilainen [Tue, 19 Apr 2011 10:21:36 +0000 (13:21 +0300)]
Give at least some indication of error from fchdir() failures
- Failure to return to current dir is likely to be lethal, at least
log an error and return a different code for it.
Panu Matilainen [Tue, 19 Apr 2011 10:08:28 +0000 (13:08 +0300)]
Use rpmsqFork() return code instead of semi-private struct member for pid
- rpmsqFork() behaves like regular fork() in this regard so this
just makes the code more obvious and eliminates an set-but-unused
warning while at it.
Panu Matilainen [Tue, 19 Apr 2011 10:04:28 +0000 (13:04 +0300)]
Fclose() and unlink() errors aren't fatal here, just ignore
Panu Matilainen [Tue, 19 Apr 2011 09:59:07 +0000 (12:59 +0300)]
Catch write errors when generating scriptlet temporary files
- If the write fails scripts are likely to fail anyway, but executing
partial scriptlets (unlikely as that might be) could have funny
side-effects besides just failing.
- Also cleans up runExtScript() a little bit by moving the
tmp file creation to a separate function.
Panu Matilainen [Tue, 19 Apr 2011 08:37:11 +0000 (11:37 +0300)]
Improve fsm error code handling in psm
- Move the fsm execution to separate helper function, returning
the most relevant exit code: if fsmSetup() failed then teardown
return doesn't matter, but fsmTeardown() can report errors
from missing hardlinks which we haven't checked until now.
- This also fixes enum vs int abuse on the exit code: fsm return
codes are cpio error codes whereas psm codes are simple ok/fails.
Panu Matilainen [Tue, 19 Apr 2011 07:32:31 +0000 (10:32 +0300)]
Actually handle headerGet() / pgpPrtPkts() failure on signature verify
- Failure to decode the hash algo here would probably trip up something
later on in the verification but...
Panu Matilainen [Tue, 19 Apr 2011 07:21:26 +0000 (10:21 +0300)]
Eliminate unused variable in rpmpluginsAdd()
- dlsym() can return NULL without it being an error, and since we
use dlerror() for determining the error anyway, supportedHooks
is simply unneeded here.
Panu Matilainen [Tue, 19 Apr 2011 07:09:22 +0000 (10:09 +0300)]
Restore previous vsflags on return from rpmInstall() and rpmErase()
- Nobody is going to care really but since we bother remembering
them we might as well restore them too, silencing another two
set-but-unused warnings (this time semi-meaningful even)
Panu Matilainen [Tue, 19 Apr 2011 07:02:23 +0000 (10:02 +0300)]
Eliminate another set-but-unused xx warning
- There's no meaningful way to return error from rpmdbExtendIterator()
in rpmFindBaseNamesInDB() so dont bother collecting the result.
At least there'll be rpmlog spew on errors so it wouldn't be
silently failing.
Panu Matilainen [Mon, 18 Apr 2011 09:25:43 +0000 (12:25 +0300)]
Reflect file classifier errors in rpmdeps exit code
- rpmfcClassify() or rpmfcApply() failing is pretty fatal to rpmdeps,
exit with error code
- OTOH argvAdd() and argvSort() can't really fail, ignore their return
codes, shutting up another set-but-not-used whine
Panu Matilainen [Mon, 18 Apr 2011 09:08:24 +0000 (12:08 +0300)]
Remove yet another pointless tmp variable
- Since we're not really interested in rpmdbClose() or
rpmdbRemoveDatabase() error codes when rebuilding, just ignore
their returns
Panu Matilainen [Mon, 18 Apr 2011 09:04:34 +0000 (12:04 +0300)]
Collect proper exit status from rpmdbRemoveDatabase()
- The single caller doesn't actually care about its exit code
as its not particularly important in that case but .. shrug,
at least it silences a warning.
Panu Matilainen [Mon, 18 Apr 2011 09:00:44 +0000 (12:00 +0300)]
Ignore rpmdbClose() return on failed rpmdbOpen()
- We can't do anything about it so just ignore and remove the
unused variable
Panu Matilainen [Mon, 18 Apr 2011 07:13:24 +0000 (10:13 +0300)]
Clean up urlGetFile() return values
- Its callers only care about success vs failure, so only ever return
0 or -1 and take waitpid() errors into account too. As a side effect
shuts up a set-but-unused compiler warning too
Panu Matilainen [Fri, 15 Apr 2011 07:35:34 +0000 (10:35 +0300)]
Remember to free db index iterators too on forced termination
Panu Matilainen [Fri, 15 Apr 2011 07:11:41 +0000 (10:11 +0300)]
Fix dangling databases from iterators (ticket #820)
- Call rpmdbClose() instead of rpmdbUnlink() on iterator free to
actually close the db when refcount goes to zero. This
fixes the situation where a caller closes a database handle
while iterators are active: the iterators stay usable and close
the db when the last one exits.
Panu Matilainen [Fri, 15 Apr 2011 06:18:15 +0000 (09:18 +0300)]
Only muck with signals on first and last db open/close
- Signals are per-process global, as long as there are other
databases open (or references to the same db) we shouldn't mess
with them. Less important on open, but if somebody is changing
rpmsq-handling we shouldn't override that either.
Ville Skyttä [Wed, 6 Apr 2011 17:56:31 +0000 (20:56 +0300)]
Extract perl dependecies from "use parent qw(Foo)".
parent is a successor to base, with similar functionality.
Signed-off-by: Panu Matilainen <pmatilai@redhat.com>
Ville Skyttä [Tue, 1 Mar 2011 15:23:17 +0000 (17:23 +0200)]
Honor $TMPDIR in various scripts.
Signed-off-by: Panu Matilainen <pmatilai@redhat.com>
Panu Matilainen [Wed, 13 Apr 2011 07:04:28 +0000 (10:04 +0300)]
Unbreak obsoletes from commit
b1a4b57315d31ba98bc0e5803db1ebc2517f6bb5
- rpmdsMatchesDep() only works with RPMDBI_PROVIDES, not RPMDBI_NAME.
Revert that part of the change.
Panu Matilainen [Tue, 5 Apr 2011 14:33:12 +0000 (17:33 +0300)]
Dont reference transaction set from transaction elements
- Elements referencing ts prevents rpmtsFree() from freeing anything
unless the caller does rpmtsEmpty() first. Oops. Undo the braindamage
from commit
8f7c2d7063df6d1057425d014ce4168d46c5e7d9.
Jindrich Novy [Mon, 4 Apr 2011 14:03:11 +0000 (16:03 +0200)]
Don't list packages which will not be created in spec query (RhBug:693338)
- particularly, while doing "rpm -q --specfile <a spec file>"
Panu Matilainen [Mon, 4 Apr 2011 11:39:19 +0000 (14:39 +0300)]
Update INSTALL a bit, include blurb about the test-suite + fakechroot
Panu Matilainen [Mon, 4 Apr 2011 11:31:17 +0000 (14:31 +0300)]
Only enable test-suite if fakechroot is available
Panu Matilainen [Mon, 4 Apr 2011 11:05:17 +0000 (14:05 +0300)]
Execute all non-compilation rpmbuild tests in fakechroot
- Except for four rpmbuild tests which rely on an actual compiler
being available (faking *that* would get entertaining...), the entire
test-suite is now executing everything in the fakechroot environment.
Panu Matilainen [Mon, 4 Apr 2011 11:00:23 +0000 (14:00 +0300)]
Add more stuff to test-suite root environment
- Build needs a whole bunch of utilities there, including file + its
magic database. The exact location of the magic db varies between
systems but file -C lets us basically make a copy of the system magicdb
into the fakechroot env and then we can override the location with MAGIC
Panu Matilainen [Mon, 4 Apr 2011 09:13:56 +0000 (12:13 +0300)]
Switch more test-suite builds to run under fakechroot
- This leaves only the "real" builds where the packages contain files
to be executed outside fakechroot
Panu Matilainen [Mon, 4 Apr 2011 09:03:38 +0000 (12:03 +0300)]
Run dependency tests entirely in fakechroot
- All the packages here have no files making them "easy" to build
inside the chroot
Panu Matilainen [Mon, 4 Apr 2011 09:01:43 +0000 (12:01 +0300)]
Prepare the test root entirely from Makefile, add missing bits
- Running builds in fakechroot needs a whole lot of things.. add symlinks
to various system config + dev files to give some trivial packages
a chance to build under fakechroot
Panu Matilainen [Mon, 4 Apr 2011 08:39:25 +0000 (11:39 +0300)]
Remove redundant data copying into test-suite root
Panu Matilainen [Mon, 4 Apr 2011 08:27:03 +0000 (11:27 +0300)]
Avoid leaking our compilation directory into test-suite
- Since they're running in fakechroot there's no need to arrange
user writable directories this way
Panu Matilainen [Fri, 1 Apr 2011 14:48:07 +0000 (17:48 +0300)]
Adjust rpmdb path for all remaining non-fakeroot runs
- Executing rpmbuild in the fakeroot gets fairly tricky, especially
for the tests that actually compile things. Overriding the dbpath
prevents it from accessing system rpmdb for keyring and build-requires.
- With this patch, the test-suite now passes the smoke-test of
"chmod go-rx /var/lib/rpm" on system rpmdb.
Panu Matilainen [Fri, 1 Apr 2011 14:44:35 +0000 (17:44 +0300)]
Adjust rpmdb path in python tests
- We can't run python easily in the chroot so override the dbpath
to our test area instead of potentially accessing the system db
for keyring etc
Panu Matilainen [Fri, 1 Apr 2011 14:43:13 +0000 (17:43 +0300)]
Explicitly initialize the test-root database always
- Otherwise various places will be emitting "generating xx missing indexes"
warnings, we dont want that noise in the test-suite results
Panu Matilainen [Fri, 1 Apr 2011 14:18:46 +0000 (17:18 +0300)]
Switch the two remaining rpm runs under fakechroot
- Everything in the test-suite except rpmbuild execution is now
performed in the fakechroot environment
Panu Matilainen [Fri, 1 Apr 2011 14:07:52 +0000 (17:07 +0300)]
Run all rpmmacro tests under fakechroot
Panu Matilainen [Fri, 1 Apr 2011 14:06:42 +0000 (17:06 +0300)]
Make a bunch of tools available in the testsuite root environment
- We'll need shell and various other bits in order to do many
things wrt specs and builds in the root...
Panu Matilainen [Fri, 1 Apr 2011 13:20:48 +0000 (16:20 +0300)]
Run most rpmi tests under fakechroot
- one of the manifest tests is failing mysteriously in root mode though..
Panu Matilainen [Fri, 1 Apr 2011 13:18:26 +0000 (16:18 +0300)]
Run testsuite rpmdb init helper with fakechroot
Panu Matilainen [Fri, 1 Apr 2011 12:42:47 +0000 (15:42 +0300)]
Make all query tests run under fakechroot
Panu Matilainen [Fri, 1 Apr 2011 12:42:30 +0000 (15:42 +0300)]
Make all generic tests run under fakechroot
Panu Matilainen [Fri, 1 Apr 2011 12:39:21 +0000 (15:39 +0300)]
Avoid unnecessary use of 'id' in test-suite specs
- We could just ditch the entire buildroot lines from the specs
but leaving one case to test that we dont actually fail on specs
that do have it.
Panu Matilainen [Fri, 1 Apr 2011 12:29:52 +0000 (15:29 +0300)]
Make all test data available in the test-root
Panu Matilainen [Fri, 1 Apr 2011 11:44:42 +0000 (14:44 +0300)]
Test-suite spring cleaning
- Remove duplicate --version checks (doh) and some commented out
build tests that are unlikely to ever be implemented in reality
Panu Matilainen [Fri, 1 Apr 2011 05:17:21 +0000 (08:17 +0300)]
Add a more useful example to rpm2cpio manpage
- Based on suggestions from Masatake Yamato and others from rpm-list
Florian Festi [Thu, 31 Mar 2011 08:54:25 +0000 (10:54 +0200)]
Remove rpm v3 code
These cases are check for in rpmdsCompare() anyway. No need to "optimize" for a long dead rpm release.
Florian Festi [Tue, 29 Mar 2011 14:31:46 +0000 (16:31 +0200)]
Add rpmdsMatchesDep() as alternative to rpmdsAnyMatchesDep() to make use of the tag number (index) we get from the rpmdb on queries
Jindrich Novy [Fri, 25 Mar 2011 09:25:25 +0000 (10:25 +0100)]
Simplify fsmMapFContext()
Jindrich Novy [Fri, 25 Mar 2011 09:25:03 +0000 (10:25 +0100)]
Remove unused variables from db3.c
Panu Matilainen [Mon, 28 Mar 2011 09:47:34 +0000 (12:47 +0300)]
Use pkg-config to find Lua + determine flags (ticket #88)
- Additionally clean up the logic a bit and dont bother building
any lua-related bits if disabled
Panu Matilainen [Fri, 25 Mar 2011 13:20:26 +0000 (15:20 +0200)]
Drop the unused + unmaintained javadeps helper
- It contains piles of buffer overflow etc material and AFAIK this
has been unused for its entire lifespan of > 10 years, fixing
an unused piece of code seems like a waste of time. If somebody
shows interest later on it can be resurrected, but in the meanwhile...
Panu Matilainen [Fri, 25 Mar 2011 12:56:16 +0000 (14:56 +0200)]
Oops, lib/misc.c is no more, remove from POTFILES.in
Panu Matilainen [Fri, 25 Mar 2011 12:45:11 +0000 (14:45 +0200)]
Use canoncolor to determine lib vs lib64
Panu Matilainen [Fri, 25 Mar 2011 12:39:36 +0000 (14:39 +0200)]
Push platform config out of main rpm macros file
- canon arch & color stuff is now calculated per each known arch in
installplatform, and just a single place where arch name mangling
is done
Panu Matilainen [Fri, 25 Mar 2011 12:03:23 +0000 (14:03 +0200)]
Generate platform configuration for all known architectures
- loop over all archs known by rpmrc but only generate the platform config
if all necessary parameters (such as ISA information) are known, this
gives a reasonable idea of what archs are *really* in use and supported
- at least in theory, the platform configuration could now move to
$datadir as the contents no longer depend on which are rpm was built on
- also gets rid of the big sed-monster in install-platform
Panu Matilainen [Fri, 25 Mar 2011 11:22:53 +0000 (13:22 +0200)]
Simplify the hysterical per-platform vendor-sed thing
Panu Matilainen [Fri, 25 Mar 2011 11:16:32 +0000 (13:16 +0200)]
Create platform specific config on all OS'es
Panu Matilainen [Fri, 25 Mar 2011 11:08:09 +0000 (13:08 +0200)]
Move %_fixperms to main macro config
- Fixing broken permissions in sources isn't exactly platform/vendor
specific in nature (at least Suse adds this this to their own "platform"
separately, kinda proving the point)
- Kick out the remaining unused RH-pecific platform.in section
Panu Matilainen [Fri, 25 Mar 2011 10:45:36 +0000 (12:45 +0200)]
Yank out 2001 vintage Mandrake-specific macros
- Its unlikely these were ever actually used by Mandrake, but in
any case they switched to different setup long ago, and since
then the company + distribution has seen more than a few renames etc..
Panu Matilainen [Fri, 25 Mar 2011 09:25:47 +0000 (11:25 +0200)]
Replace distro/vendor autodetection with a configure switch
- it's not rpm's job, not is it possible for rpm to know about
distribution/vendor names and preferences
- use build_vendor as the canonical vendor (affecting %{_vendor} default
and macro + rpmrc paths) unless overridden by --with-vendor=name
Florian Festi [Mon, 21 Mar 2011 13:39:10 +0000 (14:39 +0100)]
Move find-provides and find-requires link to autodeps/
Implement link reaction with less copied code
Jindrich Novy [Thu, 24 Mar 2011 11:48:46 +0000 (12:48 +0100)]
Clean up headerRead()
Jindrich Novy [Wed, 23 Mar 2011 12:37:44 +0000 (13:37 +0100)]
Remove checks of unused things from configure.ac
Jindrich Novy [Wed, 23 Mar 2011 11:37:25 +0000 (12:37 +0100)]
Don't use mtrace(3), muntrace(3) and don't check for mcheck.h
- valgrind is good for these things without touching the code