#include "../device.h"
#include "../logger.h"
#include "../names.h"
-#include "../net.h"
#include "../route.h"
-#include "../utils.h"
#include "../xalloc.h"
-#include "../device.h"
typedef enum device_type_t {
DEVICE_TYPE_TUN,
fcntl(device_fd, F_SETFD, FD_CLOEXEC);
#endif
- struct ifreq ifr = {{{0}}};
+ struct ifreq ifr = {0};
get_config_string(lookup_config(config_tree, "DeviceType"), &type);
if(iface) {
strncpy(ifr.ifr_name, iface, IFNAMSIZ);
+ ifr.ifr_name[IFNAMSIZ - 1] = 0;
}
if(!ioctl(device_fd, TUNSETIFF, &ifr)) {
strncpy(ifrname, ifr.ifr_name, IFNAMSIZ);
+ ifrname[IFNAMSIZ - 1] = 0;
free(iface);
iface = xstrdup(ifrname);
} else {
logger(DEBUG_ALWAYS, LOG_INFO, "%s is a %s", device, device_info);
if(ifr.ifr_flags & IFF_TAP) {
- struct ifreq ifr_mac = {{{0}}};
+ struct ifreq ifr_mac = {0};
if(!ioctl(device_fd, SIOCGIFHWADDR, &ifr_mac)) {
memcpy(mymac.x, ifr_mac.ifr_hwaddr.sa_data, ETH_ALEN);