diff options
-rw-r--r-- | libc/sysdeps/linux/common/Makefile | 1 | ||||
-rw-r--r-- | libc/sysdeps/linux/common/ssp.c | 6 |
2 files changed, 6 insertions, 1 deletions
diff --git a/libc/sysdeps/linux/common/Makefile b/libc/sysdeps/linux/common/Makefile index 5e17cc9fc..84b29ac53 100644 --- a/libc/sysdeps/linux/common/Makefile +++ b/libc/sysdeps/linux/common/Makefile @@ -28,6 +28,7 @@ endif ifneq ($(strip $(UCLIBC_HAS_SSP)),y) SRCS := $(filter-out ssp.c,$(SRCS)) endif +ssp.o: CFLAGS += $(SSP_DISABLE_FLAGS) OBJS = $(patsubst %.c,%.o, $(SRCS)) diff --git a/libc/sysdeps/linux/common/ssp.c b/libc/sysdeps/linux/common/ssp.c index e58dfdb9a..9db8338e7 100644 --- a/libc/sysdeps/linux/common/ssp.c +++ b/libc/sysdeps/linux/common/ssp.c @@ -20,6 +20,10 @@ # include <config.h> #endif +#ifdef __SSP__ +#error ssp.c has to be built w/ -fno-stack-protector +#endif + #include <stdio.h> #include <string.h> #include <fcntl.h> @@ -42,7 +46,7 @@ #endif /* prototypes */ -extern int __libc_open (__const char *file, int oflag, mode_t mode); +extern int __libc_open (__const char *file, int oflag, ...); extern ssize_t __libc_read(int fd, void *buf, size_t count); extern int __libc_close (int fd); |