-extern int stat(char *path, struct stat *buf);
+// extern int stat(char *path, struct stat *buf);
function psi\stat(string $path, array &$buf = NULL) : int {
let path = strval($path);
- let buf = calloc(1, struct stat);
+ let buf = calloc(1, psi\SIZEOF_STRUCT_STAT);
return to_int(stat);
set $buf = to_array(*buf,
to_int(st_dev),
to_array(st_atim,
to_int(tv_sec),
to_int(tv_nsec)
- ),
+ ),
to_array(st_atimespec,
to_int(tv_sec),
to_int(tv_nsec)
),
+ to_int(st_atime),
to_array(st_mtim,
to_int(tv_sec),
to_int(tv_nsec)
- ),
+ ),
to_array(st_mtimespec,
to_int(tv_sec),
to_int(tv_nsec)
),
+ to_int(st_mtime),
to_array(st_ctim,
to_int(tv_sec),
to_int(tv_nsec)
- ),
+ ),
to_array(st_ctimespec,
to_int(tv_sec),
to_int(tv_nsec)
),
+ to_int(st_ctime),
to_array(st_birthtimespec,
to_int(tv_sec),
to_int(tv_nsec)
),
+ to_int(st_birthtime),
to_int(st_blksize),
to_int(st_blocks),
to_int(st_flags),