mirror of
https://passt.top/passt
synced 2025-06-16 20:35:33 +02:00
passt, tap: Add --fd option
This passes a fully connected stream socket to passt. Signed-off-by: Richard W.M. Jones <rjones@redhat.com> [sbrivio: reuse fd_tap instead of adding a new descriptor, imply --one-off on --fd, add to optstring and usage()] Signed-off-by: Stefano Brivio <sbrivio@redhat.com>
This commit is contained in:
parent
15119dcf6c
commit
6b4e68383c
5 changed files with 46 additions and 4 deletions
9
tap.c
9
tap.c
|
@ -1069,6 +1069,15 @@ void tap_sock_init(struct ctx *c)
|
|||
}
|
||||
|
||||
if (c->fd_tap != -1) {
|
||||
if (c->one_off) { /* Passed as --fd */
|
||||
struct epoll_event ev = { 0 };
|
||||
|
||||
ev.data.fd = c->fd_tap;
|
||||
ev.events = EPOLLIN | EPOLLET | EPOLLRDHUP;
|
||||
epoll_ctl(c->epollfd, EPOLL_CTL_ADD, c->fd_tap, &ev);
|
||||
return;
|
||||
}
|
||||
|
||||
epoll_ctl(c->epollfd, EPOLL_CTL_DEL, c->fd_tap, NULL);
|
||||
close(c->fd_tap);
|
||||
c->fd_tap = -1;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue