Merge pull request #5267 from mysterywolf/libc-fcntl.h

[libc] 修复在fcntl.h中两种不同的宏编码方式导致的bug
This commit is contained in:
Bernard Xiong 2021-11-15 23:18:28 +08:00 committed by GitHub
commit 6f297bd2aa
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 30 additions and 5 deletions

View File

@ -12,10 +12,9 @@
#include <sys/types.h> #include <sys/types.h>
#define O_RDONLY 0x0000 /* open for reading only */ #define O_RDONLY 00
#define O_WRONLY 0x0001 /* open for writing only */ #define O_WRONLY 01
#define O_RDWR 0x0002 /* open for reading and writing */ #define O_RDWR 02
#define O_ACCMODE 0x0003 /* mask for above modes */
#define O_CREAT 0100 #define O_CREAT 0100
#define O_EXCL 0200 #define O_EXCL 0200
@ -30,6 +29,7 @@
#define O_DIRECTORY 0200000 #define O_DIRECTORY 0200000
#define O_NOFOLLOW 0400000 #define O_NOFOLLOW 0400000
#define O_CLOEXEC 02000000 #define O_CLOEXEC 02000000
#define O_ASYNC 020000 #define O_ASYNC 020000
#define O_DIRECT 040000 #define O_DIRECT 040000
#define O_LARGEFILE 0100000 #define O_LARGEFILE 0100000
@ -37,9 +37,12 @@
#define O_PATH 010000000 #define O_PATH 010000000
#define O_TMPFILE 020200000 #define O_TMPFILE 020200000
#define O_NDELAY O_NONBLOCK #define O_NDELAY O_NONBLOCK
#define O_SEARCH O_PATH #define O_SEARCH O_PATH
#define O_EXEC O_PATH #define O_EXEC O_PATH
#define O_ACCMODE (03|O_SEARCH)
#define F_DUPFD 0 #define F_DUPFD 0
#define F_GETFD 1 #define F_GETFD 1
#define F_SETFD 2 #define F_SETFD 2

View File

@ -7,4 +7,3 @@
* Date Author Notes * Date Author Notes
*/ */
#include "sys/unistd.h" #include "sys/unistd.h"

View File

@ -0,0 +1,23 @@
/*
* Copyright (c) 2006-2021, RT-Thread Development Team
*
* SPDX-License-Identifier: Apache-2.0
*
* Change Logs:
* Date Author Notes
* 2021-09-02 Meco Man First version
*/
#ifndef __FCNTL_H__
#define __FCNTL_H__
#include <sys/_default_fcntl.h>
#ifndef O_DIRECTORY
#define O_DIRECTORY 0x200000
#endif
#ifndef O_BINARY
#define O_BINARY 0x10000
#endif
#endif