Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(273)

Side by Side Diff: native_client_sdk/src/libraries/nacl_io/kernel_intercept.h

Issue 23005005: [NaCl SDK] nacl_io: Add initial implementations of kill and signal (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef LIBRARIES_NACL_IO_KERNEL_INTERCEPT_H_ 5 #ifndef LIBRARIES_NACL_IO_KERNEL_INTERCEPT_H_
6 #define LIBRARIES_NACL_IO_KERNEL_INTERCEPT_H_ 6 #define LIBRARIES_NACL_IO_KERNEL_INTERCEPT_H_
7 7
8 #include <ppapi/c/ppb.h> 8 #include <ppapi/c/ppb.h>
9 #include <ppapi/c/pp_instance.h> 9 #include <ppapi/c/pp_instance.h>
10 10
11 #include "nacl_io/ossignal.h"
11 #include "nacl_io/ossocket.h" 12 #include "nacl_io/ossocket.h"
12 #include "nacl_io/osstat.h" 13 #include "nacl_io/osstat.h"
13 #include "nacl_io/ostermios.h" 14 #include "nacl_io/ostermios.h"
14 #include "nacl_io/ostypes.h" 15 #include "nacl_io/ostypes.h"
15 #include "nacl_io/osutime.h" 16 #include "nacl_io/osutime.h"
16 #include "sdk_util/macros.h" 17 #include "sdk_util/macros.h"
17 18
18 EXTERN_C_BEGIN 19 EXTERN_C_BEGIN
19 20
20 // The kernel intercept module provides a C->C++ thunk between the libc 21 // The kernel intercept module provides a C->C++ thunk between the libc
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after
68 int ki_utime(const char* filename, const struct utimbuf* times); 69 int ki_utime(const char* filename, const struct utimbuf* times);
69 70
70 int ki_poll(struct pollfd *fds, nfds_t nfds, int timeout); 71 int ki_poll(struct pollfd *fds, nfds_t nfds, int timeout);
71 int ki_select(int nfds, fd_set* readfds, fd_set* writefds, 72 int ki_select(int nfds, fd_set* readfds, fd_set* writefds,
72 fd_set* exceptfds, struct timeval* timeout); 73 fd_set* exceptfds, struct timeval* timeout);
73 74
74 int ki_tcflush(int fd, int queue_selector); 75 int ki_tcflush(int fd, int queue_selector);
75 int ki_tcgetattr(int fd, struct termios* termios_p); 76 int ki_tcgetattr(int fd, struct termios* termios_p);
76 int ki_tcsetattr(int fd, int optional_actions, 77 int ki_tcsetattr(int fd, int optional_actions,
77 const struct termios *termios_p); 78 const struct termios *termios_p);
79 int ki_kill(pid_t pid, int sig);
80 sighandler_t ki_signal(int signum, sighandler_t handler);
81 sighandler_t ki_sigset(int signum, sighandler_t handler);
78 82
79 #ifdef PROVIDES_SOCKET_API 83 #ifdef PROVIDES_SOCKET_API
80 // Socket Functions 84 // Socket Functions
81 int ki_accept(int fd, struct sockaddr* addr, socklen_t* len); 85 int ki_accept(int fd, struct sockaddr* addr, socklen_t* len);
82 int ki_bind(int fd, const struct sockaddr* addr, socklen_t len); 86 int ki_bind(int fd, const struct sockaddr* addr, socklen_t len);
83 int ki_connect(int fd, const struct sockaddr* addr, socklen_t len); 87 int ki_connect(int fd, const struct sockaddr* addr, socklen_t len);
84 struct hostent* ki_gethostbyname(const char* name); 88 struct hostent* ki_gethostbyname(const char* name);
85 int ki_getpeername(int fd, struct sockaddr* addr, socklen_t* len); 89 int ki_getpeername(int fd, struct sockaddr* addr, socklen_t* len);
86 int ki_getsockname(int fd, struct sockaddr* addr, socklen_t* len); 90 int ki_getsockname(int fd, struct sockaddr* addr, socklen_t* len);
87 int ki_getsockopt(int fd, int lvl, int optname, void* optval, socklen_t* len); 91 int ki_getsockopt(int fd, int lvl, int optname, void* optval, socklen_t* len);
88 int ki_listen(int fd, int backlog); 92 int ki_listen(int fd, int backlog);
89 ssize_t ki_recv(int fd, void* buf, size_t len, int flags); 93 ssize_t ki_recv(int fd, void* buf, size_t len, int flags);
90 ssize_t ki_recvfrom(int fd, void* buf, size_t len, int flags, 94 ssize_t ki_recvfrom(int fd, void* buf, size_t len, int flags,
91 struct sockaddr* addr, socklen_t* addrlen); 95 struct sockaddr* addr, socklen_t* addrlen);
92 ssize_t ki_recvmsg(int fd, struct msghdr* msg, int flags); 96 ssize_t ki_recvmsg(int fd, struct msghdr* msg, int flags);
93 ssize_t ki_send(int fd, const void* buf, size_t len, int flags); 97 ssize_t ki_send(int fd, const void* buf, size_t len, int flags);
94 ssize_t ki_sendto(int fd, const void* buf, size_t len, int flags, 98 ssize_t ki_sendto(int fd, const void* buf, size_t len, int flags,
95 const struct sockaddr* addr, socklen_t addrlen); 99 const struct sockaddr* addr, socklen_t addrlen);
96 ssize_t ki_sendmsg(int fd, const struct msghdr* msg, int flags); 100 ssize_t ki_sendmsg(int fd, const struct msghdr* msg, int flags);
97 int ki_setsockopt(int fd, int lvl, int optname, const void* optval, 101 int ki_setsockopt(int fd, int lvl, int optname, const void* optval,
98 socklen_t len); 102 socklen_t len);
99 int ki_shutdown(int fd, int how); 103 int ki_shutdown(int fd, int how);
100 int ki_socket(int domain, int type, int protocol); 104 int ki_socket(int domain, int type, int protocol);
101 int ki_socketpair(int domain, int type, int protocl, int* sv); 105 int ki_socketpair(int domain, int type, int protocl, int* sv);
102 #endif // PROVIDES_SOCKET_API 106 #endif // PROVIDES_SOCKET_API
103 107
104 EXTERN_C_END 108 EXTERN_C_END
105 109
106 #endif // LIBRARIES_NACL_IO_KERNEL_INTERCEPT_H_ 110 #endif // LIBRARIES_NACL_IO_KERNEL_INTERCEPT_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698