123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051 |
- Remove __assert_fail()
- The netplug code uses the assert() macro in various places. In glibc
- internally, assert() uses a function called __assert_fail() to print a
- message and abort. Relying on internal glibc details, netplug
- re-defines __assert_fail() in the hope that it will get called instead
- of glibc internal version.
- This attempt:
- * Doesn't work with uClibc, which doesn't use any __assert_fail()
- function at all. It doesn't fail to build, but it is entirely
- useless.
- * Fails to build with musl, which also defines __assert_fail(), but
- with a different prototype.
- We simply remove the __assert_fail() implementation, so that the C
- library implementation of assert() just does its normal work. The only
- functionality lost is that the message is displayed on the standard
- output rather than in netplug's logs (and this was only working with
- glibc anyway).
- Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
- Index: b/lib.c
- ===================================================================
- --- a/lib.c
- +++ b/lib.c
- @@ -199,21 +199,6 @@
- return x;
- }
-
- -
- -void
- -__assert_fail(const char *assertion, const char *file,
- - unsigned int line, const char *function)
- -{
- - do_log(LOG_CRIT, "%s:%u: %s%sAssertion `%s' failed",
- - file, line,
- - function ? function : "",
- - function ? ": " : "",
- - assertion);
- -
- - abort();
- -}
- -
- -
- /*
- * Local variables:
- * c-file-style: "stroustrup"
|