diff --git a/libc/include/sys/stat.h b/libc/include/sys/stat.h index 62e0d8ba1..05b221fb7 100644 --- a/libc/include/sys/stat.h +++ b/libc/include/sys/stat.h @@ -112,6 +112,13 @@ struct stat { #define st_mtimensec st_mtime_nsec #define st_ctimensec st_ctime_nsec +#ifdef __USE_BSD +/* Permission macros provided by glibc for compatibility with BSDs. */ +#define ACCESSPERMS (S_IRWXU | S_IRWXG | S_IRWXO) /* 0777 */ +#define ALLPERMS (S_ISUID | S_ISGID | S_ISVTX | S_IRWXU | S_IRWXG | S_IRWXO) /* 07777 */ +#define DEFFILEMODE (S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH | S_IWOTH) /* 0666 */ +#endif + extern int chmod(const char *, mode_t); extern int fchmod(int, mode_t); extern int mkdir(const char *, mode_t); diff --git a/libc/stdio/fopen.c b/libc/stdio/fopen.c index a6cddd306..6d2d882c8 100644 --- a/libc/stdio/fopen.c +++ b/libc/stdio/fopen.c @@ -31,6 +31,8 @@ * SUCH DAMAGE. */ +#define __USE_BSD + #include #include #include diff --git a/libc/stdio/freopen.c b/libc/stdio/freopen.c index da3a674c9..f0386e970 100644 --- a/libc/stdio/freopen.c +++ b/libc/stdio/freopen.c @@ -31,6 +31,8 @@ * SUCH DAMAGE. */ +#define __USE_BSD + #include #include #include diff --git a/libc/stdio/local.h b/libc/stdio/local.h index 6b2111a2b..664cec1ba 100644 --- a/libc/stdio/local.h +++ b/libc/stdio/local.h @@ -35,10 +35,6 @@ #include "wcio.h" #include "fileext.h" -#ifndef DEFFILEMODE -#define DEFFILEMODE (S_IRUSR|S_IWUSR|S_IRGRP|S_IWGRP|S_IROTH|S_IWOTH) -#endif - /* * Information local to this implementation of stdio,