projects
/
tinc
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Update README and links to required libraries.
[tinc]
/
src
/
linux
/
device.c
diff --git
a/src/linux/device.c
b/src/linux/device.c
index
23178a3
..
94e223f
100644
(file)
--- a/
src/linux/device.c
+++ b/
src/linux/device.c
@@
-44,7
+44,7
@@
char *device = NULL;
char *iface = NULL;
static char *type = NULL;
static char ifrname[IFNAMSIZ];
char *iface = NULL;
static char *type = NULL;
static char ifrname[IFNAMSIZ];
-static char *device_info;
+static c
onst c
har *device_info;
static bool setup_device(void) {
if(!get_config_string(lookup_config(config_tree, "Device"), &device)) {
static bool setup_device(void) {
if(!get_config_string(lookup_config(config_tree, "Device"), &device)) {
@@
-67,7
+67,7
@@
static bool setup_device(void) {
fcntl(device_fd, F_SETFD, FD_CLOEXEC);
#endif
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);
get_config_string(lookup_config(config_tree, "DeviceType"), &type);
@@
-103,10
+103,12
@@
static bool setup_device(void) {
if(iface) {
strncpy(ifr.ifr_name, iface, IFNAMSIZ);
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);
}
if(!ioctl(device_fd, TUNSETIFF, &ifr)) {
strncpy(ifrname, ifr.ifr_name, IFNAMSIZ);
+ ifrname[IFNAMSIZ - 1] = 0;
free(iface);
iface = xstrdup(ifrname);
} else {
free(iface);
iface = xstrdup(ifrname);
} else {
@@
-117,7
+119,7
@@
static bool setup_device(void) {
logger(DEBUG_ALWAYS, LOG_INFO, "%s is a %s", device, device_info);
if(ifr.ifr_flags & IFF_TAP) {
logger(DEBUG_ALWAYS, LOG_INFO, "%s is a %s", device, device_info);
if(ifr.ifr_flags & IFF_TAP) {
- struct ifreq ifr_mac = {};
+ struct ifreq ifr_mac = {
0
};
if(!ioctl(device_fd, SIOCGIFHWADDR, &ifr_mac)) {
memcpy(mymac.x, ifr_mac.ifr_hwaddr.sa_data, ETH_ALEN);
if(!ioctl(device_fd, SIOCGIFHWADDR, &ifr_mac)) {
memcpy(mymac.x, ifr_mac.ifr_hwaddr.sa_data, ETH_ALEN);