diff options
author | shrinivasan ganapathy <shrinivasanganapathy@gmail.com> | 2017-10-08 15:14:49 -0700 |
---|---|---|
committer | shrinivasan ganapathy <shrinivasanganapathy@gmail.com> | 2017-10-09 04:47:54 -0700 |
commit | 1431306b973562a04f515b7beb2f668b89e72374 (patch) | |
tree | 5ff1114a1d13d7a754d4b5d34e32a515c12ee0a5 /vcl-ldpreload/src/libvcl-ldpreload/vcom.c | |
parent | eedb87c186367920216f43437aac94f7d882690f (diff) |
LD_PRELOAD epoll_ctl implementation
- EPOLL_CTL_ADD
- EPOLL_CTL_MOD
- EPOLL_CTL_DEL
- close()
- amend 1
- removed stubs for vppcom_session_epoll_create and ctl
- add trace for epoll_create, epoll_ctl and epoll_wait
Change-Id: I0822f2212d56319f41236473bf547cf118fb18e0
Signed-off-by: shrinivasan ganapathy <shrinivasanganapathy@gmail.com>
Diffstat (limited to 'vcl-ldpreload/src/libvcl-ldpreload/vcom.c')
-rw-r--r-- | vcl-ldpreload/src/libvcl-ldpreload/vcom.c | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/vcl-ldpreload/src/libvcl-ldpreload/vcom.c b/vcl-ldpreload/src/libvcl-ldpreload/vcom.c index 75054eb..eb5e8d1 100644 --- a/vcl-ldpreload/src/libvcl-ldpreload/vcom.c +++ b/vcl-ldpreload/src/libvcl-ldpreload/vcom.c @@ -2657,8 +2657,14 @@ int epoll_create (int __size) { int rv = 0; + pid_t pid = getpid (); rv = vcom_epoll_create(__size); + if (VCOM_DEBUG > 0) + fprintf (stderr, + "[%d] epoll_create: " + "'%04d'='%04d'\n", + pid, rv, __size); if (rv < 0) { errno = -rv; @@ -2695,8 +2701,14 @@ int epoll_create1 (int __flags) { int rv = 0; + pid_t pid = getpid (); rv = vcom_epoll_create1(__flags); + if (VCOM_DEBUG > 0) + fprintf (stderr, + "[%d] epoll_create: " + "'%04d'='%08x'\n", + pid, rv, __flags); if (rv < 0) { errno = -rv; @@ -2737,10 +2749,12 @@ vcom_epoll_ctl (int __epfd, int __op, int __fd, } /* fd is same as epfd */ + /* do not permit adding an epoll file descriptor inside itself */ if (__epfd == __fd) { return -EINVAL; } + /* implementation */ return vcom_socket_epoll_ctl (__epfd, __op, __fd, __event); @@ -2768,7 +2782,8 @@ epoll_ctl (int __epfd, int __op, int __fd, if (VCOM_DEBUG > 0) fprintf (stderr, "[%d] epoll_ctl: " - "'%04d'='%04d', '%04d', '%04d'\n", pid, rv, __epfd, __op, __fd); + "'%04d'='%04d', '%04d', '%04d'\n", + pid, rv, __epfd, __op, __fd); if (rv != 0) { errno = -rv; |