diff options
author | brian <brian@FreeBSD.org> | 2000-11-16 23:15:42 +0000 |
---|---|---|
committer | brian <brian@FreeBSD.org> | 2000-11-16 23:15:42 +0000 |
commit | 2607c6601d6c936076e2f20ee94c9525942d1868 (patch) | |
tree | 4897a40fb2b3c9bd175693b001866426fe57522b | |
parent | 5d83d171df44f3eeea633909f60d663b281955df (diff) | |
download | FreeBSD-src-2607c6601d6c936076e2f20ee94c9525942d1868.zip FreeBSD-src-2607c6601d6c936076e2f20ee94c9525942d1868.tar.gz |
Go back to populating data_len in struct ngpppoe_init_data.
-rw-r--r-- | libexec/pppoed/pppoed.c | 6 | ||||
-rw-r--r-- | usr.sbin/ppp/ether.c | 4 |
2 files changed, 6 insertions, 4 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, ".:"); diff --git a/usr.sbin/ppp/ether.c b/usr.sbin/ppp/ether.c index b54ef0a..cf9c999 100644 --- a/usr.sbin/ppp/ether.c +++ b/usr.sbin/ppp/ether.c @@ -585,9 +585,9 @@ ether_Create(struct physical *p) /* And finally, request a connection to the given provider */ data = (struct ngpppoe_init_data *)alloca(sizeof *data + providerlen); - snprintf(data->hook, sizeof data->hook, "%s", dev->hook); - strcpy(data->data, provider); + memcpy(data->data, provider, providerlen); + data->data_len = providerlen; snprintf(connectpath, sizeof connectpath, ".:%s", dev->hook); log_Printf(LogDEBUG, "Sending PPPOE_CONNECT to %s\n", connectpath); |