]>
diplodocus.org Git - nmh/log
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().
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.
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'.
Ralph Corderoy [Thu, 20 Oct 2016 23:06:11 +0000 (00:06 +0100)]
Don'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.
Ralph Corderoy [Thu, 20 Oct 2016 23:05:50 +0000 (00:05 +0100)]
Don'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.
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().
Ralph Corderoy [Thu, 20 Oct 2016 22:57:56 +0000 (23:57 +0100)]
Don'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.
Ralph Corderoy [Thu, 20 Oct 2016 22:30:39 +0000 (23:30 +0100)]
Don'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.
Ralph Corderoy [Thu, 20 Oct 2016 22:30:02 +0000 (23:30 +0100)]
Don'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.
Ralph Corderoy [Thu, 20 Oct 2016 22:29:49 +0000 (23:29 +0100)]
Don'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.
Ralph Corderoy [Thu, 20 Oct 2016 22:29:35 +0000 (23:29 +0100)]
Don'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.
Ralph Corderoy [Thu, 20 Oct 2016 22:27:42 +0000 (23:27 +0100)]
Don'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.
Ralph Corderoy [Thu, 20 Oct 2016 22:27:21 +0000 (23:27 +0100)]
Don'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.
Ralph Corderoy [Thu, 20 Oct 2016 22:27:05 +0000 (23:27 +0100)]
Don'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.
Ralph Corderoy [Thu, 20 Oct 2016 22:23:41 +0000 (23:23 +0100)]
Don'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.
Ralph Corderoy [Thu, 20 Oct 2016 22:23:35 +0000 (23:23 +0100)]
Don'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.
Ralph Corderoy [Thu, 20 Oct 2016 22:23:00 +0000 (23:23 +0100)]
Don'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.
Ralph Corderoy [Thu, 20 Oct 2016 22:22:15 +0000 (23:22 +0100)]
Don'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.
Ralph Corderoy [Thu, 20 Oct 2016 22:22:04 +0000 (23:22 +0100)]
Don'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.
Ralph Corderoy [Thu, 20 Oct 2016 22:21:45 +0000 (23:21 +0100)]
Don'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.
Ralph Corderoy [Thu, 20 Oct 2016 22:21:05 +0000 (23:21 +0100)]
Don'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.
Ralph Corderoy [Thu, 20 Oct 2016 22:20:20 +0000 (23:20 +0100)]
Don'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.
Ralph Corderoy [Thu, 20 Oct 2016 22:20:07 +0000 (23:20 +0100)]
Don't `else' after return. Simplify control flow.
Ralph Corderoy [Thu, 20 Oct 2016 22:19:59 +0000 (23:19 +0100)]
Don't `else' after return or goto. Simplify control flow.
Ralph Corderoy [Thu, 20 Oct 2016 22:19:28 +0000 (23:19 +0100)]
Don't `else' after return. Simplify control flow.
Ralph Corderoy [Thu, 20 Oct 2016 22:18:47 +0000 (23:18 +0100)]
Don't `else' after return. Simplify control flow.
Ralph Corderoy [Thu, 20 Oct 2016 22:16:32 +0000 (23:16 +0100)]
Don't `else' after return. Simplify control flow.
Ralph Corderoy [Thu, 20 Oct 2016 22:16:21 +0000 (23:16 +0100)]
Don't `else' after return. Simplify control flow.
Ralph Corderoy [Thu, 20 Oct 2016 22:15:53 +0000 (23:15 +0100)]
Don't `else' after return. Simplify control flow.
Ralph Corderoy [Wed, 19 Oct 2016 23:43:52 +0000 (00:43 +0100)]
Hoist test of search string for NULL out of loop.
Ken Hornstein [Thu, 20 Oct 2016 17:37:29 +0000 (13:37 -0400)]
Rototill credentials code so that we only prompt for the username and
password when it is necessary.
David Levine [Wed, 19 Oct 2016 23:53:42 +0000 (19:53 -0400)]
Added locale profile component, value is passed to nmh_init().
David Levine [Wed, 19 Oct 2016 19:00:56 +0000 (15:00 -0400)]
Pass CFLAGS to make distcheck via DISTCHECK_CONFIGURE_FLAGS.
Ralph Corderoy [Wed, 19 Oct 2016 23:32:37 +0000 (00:32 +0100)]
Replace sizeof string constant - 1 with LEN().
Ralph Corderoy [Wed, 19 Oct 2016 23:32:30 +0000 (00:32 +0100)]
Replace sizeof string constant - 1 with LEN().
Ralph Corderoy [Wed, 19 Oct 2016 23:24:20 +0000 (00:24 +0100)]
Replace strlen(), malloc(), and sprintf() with concat().
Ralph Corderoy [Wed, 19 Oct 2016 23:09:47 +0000 (00:09 +0100)]
Use LEN() on string constants instead of strlen().
Ralph Corderoy [Wed, 19 Oct 2016 23:09:47 +0000 (00:09 +0100)]
Use LEN() on string constants instead of strlen().
Ralph Corderoy [Wed, 19 Oct 2016 23:09:47 +0000 (00:09 +0100)]
Use LEN() on string constants instead of strlen().
Ralph Corderoy [Wed, 19 Oct 2016 23:08:50 +0000 (00:08 +0100)]
Add LEN(s) definition.
LEN gives the strlen() of string constant s, excluding the
terminating NUL.
Ralph Corderoy [Wed, 19 Oct 2016 23:02:14 +0000 (00:02 +0100)]
Put, rather than print, single characters.
Ralph Corderoy [Wed, 19 Oct 2016 23:02:14 +0000 (00:02 +0100)]
Put, rather than print, single characters.
Ralph Corderoy [Wed, 19 Oct 2016 23:02:14 +0000 (00:02 +0100)]
Put, rather than print, single characters.
Ralph Corderoy [Wed, 19 Oct 2016 23:02:14 +0000 (00:02 +0100)]
Put, rather than print, single characters.
Ralph Corderoy [Wed, 19 Oct 2016 23:02:14 +0000 (00:02 +0100)]
Put, rather than print, single characters.
Ralph Corderoy [Wed, 19 Oct 2016 23:02:14 +0000 (00:02 +0100)]
Put, rather than print, single characters.
Ralph Corderoy [Wed, 19 Oct 2016 23:02:14 +0000 (00:02 +0100)]
Put, rather than print, single characters.
Ralph Corderoy [Wed, 19 Oct 2016 23:02:14 +0000 (00:02 +0100)]
Put, rather than print, single characters.
Ralph Corderoy [Wed, 19 Oct 2016 23:02:14 +0000 (00:02 +0100)]
Put, rather than print, single characters.
Ralph Corderoy [Wed, 19 Oct 2016 22:38:04 +0000 (23:38 +0100)]
Put, rather than print, single characters.
Ralph Corderoy [Wed, 19 Oct 2016 22:38:04 +0000 (23:38 +0100)]
Put, rather than print, single characters.
Ralph Corderoy [Wed, 19 Oct 2016 22:38:04 +0000 (23:38 +0100)]
Put, rather than print, single characters.
Ralph Corderoy [Wed, 19 Oct 2016 22:27:13 +0000 (23:27 +0100)]
Replace `(char *)0' et al with `NULL'.
None of them are vararg parameters.
Ralph Corderoy [Wed, 19 Oct 2016 22:27:13 +0000 (23:27 +0100)]
Replace `(char *)0' et al with `NULL'.
None of them are vararg parameters.
Ralph Corderoy [Wed, 19 Oct 2016 22:27:13 +0000 (23:27 +0100)]
Replace `(char *)0' et al with `NULL'.
None of them are vararg parameters.
Ralph Corderoy [Wed, 19 Oct 2016 22:27:13 +0000 (23:27 +0100)]
Replace `(char *)0' et al with `NULL'.
None of them are vararg parameters.
Ralph Corderoy [Wed, 19 Oct 2016 22:27:13 +0000 (23:27 +0100)]
Replace `(char *)0' et al with `NULL'.
None of them are vararg parameters.
Ralph Corderoy [Wed, 19 Oct 2016 22:27:12 +0000 (23:27 +0100)]
Replace `(char *)0' et al with `NULL'.
None of them are vararg parameters.
Ralph Corderoy [Wed, 19 Oct 2016 22:27:12 +0000 (23:27 +0100)]
Replace `(char *)0' et al with `NULL'.
None of them are vararg parameters.
Ralph Corderoy [Wed, 19 Oct 2016 22:27:12 +0000 (23:27 +0100)]
Replace `(char *)0' et al with `NULL'.
None of them are vararg parameters.
Ralph Corderoy [Wed, 19 Oct 2016 22:27:12 +0000 (23:27 +0100)]
Replace `(char *)0' et al with `NULL'.
None of them are vararg parameters.
Ralph Corderoy [Wed, 19 Oct 2016 22:27:12 +0000 (23:27 +0100)]
Replace `(char *)0' et al with `NULL'.
None of them are vararg parameters.
Ralph Corderoy [Wed, 19 Oct 2016 22:27:12 +0000 (23:27 +0100)]
Replace `(char *)0' et al with `NULL'.
None of them are vararg parameters.
Ralph Corderoy [Wed, 19 Oct 2016 22:27:12 +0000 (23:27 +0100)]
Replace `(char *)0' et al with `NULL'.
None of them are vararg parameters.
Ralph Corderoy [Wed, 19 Oct 2016 22:27:12 +0000 (23:27 +0100)]
Replace `(char *)0' et al with `NULL'.
None of them are vararg parameters.
Ralph Corderoy [Wed, 19 Oct 2016 22:27:12 +0000 (23:27 +0100)]
Replace `(char *)0' et al with `NULL'.
None of them are vararg parameters.
Ralph Corderoy [Wed, 19 Oct 2016 22:27:12 +0000 (23:27 +0100)]
Replace `(char *)0' et al with `NULL'.
None of them are vararg parameters.
Ralph Corderoy [Wed, 19 Oct 2016 18:18:48 +0000 (19:18 +0100)]
Replace strlen(), malloc(), and sprintf() with concat().
Ralph Corderoy [Wed, 19 Oct 2016 17:47:30 +0000 (18:47 +0100)]
Replace sprintf() with strcpy(); it's no worse.
Ralph Corderoy [Wed, 19 Oct 2016 17:47:04 +0000 (18:47 +0100)]
Replace sprintf() with strcpy(); it's no worse.
Ralph Corderoy [Wed, 19 Oct 2016 17:44:58 +0000 (18:44 +0100)]
Add comment describing concat().
Ralph Corderoy [Wed, 19 Oct 2016 17:30:41 +0000 (18:30 +0100)]
Use the imperfect snprintf(3) instead of sprintf(3).
Ralph Corderoy [Wed, 19 Oct 2016 17:29:56 +0000 (18:29 +0100)]
Use the imperfect snprintf(3) instead of sprintf(3).
Ralph Corderoy [Wed, 19 Oct 2016 17:29:43 +0000 (18:29 +0100)]
Use the imperfect snprintf(3) instead of sprintf(3).
Ralph Corderoy [Wed, 19 Oct 2016 17:29:18 +0000 (18:29 +0100)]
Use the imperfect snprintf(3) instead of sprintf(3).
Ralph Corderoy [Wed, 19 Oct 2016 17:13:10 +0000 (18:13 +0100)]
Add EndsWithC(char *s, int c) and call it in some initial places.
EndsWithC returns true if non-NULL string s ends with a c before the
terminating NUL.
Ralph Corderoy [Wed, 19 Oct 2016 16:52:44 +0000 (17:52 +0100)]
Add stdbool.h plus fallback to h/nmh.h.
Change h/mh.h's FALSE and TRUE to use stdbool.h's. In time, everything
can switch over and FALSE and TRUE can go. Delete some local
re-definitions of FALSE and TRUE.
Ralph Corderoy [Wed, 19 Oct 2016 15:34:05 +0000 (16:34 +0100)]
Fix ruserpass() to not assume `\n' present before trimming.
David Levine [Wed, 19 Oct 2016 16:09:37 +0000 (12:09 -0400)]
Removed remaining relics of generated ctypoe-checked.[hc].
Ralph Corderoy [Wed, 19 Oct 2016 14:43:12 +0000 (15:43 +0100)]
Alter ctype-checked to handle EOF and be hand-written.
Along the way, replace the code generation with code that punts the work
onto the stdlib's C functions, needing only a single `identity' array
for all the macros. A mkdir needed to be added in Makefile.am because
otherwise etc didn't exist in a distcheck and attempting to redirect
stdout to a file in etc failed. I'm not happy that's the best automake
way to achieve this, i.e. what if another rule attempts to create in etc
first?
Ralph Corderoy [Wed, 19 Oct 2016 13:39:53 +0000 (14:39 +0100)]
Remove ./configure's --enable-debug support; it did nothing.
David on nmh-workers said "that looks like a relic that can be removed".
Ralph Corderoy [Wed, 19 Oct 2016 12:04:12 +0000 (13:04 +0100)]
Don't recurse in advertise() on writev(2) error, just write(2).
Some errors, e.g. EPIPE, cause the advise()'s call to another
advertise() to fail again, ad segvinitum when stack busts. Instead,
snprintf(3) and write(2) that single string, ignoring any error.