Re: mysterious c0 80

2024-01-04 Thread Michael Richardson

David Levine  wrote:
>> nmh shouldn't comp(1) a new email today with a NUL in the body, but it
>> should be able to read and show(1) one.

> I'm thinking of removing the support in post(8) for sending NULs.  Any
> disagreement?  It's not a lot of code so could be easily restored in the
> future if conditions change.

Does that mean an error, or does that mean just skipping it?

I'm fine with skipping the NUL, but I'll live with the error; I'll just have
to fix my end :-)





signature.asc
Description: PGP signature


Re: mysterious c0 80

2024-01-02 Thread Michael Richardson

Ken Hornstein  wrote:
> However, it seems like Mike's problem is NOT that; the last two bytes of
> his draft file are 00 a0.  Cy's bug report said that can happen anywhere,
> though.

!

> I know this change was to handle NUL bytes in outgoing messages, but I am
> wondering if maybe we should reject such drafts?  Seems like any message
> actually sent with a NUL in it would be rather unfriendly.  That might
> break things for people using MH-E, though, and as we've seen before that
> has a very long release cycle.

yeah, it's not so much that it does not get releases, as people do not
install them often.

This break, if it has a good/clear error would get fixed, I think.




signature.asc
Description: PGP signature


Re: mysterious c0 80

2024-01-02 Thread Michael Richardson

Ralph Corderoy  wrote:
> Hi,

> Ken wrote:
>> ...draft file does NOT contain a '\n' as the last character?  My
>> memory is that for some strange reason Emacs like to default to doing
>> that.  I suspect we do not test for that.

> A POSIX text file is zero or more lines where a line is zero or more
> bytes terminated by '\n'.

Sure. Why mh-e/emacs would wind up writing a nul in there is a mystery, but
at least it's a mystery that I can track down to the right place.

> We shouldn't pander to alien ‘text’ editors and their non-text files.

:-)

This email does not have a nul in it.
Maybe it will after I sign it.



signature.asc
Description: PGP signature


Re: mysterious c0 80

2024-01-02 Thread Michael Richardson

Ken Hornstein  wrote:
> Stupid question time: is it possible this bug is only triggered if the
> draft file does NOT contain a '\n' as the last character?  My memory is
> that for some strange reason Emacs like to default to doing that.  I 
suspect
> we do not test for that.

Could be.

hexdump of this draft folder before I hit send:

520 2074 6f66 2072 6874 7461 0a2e 430a 756f
530 646c 6220 2e65 0a0a 000a

Note 00 0a.





signature.asc
Description: PGP signature


Re: mysterious c0 80

2024-01-02 Thread Michael Richardson

Ken Hornstein  wrote:
>> It certainly includes that commit above.
>> I updated just last week before starting this thread actually.
>> Looking at my outbox, I think it did start when I upgraded.
>>
>> I tried "git revert  8f897f65", but it results in a bunch of conflicts, 
which
>> I decided not to investigate.

> Could you just do a 'git checkout 8f897f65^' and try that?

Done.  Using that in this email.

obiwan-[/sandel/src/nmh](2.6.6) mcr 10007 %mhparam -version
mhparam -- nmh-1.8+dev 1.8-RC1-29-g82b04d31 built 2024-01-02 13:37:27 + on 
obiwan

This starts to seem like it's a buffer overread and c0 80 just happens to be
consistent garbage.




signature.asc
Description: PGP signature


Re: mysterious c0 80

2024-01-01 Thread Michael Richardson

David Levine  wrote:
>> ===
>> All 101 tests passed
>> (19 tests were not run)
>> ===

> That's good.  Though I'm surprised that 19 tests weren't run.  That 
happens
> when nmh isn't configured with some options.  19 seems high to me.

could be.
It would be some library test, as I basically just --prefix=/sandel

>> I tried running "test/post/test-post-basic" manually, and it seemed to 
just
>> install stuff to test/testdir/inst, but I couldn't tell if it actually 
ran a
>> test.  Do I need some arguments to the test?

> No, the tests don't take arguments.  Some require helper programs.  To 
make
> sure those are built, it's best to run a single test this way:

> make check TESTS=test/post/test-post-basic

make[1]: Entering directory '/sandel/src/nmh'
PASS: test/post/test-post-basic
=
1 test passed
=
make[1]: Leaving directory '/sandel/src/nmh'

In pretty green.



signature.asc
Description: PGP signature


Re: message-Id has localhost

2024-01-01 Thread Michael Richardson

Ken Hornstein  wrote:
> To Mike's question:

>> Can we just use "localname" from mts.conf?

> We COULD, it would just be wrong for some people.

Agreed, but it was the first place that I looked to fix things.

> That's the "local" hostname, and is used for a bunch of things INCLUDING
> constructing the default hostname for email addresses.  But here's a
> thought experiment: let's say you set it to 'gmail.com' because your
> email is hosted at gmail.  There's no way you could guarantee your
> Message-ID isn't going to be used by gmail.com already.  Yes, you could

I think that's reasonable, but is there actually anything anyone could do
here?  They really need to pick something else which is not gmail.com.

> things.  We could add another knob, but honestly I'd rather people just
> use 'random' if the existing logic doesn't work for you.

That's fair enough. I can live with random as well.

> Well, technically, it's constructing the Message-ID based on the value
> of the 'j' Sendmail macro, which is used for a ton of things; that macro
> value is configurable and in my limited sendmail experience you usually
> do explicitly configure it (I do not know what that defaults to).

Yes, exactly, I was going to quibble at your analysis, but it wasn't worth it.
All I'm saying is that gethostname() is probably better default than whatever
it was that you posted that canonicalized it.

--
]   Never tell me the odds! | ipv6 mesh networks [
]   Michael Richardson, Sandelman Software Works|IoT architect   [
] m...@sandelman.ca  http://www.sandelman.ca/|   ruby on rails[





signature.asc
Description: PGP signature


Re: mysterious c0 80

2024-01-01 Thread Michael Richardson

David Levine  wrote:
>> >> What version of nmh are you using?  There was a recent bug reported
>> >> by Cy Schubert that may be the cause of this:
>> >>
>> >>   http://savannah.nongnu.org/bugs/?65002
>> >
>> >Interesting.  Can anyone replicate this bug?  Michael, are you running
>> >on FreeBSD or something else?
>>
>> I haven't tried yet; it was on my list to look at.

> test/post/test-post-basic should catch it.

I tried make check.

===
All 101 tests passed
(19 tests were not run)
===

I tried running "test/post/test-post-basic" manually, and it seemed to just
install stuff to test/testdir/inst, but I couldn't tell if it actually ran a
test.  Do I need some arguments to the test?





signature.asc
Description: PGP signature


Re: mysterious c0 80

2024-01-01 Thread Michael Richardson
David Levine  wrote:
> Interesting.  Can anyone replicate this bug?  Michael, are you running
> on FreeBSD or something else?

Linux "debian 12" (actually systemd-free devuan 4).





Re: mysterious c0 80

2024-01-01 Thread Michael Richardson

David Levine  wrote:
> Ken wrote:

>> What version of nmh are you using?  There was a recent bug reported
>> by Cy Schubert that may be the cause of this:
>>
>> http://savannah.nongnu.org/bugs/?65002

savannah keeps saying that I didn't pick a group, even after logging and
going to the nmh bug list.  I can't seem to even copy the stupid summary with
that commit id... 8f897f65.

> Interesting.  Can anyone replicate this bug?  Michael, are you running
> on FreeBSD or something else?

I am presently running 1.8+dev, commit
fefdea3fd1b29686418df45063854ed2e3880488 which is Dec.3 origin/master.
(Your commit)
It certainly includes that commit above.
I updated just last week before starting this thread actually.
Looking at my outbox, I think it did start when I upgraded.

I tried "git revert  8f897f65", but it results in a bunch of conflicts, which
I decided not to investigate.




signature.asc
Description: PGP signature


Re: mysterious c0 80

2023-12-31 Thread Michael Richardson

Ralph Corderoy  wrote:
>> buffer and draft files, right?

> If they're not hiding it from you to be helpful.

> Try

> LC_ALL=C sed -n $'/[^\t -~]/l' foo bar ...

> to see if there is any output for files foo, bar, ...

And to confirm this works:

obiwan-[~/Mail](2.6.6) mcr 10038 %LC_ALL=C sed -n $'/[^\t -~]/l' inbox/244
\300\200\300\200\300\200\300\200\300\200\300\200\300\200\300\200$

where 244 was a message from me.




signature.asc
Description: PGP signature


Re: mysterious c0 80

2023-12-31 Thread Michael Richardson

Ralph Corderoy  wrote:
>> If it were in my template files, then it would show up in my emacs
>> buffer and draft files, right?

> If they're not hiding it from you to be helpful.

> Try

> LC_ALL=C sed -n $'/[^\t -~]/l' foo bar ...

> to see if there is any output for files foo, bar, ...

I used "hexdump -C * | grep c0" actually.
I tried your method too, and nothing in any of my components/template files.



signature.asc
Description: PGP signature


Re: message-Id has localhost

2023-12-31 Thread Michael Richardson

Ken Hornstein  wrote:
> Ralph has already noted that this message still has those bytes at the
> end, but I think there was a mh-e error as this message wasn't even
> clearsigned.  Instead this was at the top:

>> <#secure method=pgp mode=sign>

Yeah, that happens when I futz with the mh-e instructions too many times;
they wind up getting ignored.

> As a note I'm wondering what those bytes even are; they aren't valid
> UTF-8.

So the message which I replied to Ralph, I just sent with:
   send -draftfolder +drafts -draftmessage 9

(it was message 9 in drafts)

And it *did not* have the training stuff.
I also didn't append my signature, and there may be some other mh-e things
that didn't occur.  I looked at my .signature.* files, and I don't see the
garbage there.  It must be something inside emacs, I think.

I should replace send with something else and see.

--
]   Never tell me the odds! | ipv6 mesh networks [
]   Michael Richardson, Sandelman Software Works|IoT architect   [
] m...@sandelman.ca  http://www.sandelman.ca/|   ruby on rails[





signature.asc
Description: PGP signature


mysterious c0 80

2023-12-31 Thread Michael Richardson
Ralph Corderoy  wrote:
> The email I'm replying to:

> $ hd `mhpath .` | tail -3
> 1ac0  6e 73 74 65 61 64 2e 0a  0a 0a c0 80 c0 80 c0 80  
|nstead..|
> 1ad0  c0 80 c0 80 c0 80 c0 80  c0 80 0a 0a  ||
> 1adc
> $

> So perhaps look at your draft-template files in your `mhparam path`.

So it has nothing to with GPG creation.
It shows up in my outbox.
If it were in my template files, then it would show up in my emacs buffer and
draft files, right?  It does not.







Re: message-Id has localhost

2023-12-31 Thread Michael Richardson

Ken Hornstein  wrote:
>>> 4) Some people, for reasons I would classify as "vague", prefer to
>>> generate their Message-IDs locally so their saved copy of the
>>> message has the Message-ID in it.
>>
>> The reason you state seems precise rather than vague.

> I mean, that's not a reason in my thinking?  Like, WHY do people
> want that?  That's where things get vague when this came up before.

Because, when my message aren't getting through your spam filter, I can refer
to the message-Id from my outbox, as a thing you can grep your logs for.
(or have your ISP do that)

I've also had various ideas about making the message-ID cryptographically
strong such that I could recognize when message-ID were really made by me or
not.  This would help with identifying bounce messages which were really the
result of things I sent, vs things where I was impersonated. I think DKIM
makes this need obsolete.

> FWIW, I took a quick look at the MTAs Postfix and Sendmail; Postfix does
> not seem to have any Message-ID-specific configuration knobs, it hardcodes
> adding a Message-ID based on it's idea of the local hostname.  Sendmail,
> yes, it looks like you could change it if you really want to; it also
> defaults to something based on the local hostname.  I am personally
> skeptical that people actually configure this.

gethostname() is not the same as what you said we were doing, which takes a
trip through /etc/hosts.

> My personal feeling is that the people who (a) care about generating a
> local Message-ID, and (b) actually care WHAT appears right of the '@'
> either need to configure their system appropriately or write code to
> change nmh behavior.

I'm fine with that.  I think that gethostname() is enough.




signature.asc
Description: PGP signature


Re: message-Id has localhost

2023-12-31 Thread Michael Richardson
Ken Hornstein  wrote:
> 4) Some people, for reasons I would classify as "vague", prefer to 
generate
> their Message-IDs locally so their saved copy of the message has the
> Message-ID in it.

I imagine you are looking at a hostly image of me, which sort of fades
between higher dimensions :-)

> Message-ID locally the default nmh configuration is to try very
> hard to get the canonical name for the local system (which isn't
> necessarily the same as the user's email domain name, so we can't
> use the value of "localname").

Can we just use "localname" from mts.conf?




Re: message-Id has localhost

2023-12-30 Thread Michael Richardson


<#secure method=pgp mode=sign>

Ralph Corderoy  wrote:
> Of your three emails in this thread so far, two of them are MIME with a
> application/pgp-signature part.  Those two have some dodgy bytes after
> the PGP signature.  This caused some subscribers to the list to not see
> your email because their MTAs bounced it.

Only two.  Weird.  I guess I failed to sign one of them?
(It's a manual keystroke for me)

1ae0  3d 2d 3d 2d 3d 2d 2d 0a  c0 80 c0 80 c0 80 c0 80  |=-=-=--.|
1af0  c0 80 c0 80 c0 80 c0 80  0a 0a|..|

So a line of c0 80, and then two line feeds.

Looking at my outbox, I also see that.

kA0Ds4QFHPC/gYUk/2r4dHM/4Qco5HTdB3rxvTDchkAM1BxEUq7Fog==
=b82+
-END PGP SIGNATURE-
--=-=-=--
^@^@^@^@^@^@^@^@

So it's me sending those bytes, not something in between adding them.
I'll investigate further.  I'm using mh-e and emacs-28.2
The upgrade from emacs-27 to -28 was not without incident... some problems
with bbdb byte code compiles eventually fixed with an emacslisp recompile.

I'm clearsigning this email instead.






Re: message-Id has localhost

2023-12-30 Thread Michael Richardson

Ken Hornstein  wrote:
>> 127.0.0.1 localhost obiwan.sandelman.ca obiwan
>>
>> which is often required for certain things work, but I don't remember
>> what now.  I'll change it see what breaks.  Is there any override?
>> Let's see this message.

> I see that worked.  There is not an override; if you use -messageid random
> you'll get a random set of characters as the hostname.  I'm personally
> reluctant to put yet another knob in nmh just for this.

I agree that no more knobs are needed.

Maybe strcmp(hostname,"localhost") should cause that value to be
ignored, and if necessary, resort to random messageid.  Or maybe that should
just be the default in some way.





signature.asc
Description: PGP signature


Re: message-Id has localhost

2023-12-29 Thread Michael Richardson

Michael Richardson  wrote:
> Let's see this message.

Message-ID: <23087.1703897...@obiwan.sandelman.ca>

yup.




signature.asc
Description: PGP signature


Re: message-Id has localhost

2023-12-29 Thread Michael Richardson
Ken Hornstein  wrote:
> That would be a nmh-style Message-ID; the first number is the process
> id of whatever generated that (probably post(8)), the second is a Unix
> timestamp.  Do you have -msgid set in your profile for send(1)?

Yes.
But, how to I get it to put in the hostname?
I want nmh-style message-IDs so that my outbox will have them.

>> I think that mts.conf ought to set this, but localname/localdomain do not
>> seem right, and they aren't set, so my hostname (which is correct, I 
think)
>> ought to be used.
>>
>> I'm running 1.7+dev ... NOPE.
>> I'm actually rather unsure how to get a --version out of NMH.

> I think pretty much anything takes a -version flag?

hmm. -version/-v. not --version. not -V. Silly me.

>> Still have @localhost in the message-id.

> From the code, that's calling LocalName(1).

> What that does is: getaddrinfo(gethostname(), AI_CANONNAME).  So maybe
> your resolver library canonicalizes your hostname to "localhost"?  If
> getaddrinfo() fails then it falls back to the value of gethostname().

yes. that's it.

127.0.0.1   localhost   obiwan.sandelman.ca obiwan

which is often required for certain things work, but I don't remember what
now.  I'll change it see what breaks.  Is there any override?
Let's see this message.

--
]       Never tell me the odds! | ipv6 mesh networks [
]   Michael Richardson, Sandelman Software Works|IoT architect   [
] m...@sandelman.ca  http://www.sandelman.ca/|   ruby on rails[






message-Id has localhost

2023-12-29 Thread Michael Richardson

I noticed that my emails have stuff like:
Message-ID: <25170.1703892488@localhost>

rather than my hostname or domain name.
Since it's like this in my outgoing folder, it must be generated by NMH
rather than by my local postfix.

I think that mts.conf ought to set this, but localname/localdomain do not
seem right, and they aren't set, so my hostname (which is correct, I think)
ought to be used.

I'm running 1.7+dev ... NOPE.
I'm actually rather unsure how to get a --version out of NMH.
Probably time for a git pull, recompile anyway.
Now running Dec. 3, 2023: fefdea3fd1b29686418df45063854ed2e3880488
1.8+dev.

Still have @localhost in the message-id.




signature.asc
Description: PGP signature


Re: graphical mail reader for one-off use

2023-07-13 Thread Michael Richardson

Paul Fox  wrote:
> Once in a while my wife or I (both MH users) get an email that really
> can't be handled directly by MH.  Today's example looks like this:

Me too.

> For these (relatively rare, thankfully, for us) cases, I'd love to be
> able to take an entire message, as received and saved by MH, and look
> at it with a modern reader (Thunderbird/Evolution/whatever).  I'd
> rather not have to forward or dist the mail to a separate account
> (which can easily add another layer of wrapper to the mail -- I'd love
> to do:

My holy grail solution for this (mostly driven by calendaring) is that I'd
really like a local IMAP server on top of my ~/Mail/inbox.  That would be my
ideal.
(While I have a variety of IMAP capable sources, and I point my phone at some
of them, I don't keep email on the server)

I keep thinking I'll ffi wrap our libnmh library for use in GO or Rust, as
there are a few nice IMAP servers written in these modern languages, but I
doubt I'll ever get this.   My ability to get into code writing focus has
rapidly declined, and I'm really frustrated by this.

> $ modern-mail-reader $(mhpath cur)

> and have it pop up a window on the message.
> Is this a practical wish?

packf to produce an MBOX, and then let Thunderbird see that as your inbox for
local Unix "movemail", but I don't really have that automated.





signature.asc
Description: PGP signature


Re: Unsupported nroff macros on MacOS X

2023-04-03 Thread Michael Richardson

Ken Hornstein  wrote:
>> Sorry if I jumped into the middle and missed something, but what about
>> using this to convert once?
>>
>> groff -Thtml

> I guess my next question is ... what do we do after that?

I thought if we ran it through with man (nroff/groff) to ascii, then we'd get
asciidoc format essentially.  At which point there are tools that deal with
further transformations.




signature.asc
Description: PGP signature


Re: mhl nocomponent

2023-04-02 Thread Michael Richardson

I use MH-E, which does it's header display/hiding outside of MH.
In general, I like to see extra headers, but they have gotten way out of hand
from the MS/Outlook space.
We probably need a better list of common "this is junk" header list that 
probably
has to have wildcards in it.




signature.asc
Description: PGP signature


Re: (Not-so) hypothetical question: What to do about NULs?

2023-02-23 Thread Michael Richardson
Ken Hornstein  wrote:
> Right, but that's mostly because of the way multiline responses are
> handled in POP.  It's never "read X bytes", it's "read lines until you
> get a line that is just .\r\n".  With IMAP, it's "the next X bytes are
> the data you asked for".  So you're used to dealing with "lines" and
> that lends itself to C strings.

I assumed that the nuls we are concerned about are either inside the base64,
when it's a text/*, or are in the binary transfer when it's not base64.




Re: (Not-so) hypothetical question: What to do about NULs?

2023-02-21 Thread Michael Richardson
Ken Hornstein  wrote:
> I'm sitting down to write or modify nmh code.  Right now we have a lot
> of code that assumes NUL-terminated C strings are safe to represent
> email everywhere.  My question is: is that a valid assumption?  If
> we are making that assumption, fine, let's be explicit and if someone
> DOES encounter a NUL in modern email, we tell them to suck it.

I think that this is the minimum that we must do.

> If we all agree that is NOT a valid assumption, then fine, going forward
> we should eventually fix that, or target new APIs that fix that.  If

>> The IETF "modern SMTP" stuff John Klensin is working on (with others) 
might
>> want to talk to that: a lot of the ICANN UA stuff is a push for UTF-8 
clean
>> across the board.

> I do not think this is relevant to this discussion, unless they are
> changing RFC 5322s position on NULs.

But, it seems like a question that IETF could clarify.

--
Michael Richardson. o O ( IPv6 IøT consulting )
   Sandelman Software Works Inc, Ottawa and Worldwide






signature.asc
Description: PGP signature


Re: nmh 1.8?

2023-01-02 Thread Michael Richardson


Ralph Corderoy  wrote:
> Hi Andy,

>> > Has anyone had a chance to review my proposed changes to inc to be >
>> able to handle long lines from POP sources?

> Is the latest in Git?  I see the ‘andy-long-line-patch’ at
> http://git.savannah.nongnu.org/cgit/nmh.git/refs/ with one commit:
> 
http://git.savannah.nongnu.org/cgit/nmh.git/commit/?h=andy-long-line-patch=08dffe5aba9563ff06e82d2a8e6a6d746223d10f

I pushed that in, and it's not the latest patch, I don't think.






Re: nmh setup on macos by newbie

2022-11-27 Thread Michael Richardson

roadie  wrote:
> so for now I use fetchmail to get the mail from 2 ISP's and procmail
> delivers to inbox (and the lists folders) and then mh reads from there
> and sends mail (which works fine with msmtp).

I have a mix.
I use:
  fetchmail --proto IMAP --mda "/home/mcr/bin/rcvstore -sequence xelerance
+inbox" --logfile /var/tmp/xelerance.log MAILHOST

with password info in ~/.netrc.

> Should I insist on getting inc to fetch from the remote host? Or is the
> fetchmail setup good enough? (considering that inc would have to fetch
> from 6 email accounts across those 2 domains.)

When it works, it's just fewer moving parts.

> ... it seems that inc does not see new mail that procmail 'delivered'
> into inbox - only when I us C-u M-x mh-rmail and choose the inbox
> folder with 'all' do I get to see all mails, including the unread ones.

F r is bound to mh-rescan-folder

which I think will just rescan your inbox.

> And right now after processing the mail, I have 4 mails that are left
> in the inbox folder (where they should be) but in Dired I can also see
> 153 other mails that have a comma prepended to their number filename
> and they are not in the mh-folder view of inbox ...

The comma files are deleted messages.  Your "trash"

> ... they seem to be the ghosts of the list emails that have been sorted
> by procmail into their mailinglistfolders? but they show in ls and have
> weight as in take space? Are they in both places - respective
> listfolder and inbox?

It just so that you can undelete email.
Once you have another message 11, which you delete, then you get a new ,11,
and the old one is gone.



signature.asc
Description: PGP signature


Re: inc and non-compliant long lines redux

2022-11-10 Thread Michael Richardson
Michael Richardson  wrote:
> I rebuilt nmh on my new laptop, and then tried to apply Andy's patch.
> I have pushed it to:
> https://www.sandelman.ca/tmp/nmh/.git branch: andy-long-line-patch
> (I don't have push permission on savannah that I know of)

I figured out how to push to savannah.
https://git.savannah.nongnu.org/cgit/nmh.git/log/?h=andy-long-line-patch




Re: inc and non-compliant long lines redux

2022-11-10 Thread Michael Richardson

I rebuilt nmh on my new laptop, and then tried to apply Andy's patch.
I have pushed it to:
  https://www.sandelman.ca/tmp/nmh/.git branch: andy-long-line-patch
  (I don't have push permission on savannah that I know of)

It did not apply cleanly on master:

1 out of 3 hunks FAILED -- saving rejects to file mts/smtp/smtp.c.rej
1 out of 3 hunks FAILED -- saving rejects to file sbr/netsec.c.rej
2 out of 2 hunks FAILED -- saving rejects to file uip/inc.c.rej
6 out of 12 hunks FAILED -- saving rejects to file uip/popsbr.c.rej

The inc.c changes look deeper due to much context change, and should be
reviewed to see if I got them right:

And, I was unable to insert:

@@ -515,10 +516,12 @@
strncpy (response, buffer, sizeof(response));
netsec_set_snoop(nsc, snoopstate);
return OK;

case OK:
+   if (seenhdr != TRUE && strnlen(response,sizeof(response)) == 0)
+   seenhdr = TRUE;
(*action) (response);
break;
}
 }

as the code is no longer a switch/case statement, and I wasn't even sure I
was in the right place.

Not sure where TRUE/FALSE is supposed to be declared, but that didn't compile.

There may also be trailing whitespace errors.


signature.asc
Description: PGP signature


Re: does anyone use nmh's Google OAuth mechanism?

2022-09-08 Thread Michael Richardson
David Levine  wrote:
> If you use nmh's mhlogin(1) to login to Gmail, then you use nmh's
> Google OAuth mechanism.  Please let me know if you use it.

I try do, but I think that I fell back to fetchmail on my laptop.






Re: Export/sync nmh folders to IMAP server

2022-06-29 Thread Michael Richardson

Ken Hornstein  wrote:
> I am continually confused why anyone thinks Maildir is a good idea for
> mailbox storage; I think it is fine for a _maildrop_ (since that was
> it's intended purpose), but every time I've seen it used as a backend

I'm not arguing with you.
I just want to duct tape together a few hockey sticks and go toboganing.

> Also, I thought cyrus-imapd uses it's own internal backend for mail
> storage and Maildir isn't one of them.  Looks like the list of storage
> types is here:

> 
https://www.cyrusimap.org/imap/concepts/deployment/databases.html#storage-types

> You might be thinking of Dovecot which _does_ use Maildir as a backend
> storage, but my understanding is that Dovecot has the filename metadata
> problem mentioned above.

Oh. Mumble. Yeah. that one :-)




signature.asc
Description: PGP signature


Re: Export/sync nmh folders to IMAP server

2022-06-29 Thread Michael Richardson

Thank you for the links.

I can see that netoric is useful for synchronizing my MH inbox so that I can
get at it from my phone.  Right now, my phone can see my inbox until I run
"inc", and then it leaves my mail server...

I guess I will try the Maildir hard links script with
cyrus-imapd for providing access to the 6G of mail on my desktop.
I'm okay that it would be read-only... it's probably a feature.

A killer-app for me is being able to run Thunderbird on my desktop to point
at the same (MH) inbox as Emacs, so that I can:
  a) get better HTML rendering when I need it
  b) import calendar entries

About (b), I've tried some of the gcal interfaces (within Emacs and without)
and they haven't been to my liking, haven't been compatible enough.
I typically just bounce stuff to my gmail account, but I'd really like to
stop using Google calendar.  (Feel free to organize an intervention)

(while I use cyrus-imapd on my mail server, I could run something different
on my mail archive machine.  I keep thinking I should write a single-user
IMAP server in GO or Rust... )

--
]   Never tell me the odds! | ipv6 mesh networks [
]   Michael Richardson, Sandelman Software Works| network architect  [
] m...@sandelman.ca  http://www.sandelman.ca/|   ruby on rails[




signature.asc
Description: PGP signature


Re: merge pick and scan

2022-04-22 Thread Michael Richardson

Eric Gillespie  wrote:
> I guess no one has network-mounted home directories anymore.  I don't.

Well, I do.
I wish I had home directories over disconnected AFS, but that never happened
for me.

...
> I definitely plan to resurrect that patch soon because... Guess another
> case where having scan repeat pick's expensive work comes into play.
> Yep, it's over there on that imap-prototype branch.

I was just thinking about that.



signature.asc
Description: PGP signature


Re: Experimental IMAP branch

2022-02-13 Thread Michael Richardson

Eric Gillespie  wrote:
> And I guess I also omitted that you need to configure with
> --enable-experimental-imap-folder-manager as this is all off
> by default.

Got it.

>> make
>> saw some .rs stuff go bye... error...

> You shouldn't have seen any unless you ran 'make cargo'.

I was just saying that I saw some stuff about .rs files in the configure,
confirming that I'm on the right branch...

> Since you missed the flag to configure, this suggests my
> non-experimental build has bitrotted.  I intend for a clean build
> when the flag is off.  Not sure when I last tested that.  Sorry.

Yup, that worked.
I'll need to figure out how to use this now...

--
]   Never tell me the odds!     | ipv6 mesh networks [
]   Michael Richardson, Sandelman Software Works|IoT architect   [
] m...@sandelman.ca  http://www.sandelman.ca/|   ruby on rails[





signature.asc
Description: PGP signature


Re: Experimental IMAP branch

2022-02-12 Thread Michael Richardson

Eric Gillespie  wrote:
> Since Rust allows transparent calls into C, we can seamlessly embed Rust 
into
> nmh programs.  Why not give it a shot?

I'm also a C->Rust enthusiast.

My IMAP goals are different from yours:  I want my 3G of MH archives to be
accessible over IMAP.  No IMAP server with recent activity supports MH
folders correctly.

But, I could live with just my inbox hierarchy being on IMAP server and
accessible from multiple places for now.

> Thanks, and happy hacking!

is it in imap-prototype branch then?

./configure
make
saw some .rs stuff go bye... error...

make distclean, try again  nope:

sbr/folder_manager_client.c:1291:1: error: conflicting types for 
‘mh_folder_manager_connect’
 mh_folder_manager_connect(
 ^
In file included from sbr/folder_manager_client.c:21:
./h/managed_folders.h:52:1: note: previous declaration of 
‘mh_folder_manager_connect’ was here
 mh_folder_manager_connect(mh_managed_folder *);
 ^

git says I'm at:
commit da91fd0d7636915ae6986921a6829559d5821d55 (HEAD -> imap-prototype, 
origin/imap-prototype)
Author: Eric Gillespie 
Date:   Fri Feb 11 21:34:46 2022 -0600

Start experimental IMAP folder manager.


--
]   Never tell me the odds! | ipv6 mesh networks [
]   Michael Richardson, Sandelman Software Works|IoT architect   [
] m...@sandelman.ca  http://www.sandelman.ca/|   ruby on rails[



signature.asc
Description: PGP signature


Re: Sharding by Year.

2021-06-08 Thread Michael Richardson
Bakul Shah  wrote:
> On Jun 7, 2021, at 9:05 AM, Michael Richardson  wrote:
>>
>> Well, it's outgoing email, so it's all mine, so it's all in my time zone.
>>
>> On Jan. 1, I do:
>> refile -src +outgoing all +outgoing/y2020
>>
>> well, I often forget Jan. so, "all" might be adjusted having run "scan"
>>
>> It would be nice to be able to treat these folders a single folder for
>> certain operations.

> You can use refile -link to year specific folders!

But that results in large directories with poor performance.




Re: Very large folderTo:

2021-06-07 Thread Michael Richardson

Ken Hornstein  wrote:
>> I rather wish that NMH would take a "Path" to be...
>> well..  $PATH-like thing, such that I could move folders to an archive
>> machine, with NMH being aware that they are elsewhere.

> You're allowed to give an absolute path as a folder name.  E.g., you could
> do something like:

> % scan +/ssw/users/mcr/Mail/outgoing/y2001 last:50

Yes, I do that, for sure.

> Or whatever, and that will be the current folder.  You can also push
> them on the folder stack.  If you want them to show up when you do
> "folders", that's harder.

I don't know what the folder stack is.
I want them to show up when I do "folders --historical" or something like
that.  I also imagine being able to send the compute commands involved to the
machine with the disks, and...
  I had just assumed we'd all have our own storage robots by now.

--
]   Never tell me the odds! | ipv6 mesh networks [
]   Michael Richardson, Sandelman Software Works|IoT architect   [
] m...@sandelman.ca  http://www.sandelman.ca/|   ruby on rails[




signature.asc
Description: PGP signature


Re: Sharding by Year.

2021-06-07 Thread Michael Richardson


Ralph Corderoy  wrote:
> Hi Michael

>> outgoing/y2001  has 1287 messages  (1-1287).
>> outgoing/y2002  has 9335 messages  (1-9335).
>> outgoing/y2003  has 3909 messages  (1-3909).

> Out of interest, how did you pick what's in each year?  Textually, with
> ‘2002’ appearing in the Date field.  Or as a year and if so was that
> local time, the sender's time, or UTC?  :-)

Well, it's outgoing email, so it's all mine, so it's all in my time zone.

On Jan. 1, I do:
  refile -src +outgoing all +outgoing/y2020

well, I often forget Jan. so, "all" might be adjusted having run "scan"

It would be nice to be able to treat these folders a single folder for
certain operations.

--
]   Never tell me the odds!     | ipv6 mesh networks [
]   Michael Richardson, Sandelman Software Works|IoT architect   [
] m...@sandelman.ca  http://www.sandelman.ca/|   ruby on rails[




Re: Very large folderTo:

2021-06-07 Thread Michael Richardson
Just FYI, I have...

obiwan-[~](2.6.6) mcr 10003 %folders +outgoing
FOLDER # MESSAGES  RANGE   ; CUR   (OTHERS)
outgoing+   has 2084 messages  (1-2094); cur=2084; (others).
outgoing/pgphas   73 messages  (1-  73);   (others).
outgoing/y2001  has 1287 messages  (1-1287).
outgoing/y2002  has 9335 messages  (1-9335); cur=1325.
outgoing/y2003  has 3909 messages  (1-3909).
outgoing/y2004  has 2764 messages  (1-2765); cur=2684.
outgoing/y2005  has 1039 messages  (1-1042); cur= 188.
outgoing/y2006  has 4219 messages  (1-4223); cur=4223.
outgoing/y2007  has 3885 messages  (1-3885).
outgoing/y2008  has 2662 messages  (1-2662); cur=1055.
outgoing/y2009  has 3392 messages  (1-3405); cur=1336.
outgoing/y2010  has 3833 messages  (1-3843); cur=3421.
outgoing/y2011  has 3254 messages  (1-3274); cur=2212.
outgoing/y2012  has 3229 messages  (1-3243); cur=3104.
outgoing/y2013  has 3737 messages  (1-3740); cur=3137.
outgoing/y2014  has 4442 messages  (1-4443); cur= 694.
outgoing/y2015  has 3976 messages  (1-3976); cur=3635.
outgoing/y2016  has 3671 messages  (1-3676); cur=1532.
outgoing/y2017  has 3857 messages  (1-3862); cur=2755.
outgoing/y2018  has 5176 messages  (1-5180); cur=4661.
outgoing/y2019  has 6191 messages  (1-6191); cur=4272.
outgoing/y2020  has 7413 messages  (1-7413); cur=6327.

(with a less organized system for before 2001).

With the following:

lrwxrwxrwx 1 mcr mcr 34 Jan 13  2013  y2001 -> 
/ssw/users/mcr/Mail/outgoing/y2001/
lrwxrwxrwx 1 mcr mcr 34 Jan 13  2013  y2002 -> 
/ssw/users/mcr/Mail/outgoing/y2002/
lrwxrwxrwx 1 mcr mcr 34 Jan 13  2013  y2003 -> 
/ssw/users/mcr/Mail/outgoing/y2003/
lrwxrwxrwx 1 mcr mcr 34 Jan 13  2013  y2004 -> 
/ssw/users/mcr/Mail/outgoing/y2004/
lrwxrwxrwx 1 mcr mcr 34 Jan 13  2013  y2005 -> 
/ssw/users/mcr/Mail/outgoing/y2005/
lrwxrwxrwx 1 mcr mcr 34 Jan 13  2013  y2006 -> 
/ssw/users/mcr/Mail/outgoing/y2006/
lrwxrwxrwx 1 mcr mcr 34 Jan 13  2013  y2007 -> 
/ssw/users/mcr/Mail/outgoing/y2007/
lrwxrwxrwx 1 mcr mcr 34 Jan 13  2013  y2008 -> 
/ssw/users/mcr/Mail/outgoing/y2008/
lrwxrwxrwx 1 mcr mcr 34 Jan 13  2013  y2009 -> 
/ssw/users/mcr/Mail/outgoing/y2009/
lrwxrwxrwx 1 mcr mcr 34 Sep 27  2019  y2010 -> 
/ssw/users/mcr/Mail/outgoing/y2010/
lrwxrwxrwx 1 mcr mcr 34 Sep 27  2019  y2011 -> 
/ssw/users/mcr/Mail/outgoing/y2011/
lrwxrwxrwx 1 mcr mcr 34 Sep 27  2019  y2012 -> 
/ssw/users/mcr/Mail/outgoing/y2012/
lrwxrwxrwx 1 mcr mcr 34 Sep 27  2019  y2013 -> 
/ssw/users/mcr/Mail/outgoing/y2013/
lrwxrwxrwx 1 mcr mcr 34 Sep 27  2019  y2014 -> 
/ssw/users/mcr/Mail/outgoing/y2014/
lrwxrwxrwx 1 mcr mcr 34 Sep 27  2019  y2015 -> 
/ssw/users/mcr/Mail/outgoing/y2015/

such that /ssw/users/mcr is an NFS mount from another machine with many more 
spindles.
I rather wish that NMH would take a "Path" to be... well..  $PATH-like thing,
such that I could move folders to an archive machine, with NMH being aware that 
they
are elsewhere.  Ideally, it could be told that they are even RO, burnt on DVD
or something like that.  One day we'll be able to put IMAP: urls in..

--
]   Never tell me the odds!     | ipv6 mesh networks [
]   Michael Richardson, Sandelman Software Works|IoT architect   [
] m...@sandelman.ca  http://www.sandelman.ca/|   ruby on rails[




Re: Message header formatting

2021-06-07 Thread Michael Richardson
Greg Minshall  wrote:
> fwiw, i'm up to 732 ignored components.  but, i'm happy adding them as

Wow. Please share :-)

> needed -- always the optimist that some day, some vital, otherwise
> un-acknowledged, header will show up in an e-mail i am viewing.

I feel the same way.






X/browser-based mime-types

2021-05-12 Thread Michael Richardson

Speaking about mhshow.

While I usually use mh-e, and it's internal html viewer, there are times when
it just fails, or I really want to use my regular browser.

I do this in .mh_profile via:
  mhshow-show-text/html: google-chrome '%f'

although sometimes the file goes missing before the browser can display it.
(It won't do that to me now that I try to reproduce it...)

But, I also login to my desktop from my laptop via ssh (and
X-forwarding-challenged mosh, sigh).  Has anyone come up with
version of "open this URL" (or open this file) that will talk through the
forwarded X connection, and get *that* browser to open the link,
rather than use some browser shortcut that opens it on the wrong desktop?

--
]   Never tell me the odds! | ipv6 mesh networks [
]   Michael Richardson, Sandelman Software Works|IoT architect   [
] m...@sandelman.ca  http://www.sandelman.ca/|   ruby on rails[




signature.asc
Description: PGP signature


Re: coming back to (N)mh after a 15 year hiatus..

2021-04-09 Thread Michael Richardson

George Michaelson  wrote:
> I'm trying to come back to nmh after 15 years in the wilderness of
> Mail.app and related.

What will you do for calendaring?
I moved to Google Calendar when I got a smartphone 10+ years ago, and I am
now very much unhappy with it.
I try to go back to Thunderbird/Lightning now and then, but discover that the
Google calendar plugins just don't work, and the whole thing seems to be very
slow.  I leave Thunderbird running under VNC connected to the IETF IMAP
server so that I can read archives when I need to. I leave it running so that
I don't have to take the hit of reading the billion emails in the IETF
archives.

I otherwise use mh-e + nmh for email.  When I get calendar stuff, I bound to
by gmail account, open the browser, and insert into calendar but the
interoperability of calendaring is on the wane, with Google doing the worst
job.  (I'd pay them if I could, but it seems that they won't let me buy
Google Calendar unless I also let them manage my DNS zone)

My ideal situation would still be an IMAP server running local serving my inbox.
Yes Ken... wouldn't IMAP be nice :-)
Well, actually, POP3 (leave email on server) would also work JUST FINE for my 
use case.

Then I'd point Thunderbird/Lightning to that and just click on the calendar
things.  I would then just have a WebDAV to store my calendar... I think that
my NextCloud (on my Freedombox) installation will do that just fine.

There are other solutions involving the gcalapi program that can read MH
files fine and interact with google calendar, but I haven't really figured
that part out.

--
]   Never tell me the odds! | ipv6 mesh networks [
]   Michael Richardson, Sandelman Software Works|IoT architect   [
] m...@sandelman.ca  http://www.sandelman.ca/|   ruby on rails[



signature.asc
Description: PGP signature


Re: Is nmh suitable for managing multiple email accounts?

2021-03-09 Thread Michael Richardson

Andy Bradford  wrote:
>> But that doesn't work anymore unless you control the DNS for all zones
>> in question, and can set up SPF correctly. (Mostly, that actually does
>> apply to me)

> As a counterpoint, I have never setup SPF and generally have no
> problems. I do, however, control the DNS.  As a counter counterpoint,
> however, not many people run their own email anymore. :-)

Since you control the DNS for your zones, then you have setup the empty SPF
record.  Without an SPF record, other systems will be less willing to accept
your email.

The problem with SPF records and local SMTP relays is when you have a google,
yahoo, etc. account.  Your SMTP relay will not be listed in their SPF record,
and so your emails *will* be marked as forgeries.





signature.asc
Description: PGP signature


Re: Is nmh suitable for managing multiple email accounts?

2021-03-07 Thread Michael Richardson

Tim Lee  wrote:
> Yes, that is correct.

>> I've been an MH user going on 33yrs.

> I'm curious: what did people commonly use for reading mail when MH was
> just invented? Was it the Unix "mail" program?

So, the complexity of multiple accounts has nothing to do with incoming
email.  The complexity is that since SPF records ~15 years ago, it now
important that you send email via the correct MTA.
Incoming email from multiple accounts is either run inc multiple times, or
use fetchmail, or set up .forward files (least disreable now due to spam 
filters).

Prior to that, you just used your local SMTP relay.
You put whatever made sense into the From: via some mechanism, and SMTP just 
coped.
(I've done this via replcomps at some point, where I picked the From to
always be whomever was involved.  If I was emailing j...@example.com, and I
was also m...@example.com, then I'd use that.  At some point, I think it
broke, and I never debugged it)

But that doesn't work anymore unless you control the DNS for all zones in
question, and can set up SPF correctly.  (Mostly, that actually does apply to 
me)

I'm sure that there is a way to configure postfix (or maybe exim) to punt to
different submit ports based upon From: value, but probably the best way is
to just use different nmh configurations.

> I understand that this ensures that the accounts stay separate, but
> managing multiple user accounts is not exactly light work. I guess the
> use of separate UNIX accounts may be appropriate for particular use
> cases, but I do not need such a strict separation at the moment.

I think it's probably excessive, given the desire to be able to do things
like click on links and have them open via X-windows in your browser.

I use mh-e.el, with Emacs, and I have a series of identies that I can pick
with the mouse, but mostly, I do via M-x ietf,or M-x credil, etc.
Happy to share all of that.

--
]   Never tell me the odds!         | ipv6 mesh networks [
]   Michael Richardson, Sandelman Software Works|IoT architect   [
] m...@sandelman.ca  http://www.sandelman.ca/|   ruby on rails[



signature.asc
Description: PGP signature


Re: sorting uniquely by message-id

2020-09-19 Thread Michael Richardson

spaceman  wrote:
> Michael Richardson wrote:
>>
>> Due to the way that IETF lists and aliases work, I often get two, three
>> sometimes four copies of an email.  I attach a mh-e view of a thread 
below.
>> I really want to just keep the copy that went through the list, because
>> that's the one that went into the public archive, and replies will work
>> better on that version.
>>

> I might be completely off the bat here, but wouldn’t something like
> formail (part of procmail) solve the probem of duplicates instead of
> trying to hack a system of perl.

Yes, assuming that it could operate over multiple days receiving email from a
variety of directions, and which arrive possibly through different mailboxes.
The direct emails can arrive long before the mailing list copy, or could be
delayed by spam/graylisting.

Generally, I wouldn't want to run this all the time, which procmail would force.

--
]   Never tell me the odds! | ipv6 mesh networks [
]   Michael Richardson, Sandelman Software Works|IoT architect   [
] m...@sandelman.ca  http://www.sandelman.ca/|   ruby on rails[



signature.asc
Description: PGP signature


sorting uniquely by message-id

2020-09-18 Thread Michael Richardson
d})%>' 
+inbox". "|");
while() {
chomp;
my($msgnum, $msgid, $listid) = split(/,/);

#print STDERR "processing: $_\n";
#print STDERR " -> $msgnum, $msgid, $listid\n";

if(defined($msgnum{$msgid})) { # it is a duplicate, see which one to keep.
#print "$msgnum seen $msgid before at ${msgnum{$msgid}}\n";

if(defined($msglist{$msgid})) { # keep the other one, delete this one!
#print "Keeping other one: $msgnum{$msgid} not $msgnum\n";
@todelete << $msgnum;
} else {
#print "Keeping  this one: $msgnum not $msgnum{$msgid}\n";
# delete the other one, keep this one.
$msglist{$msgid} = $listid;
push(@todelete, $msgnum{$msgid});
}
} else {
$msgnum{$msgid} = $msgnum;
}
}

print "rmm +inbox", join(" ", @todelete), "\n";


-- 
]   Never tell me the odds! | ipv6 mesh networks [ 
]   Michael Richardson, Sandelman Software Works| network architect  [ 
] m...@sandelman.ca  http://www.sandelman.ca/|   ruby on rails[ 



signature.asc
Description: PGP signature


Re: Has anyone looked at JMAP?

2020-09-03 Thread Michael Richardson

Ralph Corderoy  wrote:
> Take the closed-source API client.  How does it ‘make reasonable efforts
> to prevent and discourage other API Clients from using your
> credentials’?  It's not shipping source, but does embedding it somewhere
> inside an ELF executable count as reasonable?  I disassemble machine
> code a lot, so perhaps it's only reasonable if they make some effort to
> disguise it?

I agree. It's a bullshit security design.
A secret that is installed on every phone that has some app, and every
windows platform?  Ridiculous.

> Or, we ship a proprietary closed-source blob, or download it if it's not
> present, and lo, we've set the bar as high as those closed-source
> shippers.

uhm, yeah.

--
]   Never tell me the odds! | ipv6 mesh networks [
]   Michael Richardson, Sandelman Software Works|IoT architect   [
] m...@sandelman.ca  http://www.sandelman.ca/|   ruby on rails[



signature.asc
Description: PGP signature


Re: Has anyone looked at JMAP?

2020-08-31 Thread Michael Richardson

Ken Hornstein  wrote:
>> I came across JMAP (jmap.io) this weekend, and have been looking at it in
>> my spare time. It looks like it intends to solve most of the problems 
that
>> I personally had with mixing mh-style and mobile-app email usage, and 
might
>> even be a (speculation warning) useful bridge to the future for nmh.

> I have looked at it.  It honestly seems to me like a solution in search
> of a problem, but fine (or maybe it's designed for people who cannot
> imagine any network protocol that is not REST).  But I cannot see how it
> really solves any of the fundamental problems of mixing "mh-style" and
> mobile-app email usage; as far as I can tell, those core issues still
> exist.  But I am open to being persuaded otherwise!  So, if you want
> to expand on your opinion, please do!

It is being driven by a variety of web properties and frameworks.
Not necessarily big ones.  Think WordPress and phpBB and tikiWiki, not GCE.

I know a few people involved, but i haven't been involved myself, but I think
that you'll see it used to access to things like webboards, and the like in a
cross-platform, NNTP-like way.

I don't know if it will be easier to interface mh folders to or not.

--
]   Never tell me the odds!     | ipv6 mesh networks [
]   Michael Richardson, Sandelman Software Works|IoT architect   [
] m...@sandelman.ca  http://www.sandelman.ca/|   ruby on rails[



signature.asc
Description: PGP signature


Re: mhlogin stopped working

2020-07-20 Thread Michael Richardson

David Levine  wrote:
>> This step is the problem.  We were registered but now we aren't.  I 
wasn't
>> part of that process; hey guys, can we try to address this?

> I'll try again.

Thank you.

> To buy some time:  Michael, have you tried adding third-party access to
> Gmail for nmh?  https://myaccount.google.com/lesssecureapps
> and

Hmm.
I have an application password that works for fetchmail, which I'm using.

That link tells me:
   This setting is not available for accounts with 2-Step Verification
   enabled. Such accounts require an application-specific password for less
   secure apps access. Learn more

(Meanwhile, the Cisco Talos crap has declared my outgoing SMTP mailer
as suspicious for reasons... "none". They already get SMTP reputations for
IPv6 totally wrong...  Anyone want to reboot Pathalias and Usenet over UUCP?)

--
]   Never tell me the odds!     | ipv6 mesh networks [
]   Michael Richardson, Sandelman Software Works|IoT architect   [
] m...@sandelman.ca  http://www.sandelman.ca/|   ruby on rails[



signature.asc
Description: PGP signature


Re: mhlogin stopped working

2020-07-20 Thread Michael Richardson

> Some hurdles must be taken before being able to use this method.  Using
> GMail as an example, an application (that is a name) must be registered,
> for which credentials, a “client ID” and a “client secret”, need to be
> created and saved locally (in a secure way).  These initial configuration
> steps can be performed at

But we can't embed a client secret in open source.
Google should know better than this.
I'm back to fetchmail with POP3 and the application password.

--
]   Never tell me the odds! | ipv6 mesh networks [
]   Michael Richardson, Sandelman Software Works|IoT architect   [
] m...@sandelman.ca  http://www.sandelman.ca/|   ruby on rails[



signature.asc
Description: PGP signature


mhlogin stopped working

2020-07-20 Thread Michael Richardson
I noticed that my two gmail accounts stopped working.
I can mhlogin again, and was told:

   Sign in with Google temporarily disabled for this app
   This app has not been verified yet by Google in order to use Google Sign In.

Which is asinine for google to do, because it means I have to go back to
passwords.

--
]   Never tell me the odds! | ipv6 mesh networks [
]   Michael Richardson, Sandelman Software Works|IoT architect   [
] m...@sandelman.ca  http://www.sandelman.ca/|   ruby on rails[




Re: question about `inc'

2020-06-05 Thread Michael Richardson

I use inc with gmail/pop now.
I was using fetchmail before with pop, so gmail has a 'highwater' pointer.
inc didn't get all the old email. It only gets new email.

I think that maybe you'll pay that hit once only.
(It might be that it won't get anything that is archived)

--
]   Never tell me the odds! | ipv6 mesh networks [
]   Michael Richardson, Sandelman Software Works|IoT architect   [
] m...@sandelman.ca  http://www.sandelman.ca/|   ruby on rails[



signature.asc
Description: PGP signature


Re: multiply linked emails

2020-05-31 Thread Michael Richardson

Ken Hornstein  wrote:
>> 2) would it be reasonable to have a mh-format that returned the number of
>> hard links so that I could see in my scan that it was also stored
>> elsewhere?

> That should be relatively straightforward, although it sounds like a bunch
> of layer violations to me (not that we really have many layers in nmh,
> but we should!).  Again, it has limited utility if the filesystem doesn't
> support hard links.

Yeah, if we could find a way to do meta-data better...

--
]   Never tell me the odds!     | ipv6 mesh networks [
]   Michael Richardson, Sandelman Software Works|IoT architect   [
] m...@sandelman.ca  http://www.sandelman.ca/|   ruby on rails[




signature.asc
Description: PGP signature


multiply linked emails

2020-05-29 Thread Michael Richardson

I now have a practice of putting my outgoing emails in my +outgoing, and also
in a mailbox relating to the subject. (Kudos if anyone has some mh-e code to
automate filling in the FCC).

MH nicely files it into both folders via hard links.
(Alas, those do not survive archival to a different file system)

Some thoughts:
  1) could it leave the FCC: in place, while still removing it from the
 outgoing email?
 (Yes, this is among the meta-data that we keep wanting to store. ARGH.
 I keep thinking we should store all email as message of meta-data,
 containing a message/rfc822 content...)

  2) would it be reasonable to have a mh-format that returned the number of
 hard links so that I could see in my scan that it was also stored
 elsewhere?

--
]   Never tell me the odds! | ipv6 mesh networks [
]   Michael Richardson, Sandelman Software Works|IoT architect   [
] m...@sandelman.ca  http://www.sandelman.ca/|   ruby on rails[






signature.asc
Description: PGP signature


Re: mairix patches; mairix difference vs notmuch?

2020-01-20 Thread Michael Richardson

Conrad Hughes  wrote:
> In case it's of interest to anyone here, I recently got around to trying
> mairix for indexing my MH mail and quite liked it.  Some niggles annoyed
> me though so I've a fork up on github which:

Thank you.
I compiled and installed it.


> I'm curious whether anyone has a strong preference for notmuch and if
> so, why.  notmuch looks as if it might have the superior search indexer,
> but its lack of support for mbox/MMDF was a killer for me as I regularly
> throw old mail into .mmdf.xz, and even giving it a cursory try its
> search results on the command line seemed to be completely unusable.

I haven't tried it.

My mairixrc:

base=/home/mcr/Mail
mh=sandelman/...
database=/home/mcr/Mail/database
mfolder=/home/mcr/Mail/mfolder
mformat=mh

I didn't figure out how to tell it to index all the folders in ~/Mail.
Maybe "mh=..." would work, not sure.

--
]   Never tell me the odds!     | ipv6 mesh networks [
]   Michael Richardson, Sandelman Software Works|IoT architect   [
] m...@sandelman.ca  http://www.sandelman.ca/|   ruby on rails[






signature.asc
Description: PGP signature


Re: text/calendar vs application/ics

2020-01-07 Thread Michael Richardson

Conrad Hughes  wrote:
> When I mhshow a message with a text/calendar attachment, it's inlined
> using mhical; if the attachment type is changed to application/ics, it's
> suppressed instead.  I'm using the latest mhn.defaults from the git
> repo, which contains

Are they in a multipart/alternative ?  Or something else?

> mhshow-show-text/calendar: mhical -infile %F
> mhshow-show-application/ics: mhical -infile %F

> .. any idea where I should be looking for something else that might
> differentiate the two?





signature.asc
Description: PGP signature


Re: ics files with nhm / mh-e

2019-12-29 Thread Michael Richardson

Axel Jantsch  wrote:
> What are the best ways to deal with ics calendar files with nhm and/or
> mh-e ?

> I use nmh with mh-e as front end, and get regularly ics files. When
> getting such a file I would like to do the following:

> 1 a) Add the event to my google calendar;
> b) Make an update to an existing event in my google calendar

I bounce the email to my gmail account :-(
If there were a reliable IMAP server that could serve my desktop +inbox,
then I'd point gmail and/or Thunderbird (with Google Calendar plugin) at it.
{my desktop has public IPv6}

> 2 a) Add it to the emacs diary file;
> b) Make an update to an existing entry in emacs diary;

I tried to use it once, but I didn't get far.

> 3) Acknowledge / accept / reject the event;

You can do that from google calendar, once it is in place.

> For (1a) I use gcalcli but I feel it is a bit unreliable; it worked
> well, then it did not work for several months due to an update; then it
> worked again on some of my platforms but not others. So I wonder if
> there is a better alternative.

I never got gcalcli working.  Maybe I tried when it didn't work.
That seems like the best solution to me.

--
]   Never tell me the odds!     | ipv6 mesh networks [
]   Michael Richardson, Sandelman Software Works|IoT architect   [
] m...@sandelman.ca  http://www.sandelman.ca/|   ruby on rails[



signature.asc
Description: PGP signature


Re: time delayed sending

2019-12-27 Thread Michael Richardson
Ken Hornstein  wrote:
>> One of the things I think we lack of a message-ID -> message map.  We
>> have discussed ways to store per-message meta-data outside of the
>> message file many times, and I don't think we ever came to a
>> conclusion here.

> Weee ... I mean, we have the command-line INTERFACE for that, I
> think; pick(1) seems like the obvious answer.  Sure, right NOW it

okay. But, I want it to operate across "all" folders.
I realize that the definition of "all" is pretty loose.
So I'll say everything in ~/Mail

> trawls through every message in a folder, but there's no reason it
> couldn't look at some kind of metadata index.  Paul Vixie wrote
> something like that a while ago.

I'd like it to look through a database in the local folder if it's not
in ~/Mail, and otherwise look in ~/Mail.

I am open to logic like, look up the file system for ../.MAGIC until you find
it so that one can do stuff like:
   mv ~/Mail /otherdisk/oldstuff/y2009

but then you also think you might like it to look through a $PATH of files
too... 

There are two things that matter:
1) updating the reference in the right place when moving/filing messages. 
(building)
2) where pick --message-id will look.

-- 
]   Never tell me the odds! | ipv6 mesh networks [
]   Michael Richardson, Sandelman Software Works|IoT architect   [
] m...@sandelman.ca  http://www.sandelman.ca/|   ruby on rails[





Re: time delayed sending

2019-12-27 Thread Michael Richardson

Ken Hornstein  wrote:
>> I occasionally do this by combing at(1) with mhmail(1) or send(1).  MH
>> is designed to integrate with the Unix shell so instead of MH growing
>> features, I'd initially look more at combining cron(8) with a shell
>> script that sends email whose time has come.  Perhaps that's detected
>> by the name of the draft folder where they reside, or a header that's
>> --searched for with pick(1).

> I'm with Ralph here; it seems like nmh already has these tools to
> leverage.  But it would be interesting to hear whatever solution you
> come up with.

I don't think I'll need core changes to code :-)
I might wind up with a one-off someplace to make my life easier.
I just wondered if I was building only for me.

>>> On a related (organizationally, but technically probably orthogonal)
>>> note, I have been thinking that it would be nice if nmh supported
>>> responding to Disposition-Notification-To: headers somehow.
>> 
>> https://tools.ietf.org/html/rfc8098#section-2

> I think the technical issues are relatively straightforward, except
> maybe that we'd need to make sure messages are marked so they don't
> ever get notified multiple times.  There are some UI issues to work
> out; like, do you want to do some action to repond to that?  Or have it
> done automatically?  The latter might be hard today, but the former
> should be easy.

There are two aspects: generating the responses, and processing the responses.

One of the things I think we lack of a message-ID -> message map.
We have discussed ways to store per-message meta-data outside of the message
file many times, and I don't think we ever came to a conclusion here.

While I can see implementing this without the mapping, it would make it easiest 
to
do if one could leverage that.

>> That's where I was going.  I would use a custom post that looked for
>> some header, and if found, would move the outgoing email to some
>> directory.  A cronjob would for f in SOMEDIR/`date +something`/*; do
>> post <$f; done.

> I would just caution you that "post" is really designed as a backend
> program, and you have to be careful when you use it directly.  I'd
> suggest you use 'send' instead.

so, it's gonna be okay to do:
now:
send -> my-back-post-replacement -> disk
later:
disk -> send -> post

-- 
]   Never tell me the odds! | ipv6 mesh networks [
]   Michael Richardson, Sandelman Software Works|IoT architect   [
] m...@sandelman.ca  http://www.sandelman.ca/|   ruby on rails[






signature.asc
Description: PGP signature


Re: time delayed sending

2019-12-27 Thread Michael Richardson

Ralph Corderoy  wrote:
>> I find myself making todo notes for emails that I need to send after
>> Jan. 1.
> ...
>> I was thinking whether it was worth having some mechanism where I
>> would write an email, get it all ready to send (including GPG signing
>> it in mh-e), but keep in a numbered/dated draft directory and then
>> send it on the appropriate day.  I think that this would involve an
>> alternate post program; I haven't thought at all about how I'd control
>> that.

> I occasionally do this by combing at(1) with mhmail(1) or send(1).  MH
> is designed to integrate with the Unix shell so instead of MH growing
> features, I'd initially look more at combining cron(8) with a shell
> script that sends email whose time has come.  Perhaps that's detected
> by the name of the draft folder where they reside, or a header that's
> --searched for with pick(1).

That's where I was going.
I would use a custom post that looked for some header, and if found, would
move the outgoing email to some directory.
A cronjob would for f in SOMEDIR/`date +something`/*; do post <$f; done.

>> On a related (organizationally, but technically probably orthogonal)
>> note, I have been thinking that it would be nice if nmh supported
>> responding to Disposition-Notification-To: headers somehow.

> https://tools.ietf.org/html/rfc8098#section-2

Yes, I knew how it worked.
We don't offer any way to respond, and I'd like to be able to optionally
respond :-)

>> What I also really want is to be able to mark an email as needing
>> responding to, and to keep the outgoing content in some list (a folder
>> with a -link to +outgoing) as having been not responded to.  If I keep
>> the outgoing email in my inbox, it kinda works, but then it clutters
>> my inbox :-)
>> 
>> Ideally, the acknowledgement to the Disposition-Notification-To would
>> get matched back to that email, but also any incoming
>> In-Reply-To/References would linked up.  Basically, I want TCP ACKs
>> for email.  It would also be nice if I could better link up bounce
>> messages so that stuff in my "Waiting for Others" list could bump back
>> up.

> What do you mean by ‘bounce messages’?  I don't see how what I think of
> as bounces would fit in.

If you mis-address an email, then you get an email back from postmaster
saying so.  The problem is that there are also lots of spammer who forge
origin addresses, and so for years (decades...) 99% of email from postmaster
is spam backscatter, and one tends to skip it.

I want to re-associate the bounce back to the message I sent, particularly if
it's one that I marked for "reliable" email.

That would be a clear user-level NAK, which means I need to figure out what 
happened.
Otherwise, I'm just waiting wondering why the other person hasn't answered
yet.  And I for instance, sometimes take a month to answer an important, but
not urgent query.

-- 
]   Never tell me the odds! | ipv6 mesh networks [
]   Michael Richardson, Sandelman Software Works|IoT architect   [
] m...@sandelman.ca  http://www.sandelman.ca/|   ruby on rails[



signature.asc
Description: PGP signature


time delayed sending

2019-12-26 Thread Michael Richardson

I find myself making todo notes for emails that I need to send after Jan. 1.
Because sending them now will just wind up in people's "dig out bucket", and
I actually want to pause a bit before sending things.

Do I want this for times other than Xmas?
I suspect it would useful for people who are trying to establish time
boundaries for when they expected to answer email: They could avoid posting
work email on the weekend (or outside 9-5) until the next work time period.

(and actually, this email should be in that list...)
This somehow fits into how I do Gettings Things Done.

I was thinking whether it was worth having some mechanism where I would write
an email, get it all ready to send (including GPG signing it in mh-e), but
keep in a numbered/dated draft directory and then send it on the appropriate 
day.
I think that this would involve an alternate post program; I haven't thought
at all about how I'd control that.

**
   I just thought I'd ask if there were other people who
   might have such a need
**

On a related (organizationally, but technically probably orthogonal) note, I
have been thinking that it would be nice if nmh supported responding to
Disposition-Notification-To: headers somehow.

What I also really want is to be able to mark an email as needing responding
to, and to keep the outgoing content in some list (a folder with a -link to
+outgoing) as having been not responded to.  If I keep the outgoing email in
my inbox, it kinda works, but then it clutters my inbox :-)

Ideally, the acknowledgement to the Disposition-Notification-To would get
matched back to that email, but also any incoming In-Reply-To/References
would linked up.  Basically, I want TCP ACKs for email.
It would also be nice if I could better link up bounce messages so that
stuff in my "Waiting for Others" list could bump back up.

Gmail does this right.  (Maybe Thunderbird does too now)
But, if I wanted to use a search engine in a browser for my email, I'd be
doing that :-)



ps: I've been watching a ton of youtube videos from the 8-bit guy.
http://www.the8bitguy.com/ many of you are of a similar technical age as
me.  I am considering whether teaching my 14-year old programming on the
C-64 would make sense.

--
]   Never tell me the odds! | ipv6 mesh networks [
]   Michael Richardson, Sandelman Software Works|IoT architect   [
] m...@sandelman.ca  http://www.sandelman.ca/|   ruby on rails[






signature.asc
Description: PGP signature


Re: Help with Gmail

2019-12-02 Thread Michael Richardson

Ken Hornstein  wrote:
> If you want to get things working with GMail and inc directly, I know
> several people have it working here (I also did some testing with it).

I use inc with gmail now.

There are still some fetchmail bits lingering in my configuration.
(I will from about 6 mailboxes...), and I'm definitely in the camp of "it
ain't broke, don't fix it"








signature.asc
Description: PGP signature


Re: [nmh-workers] Additional things

2019-09-30 Thread Michael Richardson
Ken Hornstein  wrote:
>> What does friendly{} do exactly?
>> mh-format just says "user-friendly rendering".

> Hm, I guess we should improve that documentation a bit.

> If there's a "personal name" (Anything before <>), then it will return
> that.  If there's no personal name but there IS a "note" (comments
> string AFTER an email address), it will return that.  If there is neither
> of those, it will try to parse the email address as an X400 directory
> name and try to extract out a few of the fields from it to return.
> If that fails it will just return the bare email address.  Basically,
> it's trying to take it's best guess as to what is the real name in an
> email address.

Thanks.

I think that maybe the X400 part could get ripped out as dead code? :-)

Not sure how to do a pull-request with savannah.

https://github.com/mcr/nmh/commit/e9d8f9d13bb4396be20832b2c1ec003f3edbe9ed


signature.asc
Description: PGP signature
-- 
nmh-workers
https://lists.nongnu.org/mailman/listinfo/nmh-workers

Re: [nmh-workers] Additional features for S/MIME support

2019-09-30 Thread Michael Richardson
Ken Hornstein  wrote:
>> Can you explain the problem you are trying to solve?

> I want to be able to GENERATE a S/MIME message given a MH draft message.
> There are a number of tools for platforms that can take a file and 
generate
> CMS output (such as a signature) based on that file.  We don't quite have
> the tooling to (a) get the correct output to feed into such a tool and
> (b) generate things in such a way to make the correct MIME output.

Oh, I see. Generate, not process.
mh-e does this for me now, but it would definitely be nice to have a cmdline
mechanism to do this.   I think that it would enable a bunch of things that
people find difficult today.

--
]   Never tell me the odds! | ipv6 mesh networks [
]   Michael Richardson, Sandelman Software Works|IoT architect   [
] m...@sandelman.ca  http://www.sandelman.ca/|   ruby on rails[


-- 
nmh-workers
https://lists.nongnu.org/mailman/listinfo/nmh-workers

Re: [nmh-workers] FSF is changing Mailman list settings unless you opt out (fwd)

2019-09-30 Thread Michael Richardson

Philipp  wrote:
>> %-16(putstrf{List-Id})
>>
>> to my scan arguments, and it's close, but not yet what I want.
>> Ideally, I just want what's in <> of the List-Id:, and I'd be happy with 
the
>> first 16 characters only.  But I can't see a way to get that.  So I'd 
settle
>> for the last 16 bytes of the entire header, but I can't get that either.

> You could just use:

> %(addr{list-id})

> I know list-id isn't realy an address, but it works.

Cool. I was figuring that there must be something that deals with addresses
like this.  It works exactly as I want.

--
]   Never tell me the odds!     | ipv6 mesh networks [
]   Michael Richardson, Sandelman Software Works|IoT architect   [
] m...@sandelman.ca  http://www.sandelman.ca/|   ruby on rails[



signature.asc
Description: PGP signature
-- 
nmh-workers
https://lists.nongnu.org/mailman/listinfo/nmh-workers

Re: [nmh-workers] Additional things

2019-09-29 Thread Michael Richardson

Ken Hornstein  wrote:
>> I guess addr{loop} will operate on any ,-seperated list of address-like
>> things.

> That's the idea; I am still thinking about whether or not it should work
> on the str register or directly on components (I think the former would
> be more useful).

>> I would also guess it would nuke the "My Name" and (comment)
>> parts beforehand.

> Oh, no, not at all.  You could do "%(decode(friendly{loop}))" if you 
wanted
> to.  That's all part of the address and would be available to the parser.

What does friendly{} do exactly?
mh-format just says "user-friendly rendering".

--
]   Never tell me the odds! | ipv6 mesh networks [
]   Michael Richardson, Sandelman Software Works|IoT architect   [
] m...@sandelman.ca  http://www.sandelman.ca/|   ruby on rails[



signature.asc
Description: PGP signature
-- 
nmh-workers
https://lists.nongnu.org/mailman/listinfo/nmh-workers

Re: [nmh-workers] FSF is changing Mailman list settings unless you opt out (fwd)

2019-09-29 Thread Michael Richardson

Ken Hornstein  wrote:
>> to my scan arguments, and it's close, but not yet what I want.
>> Ideally, I just want what's in <> of the List-Id:, and I'd be happy with 
the
>> first 16 characters only.  But I can't see a way to get that.  So I'd 
settle
>> for the last 16 bytes of the entire header, but I can't get that either.

> Hmmm.  I just looked at regcomp()/regexec(), and it sure seems pretty easy
> to make a format function that could do a regular expression substitution
> on the str register.  Like ...

> %(void{list-id})%(regsub /<\([^.]+\)/[\1]/)

> Would do what you want, I'd think.  I can't promise that would appear soon
> but it at least it doesn't seem hard.

yes, I think it would work.

if there was something to treat the header as From/To:-like (while not
insisting on presence of @) and just pull out whatever was in <>, if there
was something, that might actually work better, as if there is no "<", then
it would just return the string that was there.

--
]   Never tell me the odds! | ipv6 mesh networks [
]   Michael Richardson, Sandelman Software Works|IoT architect   [
] m...@sandelman.ca  http://www.sandelman.ca/|   ruby on rails[




signature.asc
Description: PGP signature
-- 
nmh-workers
https://lists.nongnu.org/mailman/listinfo/nmh-workers

Re: [nmh-workers] Additional things

2019-09-29 Thread Michael Richardson

Ken Hornstein  wrote:
> Let's say it is something like this:

> %[%(formataddr{to})%(formataddr({cc})%^%(addr{loop})%#,%]

> What does that mean?  We take the addresses in the "To" and "cc" headers,
> treat them as a address list, and execute %(addr) on each address (the
> pseudo-component "loop" will be set to the value of each address as the
> loop progresses).  Everything after %# gets executed between each entry.
> So this on the above To: line would end up generating:

> f...@bar.com,b...@arg.com,s...@body.com

> This might be something I could actually implement in a reasonable amount
> of time.

Seems cool to me.
I guess addr{loop} will operate on any ,-seperated list of address-like
things.  I would also guess it would nuke the "My Name" and (comment)
parts beforehand.

--
]   Never tell me the odds! | ipv6 mesh networks [
]   Michael Richardson, Sandelman Software Works|IoT architect   [
] m...@sandelman.ca  http://www.sandelman.ca/|   ruby on rails[



signature.asc
Description: PGP signature
-- 
nmh-workers
https://lists.nongnu.org/mailman/listinfo/nmh-workers

Re: [nmh-workers] Additional features for S/MIME support

2019-09-29 Thread Michael Richardson

Ken Hornstein  wrote:
> I was looking at what kind of things we need to generate S/MIME
> messages, and ... well, we're like 60% of the way there (by that I mean
> 60% of the TOOLS you need are there; other tools would generate the CMS
> data).  Here are a few things I think we need to make this actually
> doable:

Can you explain the problem you are trying to solve?

I think it is about being able to take S/MIME messages which might be
encrypted, and then (optionally) store the unencrypted bits somewhere so that 
we can
manipulate them easily?
This is an especial win for signed but not encrypted messages.

--
]   Never tell me the odds! | ipv6 mesh networks [
]   Michael Richardson, Sandelman Software Works|IoT architect   [
] m...@sandelman.ca  http://www.sandelman.ca/|   ruby on rails[




signature.asc
Description: PGP signature
-- 
nmh-workers
https://lists.nongnu.org/mailman/listinfo/nmh-workers

Re: [nmh-workers] FSF is changing Mailman list settings unless you opt out (fwd)

2019-09-29 Thread Michael Richardson

Michael Richardson  wrote:
>> Sigh.  I KNEW you were going to say that, but ... certainly you SOMEHOW
>> managed to live without this feature UP UNTIL NOW.  I have given you a
>> solution that works for the upcoming changes to THIS mailing list.  You
>> can expand on it as you need.  It's not perfect, but what is?

> Yes, I've lived with lists that put [foobar] in them up to now.
> It's almost more of a mh-e issue.

> nmh-workers isn't the only list that will stop molesting the signed 
content.
> (Not sure if :-) or :-( is appropriate here)

So I've added:

   %-16(putstrf{List-Id})

to my scan arguments, and it's close, but not yet what I want.
Ideally, I just want what's in <> of the List-Id:, and I'd be happy with the
first 16 characters only.  But I can't see a way to get that.  So I'd settle
for the last 16 bytes of the entire header, but I can't get that either.

What I have is better than before though :-)

--
]   Never tell me the odds!         | ipv6 mesh networks [
]   Michael Richardson, Sandelman Software Works|IoT architect   [
] m...@sandelman.ca  http://www.sandelman.ca/|   ruby on rails[




signature.asc
Description: PGP signature
-- 
nmh-workers
https://lists.nongnu.org/mailman/listinfo/nmh-workers

Re: [nmh-workers] FSF is changing Mailman list settings unless you opt out (fwd)

2019-09-27 Thread Michael Richardson
Ken Hornstein  wrote:
>> yes, but that's too specific.  I'd like it generically for all lists :-)

> Sigh.  I KNEW you were going to say that, but ... certainly you SOMEHOW
> managed to live without this feature UP UNTIL NOW.  I have given you a
> solution that works for the upcoming changes to THIS mailing list.  You
> can expand on it as you need.  It's not perfect, but what is?

Yes, I've lived with lists that put [foobar] in them up to now.
It's almost more of a mh-e issue.

nmh-workers isn't the only list that will stop molesting the signed content.
(Not sure if :-) or :-( is appropriate here)

--
]   Never tell me the odds! | ipv6 mesh networks [
]   Michael Richardson, Sandelman Software Works|IoT architect   [
] m...@sandelman.ca  http://www.sandelman.ca/|   ruby on rails[


-- 
nmh-workers
https://lists.nongnu.org/mailman/listinfo/nmh-workers

Re: [nmh-workers] FSF is changing Mailman list settings unless you opt out (fwd)

2019-09-27 Thread Michael Richardson
Ken Hornstein  wrote:
> The key is this line:

> %<{list-id}%<(match nmh-workers)[nmh-workers] %>%>\

> What that means is:

> If the list-id header is set, AND it contains the string nmh-workers,
> then output the string "[nmh-workers] ".  You might find that
> objectionable

yes, but that's too specific.  I'd like it generically for all lists :-)

> if the current subject string contains [nmh-workers], but fixing that is
> left as an exercise to the reader.  Remember that fmttest exists now and
> is your friend.

Right. Thank you.

--
]   Never tell me the odds!     | ipv6 mesh networks [
]   Michael Richardson, Sandelman Software Works|IoT architect   [
] m...@sandelman.ca  http://www.sandelman.ca/|   ruby on rails[



-- 
nmh-workers
https://lists.nongnu.org/mailman/listinfo/nmh-workers

Re: [nmh-workers] FSF is changing Mailman list settings unless you opt out (fwd)

2019-09-27 Thread Michael Richardson

Ken Hornstein  wrote:
> I received this email, and I wanted to pass it along.  The executive
> summary is: in the near future subject lines to nmh-workers will no
> longer be prefixed with "[nmh-workers]" and there won't be a footer
> at the end of the message anyone saying that this is the nmh-workers
> mailing list.

This is one of several choice. This choice preserves the DKIM signature on
the headers and body.

> You can read the details in the message for the complete
> technical reasons why this is happening; the other option is to do
> what is called "Munge From" and I personally think this is 100x worse
> (I am on a Yahoo mailing list where this is done and I hate it).  If
> people think we should switch to "Munge From" for this mailing list,
> then please make your case here.

There is also the option to encapsulate.

Having tried all three, I relunctantly say that the Munge From is the least
annoying.

--
]   Never tell me the odds! | ipv6 mesh networks [
]   Michael Richardson, Sandelman Software Works|IoT architect   [
] m...@sandelman.ca  http://www.sandelman.ca/|   ruby on rails[



signature.asc
Description: PGP signature
-- 
nmh-workers
https://lists.nongnu.org/mailman/listinfo/nmh-workers

Re: [nmh-workers] FSF is changing Mailman list settings unless you opt out (fwd)

2019-09-27 Thread Michael Richardson
Andy Bradford  wrote:
> I won't  mind if the  Subject stops being  mangled (I use  the list-post
> header for filtering). I also won't mind if the body stops being
> mangled

I do, so let me ask:

can I get List-Id easily inserted into scan output in a way that will make
mh-e happy?

--
]   Never tell me the odds! | ipv6 mesh networks [
]   Michael Richardson, Sandelman Software Works|IoT architect   [
] m...@sandelman.ca  http://www.sandelman.ca/|   ruby on rails[


-- 
nmh-workers
https://lists.nongnu.org/mailman/listinfo/nmh-workers

Re: [nmh-workers] strace show # pauses/takes 5+ sec | network issue? ( not nmh )

2019-09-10 Thread Michael Richardson
n...@trodman.com wrote:
> On Mon 9/9/19 22:45 +0100 Michael Richardson wrote:
>> Also, are you running NMH on your VPS?

> Yes, on a fedora 29, a Xen host on prgmr.com; mhmail -- nmh-1.7.1

So, the pause could be in sending your the output.
That could be a TCP MTU discovery issue.

> In /usr/local/nmh/etc/nmh/mts.conf today, I added the line:

> localname: localhost.localdomain

> Thanks to all of you for the help!

That sounds like the actual fix.

-- 
]   Never tell me the odds! | ipv6 mesh networks [ 
]   Michael Richardson, Sandelman Software Works| network architect  [ 
] m...@sandelman.ca  http://www.sandelman.ca/|   ruby on rails[ 


-- 
nmh-workers
https://lists.nongnu.org/mailman/listinfo/nmh-workers

Re: [nmh-workers] strace show # pauses/takes 5+ sec | network issue? ( not nmh )

2019-09-09 Thread Michael Richardson
Also, are you running NMH on your VPS?



-- 
nmh-workers
https://lists.nongnu.org/mailman/listinfo/nmh-workers

Re: [nmh-workers] strace show # pauses/takes 5+ sec | network issue? ( not nmh )

2019-09-09 Thread Michael Richardson

n...@trodman.com wrote:
> I thought it might be dns. Earlier in the day, twice in a row it hung
> near the end of this snip:

> [...]  socket(AF_INET, SOCK_DGRAM|SOCK_CLOEXEC|SOCK_NONBLOCK,
> IPPROTO_IP) = 4 connect(4, {sa_family=AF_INET, sin_port=htons(53),
> sin_addr=inet_addr("71.19.155.120")}, 16) = 0
> clock_gettime(CLOCK_REALTIME, {tv_sec=1567958940, tv_nsec=908626657}) =
> 0 poll([{fd=4, events=POLLOUT}], 1, 0) = 1 ([{fd=4, revents=POLLOUT}])
> sendmmsg(4, [{msg_hdr={msg_name=NULL, msg_namelen=0,
> 
msg_iov=[{iov_base="\325T\1\0\0\1\0\0\0\0\0\0\5ibisbil\4mumble\3org\0\0\1\0\1",
> iov_len=32}], msg_iovlen=1, msg_controllen=0, msg_flags=0},
> msg_len=32}, {msg_hdr={msg_name=NULL, msg_namelen=0,
> 
msg_iov=[{iov_base="ql\1\0\0\1\0\0\0\0\0\0\5ibisbil\4mumble\3org\0\0\34\0\1",
> iov_len=32}], msg_iovlen=1, msg_controllen=0, msg_flags=0},
> msg_len=32}], 2, MSG_NOSIGNAL) = 2

> where ibisbil.mumble.com is the obfuscated hostname of the fedora vps
> with the problem, and 71.19.155.120 is the 1st nameserver in
> ibisbil.mumble.com:/etc/resolv.conf. Later in the day though the strace
> stalled consistently at the spot shown in my first post.

>> But unfortunately these system call traces are not very helpful.  This
>> is because you are tracing the command "command", and all that shows
>> is you execute a nmh command and it waits 5 seconds for it to
>> complete.

> OK/thanks. In the future I will plan to run for example:

> strace -o /tmp/foo -t -f /usr/local/nmh/bin/scan last

I suggest -ff, which will populate the files /tmp/foo.12343 by PID#
I can't see why scan is doing DNS, but what do I know.

If it's network related, we'll probably ask you to send tcdpump.
so:
sudo tcpdump -i any -n -p -w /tmp/network.pcap

if you are logged in by SSH, then please add "not port 22"

-- 
]   Never tell me the odds! | ipv6 mesh networks [ 
]   Michael Richardson, Sandelman Software Works| network architect  [ 
] m...@sandelman.ca  http://www.sandelman.ca/|   ruby on rails[ 



signature.asc
Description: PGP signature
-- 
nmh-workers
https://lists.nongnu.org/mailman/listinfo/nmh-workers

Re: [nmh-workers] logging outgoing messages

2019-07-10 Thread Michael Richardson

Back to logging outgoing messages.

A reason that people want to do this is so that they can track whether emails
get delivered or not.  Given spam, nobody reads postmaster bounces anymore.
(I remember when I got CC's of all bounces...)

So three things that I've wanted to implement for awhile (20 years..) are:
  1) processing of postmaster bounces, with a way to link back to anno
 so that the outgoing message can be marked.
 Yes, bounces come in all sorts of forms, but they always reference
 the message-id. At one point, I wanted to put something cryptographic
 in it, but essentially DKIM has done this for us.

  2) processing of Return-Receipt-To: messages to anno that the email
 got delivered.  Not a guarantee that they were read, but it
 does prove they got off your laptop. (whether you queue locally,
 because... airplanes, or deliver directly)

  3) processing of Disposition-Notification-To: which does not work
 in a lot of MUAs, but where it works, it works hilariously well.

Basically, I'm asking for TCP ACK at application layer.

I regularly re-edit emails in my outbox with mh-e, although there are issues
relating to GPG signatures and some other headers that mean I have to clean
stuff up before sending.

--
]   Never tell me the odds! | ipv6 mesh networks [
]   Michael Richardson, Sandelman Software Works|IoT architect   [
] m...@sandelman.ca  http://www.sandelman.ca/|   ruby on rails[



signature.asc
Description: PGP signature
-- 
nmh-workers
https://lists.nongnu.org/mailman/listinfo/nmh-workers

Re: [nmh-workers] logging outgoing messages

2019-07-09 Thread Michael Richardson
Ronald F. Guilmette  wrote:
>> If I could make sendmail/pipe punch the user in the face every time a
>> message was sent using it...

> Please don't.  I'm using it.

> It is MUCH faster than trying to feed the message to Postfix
> (aka Sendmail) via SMTP/587 because in the case of just piping the
> message, Postfix doesn't make me wait until it has done the
> DNS lookups it thinks it needs to do in order to process
> the message.

Then you are missing an entry in /etc/hosts for 127.0.0.1 and ::1, or you are
missing your hostname in that file.


-- 
nmh-workers
https://lists.nongnu.org/mailman/listinfo/nmh-workers

Re: [nmh-workers] logging outgoing messages

2019-07-09 Thread Michael Richardson

Ken Hornstein  wrote:
> - It is not clear to me that you can state with certainly that the
> 250 response code will contain the queue identifier (that is, in
> fact, not a concept that appears anywhere that I can find in the SMTP
> RFCs).  As a practical matter I've never had to give anyone the queue
> identifier of a message (because it's not normally logged on the

I have both asked for it and provided it when debugging bizarre situations.

Could we log the entire result, and let the post hook take care of the
various queue formats?

> I am neutral about this being made to work with sendmail/pipe; it would
> actually be a lot of work to do that.  We could just accept that it is
> one more thing that doesn't work with sendmail/pipe.

slowly, that interface is dying. I have mixed feelings about that.

--
]   Never tell me the odds! | ipv6 mesh networks [
]   Michael Richardson, Sandelman Software Works|IoT architect   [
] m...@sandelman.ca  http://www.sandelman.ca/|   ruby on rails[



signature.asc
Description: PGP signature
-- 
nmh-workers
https://lists.nongnu.org/mailman/listinfo/nmh-workers

Re: [nmh-workers] Formatting HTML to Text: netrik.

2019-06-27 Thread Michael Richardson

Ronald F. Guilmette  wrote:
> Quite simply, all I would wish for would be something that would 
-properly-
> convert -both- HTMLized emails -and- "Content-Transfer-Encoding: base64"
> emails (like this one I'm responding to) into good old fashioned ascii,
> at least for purposes of the "show" and "repl" commands.  I have my
> jury-rigged solution working adequately well for the base64 encoding
> still, but only for the "show" command, which means that I have to do
> some manual cutting-and-pasting when/if I want to reply to a base64
> encoded email. :-(

I would also like that for the cases where I want to use show.
I use mh-e, and I mostly have things configured right:
  1) use text/plain if it exists.
  2) format text/html is no text/plain
  (3) but often text/plain is bullshit-pseudo-HTML and you need to avoid it.

The additional problem is that reply yanks text from formatted text/html
rather than text/plain.  The good HTML formatters in mh-e (Emacs) are slow,
and the fast ones do a poor job. I would rather show did things and mh-e used
that, but too many moving parts.

--
]   Never tell me the odds! | ipv6 mesh networks [
]   Michael Richardson, Sandelman Software Works|IoT architect   [
] m...@sandelman.ca  http://www.sandelman.ca/|   ruby on rails[




signature.asc
Description: PGP signature
-- 
nmh-workers
https://lists.nongnu.org/mailman/listinfo/nmh-workers

Re: [nmh-workers] success using the OAUTH2 with gmail.

2019-06-27 Thread Michael Richardson

Ken Hornstein  wrote:
>> -authservice is missing from the inc.1 man page.

> Um, is it?  I just looked at my copy, and it's there!  And according to
> the revision history that was added in 2016, and nmh 1.7 was released
> in 2017 (and I didn't update the NEWS file for 1.7.1; dammit).

Sorry, I should be more precise.
The values which are valid for "authservice" are not, as far as I can, 
mentioned.

> I believe that -authservice gmail does that already (it should use our
> compiled-in default values for gmail, including our registered client
> identifier).

okay, I suggest an example in inc.

> If you mean --gmail does everything like -initialtls, -host, -port, -sasl
> -saslmech xoauth2 and -authservice gmail, w  actually, I have
> some thoughts on that.

> Let's say in a hypothetical future we support IMAP.  That means that 
nearly
> every command would take a whole pile of arguments like -initialtls,
> -host, -port, -sasl, and more.  Obviously changing your profile for every
> nmh command would be awful.  So there should be some way of handling that.
> What I had thought maybe was tying profile entries to mailboxes, so if
> you did "scan my-imap-server:foo" it could possibly look in your profile
> and find:

Interesting idea.

> You get the idea.  But thinking about this more makes me think that we
> should extend this a bit so it's not tied to folders, but a generic
> connection profile defaults and we could provide ones that work with
> Gmail.  I don't have it all jelled in my head how this would look and
> you'd need to do something to ADD to an existing connection profile so
> you could supply your own username, for example.  But it seems like it
> should be doable.  But I guess my idea is that you should be able to
> do something like

> inc -conn gmail -user myu...@gmail.com

> and the right stuff should happen.  Make sense?

Yeah, that's what I'd want to happen.

--
]   Never tell me the odds! | ipv6 mesh networks [
]   Michael Richardson, Sandelman Software Works|IoT architect   [
] m...@sandelman.ca  http://www.sandelman.ca/|   ruby on rails[



signature.asc
Description: PGP signature
-- 
nmh-workers
https://lists.nongnu.org/mailman/listinfo/nmh-workers

Re: [nmh-workers] fetchmail and SNI (and pop.gmail.com)

2019-06-27 Thread Michael Richardson

Ken Hornstein  wrote:
> It looks like Debian buster is the earliest version of Debian which has
> nmh 1.7.1.  And it looks like that will be officially released next week.
> If you upgraded, would that be enough for you to switch away from
> fetchmail? :-)  We support XOAUTH2!

I won't upgrade, I just installed from source.
I needed libcurl-dev.

--
]   Never tell me the odds! | ipv6 mesh networks [
]   Michael Richardson, Sandelman Software Works|IoT architect   [
] m...@sandelman.ca  http://www.sandelman.ca/|   ruby on rails[



signature.asc
Description: PGP signature
-- 
nmh-workers
https://lists.nongnu.org/mailman/listinfo/nmh-workers

[nmh-workers] success using the OAUTH2 with gmail.

2019-06-27 Thread Michael Richardson

I've made sure I am running 1.7 (from git), and I went through mhlogin
correctly.  I pasted the result in, and then I did this with a second
account.

The token seems to be stored into Mail/oauth-gmail.

%inc -initialtls -host pop.gmail.com -user mcharl...@gmail.com -port pop3s
   -snoop -sasl -saslmech xoauth2 -authservice gmail

-authservice is missing from the inc.1 man page.

I think that maybe we should have --gmail which sets all the right
parameters.

--
]   Never tell me the odds! | ipv6 mesh networks [
]   Michael Richardson, Sandelman Software Works|IoT architect   [
] m...@sandelman.ca  http://www.sandelman.ca/|   ruby on rails[



signature.asc
Description: PGP signature
-- 
nmh-workers
https://lists.nongnu.org/mailman/listinfo/nmh-workers

Re: [nmh-workers] Making OpenSSL 1.0.2 minimum version

2019-06-27 Thread Michael Richardson

Ken Hornstein  wrote:
> When researching the issue Michael Richardson brought up today, it make
> me realize we really should be calling SSL_set_tlsext_host_name() so we
> send the TLS extension "server name indicator".  Which is easy, it's
> literally one line of code.  But that makes me ask a larger question: we
> have some autoconf goo to support older libraries (pre OpenSSL 1.0.2)
> that didn't support the function X509_VERIFY_PARAM_set1_host(), and I
> lack the energy to research if SSL_set_tlsext_host_name() exists in
> pre-1.0.2 OpenSSL.  I think at this point we should consider OpenSSL
> 1.0.2 the minimum supported version of OpenSSL for nmh.  This would
> guarantee we are doing TLS 1.2 everywhere and clean up some #ifdefs.
> Objections?

I concur.
If you have <1.0.2, then you probably don't have useful TLS, and should build
without it.

--
]   Never tell me the odds!     | ipv6 mesh networks [
]   Michael Richardson, Sandelman Software Works|IoT architect   [
] m...@sandelman.ca  http://www.sandelman.ca/|   ruby on rails[



signature.asc
Description: PGP signature
-- 
nmh-workers
https://lists.nongnu.org/mailman/listinfo/nmh-workers

Re: [nmh-workers] fetchmail and SNI (and pop.gmail.com)

2019-06-27 Thread Michael Richardson
Ralph Corderoy  wrote:
>> I have used:
>>
>> fetchmail --verbose --sslcertpath="/etc/ssl/certs" --sslcertck
>> --proto POP3 --mda "rcvstore -sequence gmail +inbox"
>> --logfile /var/tmp/gmail.log pop.gmail.com
>>
>> to get my gmail downloaded for some time now.

> Has your OpenSSL been upgraded recently?

Yes-ish, I'm usually running something from git.

>> It seems that fetchmail doesn't enable SNI for it's TLS connection

> Try adding `--sslproto TLS1' to fetchmail's arguments.

That worked perfectly.

--
]   Never tell me the odds! | ipv6 mesh networks [
]   Michael Richardson, Sandelman Software Works|IoT architect   [
] m...@sandelman.ca  http://www.sandelman.ca/|   ruby on rails[


-- 
nmh-workers
https://lists.nongnu.org/mailman/listinfo/nmh-workers

Re: [nmh-workers] fetchmail and SNI (and pop.gmail.com)

2019-06-27 Thread Michael Richardson

Ken Hornstein  wrote:
> And geez Mike, we talked about this a lot!  Wasn't a secret!

I read the man page. I wonder if my man pages are coming from debian, while
my binaries are manually installed.

SNI === Server Name Indicator, which lets a server know which name
a client meant to connect to, and therefore, which certificate to respond to.

--
]   Never tell me the odds! | ipv6 mesh networks [
]   Michael Richardson, Sandelman Software Works|IoT architect   [
] m...@sandelman.ca  http://www.sandelman.ca/|   ruby on rails[




signature.asc
Description: PGP signature
-- 
nmh-workers
https://lists.nongnu.org/mailman/listinfo/nmh-workers

[nmh-workers] fetchmail and SNI (and pop.gmail.com)

2019-06-27 Thread Michael Richardson

I have used:

   fetchmail --verbose --sslcertpath="/etc/ssl/certs" --sslcertck --proto POP3 
--mda "rcvstore -sequence gmail +inbox" --logfile /var/tmp/gmail.log 
pop.gmail.com

to get my gmail downloaded for some time now.
It seems that fetchmail doesn't enable SNI for it's TLS connection, and I
don't see any new versions of fetchmail in years.  It looks like
pop.gmail.com wants SNI:

fetchmail: Trying to connect to 2607:f8b0:4001:c16::6c/995...connected.
fetchmail: Server certificate:
fetchmail: Unknown Organization
fetchmail: Issuer CommonName: invalid2.invalid
fetchmail: Subject CommonName: invalid2.invalid
fetchmail: Server CommonName mismatch: invalid2.invalid != pop.gmail.com
fetchmail: pop.gmail.com key fingerprint: 
90:4A:C8:D5:44:5A:D0:6A:8A:10:FF:CD:8B:11:BE:16
fetchmail: Server certificate verification error: self signed certificate
fetchmail: Missing trust anchor certificate: /OU=No SNI provided; please fix 
your client./CN=invalid2.invalid

[nice hack to send a message back to the user Google...]

I don't think that inc has any TLS support.
(kerberos support, yes)

Maybe there are other ways to skin this cat?

--
]   Never tell me the odds! | ipv6 mesh networks [
]   Michael Richardson, Sandelman Software Works|IoT architect   [
] m...@sandelman.ca  http://www.sandelman.ca/|   ruby on rails[



signature.asc
Description: PGP signature
-- 
nmh-workers
https://lists.nongnu.org/mailman/listinfo/nmh-workers

Re: [nmh-workers] #ifdef UK

2019-05-18 Thread Michael Richardson

Is the UK option about JANET?
Which had domain names as com.pobox ?

--
]   Never tell me the odds! | ipv6 mesh networks [
]   Michael Richardson, Sandelman Software Works|IoT architect   [
] m...@sandelman.ca  http://www.sandelman.ca/|   ruby on rails[



signature.asc
Description: PGP signature
-- 
nmh-workers
https://lists.nongnu.org/mailman/listinfo/nmh-workers

[nmh-workers] archival and searching of nmh folders

2019-01-20 Thread Michael Richardson

I have about 3G of email on my desktop under Mail/ (67K emails)
and 3G (70K emails) on another machine in my "archive".  okay, not a huge
amount by "modern" standards, but it's still a lot.

And I'm loosing stuff.
Like many others, I've wanted an IMAP server on top of this stuff accessible
to me only, but the options of that have been well bashed here.

Anyone running some text search on top of their folders?

--
]   Never tell me the odds! | ipv6 mesh networks [
]   Michael Richardson, Sandelman Software Works|IoT architect   [
] m...@sandelman.ca  http://www.sandelman.ca/|   ruby on rails[








signature.asc
Description: PGP signature
-- 
nmh-workers
https://lists.nongnu.org/mailman/listinfo/nmh-workers

Re: [nmh-workers] post 1.71 ug: "long line"/single newline paragraphs

2018-05-27 Thread Michael Richardson

Anthony J. Bentley <anth...@anjbe.name> wrote:
> Michael Richardson writes:
>> And given EFAIL, it seems that we were wise.

> nmh wise? I dunno. Part of EFAIL was that the mail client downloaded
> bits from the Internet and interleaved them seamlessly into the
> message.

No, that downloading from the Internet was entirely a normal thing.
It's that the MUAs failed to run the HTML bits in seperate sandboxes.
(Or that they ran the HTML bits at all)

> That seems like an inherently dangerous thing to do... and nmh does it
> with one of the messages in this very thread: Ralph Corderoy's message
> contains a 'Content-Type: message/external-body; access-type="url";
> url="..."' bit that was promptly fetched and displayed in the middle of
> the message. How do I disable this behavior, and why does nmh have it
> turned ON by default!?

I don't remember how to turn it off; I don't think it is on by default.
Did you build from source, or from a package?

-- 
]   Never tell me the odds! | ipv6 mesh networks [ 
]   Michael Richardson, Sandelman Software Works| network architect  [ 
] m...@sandelman.ca  http://www.sandelman.ca/|   ruby on rails[ 



signature.asc
Description: PGP signature
-- 
nmh-workers
https://lists.nongnu.org/mailman/listinfo/nmh-workers

Re: [nmh-workers] post 1.71 ug: "long line"/single newline paragraphs

2018-05-25 Thread Michael Richardson

Andy Bradford <amb-x...@bradfords.org> wrote:
>> So, I don't think this is necessarily a nmh problem, like I said. From
>> a  practical standpoint,  you're probably  one of  the few  people who
>> actually USES the text/plain content instead of the text/html content.

> Count  me as  another one  of  those few  people who  actually uses  the
> text/plain content. :-) For the most  part, I don't read emails that are
> HTML only  unless I  absolutely have  to and if  there's a  text/plain I
> manage with that unless it's terrible.

I also am like this.
And given EFAIL, it seems that we were wise.

-- 
]   Never tell me the odds!     | ipv6 mesh networks [ 
]   Michael Richardson, Sandelman Software Works| network architect  [ 
] m...@sandelman.ca  http://www.sandelman.ca/|   ruby on rails[ 



signature.asc
Description: PGP signature
-- 
nmh-workers
https://lists.nongnu.org/mailman/listinfo/nmh-workers

Re: [Nmh-workers] What OS/Architecture Do You Run nmh On?

2018-02-14 Thread Michael Richardson
Ken Hornstein <k...@pobox.com> wrote:
> On that same IMAP-managed directory ... well, what exactly HAPPENS there
> is a bit unclear to me.  Specifically, the IMAP servers I've looked at
> (Cyrus-IMAP and Dovecot are the ones talked about here) all maintain
> their own index into the Maildir directory.  If we put a new file in
> their mailbox without updating the index, what exactly will happen?

isn't that equivalent to having the MTA deliver email into that Maildir?

--
]   Never tell me the odds! | ipv6 mesh networks [
]   Michael Richardson, Sandelman Software Works| network architect  [
] m...@sandelman.ca  http://www.sandelman.ca/|   ruby on rails[


-- 
Nmh-workers
https://lists.nongnu.org/mailman/listinfo/nmh-workers


Re: [Nmh-workers] C++

2018-02-14 Thread Michael Richardson

Paul Vixie <p...@redbarn.org> wrote:
> as promised, i asked bert hubert how he uses C++ in PowerDNS without 
damaging
> himself:

> On Mon, Feb 12, 2018 at 12:43:16PM -0800, Paul Vixie wrote:
>> you seem to have made peace with C++. i predict that you did this by
>> declaring some subset of its features that you'd be willing to use, and
>> forbidding all others. if so, can you tell me what the subset is, and
>> how if at all you enforce it in your code base?

> he wrote back as follows, and also gave permission to be quoted here:

> bert hubert wrote:
>> You guess right! I think this might make a good blog post in fact. 
Various
>> Linux kernel developers have read PowerDNS source code and most commented
>> this was the first bit of C++ they truly understood and could appreciate.
>>
>> The GCC compiler people have also decided to use C++, which is also
>> something of a vote of confidence from some pretty discerning folks.
>>
>> So in short, my guidelines consist of first reading the four thin books 
by
>> Scott Meyer: Effective C++, More Effective C++, Effective STL, Effective
>> Modern C++.
>>
>> Especially the first book covers a lot of the "you can do tons of things 
in
>> C++, but please don't".
>>
>> Things to not use or do (unless you have very good reason):

Thanks for posting this, I shall save it.

My impression is that the Rust guys started with the same list :-)

I believe that Rust will replace C and will perhaps wind up in places like
Contiki.  It may find itself being used as a system implementation language
(i.e. as the core for ruby, perl, python).

I believe that GO will replace C++, Java and Python in many "system admin" and
bigger systems like GNOME and the like.  C# has already replaced on windows
for UI stuff, and GO might make inroads among developers that didn't like C#.
GO is clearly optimized by google for google-scale things.

I can't imagine implementing /bin/ls in GO.  /bin/bash in GO? sure.
I'm yet sure I can imagine implementing /bin/ls in Rust.

I'm highly pissed at the universe that all of them
(GO,Rust,Python,Perl,Ruby,Java) each have their own package system.
It seems that much of this has been driven by the lack of a useful packaging
system on Windows.  While the OSX vs BSD vs RedHat vs Debian* level of (system)
packaging is another annoyance, I can mostly live with that.

>> Things to actually do:
    >>
>> * Trust the compiler writer, use C++ to do heavy lifting

+1

--
]   Never tell me the odds! | ipv6 mesh networks [
]   Michael Richardson, Sandelman Software Works| network architect  [
] m...@sandelman.ca  http://www.sandelman.ca/|   ruby on rails[



signature.asc
Description: PGP signature
-- 
Nmh-workers
https://lists.nongnu.org/mailman/listinfo/nmh-workers

Re: [Nmh-workers] What OS/Architecture Do You Run nmh On?

2018-02-13 Thread Michael Richardson

Paul Vixie <p...@redbarn.org> wrote:
> Michael Richardson wrote:
>> ...
>> So what you mean is that you want an MH-like file arrangement 
consistently
>> provided over many transports via FUSE.  I'm with you on this.
>>
>> On top of that, I'd like a personal IMAP server, *solely* so that my 
local copy
>> of Thunderbird (or maybe my smartphone IMAP client) can see my archives, 
and
>> decode HTML emails and iCS attachments intelligently.  Because otherwise 
I
>> mostly live in Emacs/MH-E with HTML interpretation turned off...

> if your archives were in Maildir format, you could run Cyrus IMAPD on
> localhost.

Exactly.  I tried to build the other one (uw-imap?) that had MH support, but
it was too much effort because the "libmh" library was pretty much impossible
to build/configure.

For my archives I'm now thinking that maybe I should just convert it all to
Maildir.  Hmm.

--
]   Never tell me the odds! | ipv6 mesh networks [
]   Michael Richardson, Sandelman Software Works| network architect  [
] m...@sandelman.ca  http://www.sandelman.ca/|   ruby on rails[



signature.asc
Description: PGP signature
-- 
Nmh-workers
https://lists.nongnu.org/mailman/listinfo/nmh-workers

Re: [Nmh-workers] What OS/Architecture Do You Run nmh On?

2018-02-13 Thread Michael Richardson

Ken Hornstein <k...@pobox.com> wrote:
>> We've talked a lot about the subtle change to move MH to Maildir, and we
>> never quite work out all the wrinkles, and I'd sure like to that.

> I hear people say this, and I have to wonder ... what's the goal here?

> If the goal is to share your mailbox with another client (or maybe
> IMAP server) that understands Maildir, okay, fine, I can get that.  But as
> far as I can tell that's the only reason to do it.

I have 2.3G of "Mail" on my desktop, and 1.1G of "Mail" on a bigger server.
(Doesn't sound like that much anymore even though it goes back to 1988...)

Searching both involves grep, and of course, it fails with base64 and other 
stuff.
When my desktop was my laptop (that's another story), I pushed more mail
From it to the bigger server for safer keeping.

I'd like to access my "bigger server" via IMAP.

I'd like to access my desktop Mail via IMAP from localhost, because I
sometimes want to use a MUA which isn't MH.  If a MUA on my desktop spoke
Maildir, then I'd be happy without the IMAP layer.

(In particular, it would be nice to be able to access both from my phone)

I'd actually be totally happy with read-only IMAP.
On the "bigger server", I might even make a new partition and mount it 
read-only.

--
]   Never tell me the odds! | ipv6 mesh networks [
]   Michael Richardson, Sandelman Software Works| network architect  [
] m...@sandelman.ca  http://www.sandelman.ca/|   ruby on rails[



signature.asc
Description: PGP signature
-- 
Nmh-workers
https://lists.nongnu.org/mailman/listinfo/nmh-workers

Re: [Nmh-workers] What OS/Architecture Do You Run nmh On?

2018-02-13 Thread Michael Richardson

Paul Vixie <p...@redbarn.org> wrote:
>> On Mon, 12 Feb 2018 10:33:51 -0800 Paul Vixie<p...@redbarn.org> wrote:
>>> if we wanted the effort of an actual rewrite, we would need to
>>> justify the time expenditure with a potentially larger user
>>> population, which means reconsideration of features that younger
>>> people actually depend on, like imap and mime. i'd be up for that.
>>
>> What specific mime related features do you have in mind?

> i'd like to provide the MH view via FUSE rather than
> files-on-disk. rather than using command line utilities to extract a
> mime part, i want to access it by ~/Mail/inbox/135/part1.exe or
> whatever.

So what you mean is that you want an MH-like file arrangement consistently
provided over many transports via FUSE.  I'm with you on this.

On top of that, I'd like a personal IMAP server, *solely* so that my local copy
of Thunderbird (or maybe my smartphone IMAP client) can see my archives, and
decode HTML emails and iCS attachments intelligently.  Because otherwise I
mostly live in Emacs/MH-E with HTML interpretation turned off...

> what seems to have been lost on the other historians here is that mark
> ignored MH when he made imap, and that bernstein ignored MH when he
> made Maildir -- and both are _better_ than MH for all modern
> purposes. MH is now an eddy pool of the e-mail river.

We've talked a lot about the subtle change to move MH to Maildir, and we
never quite work out all the wrinkles, and I'd sure like to that.

I don't know if rewriting MH in go or rust would be better.
I am half-way through each book (one in each bathroom...).
Either way, I think it needs to be incremental... to maybe wrapping the
(C) library and writing new daemons on top of it would make the most sense.

--
]   Never tell me the odds! | ipv6 mesh networks [
]   Michael Richardson, Sandelman Software Works| network architect  [
] m...@sandelman.ca  http://www.sandelman.ca/|   ruby on rails[



signature.asc
Description: PGP signature
-- 
Nmh-workers
https://lists.nongnu.org/mailman/listinfo/nmh-workers

Re: [Nmh-workers] GCC 8 pre-releases have escaped...

2018-02-06 Thread Michael Richardson

Ken Hornstein <k...@pobox.com> wrote:
> First off .. normally MH memory management has been terrible, because the
> programs are all short-lived.  This makes it hard to do some interesting
> long-term things, like create a set of library routines for other programs

I think it's worth investigating.
The short-lived things need never even call the GC, just exit :-)

--
]   Never tell me the odds! | ipv6 mesh networks [
]   Michael Richardson, Sandelman Software Works| network architect  [
] m...@sandelman.ca  http://www.sandelman.ca/|   ruby on rails[



signature.asc
Description: PGP signature
-- 
Nmh-workers
https://lists.nongnu.org/mailman/listinfo/nmh-workers

Re: [Nmh-workers] IMAP/nmh, again

2017-10-27 Thread Michael Richardson

Ken Hornstein <k...@pobox.com> wrote:
>> connect to the imap service and authenticate
>> open a unix domain socket and listen() to it
>> on each connection:

> So, alright, I admit that you're more experienced than I especially at
> the "big picture", so I want to understand exactly what you're proposing.

> Is this, essentially, a local IMAP proxy?  It keeps local cached state
> about all interesting mailboxes, receives notifications about mailbox
> changes, and serves IMAP out locally to nmh?

According to Paul's original concept, it wouldn't do many of those things
yet, it would just keep the socket open (which keeps our TLS and
authentication state).

> If that is what you mean, then I see the advantages there!  But ... that
> seems complicated.  And ... I think that has been done already?  See:

> http://www.imapproxy.org/

> Is that what you were thinking of?  I mean, modulo a few changes;
> the security bits seem like it would be easy to add to that and listening
> on Unix domain socket would be trivial.

I didn't look at the code, but conceptually it seems right.

> As for security ... well, I can understand if you're the paranoid sort,
> you wouldn't be comfortable putting your password in a .netrc file (it
> seems like pretty much every email application does the equivalent
> nowadays).  Or you COULD use Kerberos.  I know the Cyrus-IMAP supports
> that and I am 100% sure our Kerberos support works fine in nmh.

Part of Paul's point is that the first client to connect has a terminal and
can deal with whatever authentication is needed.

--
Michael Richardson <mcr+i...@sandelman.ca>, Sandelman Software Works
 -= IPv6 IoT consulting =-





signature.asc
Description: PGP signature
___
Nmh-workers mailing list
Nmh-workers@nongnu.org
https://lists.nongnu.org/mailman/listinfo/nmh-workers


  1   2   >