Replace strncpy with strfcpy to avoid unterminated strings.
*buf = '\0';
if (hdr != NULL && hdr->env->x_label != NULL) {
- strncpy(buf, hdr->env->x_label, LONG_STRING);
+ strfcpy(buf, hdr->env->x_label, sizeof(buf));
}
if (mutt_get_field("Label: ", buf, sizeof(buf), MUTT_LABEL /* | MUTT_CLEAR */) != 0)
&status_string);
if (GSS_ERROR(maj_stat))
break;
- strncpy(buf_maj, (char*) status_string.value, sizeof(buf_maj));
+ strfcpy(buf_maj, (char*) status_string.value, sizeof(buf_maj));
gss_release_buffer(&min_stat, &status_string);
maj_stat = gss_display_status (&min_stat,
&status_string);
if (!GSS_ERROR(maj_stat))
{
- strncpy(buf_min, (char*) status_string.value, sizeof(buf_min));
+ strfcpy(buf_min, (char*) status_string.value, sizeof(buf_min));
gss_release_buffer(&min_stat, &status_string);
}
} while (!GSS_ERROR(maj_stat) && msg_ctx != 0);
ref_tmp = safe_strdup(reference);
dirpath = dirname(ref_tmp); /* get directory name of */
- strncpy(abs_path, dirpath, PATH_MAX);
+ strfcpy(abs_path, dirpath, PATH_MAX);
safe_strncat(abs_path, sizeof(abs_path), "/", 1); /* append a / at the end of the path */
FREE(&ref_tmp);
pid_t pid;
- strncpy(rcfile, rcfile_path, PATH_MAX);
+ strfcpy(rcfile, rcfile_path, PATH_MAX);
rcfilelen = mutt_strlen(rcfile);
mutt_debug (2, "nm_normalize_uri #2 () -> db_query: %s\n", tmp_ctxdata.db_query);
- strncpy(buf, tmp_ctxdata.db_query, sizeof(buf));
+ strfcpy(buf, tmp_ctxdata.db_query, sizeof(buf));
if (nm_uri_from_query(&tmp_ctx, buf, sizeof(buf)) == NULL)
{
if (ascii_strncasecmp ("subject:", uh->data, 8) == 0)
{
p = skip_email_wsp(uh->data + 8);
- strncpy (buf, p, sizeof (buf));
+ strfcpy (buf, p, sizeof (buf));
}
}
}