X-Git-Url: http://git.madism.org/?p=apps%2Fmadmutt.git;a=blobdiff_plain;f=muttlib.c;h=04c0b3a28ff15fecb9443da0947b9e9c51637600;hp=7dc21d6a4cad96bf789be98b57b92753bdbff7b7;hb=5e6273c09929249ee7a850934bf12fd03439d923;hpb=2ea77d3b2827ba23feb756ce2fb936565ae38998 diff --git a/muttlib.c b/muttlib.c index 7dc21d6..04c0b3a 100644 --- a/muttlib.c +++ b/muttlib.c @@ -17,6 +17,7 @@ #include #include #include +#include #include "mutt.h" #include "enter.h" @@ -26,7 +27,6 @@ #include "url.h" #include "attach.h" -#include "reldate.h" #include "version.h" #ifdef USE_IMAP @@ -76,14 +76,14 @@ void mutt_adv_mktemp (const char* dir, char *s, size_t l) size_t sl; struct stat sb; - strfcpy (buf, dir && *dir ? dir : NONULL (Tempdir), sizeof (buf)); + m_strcpy(buf, sizeof(buf), m_strisempty(dir) ? NONULL(Tempdir) : dir); mutt_expand_path (buf, sizeof (buf)); if (s[0] == '\0') { snprintf (s, l, "%s/muttXXXXXX", buf); mktemp (s); } else { - strfcpy (tmp, s, sizeof (tmp)); + m_strcpy(tmp, sizeof(tmp), s); mutt_sanitize_filename (tmp, 1); snprintf (s, l, "%s/%s", buf, tmp); if (lstat (s, &sb) == -1 && errno == ENOENT) @@ -95,7 +95,7 @@ void mutt_adv_mktemp (const char* dir, char *s, size_t l) if (period != NULL) { *period = '.'; sl = m_strlen(s); - strfcpy (s + sl, period, l - sl); + m_strcpy(s + sl, l - sl, period); } } } @@ -113,7 +113,7 @@ int mutt_copy_body (FILE * fp, BODY ** tgt, BODY * src) if (src->filename) { use_disp = 1; - strfcpy (tmp, src->filename, sizeof (tmp)); + m_strcpy(tmp, sizeof(tmp), src->filename); } else { use_disp = 0; @@ -268,19 +268,19 @@ void mutt_expand_link (char *newpath, const char *path, const char *lnk) /* lnk is full path */ if (*lnk == '/') { - strfcpy (newpath, lnk, _POSIX_PATH_MAX); + m_strcpy(newpath, _POSIX_PATH_MAX, lnk); return; } if ((lb = strrchr (path, '/')) == NULL) { /* no path in lnk */ - strfcpy (newpath, lnk, _POSIX_PATH_MAX); + m_strcpy(newpath, _POSIX_PATH_MAX, lnk); return; } len = lb - path + 1; memcpy (newpath, path, len); - strfcpy (newpath + len, lnk, _POSIX_PATH_MAX - len); + m_strcpy(newpath + len, _POSIX_PATH_MAX - len, lnk); } char *mutt_expand_path (char *s, size_t slen) @@ -306,7 +306,7 @@ char *_mutt_expand_path (char *s, size_t slen, int rx) case '~': { if (*(s + 1) == '/' || *(s + 1) == 0) { - strfcpy (p, NONULL (Homedir), sizeof (p)); + m_strcpy(p, sizeof(p), NONULL(Homedir)); tail = s + 1; } else { @@ -316,7 +316,7 @@ char *_mutt_expand_path (char *s, size_t slen, int rx) *t = 0; if ((pw = getpwnam (s + 1))) { - strfcpy (p, pw->pw_dir, sizeof (p)); + m_strcpy(p, sizeof(p), pw->pw_dir); if (t) { *t = '/'; tail = t; @@ -342,7 +342,7 @@ char *_mutt_expand_path (char *s, size_t slen, int rx) /* if folder = imap[s]://host/: don't append slash */ if (imap_is_magic (NONULL (Maildir), NULL) == M_IMAP && Maildir[m_strlen(Maildir) - 1] == '/') - strfcpy (p, NONULL (Maildir), sizeof (p)); + m_strcpy(p, sizeof(p), NONULL(Maildir)); else #endif snprintf (p, sizeof (p), "%s/", NONULL (Maildir)); @@ -376,14 +376,14 @@ char *_mutt_expand_path (char *s, size_t slen, int rx) case '>': { - strfcpy (p, NONULL (Inbox), sizeof (p)); + m_strcpy(p, sizeof(p), NONULL(Inbox)); tail = s + 1; } break; case '<': { - strfcpy (p, NONULL (Outbox), sizeof (p)); + m_strcpy(p, sizeof(p), NONULL(Outbox)); tail = s + 1; } break; @@ -391,11 +391,11 @@ char *_mutt_expand_path (char *s, size_t slen, int rx) case '!': { if (*(s + 1) == '!') { - strfcpy (p, NONULL (LastFolder), sizeof (p)); + m_strcpy(p, sizeof(p), NONULL(LastFolder)); tail = s + 2; } else { - strfcpy (p, NONULL (Spoolfile), sizeof (p)); + m_strcpy(p, sizeof(p), NONULL(Spoolfile)); tail = s + 1; } } @@ -403,14 +403,14 @@ char *_mutt_expand_path (char *s, size_t slen, int rx) case '-': { - strfcpy (p, NONULL (LastFolder), sizeof (p)); + m_strcpy(p, sizeof(p), NONULL(LastFolder)); tail = s + 1; } break; case '^': { - strfcpy (p, NONULL (CurrentFolder), sizeof (p)); + m_strcpy(p, sizeof(p), NONULL(CurrentFolder)); tail = s + 1; } break; @@ -429,7 +429,7 @@ char *_mutt_expand_path (char *s, size_t slen, int rx) else snprintf (tmp, sizeof (tmp), "%s%s", p, tail); - strfcpy (s, tmp, slen); + m_strcpy(s, slen, tmp); } while (recurse); @@ -458,13 +458,13 @@ char *mutt_gecos_name (char *dest, size_t destlen, struct passwd *pw) if (GecosMask.rx) { if (regexec (GecosMask.rx, pw->pw_gecos, 1, pat_match, 0) == 0) - strfcpy (dest, pw->pw_gecos + pat_match[0].rm_so, - MIN (pat_match[0].rm_eo - pat_match[0].rm_so + 1, destlen)); + m_strcpy(dest, MIN(pat_match[0].rm_eo - pat_match[0].rm_so + 1, destlen), + pw->pw_gecos + pat_match[0].rm_so); } else if ((p = strchr (pw->pw_gecos, ','))) - strfcpy (dest, pw->pw_gecos, MIN (destlen, p - pw->pw_gecos + 1)); + m_strcpy(dest, MIN(destlen, p - pw->pw_gecos + 1), pw->pw_gecos); else - strfcpy (dest, pw->pw_gecos, destlen); + m_strcpy(dest, destlen, pw->pw_gecos); pwnl = m_strlen(pw->pw_name); @@ -722,12 +722,12 @@ void mutt_pretty_mailbox (char *s) } *q = 0; - if (str_ncmp (s, Maildir, (len = m_strlen(Maildir))) == 0 && + if (m_strncmp(s, Maildir, (len = m_strlen(Maildir))) == 0 && s[len] == '/') { *s++ = '='; memmove (s, s + len, m_strlen(s + len) + 1); } - else if (str_ncmp (s, Homedir, (len = m_strlen(Homedir))) == 0 && + else if (m_strncmp(s, Homedir, (len = m_strlen(Homedir))) == 0 && s[len] == '/') { *s++ = '~'; memmove (s, s + len - 1, m_strlen(s + len - 1) + 1); @@ -737,7 +737,7 @@ void mutt_pretty_mailbox (char *s) void mutt_pretty_size (char *s, size_t len, long n) { if (n == 0) - strfcpy (s, "0K", len); + m_strcpy(s, len, "0K"); else if (n < 10189) /* 0.1K - 9.9K */ snprintf (s, len, "%3.1fK", (n < 103) ? 0.1 : n / 1024.0); else if (n < 1023949) { /* 10K - 999K */ @@ -782,7 +782,7 @@ void mutt_expand_fmt (char *dest, size_t destlen, const char *fmt, break; case 's': found = 1; - strfcpy (d, src, destlen + 1); + m_strcpy(d, destlen + 1, src); d += destlen > slen ? slen : destlen; destlen -= destlen > slen ? slen : destlen; p++; @@ -802,8 +802,8 @@ void mutt_expand_fmt (char *dest, size_t destlen, const char *fmt, *d = '\0'; if (!found && destlen > 0) { - str_cat (dest, destlen, " "); - str_cat (dest, destlen, src); + m_strcat(dest, destlen, " "); + m_strcat(dest, destlen, src); } } @@ -817,7 +817,7 @@ int mutt_check_overwrite (const char *attname, const char *path, char tmp[_POSIX_PATH_MAX]; struct stat st; - strfcpy (fname, path, flen); + m_strcpy(fname, flen, path); if (access (fname, F_OK) != 0) return 0; if (stat (fname, &st) != 0) @@ -852,10 +852,10 @@ int mutt_check_overwrite (const char *attname, const char *path, if (mutt_get_field (_("File under directory: "), tmp, sizeof (tmp), M_FILE | M_CLEAR) != 0 || !tmp[0]) return (-1); - mutt_concat_path (fname, path, tmp, flen); + mutt_concat_path(fname, flen, path, tmp); } else - mutt_concat_path (fname, path, mutt_basename (attname), flen); + mutt_concat_path(fname, flen, path, mutt_basename(attname)); } if (*append == 0 && access (fname, F_OK) == 0) { @@ -881,7 +881,7 @@ int mutt_check_overwrite (const char *attname, const char *path, void mutt_save_path (char *d, size_t dsize, ADDRESS * a) { if (a && a->mailbox) { - strfcpy (d, a->mailbox, dsize); + m_strcpy(d, dsize, a->mailbox); if (!option (OPTSAVEADDRESS)) { char *p; @@ -1295,9 +1295,9 @@ const char *mutt_make_version (int full) static char vstring[STRING]; if (full) - snprintf (vstring, sizeof (vstring), "Mutt-ng %s-r%s (based " - "on Mutt 1.5.11/%s)", MUTT_VERSION, MUTT_REVISION, - ReleaseDate); + snprintf (vstring, sizeof (vstring), + "Mutt-ng %s-r%s (based on Mutt 1.5.11)", + MUTT_VERSION, MUTT_REVISION); else snprintf (vstring, sizeof (vstring), "mutt-ng/%s-r%s", MUTT_VERSION, MUTT_REVISION);