summaryrefslogtreecommitdiff
path: root/kernel/syscalls/kill.c
blob: affade6a662ba848a81f06e13711449a87c4d576 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <errno.h>
#include <sched/scheduler.h>
#include <signal.h>
#include <syscalls.h>

int syscall_kill(int fd, int sig) {
  vfs_fd_t *fd_ptr = get_vfs_fd(fd, NULL);
  if (!fd_ptr) {
    return -EBADF;
  }
  if (!fd_ptr->inode->send_signal) {
    return -EBADF;
  }
  return process_signal(fd_ptr, sig);
}