diff --git a/lib/misc/lvm-file.c b/lib/misc/lvm-file.c index 2ec00f1d5..b06f05d9f 100644 --- a/lib/misc/lvm-file.c +++ b/lib/misc/lvm-file.c @@ -41,7 +41,7 @@ int create_temp_name(const char *dir, char *buffer, size_t len, int *fd, pid = getpid(); if (gethostname(hostname, sizeof(hostname)) < 0) { log_sys_error("gethostname", ""); - strcpy(hostname, "nohostname"); + dm_strncpy(hostname, "nohostname", sizeof(hostname)); } else { /* Replace any '/' with '?' found in the hostname. */ p = hostname; diff --git a/tools/polldaemon.c b/tools/polldaemon.c index 53c520fae..b6392c340 100644 --- a/tools/polldaemon.c +++ b/tools/polldaemon.c @@ -676,11 +676,11 @@ static int _daemon_parms_init(struct cmd_context *cmd, struct daemon_parms *parm memset(parms->devicesfile, 0, sizeof(parms->devicesfile)); if (cmd->devicesfile) { - if (strlen(cmd->devicesfile) >= sizeof(parms->devicesfile)) { + if (!_dm_strncpy(parms->devicesfile, cmd->devicesfile, + sizeof(parms->devicesfile))) { log_error("devicefile name too long for lvmpolld"); return 0; } - strcpy(parms->devicesfile, cmd->devicesfile); } return 1;