Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

tle_glue: fix compile error on CentOS7 #2

Open
wants to merge 2 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
50 changes: 25 additions & 25 deletions lib/libtle_glue/gvisor_glue_sockops.c
Original file line number Diff line number Diff line change
Expand Up @@ -26,18 +26,18 @@

int plugin_epoll_create(void)
{
return tle_epoll_create(1);
return PRE(epoll_create)(1);
}

int plugin_epoll_ctl(int epfd, int op, int fd, struct epoll_event *event)
{
return tle_epoll_ctl(epfd, op, fd, event);
return PRE(epoll_ctl)(epfd, op, fd, event);
}

int plugin_epoll_wait(int epfd, struct epoll_event *events, int maxevents, int timeout)
{
int ret;
ret = tle_epoll_wait(epfd, events, maxevents, timeout);
ret = PRE(epoll_wait)(epfd, events, maxevents, timeout);
return ret;
}

Expand All @@ -48,39 +48,39 @@ int plugin_epoll_wait(int epfd, struct epoll_event *events, int maxevents, int t
int plugin_socket(int domain, int type, int protocol, uint64_t *err)
{
int ret;
ret = tle_socket(domain, type, protocol);
ret = PRE(socket)(domain, type, protocol);
*err = errno;
return ret;
}

int plugin_listen(int sockfd, int backlog, uint64_t *err)
{
int ret;
ret = tle_listen(sockfd, backlog);
ret = PRE(listen)(sockfd, backlog);
*err = errno;
return ret;
}

int plugin_bind(int sockfd, const struct sockaddr *addr, socklen_t addrlen, uint64_t *err)
{
int ret;
ret = tle_bind(sockfd, addr, addrlen);
ret = PRE(bind)(sockfd, addr, addrlen);
*err = errno;
return ret;
}

int plugin_accept(int sockfd, struct sockaddr *addr, socklen_t *addrlen, uint64_t *err)
{
int ret;
ret = tle_accept(sockfd, addr, addrlen);
ret = PRE(accept)(sockfd, addr, addrlen);
*err = errno;
return ret;
}

int plugin_connect(int sockfd, const struct sockaddr *addr, socklen_t addrlen, uint64_t *err)
{
int ret;
ret = tle_connect(sockfd, addr, addrlen);
ret = PRE(connect)(sockfd, addr, addrlen);
*err = errno;
return ret;
}
Expand All @@ -89,7 +89,7 @@ int plugin_getsockopt(int sockfd, int level, int optname,
void *optval, socklen_t *optlen, uint64_t *err)
{
int ret;
ret = tle_getsockopt(sockfd, level, optname, optval, optlen);
ret = PRE(getsockopt)(sockfd, level, optname, optval, optlen);
*err = errno;
return ret;
}
Expand All @@ -98,47 +98,47 @@ int plugin_setsockopt(int sockfd, int level, int optname,
const void *optval, socklen_t optlen, uint64_t *err)
{
int ret;
ret = tle_setsockopt(sockfd, level, optname, optval, optlen);
ret = PRE(setsockopt)(sockfd, level, optname, optval, optlen);
*err = errno;
return ret;
}

int plugin_getsockname(int sockfd, struct sockaddr *addr, socklen_t *addrlen, uint64_t *err)
{
int ret;
ret = tle_getsockname(sockfd, addr, addrlen);
ret = PRE(getsockname)(sockfd, addr, addrlen);
*err = errno;
return ret;
}

int plugin_getpeername(int sockfd, struct sockaddr *addr, socklen_t *addrlen, uint64_t *err)
{
int ret;
ret = tle_getpeername(sockfd, addr, addrlen);
ret = PRE(getpeername)(sockfd, addr, addrlen);
*err = errno;
return ret;
}

int plugin_ioctl(int fd, uint64_t *err, unsigned long int request, void *buf)
{
int ret;
ret = tle_ioctl(fd, request, buf);
ret = PRE(ioctl)(fd, request, buf);
*err = errno;
return ret;
}

int plugin_shutdown(int sockfd, int how, uint64_t *err)
{
int ret;
ret = tle_shutdown(sockfd, how);
ret = PRE(shutdown)(sockfd, how);
*err = errno;
return ret;
}

int plugin_close(int fd)
{
int ret;
ret = tle_close(fd);
ret = PRE(close)(fd);
return ret;
}

Expand All @@ -155,7 +155,7 @@ int plugin_readiness(int fd, int events) {
ssize_t plugin_recv(int sockfd, void *buf, size_t len, int flags, uint64_t *err)
{
int ret;
ret = tle_recv(sockfd, buf, len, flags);
ret = PRE(recv)(sockfd, buf, len, flags);
*err = errno;
return ret;
}
Expand All @@ -164,31 +164,31 @@ ssize_t plugin_recvfrom(int sockfd, void *buf, size_t len, int flags,
struct sockaddr *src_addr, socklen_t *addrlen, uint64_t *err)
{
int ret;
ret = tle_recvfrom(sockfd, buf, len, flags, src_addr, addrlen);
ret = PRE(recvfrom)(sockfd, buf, len, flags, src_addr, addrlen);
*err = errno;
return ret;
}

ssize_t plugin_recvmsg(int sockfd, struct msghdr *msg, int flags, uint64_t *err)
{
int ret;
ret = tle_recvmsg(sockfd, msg, flags);
ret = PRE(recvmsg)(sockfd, msg, flags);
*err = errno;
return ret;
}

ssize_t plugin_read(int fd, void *buf, size_t count, uint64_t *err)
{
int ret;
ret = tle_read(fd, buf, count);
ret = PRE(read)(fd, buf, count);
*err = errno;
return ret;
}

ssize_t plugin_readv(int fd, const struct iovec *iov, int iovcnt, uint64_t *err)
{
int ret;
ret = tle_readv(fd, iov, iovcnt);
ret = PRE(readv)(fd, iov, iovcnt);
*err = errno;
return ret;
}
Expand All @@ -200,7 +200,7 @@ ssize_t plugin_readv(int fd, const struct iovec *iov, int iovcnt, uint64_t *err)
ssize_t plugin_send(int sockfd, const void *buf, size_t len, int flags, uint64_t *err)
{
int ret;
ret = tle_send(sockfd, buf, len, flags);
ret = PRE(send)(sockfd, buf, len, flags);
*err = errno;
return ret;
}
Expand All @@ -209,31 +209,31 @@ ssize_t plugin_sendto(int sockfd, const void *buf, size_t len, int flags,
const struct sockaddr *dest_addr, socklen_t addrlen, uint64_t *err)
{
int ret;
ret = tle_sendto(sockfd, buf, len, flags, dest_addr, addrlen);
ret = PRE(sendto)(sockfd, buf, len, flags, dest_addr, addrlen);
*err = errno;
return ret;
}

ssize_t plugin_sendmsg(int sockfd, const struct msghdr *msg, int flags, uint64_t *err)
{
int ret;
ret = tle_sendmsg(sockfd, msg, flags);
ret = PRE(sendmsg)(sockfd, msg, flags);
*err = errno;
return ret;
}

ssize_t plugin_write(int fd, const void *buf, size_t count, uint64_t *err)
{
int ret;
ret = tle_write(fd, buf, count);
ret = PRE(write)(fd, buf, count);
*err = errno;
return ret;
}

ssize_t plugin_writev(int fd, const struct iovec *iov, int iovcnt, uint64_t *err)
{
int ret;
ret = tle_writev(fd, iov, iovcnt);
ret = PRE(writev)(fd, iov, iovcnt);
*err = errno;
return ret;
}
3 changes: 3 additions & 0 deletions lib/libtle_glue/gvisor_glue_stackops.c
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@
#include <linux/if_packet.h>
#include <net/if.h>
#include <sys/ioctl.h>
#include <linux/version.h>
#include <linux/if.h>
#include <linux/if_arp.h>
#include <linux/netlink.h>
Expand Down Expand Up @@ -150,8 +151,10 @@ static const char*
get_ns_name(int ns_type)
{
switch (ns_type) {
#if LINUX_VERSION_CODE >= KERNEL_VERSION(4,6,0)
case CLONE_NEWCGROUP:
return "cgroup";
#endif
case CLONE_NEWIPC:
return "ipc";
case CLONE_NEWNS:
Expand Down