vmm: refactor userspace's emsr_fakewrite()
[akaros.git] / tests / stat.c
1 #include <stdio.h> 
2 #include <sys/types.h>
3 #include <sys/stat.h>
4 #include <fcntl.h>
5 #include <unistd.h>
6 #include <errno.h>
7 #include <stdlib.h>
8 #include <string.h>
9
10 int main(int argc, char *argv[]) 
11
12         int retval;
13
14         if (argc < 2) {
15                 printf("Prints out stats for a file\n");
16                 printf("Usage: stat FILENAME\n");
17                 return -1;
18         }
19         struct stat st = {0};
20
21         retval = stat(argv[1], &st);
22         if (retval < 0) {
23                 perror("Stat failed");
24                 return -1;
25         } else {
26                 printf("STAT RESULTS\n---------------------\n");
27                 printf("dev       : %d\n", st.st_dev);
28                 printf("ino       : %d\n", st.st_ino);
29                 printf("mode      : %o(oct)\n", st.st_mode);
30                 printf("nlink     : %d\n", st.st_nlink);
31                 printf("uid       : %d\n", st.st_uid);
32                 printf("gid       : %d\n", st.st_gid);
33                 printf("rdev      : %d\n", st.st_rdev);
34                 printf("size      : %d\n", st.st_size);
35                 printf("blksize   : %d\n", st.st_blksize);
36                 printf("blocks    : %d\n", st.st_blocks);
37                 printf("atime     : %d\n", st.st_atime);
38                 printf("mtime     : %d\n", st.st_mtime);
39                 printf("ctime     : %d\n", st.st_ctime);
40         }
41         return 0;
42 }