len = fread(pname, sizeof(char), TDM_NAME_LEN, h);
if (len == 0) {
- strncpy(pname, "NO NAME", 7);
- len = 8;
+ strncpy(pname, "NO NAME", sizeof(pname));
+ pname[sizeof(pname) - 1] = '\0';
}
- pname[len - 1] = '\0';
- strncpy(name, pname, size - 1);
+ strncpy(name, pname, size);
name[size - 1] = '\0';
fclose(h);
char buffer[TDM_DEBUG_REPLY_MSG_LEN];
int copylen = TDM_MIN(size, sizeof(buffer) - 1);
- strncpy(buffer, m, copylen);
+ strncpy(buffer, m, sizeof(buffer));
+ buffer[sizeof(buffer) - 1] = '\0';
+
m += copylen;
size -= copylen;