Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 6a818c4

Browse files
authored
Merge pull request torvalds#366 from octaviansoldea/nodejs-enabled
Enabling system calls hijacking when using Node.js applications - tes…
2 parents 07ec466 + 8b791da commit 6a818c4

File tree

1 file changed

+31
-0
lines changed

1 file changed

+31
-0
lines changed

tools/lkl/lib/hijack/hijack.c

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -160,6 +160,19 @@ HOOK_FD_CALL(splice)
160160
HOOK_FD_CALL(vmsplice)
161161
HOOK_CALL_USE_HOST_BEFORE_START(pipe);
162162

163+
HOOK_CALL_USE_HOST_BEFORE_START(accept4);
164+
int accept4(int fd, struct sockaddr *addr, socklen_t *addrlen, int flags)
165+
{
166+
return lkl_call(__lkl__NR_accept4, 4, fd, addr, addrlen, flags);
167+
}
168+
169+
170+
HOOK_CALL_USE_HOST_BEFORE_START(pipe2);
171+
int pipe2(int pipefd[2], int flags)
172+
{
173+
return lkl_call(__lkl__NR_pipe2, 2, pipefd, flags);
174+
}
175+
163176
HOST_CALL(setsockopt);
164177
int setsockopt(int fd, int level, int optname, const void *optval,
165178
socklen_t optlen)
@@ -292,6 +305,24 @@ int select(int nfds, fd_set *r, fd_set *w, fd_set *e, struct timeval *t)
292305
}
293306

294307
HOOK_CALL_USE_HOST_BEFORE_START(epoll_create);
308+
int epoll_create(int flags)
309+
{
310+
int res;
311+
312+
if (!lkl_running)
313+
res = host_epoll_create(flags);
314+
else
315+
res = lkl_call(__lkl__NR_epoll_create, 1, flags);
316+
317+
return res;
318+
}
319+
320+
HOOK_CALL_USE_HOST_BEFORE_START(epoll_create1);
321+
int epoll_create1(int flags)
322+
{
323+
return lkl_call(__lkl__NR_epoll_create1, 1, flags);
324+
}
325+
295326

296327
HOST_CALL(epoll_ctl);
297328
int epoll_ctl(int epollfd, int op, int fd, struct epoll_event *event)

0 commit comments

Comments
 (0)