Add C linkage for __open_2 and __openat_2.

Otherwise Clang mangle them with C++ names.

Change-Id: I844e28d834df8b0752b32d2aadd2013fc8804a43
This commit is contained in:
Ben Cheng 2013-12-19 10:24:04 -08:00
parent 81ddd14381
commit c13d89b829

View File

@ -50,7 +50,7 @@ int open(const char* pathname, int flags, ...) {
return __openat(AT_FDCWD, pathname, flags, mode);
}
int __open_2(const char* pathname, int flags) {
extern "C" int __open_2(const char* pathname, int flags) {
if (__predict_false(flags & O_CREAT)) {
__fortify_chk_fail("open(O_CREAT): called without specifying a mode", 0);
}
@ -75,7 +75,7 @@ int openat(int fd, const char *pathname, int flags, ...) {
return __openat(fd, pathname, flags, mode);
}
int __openat_2(int fd, const char* pathname, int flags) {
extern "C" int __openat_2(int fd, const char* pathname, int flags) {
if (flags & O_CREAT) {
__fortify_chk_fail("openat(O_CREAT): called without specifying a mode", 0);
}