summaryrefslogtreecommitdiff
path: root/isisd/isis_circuit.c
diff options
context:
space:
mode:
Diffstat (limited to 'isisd/isis_circuit.c')
-rw-r--r--isisd/isis_circuit.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/isisd/isis_circuit.c b/isisd/isis_circuit.c
index 36d4a0d7c0..8377638b92 100644
--- a/isisd/isis_circuit.c
+++ b/isisd/isis_circuit.c
@@ -1305,8 +1305,8 @@ ferr_r isis_circuit_passwd_unset(struct isis_circuit *circuit)
return ferr_ok();
}
-static int isis_circuit_passwd_set(struct isis_circuit *circuit,
- uint8_t passwd_type, const char *passwd)
+ferr_r isis_circuit_passwd_set(struct isis_circuit *circuit,
+ uint8_t passwd_type, const char *passwd)
{
int len;
@@ -1319,7 +1319,8 @@ static int isis_circuit_passwd_set(struct isis_circuit *circuit,
"circuit password too long (max 254 chars)");
circuit->passwd.len = len;
- strncpy((char *)circuit->passwd.passwd, passwd, 255);
+ strlcpy((char *)circuit->passwd.passwd, passwd,
+ sizeof(circuit->passwd.passwd));
circuit->passwd.type = passwd_type;
return ferr_ok();
}