projects
/
mmh
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
mhsign should work now
[mmh]
/
uip
/
send.c
diff --git
a/uip/send.c
b/uip/send.c
index
bab1699
..
c1665b2
100644
(file)
--- a/
uip/send.c
+++ b/
uip/send.c
@@
-81,7
+81,7
@@
main(int argc, char **argv)
int msgnum, status;
int in, out;
int n;
int msgnum, status;
int in, out;
int n;
- char *cp, *maildir = NULL;
+ char *cp, *maildir = NULL, *folder = NULL;
char buf[BUFSIZ], **argp, **arguments;
char *msgs[MAXARGS], *vec[MAXARGS];
char *files[MAXARGS];
char buf[BUFSIZ], **argp, **arguments;
char *msgs[MAXARGS], *vec[MAXARGS];
char *files[MAXARGS];
@@
-125,6
+125,12
@@
main(int argc, char **argv)
vec[vecp++] = --cp;
continue;
}
vec[vecp++] = --cp;
continue;
}
+ } else if (*cp == '+' || *cp == '@') {
+ if (folder) {
+ adios(EX_USAGE, NULL, "only one folder at a time!");
+ } else {
+ folder = mh_xstrdup(expandfol(cp));
+ }
} else {
if (*cp == '/') {
files[nfiles++] = cp;
} else {
if (*cp == '/') {
files[nfiles++] = cp;
@@
-139,17
+145,18
@@
main(int argc, char **argv)
}
if (nmsgs) {
}
if (nmsgs) {
- maildir = toabsdir(draftfolder);
+ folder = folder ? folder : draftfolder;
+ maildir = toabsdir(folder);
if (chdir(maildir) == NOTOK) {
adios(EX_OSERR, maildir, "unable to change directory to");
}
if (chdir(maildir) == NOTOK) {
adios(EX_OSERR, maildir, "unable to change directory to");
}
- if (!(mp = folder_read(draftfolder))) {
- adios(EX_IOERR, NULL, "unable to read draft folder %s",
- draftfolder);
+ if (!(mp = folder_read(folder))) {
+ adios(EX_IOERR, NULL, "unable to read folder %s",
+ folder);
}
if (mp->nummsg == 0) {
}
if (mp->nummsg == 0) {
- adios(EX_DATAERR, NULL, "no messages in draft folder %s",
- draftfolder);
+ adios(EX_DATAERR, NULL, "no messages in folder %s",
+ folder);
}
/* parse all the msgranges/sequences and set SELECTED */
for (msgnum = 0; msgnum < nmsgs; msgnum++) {
}
/* parse all the msgranges/sequences and set SELECTED */
for (msgnum = 0; msgnum < nmsgs; msgnum++) {
@@
-162,7
+169,7
@@
main(int argc, char **argv)
for (nmsgs = 0, msgnum = mp->lowsel;
msgnum <= mp->hghsel; msgnum++) {
if (is_selected(mp, msgnum)) {
for (nmsgs = 0, msgnum = mp->lowsel;
msgnum <= mp->hghsel; msgnum++) {
if (is_selected(mp, msgnum)) {
- files[nfiles++] = getcpy(m_name(msgnum));
+ files[nfiles++] = mh_xstrdup(m_name(msgnum));
unset_exists(mp, msgnum);
}
}
unset_exists(mp, msgnum);
}
}
@@
-196,7
+203,7
@@
main(int argc, char **argv)
adios(EX_IOERR, altmsg, "unable to open for reading");
}
fstat(in, &st2);
adios(EX_IOERR, altmsg, "unable to open for reading");
}
fstat(in, &st2);
- distfile = getcpy(m_mktemp2(NULL, invo_name, NULL, NULL));
+ distfile = mh_xstrdup(m_mktemp2(NULL, invo_name, NULL, NULL));
if ((out = creat(distfile, (int)st2.st_mode & 0777))==NOTOK) {
adios(EX_IOERR, distfile, "unable to open for writing");
}
if ((out = creat(distfile, (int)st2.st_mode & 0777))==NOTOK) {
adios(EX_IOERR, distfile, "unable to open for writing");
}
@@
-322,10
+329,10
@@
sendsbr(char **vec, int vecp, char *drft, struct stat *st)
static int
contains_non_ascii(char *str)
{
static int
contains_non_ascii(char *str)
{
- char *cp;
+ unsigned char *cp;
for (cp = str; *cp; cp++) {
for (cp = str; *cp; cp++) {
- if (*cp > 127 || *cp < 0) {
+ if (*cp > 127) {
return 1;
}
}
return 1;
}
}
@@
-348,7
+355,7
@@
attach(char *draft_file_name)
}
/* We'll grow the buffer as needed. */
}
/* We'll grow the buffer as needed. */
- field = (char *)mh_xmalloc(field_size = 256);
+ field = mh_xcalloc(field_size = 256, sizeof(char));
/*
** Scan the draft file for an attachment header field name.
/*
** Scan the draft file for an attachment header field name.
@@
-484,7
+491,7
@@
signandenc(char *draft_file_name)
}
/* We'll grow the buffer as needed. */
}
/* We'll grow the buffer as needed. */
- field = (char *)mh_xmalloc(field_size = 256);
+ field = mh_xcalloc(field_size = 256, sizeof(char));
/* Scan the draft file for an attachment header field name. */
while (get_line() != EOF && *field != '\0' && *field != '-') {
/* Scan the draft file for an attachment header field name. */
while (get_line() != EOF && *field != '\0' && *field != '-') {
@@
-553,7
+560,7
@@
get_line(void)
break;
}
if (++n >= field_size - 1) {
break;
}
if (++n >= field_size - 1) {
- field = (char *)mh_xrealloc(field, field_size += 256);
+ field = mh_xrealloc(field, field_size += 256);
p = field + n - 1;
}
}
p = field + n - 1;
}
}