Luna/libc/include/sys/stat.h

57 lines
1.4 KiB
C
Raw Normal View History

2023-03-12 14:32:09 +00:00
/* sys/stat.h: stat() routine and friends. */
#ifndef _SYS_STAT_H
#define _SYS_STAT_H
2023-03-12 15:55:46 +00:00
#include <bits/modes.h>
2023-04-10 17:56:03 +00:00
#include <bits/struct_stat.h>
2023-08-08 12:14:35 +00:00
#include <bits/timespec.h>
#include <bits/utime.h>
2023-03-12 14:32:09 +00:00
#include <sys/types.h>
#ifdef __cplusplus
extern "C"
{
#endif
/* Create a directory. */
int mkdir(const char* path, mode_t mode);
/* Change the mode bits of a file. */
int chmod(const char* path, mode_t mode);
/* Change the mode bits of a file descriptor. */
int fchmod(int fd, mode_t mode);
2023-04-10 17:56:03 +00:00
#pragma GCC push_options
#pragma GCC diagnostic ignored "-Wshadow"
/* Retrieve information about a file. */
int stat(const char* path, struct stat* st);
#pragma GCC pop_options
/* Retrieve information about a file or symbolic link. */
int lstat(const char* path, struct stat* st);
2023-04-10 17:56:03 +00:00
/* Retrieve information about a file. */
int fstat(int fd, struct stat* st);
/* Retrieve information about a file. */
int fstatat(int dirfd, const char* path, struct stat* st, int flags);
2023-05-26 20:27:49 +00:00
/* Change the process's file creation mask. */
mode_t umask(mode_t mask);
2023-08-08 12:14:35 +00:00
/* Change a file's access and modification timestamps, with nanosecond precision. */
int utimensat(int dirfd, const char* path, const struct timespec times[2], int flags);
/* Change a file's access and modification timestamps, with nanosecond precision. */
int futimens(int fd, const struct timespec times[2], int flags);
2023-03-12 14:32:09 +00:00
#ifdef __cplusplus
}
#endif
#endif