Skip to content
Snippets Groups Projects
Commit 460808eb authored by a2-stratford's avatar a2-stratford
Browse files

Removed syscall_exit.c and fixed merge request issues

parent 9e4fefc0
No related branches found
No related tags found
2 merge requests!22Merge Feature/system calls,!6Implemented filesize system call
/*
* Returns the size, in bytes, of the file open as fd.
*
* Authored by Alex Stratford
*/
#include "system_calls.h"
#include "filesys/file.h"
int syscall_filesize(struct intr_frame *file_descriptor) {
int syscall_filesize(struct intr_frame *f) {
// pop off first int argument from interrupt frame
int file_descriptor = *((int*)f->esp + 1);
// Described in system_calls.h, stores file descriptors mapped to files
struct file_map *file_map = get_file(file_descriptor);
int size;
if (file_map == NULL) // Checking if file is empty or non-existent
return -1; // Returning failure state
// Using the file_length function in file.h to get the length and store it
size = file_length(file_map->file);
return size;
int size = file_length(file_map->file);
f->eax = size;
}
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment