31#if defined (HAVE_CONFIG_H)
42#if defined (HAVE_PRAGMA_GCC_DIAGNOSTIC)
43# pragma GCC diagnostic push
44# pragma GCC diagnostic ignored "-Wunused-parameter"
49#if defined (HAVE_PRAGMA_GCC_DIAGNOSTIC)
50# pragma GCC diagnostic pop
56#if defined (OCTAVE_USE_WINDOWS_API)
64#if defined (OCTAVE_USE_WINDOWS_API)
66 int status = _wmkdir (wname);
67 free ((
void *) wname);
68 octave_unused_parameter (mode);
71 return mkdir (name, mode);
78 return mkfifo (name, mode);
88assign_stat_fields (
struct stat *buf, mode_t *mode, ino_t *ino,
89 dev_t *dev, nlink_t *nlink, uid_t *uid,
90 gid_t *gid, off_t *size, time_t *atime,
91 long int *atime_nsec, time_t *mtime,
long int *mtime_nsec,
92 time_t *ctime,
long int *ctime_nsec, dev_t *rdev,
93 long *blksize,
long *blocks)
98 *nlink = buf->st_nlink;
101 *size = buf->st_size;
102 *atime = buf->st_atime;
103 *atime_nsec = get_stat_atime_ns (buf);
104 *mtime = buf->st_mtime;
105 *mtime_nsec = get_stat_mtime_ns (buf);
106 *ctime = buf->st_ctime;
107 *ctime_nsec = get_stat_ctime_ns (buf);
109#if defined (HAVE_STRUCT_STAT_ST_RDEV)
110 *rdev = buf->st_rdev;
115#if defined (HAVE_STRUCT_STAT_ST_BLKSIZE)
116 *blksize = buf->st_blksize;
121#if defined (HAVE_STRUCT_STAT_ST_BLOCKS)
122 *blocks = buf->st_blocks;
130 dev_t *dev, nlink_t *nlink, uid_t *uid,
131 gid_t *gid, off_t *size, time_t *atime,
132 long int *atime_nsec, time_t *mtime,
long int *mtime_nsec,
133 time_t *ctime,
long int *ctime_nsec, dev_t *rdev,
134 long *blksize,
long *blocks)
138#if defined (OCTAVE_USE_WINDOWS_API)
140 int status = _wstati64 (wfname, &buf);
141 free ((
void *) wfname);
143 int status =
stat (fname, &buf);
146 assign_stat_fields (&buf, mode, ino, dev, nlink, uid, gid, size,
147 atime, atime_nsec, mtime, mtime_nsec, ctime, ctime_nsec,
148 rdev, blksize, blocks);
155 dev_t *dev, nlink_t *nlink, uid_t *uid,
156 gid_t *gid, off_t *size, time_t *atime,
157 long int *atime_nsec, time_t *mtime,
long int *mtime_nsec,
158 time_t *ctime,
long int *ctime_nsec, dev_t *rdev,
159 long *blksize,
long *blocks)
163#if defined (OCTAVE_USE_WINDOWS_API)
166 int status = _wstati64 (wlname, &buf);
167 free ((
void *) wlname);
169 int status = lstat (lname, &buf);
172 assign_stat_fields (&buf, mode, ino, dev, nlink, uid, gid, size,
173 atime, atime_nsec, mtime, mtime_nsec, ctime, ctime_nsec,
174 rdev, blksize, blocks);
181 dev_t *dev, nlink_t *nlink, uid_t *uid,
182 gid_t *gid, off_t *size, time_t *atime,
183 long int *atime_nsec, time_t *mtime,
long int *mtime_nsec,
184 time_t *ctime,
long int *ctime_nsec, dev_t *rdev,
185 long *blksize,
long *blocks)
189 int status = fstat (fid, &buf);
191 assign_stat_fields (&buf, mode, ino, dev, nlink, uid, gid, size,
192 atime, atime_nsec, mtime, mtime_nsec, ctime, ctime_nsec,
193 rdev, blksize, blocks);
198#if defined (HAVE_PRAGMA_GCC_DIAGNOSTIC)
202# pragma GCC diagnostic push
203# pragma GCC diagnostic ignored "-Wunused-parameter"
210 return S_ISBLK (mode);
220 return S_ISCHR (mode);
230 return S_ISDIR (mode);
239#if defined (S_ISFIFO)
240 return S_ISFIFO (mode);
250 return S_ISLNK (mode);
260 return S_ISREG (mode);
269#if defined (S_ISSOCK)
270 return S_ISSOCK (mode);
276#if defined (HAVE_PRAGMA_GCC_DIAGNOSTIC)
278# pragma GCC diagnostic pop
284#if defined (HAVE_STRUCT_STAT_ST_RDEV)
294#if defined (HAVE_STRUCT_STAT_ST_BLKSIZE)
304#if defined (HAVE_STRUCT_STAT_ST_BLOCKS)
int mkfifo(const std::string &nm, mode_t md)
int mkdir(const std::string &nm, mode_t md)
bool octave_is_lnk_wrapper(mode_t mode)
int octave_lstat_wrapper(const char *lname, mode_t *mode, ino_t *ino, dev_t *dev, nlink_t *nlink, uid_t *uid, gid_t *gid, off_t *size, time_t *atime, long int *atime_nsec, time_t *mtime, long int *mtime_nsec, time_t *ctime, long int *ctime_nsec, dev_t *rdev, long *blksize, long *blocks)
int octave_mkdir_wrapper(const char *name, mode_t mode)
bool octave_is_chr_wrapper(mode_t mode)
bool octave_is_fifo_wrapper(mode_t mode)
bool octave_have_struct_stat_st_rdev(void)
bool octave_have_struct_stat_st_blocks(void)
bool octave_is_blk_wrapper(mode_t mode)
bool octave_is_dir_wrapper(mode_t mode)
bool octave_is_reg_wrapper(mode_t mode)
int octave_stat_wrapper(const char *fname, mode_t *mode, ino_t *ino, dev_t *dev, nlink_t *nlink, uid_t *uid, gid_t *gid, off_t *size, time_t *atime, long int *atime_nsec, time_t *mtime, long int *mtime_nsec, time_t *ctime, long int *ctime_nsec, dev_t *rdev, long *blksize, long *blocks)
int octave_mkfifo_wrapper(const char *name, mode_t mode)
int octave_fstat_wrapper(int fid, mode_t *mode, ino_t *ino, dev_t *dev, nlink_t *nlink, uid_t *uid, gid_t *gid, off_t *size, time_t *atime, long int *atime_nsec, time_t *mtime, long int *mtime_nsec, time_t *ctime, long int *ctime_nsec, dev_t *rdev, long *blksize, long *blocks)
int octave_umask_wrapper(mode_t mode)
bool octave_is_sock_wrapper(mode_t mode)
bool octave_have_struct_stat_st_blksize(void)
subroutine stat(x, n, av, var, xmin, xmax)
wchar_t * u8_to_wchar(const char *u8)