Re: send(1) and Draft-Folder.

2022-12-30 Thread David Levine
Ralph wrote:

> Hi David,
>
> > How about changing all of these man page descriptions:
> >
> > Draft-Folder: To find the default draft-folder
> >
> > to:
> >
> > Draft-Folder: To specify the default draftfolder
> >
> > Removing the hyphen from the second draft-folder helps associate it
> > with the -draftfolder switch, I think.
>
> Is this equivalent?
>
> Draft-Folder: -draftfolder's default

I don't like that, because then I have to figure out how -draftfolder fits in.

David



Re: send(1) and Draft-Folder.

2022-12-30 Thread Ralph Corderoy
Hi David,

> How about changing all of these man page descriptions:
>
> Draft-Folder: To find the default draft-folder
>
> to:
>
> Draft-Folder: To specify the default draftfolder
>
> Removing the hyphen from the second draft-folder helps associate it
> with the -draftfolder switch, I think.

Is this equivalent?

Draft-Folder: -draftfolder's default

-- 
Cheers, Ralph.



Re: valgrind Complaint for test/mhshow/test-charset.

2022-12-30 Thread Ralph Corderoy
Hi David,

> I don't get that complaint here, Fedora 37 with glibc 2.36.

Good to know.  The problem appears on a friend's Manjaro system, an Arch
Linux spin-off, also with glibc 2.36.

> >  ==19813551992192== Invalid read of size 8
> >  ==19813551992192==at 0x4024AC0: strncmp (strcmp-sse2.S:160)
> >  ==19813551992192==by 0x4004EBF: is_dst (dl-load.c:216)
> > ...
> >  ==19813551992192==by 0x4923707: iconv_open (iconv_open.c:39)
>
> I would think that would be suppressed by this in test/valgrind.supp:
>
> {
>iconv_open on Fedora 33
>Memcheck:Addr16
>fun:strncmp
>...
>fun:iconv_open
> }

That's for an invalid address when reading sixteen bytes whereas it says
‘size 8’ above.  I'll add something similar for Addr8.

> And it's clean for me on a non-debug build with all of the compiler
> checks that build_nmh enables.

I've got a few warnings that I've been committing fixes for.

-- 
Cheers, Ralph.



Re: valgrind Complaint for test/mhshow/test-charset.

2022-12-30 Thread David Levine
Ralph wrote:

> I'm getting a repeatable valgrind(1) complaint with
>
> NMH_VALGRIND=1 make TESTS=test/mhshow/test-charset check
>
> on one machine but not the other.  Both are x86_64 but with different
> C libraries, etc.

I don't get that complaint here, Fedora 37 with glibc 2.36.

> I think it's
>
> start_test 'Encoded parameter value'
>
> with the interesting, repetitive, bit of valgrind:
>
>  ==19813551992192== Invalid read of size 8
>  ==19813551992192==at 0x4024AC0: strncmp (strcmp-sse2.S:160)
>  ==19813551992192==by 0x4004EBF: is_dst (dl-load.c:216)
> ...
>  ==19813551992192==by 0x4923707: iconv_open (iconv_open.c:39)

I would think that would be suppressed by this in test/valgrind.supp:

{
   iconv_open on Fedora 33
   Memcheck:Addr16
   fun:strncmp
   ...
   fun:iconv_open
}

Even with that suppression removed, I don't see the complaint.

And it's clean for me on a non-debug build with all of the compiler
checks that build_nmh enables.

David



valgrind Complaint for test/mhshow/test-charset.

2022-12-30 Thread Ralph Corderoy
Hi,

I'm getting a repeatable valgrind(1) complaint with

NMH_VALGRIND=1 make TESTS=test/mhshow/test-charset check

on one machine but not the other.  Both are x86_64 but with different
C libraries, etc.

I think it's

start_test 'Encoded parameter value'

with the interesting, repetitive, bit of valgrind:

 ==19813551992192== Invalid read of size 8
 ==19813551992192==at 0x4024AC0: strncmp (strcmp-sse2.S:160)
 ==19813551992192==by 0x4004EBF: is_dst (dl-load.c:216)
...
 ==19813551992192==by 0x4923707: iconv_open (iconv_open.c:39)
 ==19813551992192==by 0x116A93: get_param_value (mhparse.c:3957)
 ==19813551992192==by 0x116D54: get_param (mhparse.c:3906)
 ==19813551992192==by 0x116D54: content_charset (mhparse.c:3433)
 ==19813551992192==by 0x1184B7: convert_content_charset 
(mhshowsbr.c:1264)
 ==19813551992192==by 0x1184B7: show_content_aux (mhshowsbr.c:373)
 ==19813551992192==by 0x1186B7: show_text (mhshowsbr.c:551)
 ==19813551992192==by 0x118E19: show_single_message (mhshowsbr.c:178)
 ==19813551992192==by 0x119135: show_all_messages (mhshowsbr.c:141)
 ==19813551992192==by 0x10F147: main (mhshow.c:404)
 ==19813551992192==  Address 0x4b80161 is 1 bytes inside a block of size 8 
alloc'd
 ==19813551992192==at 0x4841888: malloc (in 
/usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
 ==19813551992192==by 0x40248AE: malloc (rtld-malloc.h:56)
 ==19813551992192==by 0x40248AE: strdup (strdup.c:42)
 ==19813551992192==by 0x40063D4: decompose_rpath (dl-load.c:629)
...
 ==19813551992192==by 0x4923707: iconv_open (iconv_open.c:39)
 ==19813551992192==by 0x116A93: get_param_value (mhparse.c:3957)
 ==19813551992192==by 0x116D54: get_param (mhparse.c:3906)
 ==19813551992192==by 0x116D54: content_charset (mhparse.c:3433)
 ==19813551992192==by 0x1184B7: convert_content_charset 
(mhshowsbr.c:1264)
 ==19813551992192==by 0x1184B7: show_content_aux (mhshowsbr.c:373)
 ==19813551992192==by 0x1186B7: show_text (mhshowsbr.c:551)
 ==19813551992192==by 0x118E19: show_single_message (mhshowsbr.c:178)
 ==19813551992192==by 0x119135: show_all_messages (mhshowsbr.c:141)
 ==19813551992192==by 0x10F147: main (mhshow.c:404)

It looks to me like the problem lies outside of nmh but I'm wary since
that way lies ‘It's a compiler bug!’ so I thought I'd share with the
list.

-- 
Cheers, Ralph.