diff options
Diffstat (limited to 'csci5271/hw1/hw1p2b.c')
-rw-r--r-- | csci5271/hw1/hw1p2b.c | 28 |
1 files changed, 0 insertions, 28 deletions
diff --git a/csci5271/hw1/hw1p2b.c b/csci5271/hw1/hw1p2b.c deleted file mode 100644 index df5ac73..0000000 --- a/csci5271/hw1/hw1p2b.c +++ /dev/null @@ -1,28 +0,0 @@ -#include <fcntl.h> -#include <stdlib.h> -#include <sys/stat.h> -#include <unistd.h> -void silly_function(char *pathname) { - struct stat f, we; - int rfd, wfd; - char *buf; - stat(pathname, &f); - stat("./critical", &we); - if (f.st_dev == we.st_dev && f.st_ino == we.st_ino) { - return; - } - rfd = open(pathname, O_RDONLY); - buf = malloc(f.st_size - 1); - read(rfd, buf, f.st_size - 1); - close(rfd); - stat(pathname, &f); - if (f.st_dev == we.st_dev && f.st_ino == we.st_ino) { - return; - } - wfd = open(pathname, O_WRONLY | O_TRUNC); - write(wfd, buf, f.st_size - 1); - close(wfd); - free(buf); -} - -int main() { silly_function("./not"); }
\ No newline at end of file |