projects
/
apps
/
madmutt.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
unused, drop
[apps/madmutt.git]
/
muttlib.c
diff --git
a/muttlib.c
b/muttlib.c
index
9be7e75
..
6146d4e
100644
(file)
--- a/
muttlib.c
+++ b/
muttlib.c
@@
-16,9
+16,10
@@
#include <lib-lib/ascii.h>
#include <lib-lib/str.h>
#include <lib-lib/macros.h>
#include <lib-lib/ascii.h>
#include <lib-lib/str.h>
#include <lib-lib/macros.h>
+#include <lib-lib/buffer.h>
+#include <lib-lib/file.h>
#include "mutt.h"
#include "mutt.h"
-#include "buffer.h"
#include "enter.h"
#include "mutt_curses.h"
#include "mime.h"
#include "enter.h"
#include "mutt_curses.h"
#include "mime.h"
@@
-76,14
+77,14
@@
void mutt_adv_mktemp (const char* dir, char *s, size_t l)
size_t sl;
struct stat sb;
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 {
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)
mutt_sanitize_filename (tmp, 1);
snprintf (s, l, "%s/%s", buf, tmp);
if (lstat (s, &sb) == -1 && errno == ENOENT)
@@
-95,7
+96,7
@@
void mutt_adv_mktemp (const char* dir, char *s, size_t l)
if (period != NULL) {
*period = '.';
sl = m_strlen(s);
if (period != NULL) {
*period = '.';
sl = m_strlen(s);
-
strfcpy (s + sl, period, l - sl
);
+
m_strcpy(s + sl, l - sl, period
);
}
}
}
}
}
}
@@
-113,7
+114,7
@@
int mutt_copy_body (FILE * fp, BODY ** tgt, BODY * src)
if (src->filename) {
use_disp = 1;
if (src->filename) {
use_disp = 1;
-
strfcpy (tmp, src->filename, sizeof (tmp)
);
+
m_strcpy(tmp, sizeof(tmp), src->filename
);
}
else {
use_disp = 0;
}
else {
use_disp = 0;
@@
-268,19
+269,19
@@
void mutt_expand_link (char *newpath, const char *path, const char *lnk)
/* lnk is full path */
if (*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 */
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);
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)
}
char *mutt_expand_path (char *s, size_t slen)
@@
-306,7
+307,7
@@
char *_mutt_expand_path (char *s, size_t slen, int rx)
case '~':
{
if (*(s + 1) == '/' || *(s + 1) == 0) {
case '~':
{
if (*(s + 1) == '/' || *(s + 1) == 0) {
-
strfcpy (p, NONULL (Homedir), sizeof (p
));
+
m_strcpy(p, sizeof(p), NONULL(Homedir
));
tail = s + 1;
}
else {
tail = s + 1;
}
else {
@@
-316,7
+317,7
@@
char *_mutt_expand_path (char *s, size_t slen, int rx)
*t = 0;
if ((pw = getpwnam (s + 1))) {
*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;
if (t) {
*t = '/';
tail = t;
@@
-342,7
+343,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] == '/')
/* 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));
else
#endif
snprintf (p, sizeof (p), "%s/", NONULL (Maildir));
@@
-376,14
+377,14
@@
char *_mutt_expand_path (char *s, size_t slen, int rx)
case '>':
{
case '>':
{
-
strfcpy (p, NONULL (Inbox), sizeof (p
));
+
m_strcpy(p, sizeof(p), NONULL(Inbox
));
tail = s + 1;
}
break;
case '<':
{
tail = s + 1;
}
break;
case '<':
{
-
strfcpy (p, NONULL (Outbox), sizeof (p
));
+
m_strcpy(p, sizeof(p), NONULL(Outbox
));
tail = s + 1;
}
break;
tail = s + 1;
}
break;
@@
-391,11
+392,11
@@
char *_mutt_expand_path (char *s, size_t slen, int rx)
case '!':
{
if (*(s + 1) == '!') {
case '!':
{
if (*(s + 1) == '!') {
-
strfcpy (p, NONULL (LastFolder), sizeof (p
));
+
m_strcpy(p, sizeof(p), NONULL(LastFolder
));
tail = s + 2;
}
else {
tail = s + 2;
}
else {
-
strfcpy (p, NONULL (Spoolfile), sizeof (p
));
+
m_strcpy(p, sizeof(p), NONULL(Spoolfile
));
tail = s + 1;
}
}
tail = s + 1;
}
}
@@
-403,14
+404,14
@@
char *_mutt_expand_path (char *s, size_t slen, int rx)
case '-':
{
case '-':
{
-
strfcpy (p, NONULL (LastFolder), sizeof (p
));
+
m_strcpy(p, sizeof(p), NONULL(LastFolder
));
tail = s + 1;
}
break;
case '^':
{
tail = s + 1;
}
break;
case '^':
{
-
strfcpy (p, NONULL (CurrentFolder), sizeof (p
));
+
m_strcpy(p, sizeof(p), NONULL(CurrentFolder
));
tail = s + 1;
}
break;
tail = s + 1;
}
break;
@@
-429,7
+430,7
@@
char *_mutt_expand_path (char *s, size_t slen, int rx)
else
snprintf (tmp, sizeof (tmp), "%s%s", p, tail);
else
snprintf (tmp, sizeof (tmp), "%s%s", p, tail);
-
strfcpy (s, tmp, slen
);
+
m_strcpy(s, slen, tmp
);
}
while (recurse);
}
while (recurse);
@@
-454,17
+455,17
@@
char *mutt_gecos_name (char *dest, size_t destlen, struct passwd *pw)
if (!pw || !pw->pw_gecos)
return NULL;
if (!pw || !pw->pw_gecos)
return NULL;
-
memset (dest, 0
, destlen);
+
p_clear(dest
, destlen);
if (GecosMask.rx) {
if (regexec (GecosMask.rx, pw->pw_gecos, 1, pat_match, 0) == 0)
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, ',')))
}
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
else
-
strfcpy (dest, pw->pw_gecos, destlen
);
+
m_strcpy(dest, destlen, pw->pw_gecos
);
pwnl = m_strlen(pw->pw_name);
pwnl = m_strlen(pw->pw_name);
@@
-722,12
+723,12
@@
void mutt_pretty_mailbox (char *s)
}
*q = 0;
}
*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);
}
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);
s[len] == '/') {
*s++ = '~';
memmove (s, s + len - 1, m_strlen(s + len - 1) + 1);
@@
-737,7
+738,7
@@
void mutt_pretty_mailbox (char *s)
void mutt_pretty_size (char *s, size_t len, long n)
{
if (n == 0)
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 */
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
+783,7
@@
void mutt_expand_fmt (char *dest, size_t destlen, const char *fmt,
break;
case 's':
found = 1;
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++;
d += destlen > slen ? slen : destlen;
destlen -= destlen > slen ? slen : destlen;
p++;
@@
-802,8
+803,8
@@
void mutt_expand_fmt (char *dest, size_t destlen, const char *fmt,
*d = '\0';
if (!found && destlen > 0) {
*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
+818,7
@@
int mutt_check_overwrite (const char *attname, const char *path,
char tmp[_POSIX_PATH_MAX];
struct stat st;
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)
if (access (fname, F_OK) != 0)
return 0;
if (stat (fname, &st) != 0)
@@
-852,10
+853,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);
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
}
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) {
}
if (*append == 0 && access (fname, F_OK) == 0) {
@@
-881,7
+882,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) {
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;
if (!option (OPTSAVEADDRESS)) {
char *p;
@@
-1195,7
+1196,7
@@
int mutt_save_confirm (const char *s, struct stat *st)
if (magic > 0 && !mx_access (s, W_OK)) {
if (option (OPTCONFIRMAPPEND) &&
if (magic > 0 && !mx_access (s, W_OK)) {
if (option (OPTCONFIRMAPPEND) &&
- (!TrashPath || (
str_cmp
(s, TrashPath) != 0))) {
+ (!TrashPath || (
m_strcmp
(s, TrashPath) != 0))) {
/* if we're appending to the trash, there's no point in asking */
snprintf (tmp, sizeof (tmp), _("Append messages to %s?"), s);
if ((rc = mutt_yesorno (tmp, M_YES)) == M_NO)
/* if we're appending to the trash, there's no point in asking */
snprintf (tmp, sizeof (tmp), _("Append messages to %s?"), s);
if ((rc = mutt_yesorno (tmp, M_YES)) == M_NO)
@@
-1394,8
+1395,8
@@
int mutt_cmp_header (const HEADER * h1, const HEADER * h2) {
int mutt_cmp_addr (const ADDRESS * a, const ADDRESS * b)
{
while (a && b) {
int mutt_cmp_addr (const ADDRESS * a, const ADDRESS * b)
{
while (a && b) {
- if (
str_cmp
(a->mailbox, b->mailbox) ||
-
str_cmp
(a->personal, b->personal))
+ if (
m_strcmp
(a->mailbox, b->mailbox) ||
+
m_strcmp
(a->personal, b->personal))
return (0);
a = a->next;
return (0);
a = a->next;
@@
-1410,7
+1411,7
@@
int mutt_cmp_addr (const ADDRESS * a, const ADDRESS * b)
int mutt_cmp_list (const LIST * a, const LIST * b)
{
while (a && b) {
int mutt_cmp_list (const LIST * a, const LIST * b)
{
while (a && b) {
- if (
str_cmp
(a->data, b->data))
+ if (
m_strcmp
(a->data, b->data))
return (0);
a = a->next;
return (0);
a = a->next;
@@
-1425,8
+1426,8
@@
int mutt_cmp_list (const LIST * a, const LIST * b)
int mutt_cmp_env (const ENVELOPE * e1, const ENVELOPE * e2)
{
if (e1 && e2) {
int mutt_cmp_env (const ENVELOPE * e1, const ENVELOPE * e2)
{
if (e1 && e2) {
- if (
str_cmp
(e1->message_id, e2->message_id) ||
-
str_cmp
(e1->subject, e2->subject) ||
+ if (
m_strcmp
(e1->message_id, e2->message_id) ||
+
m_strcmp
(e1->subject, e2->subject) ||
!mutt_cmp_list (e1->references, e2->references) ||
!mutt_cmp_addr (e1->from, e2->from) ||
!mutt_cmp_addr (e1->sender, e2->sender) ||
!mutt_cmp_list (e1->references, e2->references) ||
!mutt_cmp_addr (e1->from, e2->from) ||
!mutt_cmp_addr (e1->sender, e2->sender) ||
@@
-1449,8
+1450,8
@@
int mutt_cmp_env (const ENVELOPE * e1, const ENVELOPE * e2)
int mutt_cmp_param (const PARAMETER * p1, const PARAMETER * p2)
{
while (p1 && p2) {
int mutt_cmp_param (const PARAMETER * p1, const PARAMETER * p2)
{
while (p1 && p2) {
- if (
str_cmp
(p1->attribute, p2->attribute) ||
-
str_cmp
(p1->value, p2->value))
+ if (
m_strcmp
(p1->attribute, p2->attribute) ||
+
m_strcmp
(p1->value, p2->value))
return (0);
p1 = p1->next;
return (0);
p1 = p1->next;
@@
-1466,8
+1467,8
@@
int mutt_cmp_body (const BODY * b1, const BODY * b2)
{
if (b1->type != b2->type ||
b1->encoding != b2->encoding ||
{
if (b1->type != b2->type ||
b1->encoding != b2->encoding ||
-
str_cmp
(b1->subtype, b2->subtype) ||
-
str_cmp
(b1->description, b2->description) ||
+
m_strcmp
(b1->subtype, b2->subtype) ||
+
m_strcmp
(b1->description, b2->description) ||
!mutt_cmp_param (b1->parameter, b2->parameter) ||
b1->length != b2->length)
return (0);
!mutt_cmp_param (b1->parameter, b2->parameter) ||
b1->length != b2->length)
return (0);