summaryrefslogtreecommitdiffstats
path: root/libexec/pppoed
diff options
context:
space:
mode:
Diffstat (limited to 'libexec/pppoed')
-rw-r--r--libexec/pppoed/pppoed.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/libexec/pppoed/pppoed.c b/libexec/pppoed/pppoed.c
index c82d305..aae546c 100644
--- a/libexec/pppoed/pppoed.c
+++ b/libexec/pppoed/pppoed.c
@@ -232,7 +232,8 @@ ConfigureNode(const char *prog, const char *iface, const char *provider,
data = (struct ngpppoe_init_data *)alloca(sizeof *data + plen);
snprintf(data->hook, sizeof data->hook, "%s", ngc->peerhook);
- strcpy(data->data, provider);
+ memcpy(data->data, provider, plen);
+ data->data_len = plen;
spath = (char *)alloca(strlen(ngc->peerhook) + 3);
strcpy(spath, ".:");
@@ -324,7 +325,8 @@ Spawn(const char *prog, const char *acname, const char *exec,
slen = strlen(acname);
data = (struct ngpppoe_init_data *)alloca(sizeof *data + slen);
snprintf(data->hook, sizeof data->hook, "%s", ngc.ourhook);
- strcpy(data->data, acname);
+ memcpy(data->data, acname, slen);
+ data->data_len = slen;
path = (char *)alloca(strlen(ngc.ourhook) + 3);
strcpy(path, ".:");
OpenPOWER on IntegriCloud