diff options
author | kan <kan@FreeBSD.org> | 2009-06-29 01:33:59 +0000 |
---|---|---|
committer | kan <kan@FreeBSD.org> | 2009-06-29 01:33:59 +0000 |
commit | a3faeb1b4110d52bf2e7fe7d46368df8a3b74ff2 (patch) | |
tree | b971befb61e661c38ca8a12e087cc3b59f93ce95 /lib/libc | |
parent | f780ef8f1980f918f04365b9374ef3f0b5c8652b (diff) | |
download | FreeBSD-src-a3faeb1b4110d52bf2e7fe7d46368df8a3b74ff2.zip FreeBSD-src-a3faeb1b4110d52bf2e7fe7d46368df8a3b74ff2.tar.gz |
Back out previous revision until better tested fix is ready.
Approved by: re (impliciti, by approving previos check-in)
Diffstat (limited to 'lib/libc')
-rw-r--r-- | lib/libc/Makefile | 2 | ||||
-rw-r--r-- | lib/libc/sys/Symbol.map | 1 | ||||
-rw-r--r-- | lib/libc/sys/stack_protector.c | 7 |
3 files changed, 8 insertions, 2 deletions
diff --git a/lib/libc/Makefile b/lib/libc/Makefile index 4f13f8e..cf9ef3a 100644 --- a/lib/libc/Makefile +++ b/lib/libc/Makefile @@ -26,7 +26,7 @@ PRECIOUSLIB= # DPADD+= ${LIBGCC} LDFLAGS+= -nodefaultlibs -LDADD+= -lgcc -lssp_nonshared +LDADD+= -lgcc # Define (empty) variables so that make doesn't give substitution # errors if the included makefiles don't change these: diff --git a/lib/libc/sys/Symbol.map b/lib/libc/sys/Symbol.map index 41f34ae..88bc779 100644 --- a/lib/libc/sys/Symbol.map +++ b/lib/libc/sys/Symbol.map @@ -282,6 +282,7 @@ FBSD_1.0 { socket; socketpair; __stack_chk_fail; + __stack_chk_fail_local; __stack_chk_guard; stat; statfs; diff --git a/lib/libc/sys/stack_protector.c b/lib/libc/sys/stack_protector.c index 63beebc..f753fcd 100644 --- a/lib/libc/sys/stack_protector.c +++ b/lib/libc/sys/stack_protector.c @@ -47,6 +47,7 @@ static void __guard_setup(void) __attribute__((__constructor__, __used__)); static void __fail(const char *); void __stack_chk_fail(void); void __chk_fail(void); +void __stack_chk_fail_local(void); /*LINTED used*/ static void @@ -108,4 +109,8 @@ __chk_fail(void) __fail("buffer overflow detected; terminated"); } -__sym_compat(__stack_chk_fail_local, __stack_chk_fail, FBSD_1.0); +void +__stack_chk_fail_local(void) +{ + __stack_chk_fail(); +} |