diff --git a/ppp/pppd/plugins/radius/clientid.c b/ppp/pppd/plugins/radius/clientid.c index d49579c..91201b0 100644 --- a/ppp/pppd/plugins/radius/clientid.c +++ b/ppp/pppd/plugins/radius/clientid.c @@ -104,13 +104,13 @@ int rc_read_mapfile(char *filename) UINT4 rc_map2id(char *name) { struct map2id_s *p; - char ttyname[PATH_MAX]; + char ttyname[PATH_MAX + 1]; *ttyname = '\0'; if (*name != '/') strcpy(ttyname, "/dev/"); - strncat(ttyname, name, sizeof(ttyname)); + strlcat(ttyname, name, sizeof(ttyname)); for(p = map2id_list; p; p = p->next) if (!strcmp(ttyname, p->name)) return p->id;