Convert to using strnkc(at|py).
This commit is contained in:
@@ -198,7 +198,7 @@ static void write_resolve_conf(struct ifchd_client *cl)
|
||||
q = strchr(p, '\0');
|
||||
else
|
||||
*q++ = '\0';
|
||||
strlcpy(buf, p, sizeof buf);
|
||||
strnkcpy(buf, p, sizeof buf);
|
||||
|
||||
writeordie(resolv_conf_fd, ns_str, strlen(ns_str));
|
||||
writeordie(resolv_conf_fd, buf, strlen(buf));
|
||||
@@ -215,7 +215,7 @@ static void write_resolve_conf(struct ifchd_client *cl)
|
||||
q = strchr(p, '\0');
|
||||
else
|
||||
*q++ = '\0';
|
||||
strlcpy(buf, p, sizeof buf);
|
||||
strnkcpy(buf, p, sizeof buf);
|
||||
|
||||
if (numdoms == 0) {
|
||||
writeordie(resolv_conf_fd, dom_str, strlen(dom_str));
|
||||
@@ -270,7 +270,7 @@ static void perform_dns(struct ifchd_client *cl, char *str)
|
||||
{
|
||||
if (!str || resolv_conf_fd == -1)
|
||||
return;
|
||||
strlcpy(cl->namesvrs, str, MAX_BUF);
|
||||
strnkcpy(cl->namesvrs, str, MAX_BUF);
|
||||
write_resolve_conf(cl);
|
||||
}
|
||||
|
||||
@@ -292,7 +292,7 @@ static void perform_domain(struct ifchd_client *cl, char *str)
|
||||
{
|
||||
if (!str || resolv_conf_fd == -1)
|
||||
return;
|
||||
strlcpy(cl->domains, str, MAX_BUF);
|
||||
strnkcpy(cl->domains, str, MAX_BUF);
|
||||
write_resolve_conf(cl);
|
||||
}
|
||||
|
||||
@@ -387,8 +387,13 @@ static int execute_buffer(struct ifchd_client *cl, char *newbuf)
|
||||
char *p = buf, *endp;
|
||||
|
||||
memset(buf, 0, sizeof buf);
|
||||
strlcat(buf, cl->ibuf, sizeof buf);
|
||||
strlcat(buf, newbuf, sizeof buf);
|
||||
if (strnkcat(buf, cl->ibuf, sizeof buf))
|
||||
goto buftooshort;
|
||||
if (strnkcat(buf, newbuf, sizeof buf)) {
|
||||
buftooshort:
|
||||
log_line("error: input is too long for buffer");
|
||||
return -1;
|
||||
}
|
||||
|
||||
for (endp = p;;p = endp) {
|
||||
if (cl->state == STATE_NOTHING) {
|
||||
@@ -528,7 +533,7 @@ static int execute_buffer(struct ifchd_client *cl, char *newbuf)
|
||||
size_t remsize = strlen(endp);
|
||||
if (remsize > MAX_BUF - 1)
|
||||
return -1;
|
||||
strlcpy(cl->ibuf, endp, MAX_BUF);
|
||||
strnkcpy(cl->ibuf, endp, MAX_BUF);
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -842,15 +847,15 @@ int main(int argc, char** argv) {
|
||||
break;
|
||||
|
||||
case 'c':
|
||||
strlcpy(chrootd, optarg, MAX_PATH_LENGTH);
|
||||
strnkcpy(chrootd, optarg, MAX_PATH_LENGTH);
|
||||
break;
|
||||
|
||||
case 'p':
|
||||
strlcpy(pidfile, optarg, MAX_PATH_LENGTH);
|
||||
strnkcpy(pidfile, optarg, MAX_PATH_LENGTH);
|
||||
break;
|
||||
|
||||
case 'r':
|
||||
strlcpy(resolv_conf_d, optarg, MAX_PATH_LENGTH);
|
||||
strnkcpy(resolv_conf_d, optarg, MAX_PATH_LENGTH);
|
||||
break;
|
||||
|
||||
case 'o':
|
||||
|
||||
@@ -60,7 +60,7 @@ void add_permitted_if(char *s)
|
||||
{
|
||||
if (numokif >= MAX_IFACES)
|
||||
return;
|
||||
strlcpy(okif[numokif++], s, IFNAMSIZ);
|
||||
strnkcpy(okif[numokif++], s, IFNAMSIZ);
|
||||
}
|
||||
|
||||
/* Checks if changes are permitted to a given interface. 1 == allowed */
|
||||
@@ -110,7 +110,7 @@ void perform_interface(struct ifchd_client *cl, char *str)
|
||||
|
||||
/* Update interface name. */
|
||||
memset(cl->ifnam, '\0', IFNAMSIZ);
|
||||
strlcpy(cl->ifnam, str, IFNAMSIZ);
|
||||
strnkcpy(cl->ifnam, str, IFNAMSIZ);
|
||||
}
|
||||
|
||||
static int set_if_flag(struct ifchd_client *cl, short flag)
|
||||
@@ -128,13 +128,13 @@ static int set_if_flag(struct ifchd_client *cl, short flag)
|
||||
goto out0;
|
||||
}
|
||||
|
||||
strlcpy(ifrt.ifr_name, cl->ifnam, IFNAMSIZ);
|
||||
strnkcpy(ifrt.ifr_name, cl->ifnam, IFNAMSIZ);
|
||||
if (ioctl(fd, SIOCGIFFLAGS, &ifrt) < 0) {
|
||||
log_line("%s: unknown interface: %s\n", cl->ifnam, strerror(errno));
|
||||
goto out1;
|
||||
}
|
||||
if (((ifrt.ifr_flags & flag ) ^ flag) & flag) {
|
||||
strlcpy(ifrt.ifr_name, cl->ifnam, IFNAMSIZ);
|
||||
strnkcpy(ifrt.ifr_name, cl->ifnam, IFNAMSIZ);
|
||||
ifrt.ifr_flags |= flag;
|
||||
if (ioctl(fd, SIOCSIFFLAGS, &ifrt) < 0) {
|
||||
log_line("%s: failed to set interface flags: %s\n",
|
||||
@@ -167,7 +167,7 @@ void perform_ip(struct ifchd_client *cl, char *str)
|
||||
if (set_if_flag(cl, (IFF_UP | IFF_RUNNING)))
|
||||
return;
|
||||
|
||||
strlcpy(ifrt.ifr_name, cl->ifnam, IFNAMSIZ);
|
||||
strnkcpy(ifrt.ifr_name, cl->ifnam, IFNAMSIZ);
|
||||
memset(&sin, 0, sizeof(struct sockaddr));
|
||||
sin.sin_family = AF_INET;
|
||||
sin.sin_addr = ipaddr;
|
||||
@@ -200,7 +200,7 @@ void perform_subnet(struct ifchd_client *cl, char *str)
|
||||
if (!inet_pton(AF_INET, str, &subnet))
|
||||
return;
|
||||
|
||||
strlcpy(ifrt.ifr_name, cl->ifnam, IFNAMSIZ);
|
||||
strnkcpy(ifrt.ifr_name, cl->ifnam, IFNAMSIZ);
|
||||
memset(&sin, 0, sizeof(struct sockaddr));
|
||||
sin.sin_family = AF_INET;
|
||||
sin.sin_addr = subnet;
|
||||
@@ -283,7 +283,7 @@ void perform_mtu(struct ifchd_client *cl, char *str)
|
||||
if (mtu < 576)
|
||||
return;
|
||||
ifrt.ifr_mtu = mtu;
|
||||
strlcpy(ifrt.ifr_name, cl->ifnam, IFNAMSIZ);
|
||||
strnkcpy(ifrt.ifr_name, cl->ifnam, IFNAMSIZ);
|
||||
|
||||
fd = socket(AF_INET, SOCK_DGRAM, 0);
|
||||
if (fd == -1) {
|
||||
@@ -311,7 +311,7 @@ void perform_broadcast(struct ifchd_client *cl, char *str)
|
||||
if (!inet_pton(AF_INET, str, &broadcast))
|
||||
return;
|
||||
|
||||
strlcpy(ifrt.ifr_name, cl->ifnam, IFNAMSIZ);
|
||||
strnkcpy(ifrt.ifr_name, cl->ifnam, IFNAMSIZ);
|
||||
memset(&sin, 0, sizeof(struct sockaddr));
|
||||
sin.sin_family = AF_INET;
|
||||
sin.sin_addr = broadcast;
|
||||
|
||||
Reference in New Issue
Block a user