Explorar o código

Kernel: Use Userspace<T> for the connect syscall

Brian Gianforcaro %!s(int64=5) %!d(string=hai) anos
pai
achega
0e20a6df0a
Modificáronse 2 ficheiros con 2 adicións e 2 borrados
  1. 1 1
      Kernel/Process.h
  2. 1 1
      Kernel/Syscalls/socket.cpp

+ 1 - 1
Kernel/Process.h

@@ -294,7 +294,7 @@ public:
     int sys$bind(int sockfd, Userspace<const sockaddr*> addr, socklen_t);
     int sys$bind(int sockfd, Userspace<const sockaddr*> addr, socklen_t);
     int sys$listen(int sockfd, int backlog);
     int sys$listen(int sockfd, int backlog);
     int sys$accept(int sockfd, Userspace<sockaddr*>, Userspace<socklen_t*>);
     int sys$accept(int sockfd, Userspace<sockaddr*>, Userspace<socklen_t*>);
-    int sys$connect(int sockfd, const sockaddr*, socklen_t);
+    int sys$connect(int sockfd, Userspace<const sockaddr*>, socklen_t);
     int sys$shutdown(int sockfd, int how);
     int sys$shutdown(int sockfd, int how);
     ssize_t sys$sendto(const Syscall::SC_sendto_params*);
     ssize_t sys$sendto(const Syscall::SC_sendto_params*);
     ssize_t sys$recvfrom(const Syscall::SC_recvfrom_params*);
     ssize_t sys$recvfrom(const Syscall::SC_recvfrom_params*);

+ 1 - 1
Kernel/Syscalls/socket.cpp

@@ -149,7 +149,7 @@ int Process::sys$accept(int accepting_socket_fd, Userspace<sockaddr*> user_addre
     return accepted_socket_fd;
     return accepted_socket_fd;
 }
 }
 
 
-int Process::sys$connect(int sockfd, const sockaddr* user_address, socklen_t user_address_size)
+int Process::sys$connect(int sockfd, Userspace<const sockaddr*> user_address, socklen_t user_address_size)
 {
 {
     if (!validate_read(user_address, user_address_size))
     if (!validate_read(user_address, user_address_size))
         return -EFAULT;
         return -EFAULT;