Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
Third Party Musl
提交
57174444
T
Third Party Musl
项目概览
OpenHarmony
/
Third Party Musl
1 年多 前同步成功
通知
37
Star
125
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
T
Third Party Musl
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
57174444
编写于
12月 12, 2013
作者:
S
Szabolcs Nagy
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
include cleanups: remove unused headers and add feature test macros
上级
ac45692a
变更
157
显示空白变更内容
内联
并排
Showing
157 changed file
with
68 addition
and
207 deletion
+68
-207
src/ctype/__ctype_b_loc.c
src/ctype/__ctype_b_loc.c
+0
-1
src/ctype/__ctype_get_mb_cur_max.c
src/ctype/__ctype_get_mb_cur_max.c
+1
-1
src/ctype/__ctype_tolower_loc.c
src/ctype/__ctype_tolower_loc.c
+1
-2
src/ctype/__ctype_toupper_loc.c
src/ctype/__ctype_toupper_loc.c
+1
-2
src/dirent/fdopendir.c
src/dirent/fdopendir.c
+0
-2
src/dirent/opendir.c
src/dirent/opendir.c
+0
-4
src/dirent/readdir.c
src/dirent/readdir.c
+0
-6
src/dirent/readdir_r.c
src/dirent/readdir_r.c
+0
-1
src/dirent/scandir.c
src/dirent/scandir.c
+2
-2
src/env/__init_security.c
src/env/__init_security.c
+0
-1
src/env/__stack_chk_fail.c
src/env/__stack_chk_fail.c
+1
-2
src/env/clearenv.c
src/env/clearenv.c
+1
-0
src/env/putenv.c
src/env/putenv.c
+0
-2
src/env/unsetenv.c
src/env/unsetenv.c
+0
-1
src/exit/atexit.c
src/exit/atexit.c
+0
-2
src/exit/exit.c
src/exit/exit.c
+1
-2
src/fcntl/fcntl.c
src/fcntl/fcntl.c
+0
-1
src/fcntl/open.c
src/fcntl/open.c
+0
-1
src/fcntl/openat.c
src/fcntl/openat.c
+0
-1
src/internal/syscall_ret.c
src/internal/syscall_ret.c
+0
-1
src/ldso/dlinfo.c
src/ldso/dlinfo.c
+1
-0
src/legacy/euidaccess.c
src/legacy/euidaccess.c
+1
-0
src/legacy/futimes.c
src/legacy/futimes.c
+1
-1
src/legacy/getdtablesize.c
src/legacy/getdtablesize.c
+2
-0
src/legacy/getpagesize.c
src/legacy/getpagesize.c
+1
-0
src/legacy/getpass.c
src/legacy/getpass.c
+1
-1
src/legacy/getusershell.c
src/legacy/getusershell.c
+1
-2
src/legacy/lutimes.c
src/legacy/lutimes.c
+1
-0
src/linux/chroot.c
src/linux/chroot.c
+1
-0
src/linux/clock_adjtime.c
src/linux/clock_adjtime.c
+0
-2
src/linux/klogctl.c
src/linux/klogctl.c
+1
-0
src/linux/personality.c
src/linux/personality.c
+1
-0
src/linux/prlimit.c
src/linux/prlimit.c
+2
-1
src/linux/sendfile.c
src/linux/sendfile.c
+1
-1
src/linux/setfsgid.c
src/linux/setfsgid.c
+1
-1
src/linux/setfsuid.c
src/linux/setfsuid.c
+1
-1
src/linux/setgroups.c
src/linux/setgroups.c
+1
-0
src/linux/sethostname.c
src/linux/sethostname.c
+1
-0
src/linux/setns.c
src/linux/setns.c
+0
-1
src/linux/stime.c
src/linux/stime.c
+1
-0
src/linux/sysinfo.c
src/linux/sysinfo.c
+1
-2
src/linux/wait4.c
src/linux/wait4.c
+0
-1
src/locale/intl.c
src/locale/intl.c
+1
-0
src/locale/localeconv.c
src/locale/localeconv.c
+0
-2
src/locale/strcasecmp_l.c
src/locale/strcasecmp_l.c
+0
-1
src/malloc/calloc.c
src/malloc/calloc.c
+0
-1
src/misc/get_current_dir_name.c
src/misc/get_current_dir_name.c
+1
-0
src/misc/getgrouplist.c
src/misc/getgrouplist.c
+1
-0
src/misc/getrusage.c
src/misc/getrusage.c
+0
-1
src/misc/initgroups.c
src/misc/initgroups.c
+1
-5
src/misc/nftw.c
src/misc/nftw.c
+0
-2
src/misc/syslog.c
src/misc/syslog.c
+0
-1
src/misc/uname.c
src/misc/uname.c
+0
-1
src/mman/msync.c
src/mman/msync.c
+0
-1
src/mman/munmap.c
src/mman/munmap.c
+0
-1
src/multibyte/internal.c
src/multibyte/internal.c
+0
-2
src/multibyte/internal.h
src/multibyte/internal.h
+1
-0
src/multibyte/mblen.c
src/multibyte/mblen.c
+0
-5
src/multibyte/mbrlen.c
src/multibyte/mbrlen.c
+0
-5
src/multibyte/mbrtowc.c
src/multibyte/mbrtowc.c
+0
-3
src/multibyte/mbsinit.c
src/multibyte/mbsinit.c
+0
-5
src/multibyte/mbsnrtowcs.c
src/multibyte/mbsnrtowcs.c
+0
-6
src/multibyte/mbsrtowcs.c
src/multibyte/mbsrtowcs.c
+1
-3
src/multibyte/mbtowc.c
src/multibyte/mbtowc.c
+1
-4
src/multibyte/wcrtomb.c
src/multibyte/wcrtomb.c
+0
-4
src/multibyte/wcsnrtombs.c
src/multibyte/wcsnrtombs.c
+0
-5
src/multibyte/wcsrtombs.c
src/multibyte/wcsrtombs.c
+0
-5
src/multibyte/wctomb.c
src/multibyte/wctomb.c
+0
-4
src/network/__ipparse.c
src/network/__ipparse.c
+0
-1
src/network/gethostbyaddr.c
src/network/gethostbyaddr.c
+0
-2
src/network/gethostbyname2.c
src/network/gethostbyname2.c
+0
-2
src/network/gethostbyname2_r.c
src/network/gethostbyname2_r.c
+1
-1
src/network/getifaddrs.c
src/network/getifaddrs.c
+1
-0
src/network/getnameinfo.c
src/network/getnameinfo.c
+0
-1
src/network/if_nameindex.c
src/network/if_nameindex.c
+0
-2
src/network/inet_ntop.c
src/network/inet_ntop.c
+0
-2
src/network/proto.c
src/network/proto.c
+0
-1
src/network/recv.c
src/network/recv.c
+0
-2
src/network/res_query.c
src/network/res_query.c
+1
-0
src/network/send.c
src/network/send.c
+0
-2
src/network/serv.c
src/network/serv.c
+0
-2
src/passwd/fgetgrent.c
src/passwd/fgetgrent.c
+1
-0
src/passwd/fgetpwent.c
src/passwd/fgetpwent.c
+1
-0
src/passwd/putgrent.c
src/passwd/putgrent.c
+1
-0
src/passwd/putpwent.c
src/passwd/putpwent.c
+1
-0
src/prng/__rand48_step.c
src/prng/__rand48_step.c
+0
-1
src/process/fexecve.c
src/process/fexecve.c
+0
-1
src/process/system.c
src/process/system.c
+1
-1
src/process/vfork.c
src/process/vfork.c
+1
-0
src/regex/glob.c
src/regex/glob.c
+0
-2
src/regex/regcomp.c
src/regex/regcomp.c
+0
-1
src/signal/raise.c
src/signal/raise.c
+0
-1
src/signal/sigaction.c
src/signal/sigaction.c
+0
-1
src/signal/sigfillset.c
src/signal/sigfillset.c
+0
-1
src/signal/sighold.c
src/signal/sighold.c
+1
-1
src/signal/sigignore.c
src/signal/sigignore.c
+1
-1
src/signal/siginterrupt.c
src/signal/siginterrupt.c
+1
-1
src/signal/sigismember.c
src/signal/sigismember.c
+0
-1
src/signal/siglongjmp.c
src/signal/siglongjmp.c
+0
-1
src/signal/signal.c
src/signal/signal.c
+0
-1
src/signal/sigpause.c
src/signal/sigpause.c
+0
-1
src/signal/sigqueue.c
src/signal/sigqueue.c
+0
-1
src/signal/sigrelse.c
src/signal/sigrelse.c
+1
-1
src/signal/sigset.c
src/signal/sigset.c
+1
-1
src/signal/sigsetjmp.c
src/signal/sigsetjmp.c
+0
-1
src/stat/fchmodat.c
src/stat/fchmodat.c
+0
-1
src/stat/futimesat.c
src/stat/futimesat.c
+1
-0
src/stat/lchmod.c
src/stat/lchmod.c
+1
-0
src/stdio/fgetln.c
src/stdio/fgetln.c
+1
-0
src/stdio/fwide.c
src/stdio/fwide.c
+1
-0
src/stdio/swprintf.c
src/stdio/swprintf.c
+0
-1
src/stdio/swscanf.c
src/stdio/swscanf.c
+0
-1
src/stdio/vfscanf.c
src/stdio/vfscanf.c
+1
-4
src/stdio/vfwscanf.c
src/stdio/vfwscanf.c
+0
-3
src/stdlib/ecvt.c
src/stdlib/ecvt.c
+1
-0
src/stdlib/gcvt.c
src/stdlib/gcvt.c
+1
-0
src/stdlib/wcstod.c
src/stdlib/wcstod.c
+1
-0
src/string/bcmp.c
src/string/bcmp.c
+1
-0
src/string/bcopy.c
src/string/bcopy.c
+1
-0
src/string/bzero.c
src/string/bzero.c
+1
-0
src/string/index.c
src/string/index.c
+1
-0
src/string/memccpy.c
src/string/memccpy.c
+0
-1
src/string/memchr.c
src/string/memchr.c
+0
-1
src/string/memmem.c
src/string/memmem.c
+0
-1
src/string/mempcpy.c
src/string/mempcpy.c
+1
-0
src/string/rindex.c
src/string/rindex.c
+1
-0
src/string/stpcpy.c
src/string/stpcpy.c
+0
-1
src/string/stpncpy.c
src/string/stpncpy.c
+0
-1
src/string/strchrnul.c
src/string/strchrnul.c
+0
-1
src/string/strlcpy.c
src/string/strlcpy.c
+1
-1
src/string/strlen.c
src/string/strlen.c
+0
-1
src/string/strstr.c
src/string/strstr.c
+0
-1
src/string/strverscmp.c
src/string/strverscmp.c
+0
-1
src/string/wcsstr.c
src/string/wcsstr.c
+0
-3
src/string/wmemchr.c
src/string/wmemchr.c
+0
-1
src/string/wmemcmp.c
src/string/wmemcmp.c
+0
-1
src/string/wmemcpy.c
src/string/wmemcpy.c
+0
-1
src/string/wmemmove.c
src/string/wmemmove.c
+0
-1
src/string/wmemset.c
src/string/wmemset.c
+0
-1
src/temp/__randname.c
src/temp/__randname.c
+0
-1
src/temp/mkdtemp.c
src/temp/mkdtemp.c
+0
-5
src/temp/mktemp.c
src/temp/mktemp.c
+2
-2
src/termios/tcgetattr.c
src/termios/tcgetattr.c
+0
-1
src/termios/tcsetattr.c
src/termios/tcsetattr.c
+0
-1
src/thread/pthread_attr_init.c
src/thread/pthread_attr_init.c
+0
-1
src/thread/pthread_sigmask.c
src/thread/pthread_sigmask.c
+0
-1
src/thread/synccall.c
src/thread/synccall.c
+0
-1
src/time/mktime.c
src/time/mktime.c
+0
-2
src/time/nanosleep.c
src/time/nanosleep.c
+0
-1
src/time/strptime.c
src/time/strptime.c
+0
-1
src/time/time.c
src/time/time.c
+0
-1
src/time/wcsftime.c
src/time/wcsftime.c
+0
-1
src/unistd/ctermid.c
src/unistd/ctermid.c
+0
-2
src/unistd/gethostname.c
src/unistd/gethostname.c
+0
-1
src/unistd/getlogin_r.c
src/unistd/getlogin_r.c
+0
-1
src/unistd/ttyname_r.c
src/unistd/ttyname_r.c
+0
-2
src/unistd/usleep.c
src/unistd/usleep.c
+1
-0
未找到文件。
src/ctype/__ctype_b_loc.c
浏览文件 @
57174444
#include <ctype.h>
#include <endian.h>
#if __BYTE_ORDER == __BIG_ENDIAN
...
...
src/ctype/__ctype_get_mb_cur_max.c
浏览文件 @
57174444
#include <std
lib
.h>
#include <std
def
.h>
size_t
__ctype_get_mb_cur_max
()
{
...
...
src/ctype/__ctype_tolower_loc.c
浏览文件 @
57174444
#include <ctype.h>
#include <inttypes.h>
#include <stdint.h>
static
const
int32_t
table
[]
=
{
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
...
...
src/ctype/__ctype_toupper_loc.c
浏览文件 @
57174444
#include <ctype.h>
#include <inttypes.h>
#include <stdint.h>
static
const
int32_t
table
[]
=
{
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
...
...
src/dirent/fdopendir.c
浏览文件 @
57174444
...
...
@@ -3,8 +3,6 @@
#include <sys/stat.h>
#include <errno.h>
#include <stdlib.h>
#include <unistd.h>
#include <limits.h>
#include "__dirent.h"
DIR
*
fdopendir
(
int
fd
)
...
...
src/dirent/opendir.c
浏览文件 @
57174444
#define _GNU_SOURCE
#include <dirent.h>
#include <fcntl.h>
#include <sys/stat.h>
#include <errno.h>
#include <stdlib.h>
#include <unistd.h>
#include <limits.h>
#include "__dirent.h"
#include "syscall.h"
...
...
src/dirent/readdir.c
浏览文件 @
57174444
#include <dirent.h>
#include <fcntl.h>
#include <sys/stat.h>
#include <errno.h>
#include <stdlib.h>
#include <limits.h>
#include "__dirent.h"
#include "syscall.h"
#include "libc.h"
int
__getdents
(
int
,
struct
dirent
*
,
size_t
);
...
...
src/dirent/readdir_r.c
浏览文件 @
57174444
#include <dirent.h>
#include <errno.h>
#include <stdlib.h>
#include <string.h>
#include "__dirent.h"
#include "libc.h"
...
...
src/dirent/scandir.c
浏览文件 @
57174444
#include <dirent.h>
#include <string.h>
#include <stdlib.h>
#include <
inttypes
.h>
#include <
stdint
.h>
#include <errno.h>
#include <stddef.h>
#include
<libc.h>
#include
"libc.h"
int
scandir
(
const
char
*
path
,
struct
dirent
***
res
,
int
(
*
sel
)(
const
struct
dirent
*
),
...
...
src/env/__init_security.c
浏览文件 @
57174444
#include <stddef.h>
#include <elf.h>
#include <poll.h>
#include <fcntl.h>
...
...
src/env/__stack_chk_fail.c
浏览文件 @
57174444
#include <string.h>
#include <inttypes.h>
#include <elf.h>
#include <stdint.h>
#include "pthread_impl.h"
#include "atomic.h"
...
...
src/env/clearenv.c
浏览文件 @
57174444
#define _GNU_SOURCE
#include <stdlib.h>
extern
char
**
__environ
;
...
...
src/env/putenv.c
浏览文件 @
57174444
#include <stdlib.h>
#include <string.h>
#include <errno.h>
#include <stdio.h>
extern
char
**
__environ
;
char
**
__env_map
;
...
...
src/env/unsetenv.c
浏览文件 @
57174444
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <errno.h>
...
...
src/exit/atexit.c
浏览文件 @
57174444
#include <stddef.h>
#include <stdlib.h>
#include <stdint.h>
#include <limits.h>
#include "libc.h"
/* Ensure that at least 32 atexit handlers can be registered without malloc */
...
...
src/exit/exit.c
浏览文件 @
57174444
#include <stdlib.h>
#include <unistd.h>
#include <stdio.h>
#include <stdint.h>
#include "libc.h"
#include "atomic.h"
#include "syscall.h"
...
...
src/fcntl/fcntl.c
浏览文件 @
57174444
#define _GNU_SOURCE
#include <fcntl.h>
#include <unistd.h>
#include <stdarg.h>
#include <errno.h>
#include "syscall.h"
...
...
src/fcntl/open.c
浏览文件 @
57174444
#include <fcntl.h>
#include <unistd.h>
#include <stdarg.h>
#include "syscall.h"
#include "libc.h"
...
...
src/fcntl/openat.c
浏览文件 @
57174444
#include <fcntl.h>
#include <unistd.h>
#include <stdarg.h>
#include "syscall.h"
#include "libc.h"
...
...
src/internal/syscall_ret.c
浏览文件 @
57174444
#include <errno.h>
#include <unistd.h>
long
__syscall_ret
(
unsigned
long
r
)
{
...
...
src/ldso/dlinfo.c
浏览文件 @
57174444
#define _GNU_SOURCE
#include <dlfcn.h>
int
__dlinfo
(
void
*
,
int
,
void
*
);
...
...
src/legacy/euidaccess.c
浏览文件 @
57174444
#define _GNU_SOURCE
#include <unistd.h>
#include <fcntl.h>
#include "libc.h"
...
...
src/legacy/futimes.c
浏览文件 @
57174444
#define _GNU_SOURCE
#include <sys/stat.h>
#include <sys/time.h>
#include <fcntl.h>
int
futimes
(
int
fd
,
const
struct
timeval
tv
[
2
])
{
...
...
src/legacy/getdtablesize.c
浏览文件 @
57174444
#define _GNU_SOURCE
#include <unistd.h>
#include <limits.h>
#include <sys/resource.h>
...
...
src/legacy/getpagesize.c
浏览文件 @
57174444
#define _GNU_SOURCE
#include <unistd.h>
#include "libc.h"
...
...
src/legacy/getpass.c
浏览文件 @
57174444
#define _GNU_SOURCE
#include <stdio.h>
#include <string.h>
#include <termios.h>
#include <unistd.h>
#include <fcntl.h>
...
...
src/legacy/getusershell.c
浏览文件 @
57174444
#define _GNU_SOURCE
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <unistd.h>
static
const
char
defshells
[]
=
"/bin/sh
\n
/bin/csh
\n
"
;
...
...
src/legacy/lutimes.c
浏览文件 @
57174444
#define _GNU_SOURCE
#include <sys/stat.h>
#include <sys/time.h>
#include <fcntl.h>
...
...
src/linux/chroot.c
浏览文件 @
57174444
#define _GNU_SOURCE
#include <unistd.h>
#include "syscall.h"
...
...
src/linux/clock_adjtime.c
浏览文件 @
57174444
#define _GNU_SOURCE
#include <time.h>
#include <sys/timex.h>
#include "syscall.h"
...
...
src/linux/klogctl.c
浏览文件 @
57174444
#include <sys/klog.h>
#include "syscall.h"
int
klogctl
(
int
type
,
char
*
buf
,
int
len
)
...
...
src/linux/personality.c
浏览文件 @
57174444
#include <sys/personality.h>
#include "syscall.h"
#ifdef SYS_personality
int
personality
(
unsigned
long
persona
)
...
...
src/linux/prlimit.c
浏览文件 @
57174444
#
include <unistd.h>
#
define _GNU_SOURCE
#include <sys/resource.h>
#include "syscall.h"
#include "libc.h"
...
...
@@ -8,4 +8,5 @@ int prlimit(pid_t pid, int resource, const struct rlimit *new_limit, struct rlim
return
syscall
(
SYS_prlimit64
,
pid
,
resource
,
new_limit
,
old_limit
);
}
#undef prlimit64
LFS64
(
prlimit
);
src/linux/sendfile.c
浏览文件 @
57174444
#include <
unistd
.h>
#include <
sys/sendfile
.h>
#include "syscall.h"
#include "libc.h"
...
...
src/linux/setfsgid.c
浏览文件 @
57174444
#include <
unist
d.h>
#include <
sys/fsui
d.h>
#include "syscall.h"
#include "libc.h"
...
...
src/linux/setfsuid.c
浏览文件 @
57174444
#include <
unist
d.h>
#include <
sys/fsui
d.h>
#include "syscall.h"
#include "libc.h"
...
...
src/linux/setgroups.c
浏览文件 @
57174444
#define _GNU_SOURCE
#include <unistd.h>
#include "syscall.h"
...
...
src/linux/sethostname.c
浏览文件 @
57174444
#define _GNU_SOURCE
#include <unistd.h>
#include "syscall.h"
...
...
src/linux/setns.c
浏览文件 @
57174444
#define _GNU_SOURCE
#include <sched.h>
#include "syscall.h"
#include "libc.h"
int
setns
(
int
fd
,
int
nstype
)
{
...
...
src/linux/stime.c
浏览文件 @
57174444
#define _GNU_SOURCE
#include <time.h>
#include <sys/time.h>
int
stime
(
time_t
*
t
)
...
...
src/linux/sysinfo.c
浏览文件 @
57174444
#include <sys/sysinfo.h>
#include "syscall.h"
struct
sysinfo
;
int
sysinfo
(
struct
sysinfo
*
info
)
{
return
syscall
(
SYS_sysinfo
,
info
);
...
...
src/linux/wait4.c
浏览文件 @
57174444
#define _GNU_SOURCE
#include <sys/wait.h>
#include <sys/resource.h>
#include <string.h>
#include "syscall.h"
pid_t
wait4
(
pid_t
pid
,
int
*
status
,
int
options
,
struct
rusage
*
usage
)
...
...
src/locale/intl.c
浏览文件 @
57174444
#include <libintl.h>
#include <stdlib.h>
#include <string.h>
#include <strings.h>
...
...
src/locale/localeconv.c
浏览文件 @
57174444
#include <locale.h>
#include <string.h>
#include <stdlib.h>
static
const
struct
lconv
posix_lconv
=
{
.
decimal_point
=
"."
,
...
...
src/locale/strcasecmp_l.c
浏览文件 @
57174444
#include <strings.h>
#include <ctype.h>
int
strcasecmp_l
(
const
char
*
l
,
const
char
*
r
,
locale_t
loc
)
{
...
...
src/malloc/calloc.c
浏览文件 @
57174444
#include <stdlib.h>
#include <errno.h>
#include <string.h>
void
*
calloc
(
size_t
m
,
size_t
n
)
{
...
...
src/misc/get_current_dir_name.c
浏览文件 @
57174444
#define _GNU_SOURCE
#include <stdlib.h>
#include <string.h>
#include <limits.h>
...
...
src/misc/getgrouplist.c
浏览文件 @
57174444
#define _GNU_SOURCE
#include <grp.h>
#include <string.h>
#include <limits.h>
...
...
src/misc/getrusage.c
浏览文件 @
57174444
#include <sys/resource.h>
#include <string.h>
#include "syscall.h"
int
getrusage
(
int
who
,
struct
rusage
*
ru
)
...
...
src/misc/initgroups.c
浏览文件 @
57174444
#include <sys/types.h>
#include <unistd.h>
#define _GNU_SOURCE
#include <grp.h>
#include <limits.h>
int
getgrouplist
(
const
char
*
,
gid_t
,
gid_t
*
,
int
*
);
int
setgroups
(
size_t
,
const
gid_t
*
);
int
initgroups
(
const
char
*
user
,
gid_t
gid
)
{
gid_t
groups
[
NGROUPS_MAX
];
...
...
src/misc/nftw.c
浏览文件 @
57174444
...
...
@@ -2,8 +2,6 @@
#include <dirent.h>
#include <sys/stat.h>
#include <errno.h>
#include <stdlib.h>
#include <fcntl.h>
#include <unistd.h>
#include <string.h>
#include <limits.h>
...
...
src/misc/syslog.c
浏览文件 @
57174444
#include <stdarg.h>
#include <sys/socket.h>
#include <stdio.h>
#include <fcntl.h>
#include <unistd.h>
#include <syslog.h>
#include <time.h>
...
...
src/misc/uname.c
浏览文件 @
57174444
#include <sys/utsname.h>
#include <string.h>
#include "syscall.h"
int
uname
(
struct
utsname
*
uts
)
...
...
src/mman/msync.c
浏览文件 @
57174444
#include <unistd.h>
#include <sys/mman.h>
#include "syscall.h"
...
...
src/mman/munmap.c
浏览文件 @
57174444
#include <unistd.h>
#include <sys/mman.h>
#include "syscall.h"
#include "libc.h"
...
...
src/multibyte/internal.c
浏览文件 @
57174444
...
...
@@ -4,8 +4,6 @@
* unnecessary.
*/
#include <inttypes.h>
#include "internal.h"
#define C(x) ( x<2 ? -1 : ( R(0x80,0xc0) | x ) )
...
...
src/multibyte/internal.h
浏览文件 @
57174444
...
...
@@ -6,6 +6,7 @@
#define bittab __fsmu8
#include <stdint.h>
#include "libc.h"
extern
const
uint32_t
bittab
[]
ATTR_LIBC_VISIBILITY
;
...
...
src/multibyte/mblen.c
浏览文件 @
57174444
...
...
@@ -5,11 +5,6 @@
*/
#include <stdlib.h>
#include <inttypes.h>
#include <wchar.h>
#include <errno.h>
#include "internal.h"
int
mblen
(
const
char
*
s
,
size_t
n
)
{
...
...
src/multibyte/mbrlen.c
浏览文件 @
57174444
...
...
@@ -4,12 +4,7 @@
* unnecessary.
*/
#include <stdlib.h>
#include <inttypes.h>
#include <wchar.h>
#include <errno.h>
#include "internal.h"
size_t
mbrlen
(
const
char
*
restrict
s
,
size_t
n
,
mbstate_t
*
restrict
st
)
{
...
...
src/multibyte/mbrtowc.c
浏览文件 @
57174444
...
...
@@ -4,11 +4,8 @@
* unnecessary.
*/
#include <stdlib.h>
#include <inttypes.h>
#include <wchar.h>
#include <errno.h>
#include "internal.h"
size_t
mbrtowc
(
wchar_t
*
restrict
wc
,
const
char
*
restrict
src
,
size_t
n
,
mbstate_t
*
restrict
st
)
...
...
src/multibyte/mbsinit.c
浏览文件 @
57174444
...
...
@@ -4,12 +4,7 @@
* unnecessary.
*/
#include <stdlib.h>
#include <inttypes.h>
#include <wchar.h>
#include <errno.h>
#include "internal.h"
int
mbsinit
(
const
mbstate_t
*
st
)
{
...
...
src/multibyte/mbsnrtowcs.c
浏览文件 @
57174444
...
...
@@ -4,13 +4,7 @@
* unnecessary.
*/
#include <stdlib.h>
#include <inttypes.h>
#include <wchar.h>
#include <errno.h>
#include <stdio.h>
#include "internal.h"
size_t
mbsnrtowcs
(
wchar_t
*
restrict
wcs
,
const
char
**
restrict
src
,
size_t
n
,
size_t
wn
,
mbstate_t
*
restrict
st
)
{
...
...
src/multibyte/mbsrtowcs.c
浏览文件 @
57174444
...
...
@@ -4,11 +4,9 @@
* unnecessary.
*/
#include <stdlib.h>
#include <inttypes.h>
#include <stdint.h>
#include <wchar.h>
#include <errno.h>
#include "internal.h"
size_t
mbsrtowcs
(
wchar_t
*
restrict
ws
,
const
char
**
restrict
src
,
size_t
wn
,
mbstate_t
*
restrict
st
)
...
...
src/multibyte/mbtowc.c
浏览文件 @
57174444
...
...
@@ -4,13 +4,10 @@
* unnecessary.
*/
#include <stdlib.h>
#include <inttypes.h>
#include <wchar.h>
#include <errno.h>
#include "internal.h"
#include <stdio.h>
int
mbtowc
(
wchar_t
*
restrict
wc
,
const
char
*
restrict
src
,
size_t
n
)
{
unsigned
c
;
...
...
src/multibyte/wcrtomb.c
浏览文件 @
57174444
...
...
@@ -4,13 +4,9 @@
* unnecessary.
*/
#include <stdlib.h>
#include <inttypes.h>
#include <wchar.h>
#include <errno.h>
#include "internal.h"
size_t
wcrtomb
(
char
*
restrict
s
,
wchar_t
wc
,
mbstate_t
*
restrict
st
)
{
if
(
!
s
)
return
1
;
...
...
src/multibyte/wcsnrtombs.c
浏览文件 @
57174444
...
...
@@ -4,12 +4,7 @@
* unnecessary.
*/
#include <stdlib.h>
#include <inttypes.h>
#include <wchar.h>
#include <errno.h>
#include "internal.h"
size_t
wcsnrtombs
(
char
*
restrict
dst
,
const
wchar_t
**
restrict
wcs
,
size_t
wn
,
size_t
n
,
mbstate_t
*
restrict
st
)
{
...
...
src/multibyte/wcsrtombs.c
浏览文件 @
57174444
...
...
@@ -4,12 +4,7 @@
* unnecessary.
*/
#include <stdlib.h>
#include <inttypes.h>
#include <wchar.h>
#include <errno.h>
#include "internal.h"
size_t
wcsrtombs
(
char
*
restrict
s
,
const
wchar_t
**
restrict
ws
,
size_t
n
,
mbstate_t
*
restrict
st
)
{
...
...
src/multibyte/wctomb.c
浏览文件 @
57174444
...
...
@@ -5,11 +5,7 @@
*/
#include <stdlib.h>
#include <inttypes.h>
#include <wchar.h>
#include <errno.h>
#include "internal.h"
int
wctomb
(
char
*
s
,
wchar_t
wc
)
{
...
...
src/network/__ipparse.c
浏览文件 @
57174444
#include <string.h>
#include <stdlib.h>
#include <ctype.h>
#include <sys/socket.h>
...
...
src/network/gethostbyaddr.c
浏览文件 @
57174444
#define _GNU_SOURCE
#include <netdb.h>
#include <string.h>
#include <netinet/in.h>
#include <errno.h>
#include <stdlib.h>
...
...
src/network/gethostbyname2.c
浏览文件 @
57174444
...
...
@@ -2,8 +2,6 @@
#include <sys/socket.h>
#include <netdb.h>
#include <string.h>
#include <netinet/in.h>
#include <errno.h>
#include <stdlib.h>
...
...
src/network/gethostbyname2_r.c
浏览文件 @
57174444
...
...
@@ -5,7 +5,7 @@
#include <string.h>
#include <netinet/in.h>
#include <errno.h>
#include <
inttypes
.h>
#include <
stdint
.h>
int
gethostbyname2_r
(
const
char
*
name
,
int
af
,
struct
hostent
*
h
,
char
*
buf
,
size_t
buflen
,
...
...
src/network/getifaddrs.c
浏览文件 @
57174444
...
...
@@ -11,6 +11,7 @@
#include <arpa/inet.h>
/* inet_pton */
#include <unistd.h>
#include <sys/ioctl.h>
#include <sys/socket.h>
typedef
union
{
struct
sockaddr_in6
v6
;
...
...
src/network/getnameinfo.c
浏览文件 @
57174444
#include <netdb.h>
#include <limits.h>
#include <stdlib.h>
#include <string.h>
#include <stdio.h>
#include <sys/socket.h>
...
...
src/network/if_nameindex.c
浏览文件 @
57174444
...
...
@@ -6,8 +6,6 @@
#include <errno.h>
#include "syscall.h"
#include <stdio.h>
static
void
*
do_nameindex
(
int
s
,
size_t
n
)
{
size_t
i
,
len
,
k
;
...
...
src/network/inet_ntop.c
浏览文件 @
57174444
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <netdb.h>
#include <errno.h>
#include <stdio.h>
#include <string.h>
...
...
src/network/proto.c
浏览文件 @
57174444
#include <netdb.h>
#include <stdio.h>
#include <string.h>
/* do we really need all these?? */
...
...
src/network/recv.c
浏览文件 @
57174444
#include <sys/socket.h>
#include "syscall.h"
#include "libc.h"
ssize_t
recv
(
int
fd
,
void
*
buf
,
size_t
len
,
int
flags
)
{
...
...
src/network/res_query.c
浏览文件 @
57174444
#define _GNU_SOURCE
#include <resolv.h>
#include <netdb.h>
#include "__dns.h"
#include "libc.h"
...
...
src/network/send.c
浏览文件 @
57174444
#include <sys/socket.h>
#include "syscall.h"
#include "libc.h"
ssize_t
send
(
int
fd
,
const
void
*
buf
,
size_t
len
,
int
flags
)
{
...
...
src/network/serv.c
浏览文件 @
57174444
#include <netdb.h>
#include <stdio.h>
#include <string.h>
void
endservent
(
void
)
{
...
...
src/passwd/fgetgrent.c
浏览文件 @
57174444
#define _GNU_SOURCE
#include "pwf.h"
struct
group
*
fgetgrent
(
FILE
*
f
)
...
...
src/passwd/fgetpwent.c
浏览文件 @
57174444
#define _GNU_SOURCE
#include "pwf.h"
struct
passwd
*
fgetpwent
(
FILE
*
f
)
...
...
src/passwd/putgrent.c
浏览文件 @
57174444
#define _GNU_SOURCE
#include <grp.h>
#include <stdio.h>
...
...
src/passwd/putpwent.c
浏览文件 @
57174444
#define _GNU_SOURCE
#include <pwd.h>
#include <stdio.h>
...
...
src/prng/__rand48_step.c
浏览文件 @
57174444
#include <stdlib.h>
#include <stdint.h>
uint64_t
__rand48_step
(
unsigned
short
*
xi
,
unsigned
short
*
lc
)
...
...
src/process/fexecve.c
浏览文件 @
57174444
#include <unistd.h>
#include <stdio.h>
#include <errno.h>
void
__procfdname
(
char
*
,
unsigned
);
...
...
src/process/system.c
浏览文件 @
57174444
#include <unistd.h>
#include <
fcntl
.h>
#include <
stdlib
.h>
#include <signal.h>
#include <sys/wait.h>
#include <spawn.h>
...
...
src/process/vfork.c
浏览文件 @
57174444
#define _GNU_SOURCE
#include <unistd.h>
#include "syscall.h"
#include "libc.h"
...
...
src/regex/glob.c
浏览文件 @
57174444
...
...
@@ -7,8 +7,6 @@
#include <stdlib.h>
#include <errno.h>
#include <stddef.h>
#include <unistd.h>
#include <stdio.h>
#include "libc.h"
struct
match
...
...
src/regex/regcomp.c
浏览文件 @
57174444
...
...
@@ -30,7 +30,6 @@
*/
#include <string.h>
#include <errno.h>
#include <stdlib.h>
#include <regex.h>
#include <limits.h>
...
...
src/signal/raise.c
浏览文件 @
57174444
#include <signal.h>
#include <errno.h>
#include <stdint.h>
#include "syscall.h"
#include "pthread_impl.h"
...
...
src/signal/sigaction.c
浏览文件 @
57174444
#include <stdlib.h>
#include <signal.h>
#include <errno.h>
#include <string.h>
...
...
src/signal/sigfillset.c
浏览文件 @
57174444
#include <signal.h>
#include <string.h>
#include <limits.h>
int
sigfillset
(
sigset_t
*
set
)
...
...
src/signal/sighold.c
浏览文件 @
57174444
#include <signal.h>
#include <std
lib
.h>
#include <std
def
.h>
int
sighold
(
int
sig
)
{
...
...
src/signal/sigignore.c
浏览文件 @
57174444
#include <signal.h>
#include <std
lib
.h>
#include <std
def
.h>
int
sigignore
(
int
sig
)
{
...
...
src/signal/siginterrupt.c
浏览文件 @
57174444
#include <std
lib
.h>
#include <std
def
.h>
#include <signal.h>
int
siginterrupt
(
int
sig
,
int
flag
)
...
...
src/signal/sigismember.c
浏览文件 @
57174444
#include <signal.h>
#include <errno.h>
int
sigismember
(
const
sigset_t
*
set
,
int
sig
)
{
...
...
src/signal/siglongjmp.c
浏览文件 @
57174444
#include <setjmp.h>
#include <signal.h>
#include <stdlib.h>
#include "syscall.h"
#include "pthread_impl.h"
...
...
src/signal/signal.c
浏览文件 @
57174444
#include <signal.h>
#include <stddef.h>
#include "syscall.h"
#include "libc.h"
...
...
src/signal/sigpause.c
浏览文件 @
57174444
#include <signal.h>
#include <stdlib.h>
int
sigpause
(
int
sig
)
{
...
...
src/signal/sigqueue.c
浏览文件 @
57174444
#include <signal.h>
#include <string.h>
#include <unistd.h>
#include <stdint.h>
#include "syscall.h"
#include "pthread_impl.h"
...
...
src/signal/sigrelse.c
浏览文件 @
57174444
#include <signal.h>
#include <std
lib
.h>
#include <std
def
.h>
int
sigrelse
(
int
sig
)
{
...
...
src/signal/sigset.c
浏览文件 @
57174444
#include <signal.h>
#include <std
lib
.h>
#include <std
def
.h>
void
(
*
sigset
(
int
sig
,
void
(
*
handler
)(
int
)))(
int
)
{
...
...
src/signal/sigsetjmp.c
浏览文件 @
57174444
#include <setjmp.h>
#include <signal.h>
#include <stdlib.h>
/* !!! This function will not work unless the compiler performs
* tail call optimization. Machine-specific asm versions should
...
...
src/stat/fchmodat.c
浏览文件 @
57174444
#include <sys/stat.h>
#include <fcntl.h>
#include <errno.h>
#include <stdio.h>
#include "syscall.h"
void
__procfdname
(
char
*
,
unsigned
);
...
...
src/stat/futimesat.c
浏览文件 @
57174444
#define _GNU_SOURCE
#include <sys/time.h>
#include "syscall.h"
...
...
src/stat/lchmod.c
浏览文件 @
57174444
#define _GNU_SOURCE
#include <sys/stat.h>
#include <fcntl.h>
...
...
src/stdio/fgetln.c
浏览文件 @
57174444
#define _GNU_SOURCE
#include "stdio_impl.h"
#include <string.h>
...
...
src/stdio/fwide.c
浏览文件 @
57174444
#include <wchar.h>
#include "stdio_impl.h"
#define SH (8*sizeof(int)-1)
...
...
src/stdio/swprintf.c
浏览文件 @
57174444
#include <stdio.h>
#include <stdarg.h>
#include <wchar.h>
...
...
src/stdio/swscanf.c
浏览文件 @
57174444
#include <stdio.h>
#include <stdarg.h>
#include <wchar.h>
#include "libc.h"
...
...
src/stdio/vfscanf.c
浏览文件 @
57174444
...
...
@@ -5,10 +5,7 @@
#include <wctype.h>
#include <limits.h>
#include <string.h>
#include <errno.h>
#include <math.h>
#include <float.h>
#include <inttypes.h>
#include <stdint.h>
#include "stdio_impl.h"
#include "shgetc.h"
...
...
src/stdio/vfwscanf.c
浏览文件 @
57174444
...
...
@@ -6,9 +6,6 @@
#include <wctype.h>
#include <limits.h>
#include <string.h>
#include <errno.h>
#include <math.h>
#include <float.h>
#include "stdio_impl.h"
#include "shgetc.h"
...
...
src/stdlib/ecvt.c
浏览文件 @
57174444
#define _GNU_SOURCE
#include <stdlib.h>
#include <stdio.h>
...
...
src/stdlib/gcvt.c
浏览文件 @
57174444
#define _GNU_SOURCE
#include <stdlib.h>
#include <stdio.h>
...
...
src/stdlib/wcstod.c
浏览文件 @
57174444
#include "shgetc.h"
#include "floatscan.h"
#include "stdio_impl.h"
#include <wchar.h>
#include <wctype.h>
/* This read function heavily cheats. It knows:
...
...
src/string/bcmp.c
浏览文件 @
57174444
#define _BSD_SOURCE
#include <string.h>
#include <strings.h>
...
...
src/string/bcopy.c
浏览文件 @
57174444
#define _BSD_SOURCE
#include <string.h>
#include <strings.h>
...
...
src/string/bzero.c
浏览文件 @
57174444
#define _BSD_SOURCE
#include <string.h>
#include <strings.h>
...
...
src/string/index.c
浏览文件 @
57174444
#define _BSD_SOURCE
#include <string.h>
#include <strings.h>
...
...
src/string/memccpy.c
浏览文件 @
57174444
#include <string.h>
#include <stdlib.h>
#include <stdint.h>
#include <limits.h>
...
...
src/string/memchr.c
浏览文件 @
57174444
#include <string.h>
#include <stdlib.h>
#include <stdint.h>
#include <limits.h>
...
...
src/string/memmem.c
浏览文件 @
57174444
#define _GNU_SOURCE
#include <string.h>
#include <stdlib.h>
#include <stdint.h>
static
char
*
twobyte_memmem
(
const
unsigned
char
*
h
,
size_t
k
,
const
unsigned
char
*
n
)
...
...
src/string/mempcpy.c
浏览文件 @
57174444
#define _GNU_SOURCE
#include <string.h>
void
*
mempcpy
(
void
*
dest
,
const
void
*
src
,
size_t
n
)
...
...
src/string/rindex.c
浏览文件 @
57174444
#define _BSD_SOURCE
#include <string.h>
#include <strings.h>
...
...
src/string/stpcpy.c
浏览文件 @
57174444
#include <string.h>
#include <stdlib.h>
#include <stdint.h>
#include <limits.h>
#include "libc.h"
...
...
src/string/stpncpy.c
浏览文件 @
57174444
#include <string.h>
#include <stdlib.h>
#include <stdint.h>
#include <limits.h>
#include "libc.h"
...
...
src/string/strchrnul.c
浏览文件 @
57174444
#include <string.h>
#include <stdlib.h>
#include <stdint.h>
#include <limits.h>
#include "libc.h"
...
...
src/string/strlcpy.c
浏览文件 @
57174444
#define _BSD_SOURCE
#include <string.h>
#include <stdlib.h>
#include <stdint.h>
#include <limits.h>
#include "libc.h"
...
...
src/string/strlen.c
浏览文件 @
57174444
#include <string.h>
#include <stdlib.h>
#include <stdint.h>
#include <limits.h>
...
...
src/string/strstr.c
浏览文件 @
57174444
#include <string.h>
#include <stdlib.h>
#include <stdint.h>
static
char
*
twobyte_strstr
(
const
unsigned
char
*
h
,
const
unsigned
char
*
n
)
...
...
src/string/strverscmp.c
浏览文件 @
57174444
#define _GNU_SOURCE
#include <ctype.h>
#include <string.h>
#include <sys/types.h>
int
strverscmp
(
const
char
*
l
,
const
char
*
r
)
{
...
...
src/string/wcsstr.c
浏览文件 @
57174444
#include <wchar.h>
#include <string.h>
#include <stdlib.h>
#include <stdint.h>
#define MAX(a,b) ((a)>(b)?(a):(b))
#define MIN(a,b) ((a)<(b)?(a):(b))
...
...
src/string/wmemchr.c
浏览文件 @
57174444
#include <string.h>
#include <wchar.h>
wchar_t
*
wmemchr
(
const
wchar_t
*
s
,
wchar_t
c
,
size_t
n
)
...
...
src/string/wmemcmp.c
浏览文件 @
57174444
#include <string.h>
#include <wchar.h>
int
wmemcmp
(
const
wchar_t
*
l
,
const
wchar_t
*
r
,
size_t
n
)
...
...
src/string/wmemcpy.c
浏览文件 @
57174444
#include <string.h>
#include <wchar.h>
wchar_t
*
wmemcpy
(
wchar_t
*
restrict
d
,
const
wchar_t
*
restrict
s
,
size_t
n
)
...
...
src/string/wmemmove.c
浏览文件 @
57174444
#include <string.h>
#include <wchar.h>
wchar_t
*
wmemmove
(
wchar_t
*
d
,
const
wchar_t
*
s
,
size_t
n
)
...
...
src/string/wmemset.c
浏览文件 @
57174444
#include <string.h>
#include <wchar.h>
wchar_t
*
wmemset
(
wchar_t
*
d
,
wchar_t
c
,
size_t
n
)
...
...
src/temp/__randname.c
浏览文件 @
57174444
#include <string.h>
#include <time.h>
#include <stdint.h>
...
...
src/temp/mkdtemp.c
浏览文件 @
57174444
#include <string.h>
#include <stdio.h>
#include <stdlib.h>
#include <fcntl.h>
#include <unistd.h>
#include <limits.h>
#include <errno.h>
#include <sys/stat.h>
#include "libc.h"
char
*
__randname
(
char
*
);
...
...
src/temp/mktemp.c
浏览文件 @
57174444
#define _GNU_SOURCE
#include <string.h>
#include <fcntl.h>
#include <unistd.h>
#include <stdlib.h>
#include <errno.h>
#include <sys/stat.h>
...
...
src/termios/tcgetattr.c
浏览文件 @
57174444
#include <termios.h>
#include <sys/ioctl.h>
#include <string.h>
int
tcgetattr
(
int
fd
,
struct
termios
*
tio
)
{
...
...
src/termios/tcsetattr.c
浏览文件 @
57174444
#include <termios.h>
#include <sys/ioctl.h>
#include <string.h>
#include <errno.h>
int
tcsetattr
(
int
fd
,
int
act
,
const
struct
termios
*
tio
)
...
...
src/thread/pthread_attr_init.c
浏览文件 @
57174444
#include "pthread_impl.h"
#include <string.h>
int
pthread_attr_init
(
pthread_attr_t
*
a
)
{
...
...
src/thread/pthread_sigmask.c
浏览文件 @
57174444
#include <signal.h>
#include <errno.h>
#include <pthread.h>
#include "syscall.h"
int
pthread_sigmask
(
int
how
,
const
sigset_t
*
restrict
set
,
sigset_t
*
restrict
old
)
...
...
src/thread/synccall.c
浏览文件 @
57174444
#include "pthread_impl.h"
#include <semaphore.h>
#include <string.h>
static
struct
chain
{
struct
chain
*
next
;
...
...
src/time/mktime.c
浏览文件 @
57174444
#include "time_impl.h"
#include <errno.h>
#include <stdlib.h>
#include <string.h>
time_t
mktime
(
struct
tm
*
tm
)
{
...
...
src/time/nanosleep.c
浏览文件 @
57174444
#include <unistd.h>
#include <time.h>
#include "syscall.h"
#include "libc.h"
...
...
src/time/strptime.c
浏览文件 @
57174444
#include <stdio.h>
#include <stdlib.h>
#include <langinfo.h>
#include <time.h>
...
...
src/time/time.c
浏览文件 @
57174444
#include <time.h>
#include <sys/time.h>
#include "syscall.h"
int
__clock_gettime
(
clockid_t
,
struct
timespec
*
);
...
...
src/time/wcsftime.c
浏览文件 @
57174444
#include <wchar.h>
#include <time.h>
#include <string.h>
#include <locale.h>
#include "libc.h"
...
...
src/unistd/ctermid.c
浏览文件 @
57174444
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <fcntl.h>
#include <unistd.h>
#include <limits.h>
...
...
src/unistd/gethostname.c
浏览文件 @
57174444
#include <unistd.h>
#include <sys/utsname.h>
#include <string.h>
int
gethostname
(
char
*
name
,
size_t
len
)
{
...
...
src/unistd/getlogin_r.c
浏览文件 @
57174444
#include <unistd.h>
#include <stdlib.h>
#include <string.h>
#include <errno.h>
...
...
src/unistd/ttyname_r.c
浏览文件 @
57174444
#include <unistd.h>
#include <errno.h>
#include <stdio.h>
#include <string.h>
void
__procfdname
(
char
*
,
unsigned
);
...
...
src/unistd/usleep.c
浏览文件 @
57174444
#define _GNU_SOURCE
#include <unistd.h>
#include <time.h>
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录