Commit Graph

1154 Commits (master)
 

Author SHA1 Message Date
Leah Neukirchen 2b517f97c0 msed: match header names case insensitively
Found by skarnet.
3 years ago
Leah Neukirchen c4008e43d9 mexport: use UTC timestamp in the postmark line 3 years ago
Leah Neukirchen ce900601cb mexport: default timestamp to unix second 0, not -1
This is better recognizable as "no data".
3 years ago
Leah Neukirchen 41c681362d NEWS.md: update 3 years ago
Leah Neukirchen 8ba44643e4 t/1900-mdeliver.t: add test for malformed mboxes 3 years ago
Leah Neukirchen 669af4ffca mdeliver: ignore last empty line of mbox entries
https://www.loc.gov/preservation/digital/formats/fdd/fdd000383.shtml
> Each message is immediately prefaced by a separation line and
> terminated by an empty line.

Bug discovered by skarnet.

Fixes #207.
3 years ago
Leah Neukirchen 7d04932813 mexport: ensure mbox entries are separated by an empty line
https://www.loc.gov/preservation/digital/formats/fdd/fdd000383.shtml
> Each message is immediately prefaced by a separation line and
> terminated by an empty line.

Bug discovered by skarnet.
3 years ago
Leah Neukirchen 5b52110399 mmime: do not duplicate Content* headers
Do not add additional Content-Type and Content-Transfer-Encoding headers
when using mmime on input already containing them.

Do not reencode the message if Content-Transfer-Encoding is set.

Based on a patch by Felix Van der Jeugt and duncaen.
3 years ago
Leah Neukirchen 93e8a4a892 mcom: also read $VISUAL to find the editor
Closes #206.
3 years ago
Leah Neukirchen e8981b723d safe_u8putstr: add oneline mode that prints CR/LF as C0 sequences 3 years ago
Leah Neukirchen 709f8f1121 mdeliver.1: spelling 3 years ago
Leah Neukirchen 41cf6272a5 mdeliver.1: small tweaks 3 years ago
Leah Neukirchen ff7537f6a7 GNUmakefile: run tests without stdin connected to a terminal 3 years ago
Leah Neukirchen 741972a416 t/8000-mflag.t: fix when stdin is not a tty 3 years ago
Leah Neukirchen c2d497b139 t/6000-msort.t: fix when stdin is not a tty 3 years ago
Leah Neukirchen 2d6de31cd7 t/3000-magrep.t: fix when stdin is not a tty 3 years ago
Leah Neukirchen e96f0707de mshow: show last part of multipart/mixed when none matched
This is in conformance with RFC 1341.
3 years ago
Leah Neukirchen 318ac214f1 mshow: add "-A all" to render all attachments
Closes #198.
3 years ago
nicoo 8e0d57425f Fix typo in NEWS
Closes: #199 [via git-merge-pr]
3 years ago
Leah Neukirchen 4fcb4ae0a4 NEWS.md: update for 1.1 3 years ago
codesoap 8ad63494bf mcom: do not match shebang in needs_multipart()
Avoids matching lines like '#!/usr/bin/env sh'.

Closes: #196 [via git-merge-pr]
3 years ago
Leah Neukirchen c525c0097e mmime: allow # in include lines, used to override the content-disposition 3 years ago
Leah Neukirchen f95439a988 rfc2045: blaze822_multipart: parse rest when boundary is missing
Either the mail got truncated or was wrongly generated, try to go on
by taking the remains of the buffer as part.
3 years ago
James Rowe bc021c53b6 Allow gpg and gpg2 executables for gnupg interaction
Closes: #193 [via git-merge-pr]
3 years ago
Leah Neukirchen 6a8543e321 rfc2045: mymemmemnl: make more check idiomatic 4 years ago
Leah Neukirchen c43538fae9 rfc2045: fix overread in blaze822_mime_parameter
This triggered an invalid read in strchr on 'Content-Type: text/html; '
4 years ago
Leah Neukirchen 5167bbfe39 rfc2045: ensure mime boundaries end with a newline or - 4 years ago
Leah Neukirchen 5e6151e3bf mcom: detect and report mmime errors
Closes #191.
4 years ago
Leah Neukirchen 48c20b7efa mmime: propagate errors when attaching a file fails 4 years ago
nicoo a825b4f8f4 Fix typo in NEWS
Closes: #190 [via git-merge-pr]
4 years ago
Leah Neukirchen b076d09f3a add contrib/mmailto
Closes #189.

This does not work with terminal emulators that don't use -e or
properly support arbitrary arguments after it.  Here's a nickel,
get yourself a proper terminal emulator.
4 years ago
James Rowe 5d8f070e26 contrib/_mblaze: silence mseq errors
On the first run or if you manually delete your sequence file, mseq
errors will break your prompt when you hit tab.

Closes: #188 [via git-merge-pr]
4 years ago
Leah Neukirchen 4d566a6afe t/7000-mseq.t: use printf for robustness 4 years ago
James Rowe 0180f649d2 mcom: allow tilde prefixed path for profile's outbox setting
Closes: #187 [via git-merge-pr]
4 years ago
Michael Forney 02e4cf4001 mpick: use function pointer type for callback
Though POSIX requires this conversion to work correctly (for dlsym),
it is not valid in ISO C, so it is better to just uses the appropriate
function pointer type.

Closes: #185 [via git-merge-pr]
4 years ago
Michael Forney 50dfdf5605 include strings.h for str(n)casecmp
These POSIX functions are declared in strings.h, so include this
header explicitly instead of relying on the libc's default feature-test
macros to include it through string.h.
4 years ago
Leah Neukirchen d2621a715b README: update 4 years ago
Leah Neukirchen 2c8acab338 NEWS.md: update for 1.0 4 years ago
Leah Neukirchen 07ee45cf31 mgenmid: fix pledge, needs dns
Found by lhynes.
4 years ago
Leah Neukirchen ccceb10908 mpick: relax pledge for redirects
This allows mpick to create files and run popen.
In the future, we can only pledge this if these features are actually used.
4 years ago
Tim Kuijsten 4763032430 pledge(2) all programs
All programs except mshow have a very tight set of promises. mshow
has a broad set of promises and might be a good future candidate
to further restrict using unveil(2).

This patch is based on commit 0300a112 by Alex Holst (dated
2017-12-07), which was proposed in GH PR #79.

* pledged mpick, mflow and mdate so that now all programs are pledged
* removed some unneeded promises and added some missing promises
* move err.h include and OpenBSD ifdef into a new xpledge.h
* cleaned up code aligning and whitespace

Closes: #179 [via git-merge-pr]
4 years ago
Leah Neukirchen 6bd687bfdc mmime: allow ; and =, for ";charset=" 4 years ago
Leah Neukirchen 1e9f6cd06b t/7000-mseq.t: add test for 74857db19 4 years ago
Leah Neukirchen 6649576fda t/5000-mscan.t: typo 4 years ago
Leah Neukirchen 74857db199 mseq: reinitialize iter for each command line argument
Fixes #181.
4 years ago
Leah Neukirchen 32b5837bfd t/5000-mscan.t: add test for b41d2ef 4 years ago
Leah Neukirchen b41d2efa40 seq: blaze822_loop: reinitialize iter for each command line argument 4 years ago
Leah Neukirchen 92bb41fa73 msort: order: remove dead assignment
Found by scan-build/clang 10.0.0
4 years ago
Leah Neukirchen b2a6e3dcc0 seq: blaze822_seq_load: remove dead assignment
Found by scan-build/clang 10.0.0
4 years ago
Jeremy Bobbin 3f61249c05 seq: fix infinite loop when selecting thread of orphaned message
printf ' a\n' | mseq -S
mseq .=

Closes: #180 [via git-merge-pr]
4 years ago