diff options
Diffstat (limited to 'net/tap-linux.c')
-rw-r--r-- | net/tap-linux.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/net/tap-linux.c b/net/tap-linux.c index bdb0a790c8..3b21662c13 100644 --- a/net/tap-linux.c +++ b/net/tap-linux.c @@ -261,3 +261,16 @@ int tap_fd_disable(int fd) return ret; } +int tap_fd_get_ifname(int fd, char *ifname) +{ + struct ifreq ifr; + + if (ioctl(fd, TUNGETIFF, &ifr) != 0) { + error_report("TUNGETIFF ioctl() failed: %s", + strerror(errno)); + return -1; + } + + pstrcpy(ifname, sizeof(ifr.ifr_name), ifr.ifr_name); + return 0; +} |