]> diplodocus.org Git - nmh/log
nmh
9 years agoPOSIX, 2016 Ed, removes bcopy(3). Stop referring to it.
Ralph Corderoy [Sat, 22 Oct 2016 12:58:43 +0000 (13:58 +0100)]
POSIX, 2016 Ed, removes bcopy(3).  Stop referring to it.

Even though it's in a comment, it shows up in searches.

9 years agoDon't need to cast to `char *' for free(3) these days.
Ralph Corderoy [Sat, 22 Oct 2016 12:45:35 +0000 (13:45 +0100)]
Don't need to cast to `char *' for free(3) these days.

9 years agoDon't need to cast to `char *' for free(3) these days.
Ralph Corderoy [Sat, 22 Oct 2016 12:45:24 +0000 (13:45 +0100)]
Don't need to cast to `char *' for free(3) these days.

9 years agoDon't need to cast to `char *' for free(3) these days.
Ralph Corderoy [Sat, 22 Oct 2016 12:45:22 +0000 (13:45 +0100)]
Don't need to cast to `char *' for free(3) these days.

9 years agoDon't need to cast to `char *' for free(3) these days.
Ralph Corderoy [Sat, 22 Oct 2016 12:45:19 +0000 (13:45 +0100)]
Don't need to cast to `char *' for free(3) these days.

9 years agoDon't need to cast to `char *' for free(3) these days.
Ralph Corderoy [Sat, 22 Oct 2016 12:45:16 +0000 (13:45 +0100)]
Don't need to cast to `char *' for free(3) these days.

9 years agoDon't need to cast to `char *' for free(3) these days.
Ralph Corderoy [Sat, 22 Oct 2016 12:45:11 +0000 (13:45 +0100)]
Don't need to cast to `char *' for free(3) these days.

9 years agoDon't need to cast to `char *' for free(3) these days.
Ralph Corderoy [Sat, 22 Oct 2016 12:44:47 +0000 (13:44 +0100)]
Don't need to cast to `char *' for free(3) these days.

But still need a cast to discard the const.
Use `void *' as it saves needing to check the original type.

9 years agoDon't need to cast to `char *' for free(3) these days.
Ralph Corderoy [Sat, 22 Oct 2016 12:42:52 +0000 (13:42 +0100)]
Don't need to cast to `char *' for free(3) these days.

9 years agoDon't need to cast to `char *' for free(3) these days.
Ralph Corderoy [Sat, 22 Oct 2016 12:42:47 +0000 (13:42 +0100)]
Don't need to cast to `char *' for free(3) these days.

9 years agoDon't need to cast to `char *' for free(3) these days.
Ralph Corderoy [Sat, 22 Oct 2016 12:42:45 +0000 (13:42 +0100)]
Don't need to cast to `char *' for free(3) these days.

9 years agoDon't need to cast to `char *' for free(3) these days.
Ralph Corderoy [Sat, 22 Oct 2016 12:42:43 +0000 (13:42 +0100)]
Don't need to cast to `char *' for free(3) these days.

9 years agoDon't need to cast to `char *' for free(3) these days.
Ralph Corderoy [Sat, 22 Oct 2016 12:42:39 +0000 (13:42 +0100)]
Don't need to cast to `char *' for free(3) these days.

9 years agoMove smtp_init's last-ditch attempt for client inside first test.
Ralph Corderoy [Fri, 21 Oct 2016 23:45:09 +0000 (00:45 +0100)]
Move smtp_init's last-ditch attempt for client inside first test.

Didn't realise there was a second lot of similar code before the last
commit.

9 years agoMove smtp_init's last-ditch attempt for client inside first test.
Ralph Corderoy [Fri, 21 Oct 2016 23:41:44 +0000 (00:41 +0100)]
Move smtp_init's last-ditch attempt for client inside first test.

No point checking it twice in a row if it was false the first time.

9 years agoDon't `else' after return. Simplify control flow.
Ralph Corderoy [Fri, 21 Oct 2016 23:40:30 +0000 (00:40 +0100)]
Don't `else' after return.  Simplify control flow.

9 years agoReplace `if (p) free(p)' with `mh_xfree(p)'.
Ralph Corderoy [Fri, 21 Oct 2016 23:27:58 +0000 (00:27 +0100)]
Replace `if (p) free(p)' with `mh_xfree(p)'.

9 years agoReplace `if (p) free(p)' with `mh_xfree(p)'.
Ralph Corderoy [Fri, 21 Oct 2016 23:27:54 +0000 (00:27 +0100)]
Replace `if (p) free(p)' with `mh_xfree(p)'.

9 years agoReplace `if (p) free(p)' with `mh_xfree(p)'.
Ralph Corderoy [Fri, 21 Oct 2016 23:27:51 +0000 (00:27 +0100)]
Replace `if (p) free(p)' with `mh_xfree(p)'.

9 years agoReplace `if (p) free(p)' with `mh_xfree(p)'.
Ralph Corderoy [Fri, 21 Oct 2016 23:27:48 +0000 (00:27 +0100)]
Replace `if (p) free(p)' with `mh_xfree(p)'.

9 years agoReplace `if (p) free(p)' with `mh_xfree(p)'.
Ralph Corderoy [Fri, 21 Oct 2016 23:27:42 +0000 (00:27 +0100)]
Replace `if (p) free(p)' with `mh_xfree(p)'.

9 years agoReplace `if (p) free(p)' with `mh_xfree(p)'.
Ralph Corderoy [Fri, 21 Oct 2016 23:27:29 +0000 (00:27 +0100)]
Replace `if (p) free(p)' with `mh_xfree(p)'.

9 years agoReplace `if (p) free(p)' with `mh_xfree(p)'.
Ralph Corderoy [Fri, 21 Oct 2016 23:27:22 +0000 (00:27 +0100)]
Replace `if (p) free(p)' with `mh_xfree(p)'.

9 years agoReplace `if (p) free(p)' with `mh_xfree(p)'.
Ralph Corderoy [Fri, 21 Oct 2016 23:27:16 +0000 (00:27 +0100)]
Replace `if (p) free(p)' with `mh_xfree(p)'.

9 years agoReplace `if (p) free(p)' with `mh_xfree(p)'.
Ralph Corderoy [Fri, 21 Oct 2016 23:26:57 +0000 (00:26 +0100)]
Replace `if (p) free(p)' with `mh_xfree(p)'.

9 years agoReplace `if (p) free(p)' with `mh_xfree(p)'.
Ralph Corderoy [Fri, 21 Oct 2016 23:26:54 +0000 (00:26 +0100)]
Replace `if (p) free(p)' with `mh_xfree(p)'.

9 years agoReplace `if (p) free(p)' with `mh_xfree(p)'.
Ralph Corderoy [Fri, 21 Oct 2016 23:26:35 +0000 (00:26 +0100)]
Replace `if (p) free(p)' with `mh_xfree(p)'.

9 years agoReplace `if (p) free(p)' with `mh_xfree(p)'.
Ralph Corderoy [Fri, 21 Oct 2016 23:26:02 +0000 (00:26 +0100)]
Replace `if (p) free(p)' with `mh_xfree(p)'.

9 years agoReplace `if (p) free(p)' with `mh_xfree(p)'.
Ralph Corderoy [Fri, 21 Oct 2016 23:25:53 +0000 (00:25 +0100)]
Replace `if (p) free(p)' with `mh_xfree(p)'.

9 years agoReplace `if (p) free(p)' with `mh_xfree(p)'.
Ralph Corderoy [Fri, 21 Oct 2016 23:21:16 +0000 (00:21 +0100)]
Replace `if (p) free(p)' with `mh_xfree(p)'.

9 years agoReplace `if (p) free(p)' with `mh_xfree(p)'.
Ralph Corderoy [Fri, 21 Oct 2016 23:20:55 +0000 (00:20 +0100)]
Replace `if (p) free(p)' with `mh_xfree(p)'.

9 years agoReplace `if (p) free(p)' with `mh_xfree(p)'.
Ralph Corderoy [Fri, 21 Oct 2016 23:20:49 +0000 (00:20 +0100)]
Replace `if (p) free(p)' with `mh_xfree(p)'.

9 years agoReplace `if (p) free(p)' with `mh_xfree(p)'.
Ralph Corderoy [Fri, 21 Oct 2016 23:20:46 +0000 (00:20 +0100)]
Replace `if (p) free(p)' with `mh_xfree(p)'.

9 years agoReplace `if (p) free(p)' with `mh_xfree(p)'.
Ralph Corderoy [Fri, 21 Oct 2016 23:18:54 +0000 (00:18 +0100)]
Replace `if (p) free(p)' with `mh_xfree(p)'.

9 years agoReplace `if (p) free(p)' with `mh_xfree(p)'.
Ralph Corderoy [Fri, 21 Oct 2016 23:18:50 +0000 (00:18 +0100)]
Replace `if (p) free(p)' with `mh_xfree(p)'.

9 years agoReplace `if (p) free(p)' with `mh_xfree(p)'.
Ralph Corderoy [Fri, 21 Oct 2016 23:18:43 +0000 (00:18 +0100)]
Replace `if (p) free(p)' with `mh_xfree(p)'.

9 years agoReplace `if (p) free(p)' with `mh_xfree(p)'.
Ralph Corderoy [Fri, 21 Oct 2016 23:18:39 +0000 (00:18 +0100)]
Replace `if (p) free(p)' with `mh_xfree(p)'.

9 years agoReplace `if (p) free(p)' with `mh_xfree(p)'.
Ralph Corderoy [Fri, 21 Oct 2016 23:18:32 +0000 (00:18 +0100)]
Replace `if (p) free(p)' with `mh_xfree(p)'.

9 years agoReplace `if (p) free(p)' with `mh_xfree(p)'.
Ralph Corderoy [Fri, 21 Oct 2016 23:18:26 +0000 (00:18 +0100)]
Replace `if (p) free(p)' with `mh_xfree(p)'.

9 years agoDon't test boundary in output_content() for NULL; it never is.
Ralph Corderoy [Fri, 21 Oct 2016 23:09:10 +0000 (00:09 +0100)]
Don't test boundary in output_content() for NULL;  it never is.

9 years agoReplace `if (p) free(p)' with `mh_xfree(p)'.
Ralph Corderoy [Fri, 21 Oct 2016 22:21:30 +0000 (23:21 +0100)]
Replace `if (p) free(p)' with `mh_xfree(p)'.

9 years agoReplace `if (p) free(p)' with `mh_xfree(p)'.
Ralph Corderoy [Fri, 21 Oct 2016 22:20:41 +0000 (23:20 +0100)]
Replace `if (p) free(p)' with `mh_xfree(p)'.

9 years agoReplace `if (p) free(p)' with `mh_xfree(p)'.
Ralph Corderoy [Fri, 21 Oct 2016 22:20:06 +0000 (23:20 +0100)]
Replace `if (p) free(p)' with `mh_xfree(p)'.

9 years agoReplace `if (p) free(p)' with `mh_xfree(p)'.
Ralph Corderoy [Fri, 21 Oct 2016 22:17:48 +0000 (23:17 +0100)]
Replace `if (p) free(p)' with `mh_xfree(p)'.

9 years agoReplace `if (p) free(p)' with `mh_xfree(p)'.
Ralph Corderoy [Fri, 21 Oct 2016 22:16:11 +0000 (23:16 +0100)]
Replace `if (p) free(p)' with `mh_xfree(p)'.

9 years agoReplace `if (p) free(p)' with `mh_xfree(p)'.
Ralph Corderoy [Fri, 21 Oct 2016 22:15:53 +0000 (23:15 +0100)]
Replace `if (p) free(p)' with `mh_xfree(p)'.

9 years agoReplace `if (p) free(p)' with `mh_xfree(p)'.
Ralph Corderoy [Fri, 21 Oct 2016 22:15:47 +0000 (23:15 +0100)]
Replace `if (p) free(p)' with `mh_xfree(p)'.

9 years agoReplace `if (p) free(p)' with `mh_xfree(p)'.
Ralph Corderoy [Fri, 21 Oct 2016 22:15:32 +0000 (23:15 +0100)]
Replace `if (p) free(p)' with `mh_xfree(p)'.

9 years agoReplace `if (p) free(p)' with `mh_xfree(p)'.
Ralph Corderoy [Fri, 21 Oct 2016 21:01:54 +0000 (22:01 +0100)]
Replace `if (p) free(p)' with `mh_xfree(p)'.

9 years agoAdd FIXME raising if iscntrl(3) test should be based on isprint(3)
Ralph Corderoy [Fri, 21 Oct 2016 20:18:38 +0000 (21:18 +0100)]
Add FIXME raising if iscntrl(3) test should be based on isprint(3)

!iscntrl blocks characters that could be isspace or isblank whereas
isprint would let them through unharmed.

9 years agoAssume POSIX ctype.h; don't vet toupper()'s parameter.
Ralph Corderoy [Fri, 21 Oct 2016 20:18:16 +0000 (21:18 +0100)]
Assume POSIX ctype.h;  don't vet toupper()'s parameter.

9 years agoExplain isascii() test more in netsec_set_sasl_params().
Ralph Corderoy [Fri, 21 Oct 2016 20:14:24 +0000 (21:14 +0100)]
Explain isascii() test more in netsec_set_sasl_params().

It stops non-ASCII lower in the SASL mechanism being uppered, just in
case there is some.

9 years agoAssume POSIX ctype.h; don't vet toupper()'s parameter.
Ralph Corderoy [Fri, 21 Oct 2016 20:10:42 +0000 (21:10 +0100)]
Assume POSIX ctype.h;  don't vet toupper()'s parameter.

9 years agoAssume POSIX ctype.h; don't vet tolower()'s parameter.
Ralph Corderoy [Fri, 21 Oct 2016 19:39:11 +0000 (20:39 +0100)]
Assume POSIX ctype.h;  don't vet tolower()'s parameter.

9 years agoAssume POSIX ctype.h; don't vet tolower()'s parameter.
Ralph Corderoy [Fri, 21 Oct 2016 19:37:32 +0000 (20:37 +0100)]
Assume POSIX ctype.h;  don't vet tolower()'s parameter.

9 years agoOops, stop showbuildenv reading from stdin when run from a TTY.
Ralph Corderoy [Fri, 21 Oct 2016 19:23:55 +0000 (20:23 +0100)]
Oops, stop showbuildenv reading from stdin when run from a TTY.

David spotted the problem I introduced with 8374c3c.  Alter offset to
process any arguments, falling back to stdin if none.

9 years agoAssume POSIX ctype.h; don't vet tolower()'s parameter.
Ralph Corderoy [Fri, 21 Oct 2016 13:42:35 +0000 (14:42 +0100)]
Assume POSIX ctype.h;  don't vet tolower()'s parameter.

9 years agoAssume POSIX ctype.h; don't vet tolower()'s parameter.
Ralph Corderoy [Fri, 21 Oct 2016 13:41:17 +0000 (14:41 +0100)]
Assume POSIX ctype.h;  don't vet tolower()'s parameter.

9 years agoAssume POSIX ctype.h; don't vet tolower()'s parameter.
Ralph Corderoy [Fri, 21 Oct 2016 13:35:47 +0000 (14:35 +0100)]
Assume POSIX ctype.h;  don't vet tolower()'s parameter.

9 years agoFixed MIME parser so it can read binary content.
David Levine [Fri, 21 Oct 2016 17:26:43 +0000 (13:26 -0400)]
Fixed MIME parser so it can read binary content.

Second of two-part fix.  Replaced use of strlen().

9 years agoHave m_getfld() pass back indication of missing blank line.
David Levine [Fri, 21 Oct 2016 17:22:22 +0000 (13:22 -0400)]
Have m_getfld() pass back indication of missing blank line.

This is part one of a two part fix to the MIME parser to
read binary content.  It should have no effect.

Also added start/finish test calls to test-header.

9 years agoFix warnings caused by recent edits; don't mix declarations and code.
Ralph Corderoy [Fri, 21 Oct 2016 08:53:45 +0000 (09:53 +0100)]
Fix warnings caused by recent edits;  don't mix declarations and code.
Quite right too, I prefer all the declarations, codeless, up front.  The
standard -Wall didn't pick this up.  David pointed it out, probably due
to his defaults of `-pedantic -ansi'.

9 years agoDon't `else' after goto. Simplify control flow.
Ralph Corderoy [Thu, 20 Oct 2016 23:06:11 +0000 (00:06 +0100)]
Don't `else' after goto.  Simplify control flow.

9 years agoDon't `else' after goto. Simplify control flow.
Ralph Corderoy [Thu, 20 Oct 2016 23:06:07 +0000 (00:06 +0100)]
Don't `else' after goto.  Simplify control flow.

9 years agoDon't `else' after goto. Simplify control flow.
Ralph Corderoy [Thu, 20 Oct 2016 23:05:50 +0000 (00:05 +0100)]
Don't `else' after goto.  Simplify control flow.

9 years agoDon't `else' after goto. Simplify control flow.
Ralph Corderoy [Thu, 20 Oct 2016 23:05:46 +0000 (00:05 +0100)]
Don't `else' after goto.  Simplify control flow.

9 years agoAdded test/mhshow/test-binary. The MIME parser doesn't
David Levine [Thu, 20 Oct 2016 23:38:01 +0000 (19:38 -0400)]
Added test/mhshow/test-binary.  The MIME parser doesn't
properly handle null bytes because it uses getline().

9 years agoDon't `else' after return. Simplify control flow.
Ralph Corderoy [Thu, 20 Oct 2016 22:57:56 +0000 (23:57 +0100)]
Don't `else' after return.  Simplify control flow.

9 years agoDon't `else' after return. Simplify control flow.
Ralph Corderoy [Thu, 20 Oct 2016 22:57:09 +0000 (23:57 +0100)]
Don't `else' after return.  Simplify control flow.

9 years agoDon't `else' after return. Simplify control flow.
Ralph Corderoy [Thu, 20 Oct 2016 22:30:39 +0000 (23:30 +0100)]
Don't `else' after return.  Simplify control flow.

9 years agoDon't `else' after return. Simplify control flow.
Ralph Corderoy [Thu, 20 Oct 2016 22:30:07 +0000 (23:30 +0100)]
Don't `else' after return.  Simplify control flow.

9 years agoDon't `else' after return. Simplify control flow.
Ralph Corderoy [Thu, 20 Oct 2016 22:30:02 +0000 (23:30 +0100)]
Don't `else' after return.  Simplify control flow.

9 years agoDon't `else' after return. Simplify control flow.
Ralph Corderoy [Thu, 20 Oct 2016 22:29:56 +0000 (23:29 +0100)]
Don't `else' after return.  Simplify control flow.

9 years agoDon't `else' after return. Simplify control flow.
Ralph Corderoy [Thu, 20 Oct 2016 22:29:49 +0000 (23:29 +0100)]
Don't `else' after return.  Simplify control flow.

9 years agoDon't `else' after return. Simplify control flow.
Ralph Corderoy [Thu, 20 Oct 2016 22:29:46 +0000 (23:29 +0100)]
Don't `else' after return.  Simplify control flow.

9 years agoDon't `else' after return. Simplify control flow.
Ralph Corderoy [Thu, 20 Oct 2016 22:29:35 +0000 (23:29 +0100)]
Don't `else' after return.  Simplify control flow.

9 years agoDon't `else' after return. Simplify control flow.
Ralph Corderoy [Thu, 20 Oct 2016 22:29:19 +0000 (23:29 +0100)]
Don't `else' after return.  Simplify control flow.

9 years agoDon't `else' after return. Simplify control flow.
Ralph Corderoy [Thu, 20 Oct 2016 22:27:42 +0000 (23:27 +0100)]
Don't `else' after return.  Simplify control flow.

9 years agoDon't `else' after return. Simplify control flow.
Ralph Corderoy [Thu, 20 Oct 2016 22:27:37 +0000 (23:27 +0100)]
Don't `else' after return.  Simplify control flow.

9 years agoDon't `else' after return. Simplify control flow.
Ralph Corderoy [Thu, 20 Oct 2016 22:27:21 +0000 (23:27 +0100)]
Don't `else' after return.  Simplify control flow.

9 years agoDon't `else' after return. Simplify control flow.
Ralph Corderoy [Thu, 20 Oct 2016 22:27:08 +0000 (23:27 +0100)]
Don't `else' after return.  Simplify control flow.

9 years agoDon't `else' after return. Simplify control flow.
Ralph Corderoy [Thu, 20 Oct 2016 22:27:05 +0000 (23:27 +0100)]
Don't `else' after return.  Simplify control flow.

9 years agoDon't `else' after return. Simplify control flow.
Ralph Corderoy [Thu, 20 Oct 2016 22:23:46 +0000 (23:23 +0100)]
Don't `else' after return.  Simplify control flow.

9 years agoDon't `else' after return. Simplify control flow.
Ralph Corderoy [Thu, 20 Oct 2016 22:23:41 +0000 (23:23 +0100)]
Don't `else' after return.  Simplify control flow.

9 years agoDon't `else' after return. Simplify control flow.
Ralph Corderoy [Thu, 20 Oct 2016 22:23:38 +0000 (23:23 +0100)]
Don't `else' after return.  Simplify control flow.

9 years agoDon't `else' after return. Simplify control flow.
Ralph Corderoy [Thu, 20 Oct 2016 22:23:35 +0000 (23:23 +0100)]
Don't `else' after return.  Simplify control flow.

9 years agoDon't `else' after return. Simplify control flow.
Ralph Corderoy [Thu, 20 Oct 2016 22:23:28 +0000 (23:23 +0100)]
Don't `else' after return.  Simplify control flow.

9 years agoDon't `else' after return. Simplify control flow.
Ralph Corderoy [Thu, 20 Oct 2016 22:23:00 +0000 (23:23 +0100)]
Don't `else' after return.  Simplify control flow.

9 years agoDon't `else' after return. Simplify control flow.
Ralph Corderoy [Thu, 20 Oct 2016 22:22:21 +0000 (23:22 +0100)]
Don't `else' after return.  Simplify control flow.

9 years agoDon't `else' after return. Simplify control flow.
Ralph Corderoy [Thu, 20 Oct 2016 22:22:15 +0000 (23:22 +0100)]
Don't `else' after return.  Simplify control flow.

9 years agoDon't `else' after return. Simplify control flow.
Ralph Corderoy [Thu, 20 Oct 2016 22:22:11 +0000 (23:22 +0100)]
Don't `else' after return.  Simplify control flow.

9 years agoDon't `else' after return. Simplify control flow.
Ralph Corderoy [Thu, 20 Oct 2016 22:22:04 +0000 (23:22 +0100)]
Don't `else' after return.  Simplify control flow.

9 years agoDon't `else' after return. Simplify control flow.
Ralph Corderoy [Thu, 20 Oct 2016 22:22:00 +0000 (23:22 +0100)]
Don't `else' after return.  Simplify control flow.

9 years agoDon't `else' after return. Simplify control flow.
Ralph Corderoy [Thu, 20 Oct 2016 22:21:45 +0000 (23:21 +0100)]
Don't `else' after return.  Simplify control flow.

9 years agoDon't `else' after return. Simplify control flow.
Ralph Corderoy [Thu, 20 Oct 2016 22:21:34 +0000 (23:21 +0100)]
Don't `else' after return.  Simplify control flow.

9 years agoDon't `else' after return. Simplify control flow.
Ralph Corderoy [Thu, 20 Oct 2016 22:21:05 +0000 (23:21 +0100)]
Don't `else' after return.  Simplify control flow.

9 years agoDon't `else' after return. Simplify control flow.
Ralph Corderoy [Thu, 20 Oct 2016 22:20:25 +0000 (23:20 +0100)]
Don't `else' after return.  Simplify control flow.

9 years agoDon't `else' after return. Simplify control flow.
Ralph Corderoy [Thu, 20 Oct 2016 22:20:20 +0000 (23:20 +0100)]
Don't `else' after return.  Simplify control flow.

9 years agoDon't `else' after return. Simplify control flow.
Ralph Corderoy [Thu, 20 Oct 2016 22:20:17 +0000 (23:20 +0100)]
Don't `else' after return.  Simplify control flow.

9 years agoDon't `else' after return. Simplify control flow.
Ralph Corderoy [Thu, 20 Oct 2016 22:20:07 +0000 (23:20 +0100)]
Don't `else' after return.  Simplify control flow.