Patch: Elm ME+ 2.5 PLalpha54 -> Elm ME+ 2.5 PLalpha60 [0/13] (2/3)
From
Kari Hurtta@21:1/5 to
All on Thu Nov 24 19:53:03 2022
[continued from previous message]
or IMAP login to <host> as <user> ... (verified: <cn name>)
or IMAP login to <host> as <user> ...
- If 'display-check-host' is given use-tls setting,
openssl includes X509_check_host(), hostname is not
ip address, and X509_check_host() succeed, with POP show
POP login to <host> (verified, host matches) as <user> ...
or POP login to <host> as <user> ... (verified, host matches <name>) ...
instead of
POP login to <host> (verified) as <user> ...
or POP login to <host> as <user> ... (verified: <cn name>)
or POP login to <host> as <user> ...
- Fixed POP error messages for reading non-existing
UIDLS file. This error was probably introduced on
Elm ME+ 2.5 PLalpha55
- Added mbx_remote_login_msg() to lib/mbox/def_mbox.h
and lib/mbox/remote_mbx.c
- Fixed crash when folder browser login prompt from #hashmark
is interrupted with Ctrl-C and new hashmark is then
opened:
CONNECTION PANIC in .../lib/mbox/hashmark_remote.c:3080:hashtype_initd_remote
>>>hassmark_data is set
Call stack: 7F6D8A104A14 7F6D8AB4CEFB 7F6D8AB4015D 7F6D8AB54A7B 7F6D8AB554F5
continues: 7F6D8AAE7C9B 7F6D8AAE7FB0 44A036 44D3A3 46DFDC
continues: 44E0A9 44E604 4D5CAA 498A40 499B65
continues: 46B06F 7F6D89881840 420149
backtrace:
.../libelmme-base.so(panic+0x1de)[0x7f6d8a104a14]
.../libelmme-mbox.so(+0xb9efb)[0x7f6d8ab4cefb]
.../libelmme-mbox.so(hashmark_init_data+0x123)[0x7f6d8ab4015d]
.../libelmme-mbox.so(+0xc1a7b)[0x7f6d8ab54a7b]
.../libelmme-mbox.so(+0xc24f5)[0x7f6d8ab554f5]
.../libelmme-mbox.so(select_dir_item_helper+0x108)[0x7f6d8aae7c9b]
.../libelmme-mbox.so(select_dir_item+0x264)[0x7f6d8aae7fb0]
.../elm(browser_expand+0x3c9)[0x44a036]
.../elm[0x44d3a3]
.../elm(enter_helper+0x169c)[0x46dfdc]
.../elm[0x44e0a9]
.../bin/elm(folder_browser+0x160)[0x44e604]
.../bin/elm(change_file+0x19b)[0x4d5caa]
.../bin/elm[0x498a40]
.../bin/elm(main_messages_menu+0x17d)[0x499b65]
.../bin/elm(main+0xf48)[0x46b06f]
/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf0)[0x7f6d89881840]
.../elm(_start+0x29)[0x420149]
Press a <enter> to abort or <enter> to exit:
> Added hashmark_free_data() to browser_change_hashmark()
- Changed address prompt implementation. Some errors may be
reported when TAB or ENTER is pressed. On some situations
address need to be confirmed by pressing ENTER second
time. However all syntax errors are not reported and do not
require confirm with pressing ENTER second time.
- Added prompt_expanded_address() to hdrs/me.h and src/addr_prompt.c
- Added zero_enter_info() to hdrs/me.h and src/enter_helper.c
- Added struct address_edit *address to struct enter_info
- Added alter_buffer_r * alter_buffer to struct enter_info
- Added default_alter_buffer() to hdrs/me.h and src/enter_helper.c
- Changed prototype of enter_helper()
- Added enum token_status status to struct string_token
- Added update_textual_from_tokenized() to hdrs/me.h and
and src/addr_util.c
- Changed prototype of buffer_to_header(), hdr_to_buffer()
- Make hdr_to_buffer() and buffer_to_header()
static for src/hdrconfig.c and removed from hdrs/me.h
- Changed gb_optionally_enter() on src/in_utils.c
- Possible fix to message_W() on src/out_utils.c
- Possible fix to expanded_to_edit_buffer() on src/addr_util.c
- Replaced sprintf() with elm_message() on do_pipe()
at syscall.c
New elmrc option:
use-tls
New file:
src/addr_prompt.c
Changes on Elm ME+ 2.5 PLalpha57 compared with Elm ME+ 2.5 PLalpha56 --------------------------------------------------------------------
SUMMARY: This release removes "USENET supported version"
string and fixes bogus "Failed to stat mail-file"
error message. Also some other small changes
or bugs fixes are included.
- Removed "USENET supported version" from WHAT_STRING
from hdrs/patchlevel.h. Usenet news (nntp) server
news.kolumbus.fi is closed since 2021-05-04, and
Usenet news servers seems rare.
- Checked possible ctime() failure on mbx_copy_envelope_pop()
- Checked possible ctime() failure on real_from() debug
- Checked possible ctime() failure on real_start_we_local()
- Changed %D (expand date) expansion on fileio.c
- Some changes on mbx_mark_keep_normal()
- Checked possible asctime() failure on debug_message()
- Added some FOLDER_INFO_magic checks to lib/mbox/localmbx.c
- Changed to filter_scanlist() on lib/misc/mime_types.c
- Fixed bogus "Failed to stat mail-file" error message.
Changes on Elm ME+ 2.5 PLalpha56 compared with Elm ME+ 2.5 PLalpha55 --------------------------------------------------------------------
SUMMARY: This release fixes crash when alias with empty
address is saved. This releases changes aliases
handling. Unordered ~/.elm/elmaliases is rewritten
on startup if elmrc option "user-conf-rewrite"
is set (default). New option "conf-merge-locking"
controls locking of ~/.elm/elmaliases.
Also elm command includes -b<backup-suffix> option.
This release fixes some memory leaks reported
by valgrind. Also some other changes are included
and bugs fixed.
- Changed aliases to use struct sortlist
and sortlist routines on lib/alias/aliases.c
* Note: This implementation write aliases to file
on order. If that is read on older
versions of ELM ME+, resulting
binary tree degenerates to linear list.
- Changed prototype of aliases_map_lookup_alias()
- Changed prototype of load_aliases_map()
- If elmrc option "user-conf-rewrite" is set (default),
~/.elm/elmaliases is rewritten on elm startup
if aliases are not on order. In that case
backup is saved as ~/.elm/elmaliases.YYYY-MM-DD.bck
if not exists (where YYYY, MM, and DD are numeric
year, month and day).
> However "elm -w" does not write backup when
writing configuration files.
- Elmrc option "user-conf-rewrite" is ignored
and ~/.elm/elmaliases is not written, if
configure file parsing fails.
- Added support that aliases (~/.elm/elmaliases)
are modified on several Elms on same time
and changes are merged when ~/.elm/elmaliases
is saved.
- Aliases file ~/.elm/elmaliases is exclusively
(read-write) locked and read for new changes
before new file ~/.elm/elmaliases.N written
and then renamed to ~/.elm/elmaliases. When lock is
acquired, writer check that is original file changed
(replaced with new file), if it is then file reopened and
locked again before is its read for merge.
- Locking is controlled with new elmrc option
"conf-merge-locking". This lock option
knows following keywords
none None of values are selected
(use value none to disable locking)
flock Use flock() locking. flock()
does not lock files over NFS.
fcntl Use fcntl() locking.
- Added edited_address_alias() to lib/addr/def_alias.h
and lib/addr/address_alias.c
- Added merge_aliases_map() to hdrs/aliaslib.h
and lib/addr/aliases.c
- If some aliases are deleted from ~/.elm/elmaliases
when changes from it is merged to new ~/.elm/elmaliases(.N),
deleted aliases are show with letter 'X' (as eXpunged)
on Alias mode -screen.
- Added aliases_map_deleted_alias() to hdrs/aliaslib.h
and lib/alias/aliases.c
- Changed show_alias_status(), rebuild_aliasview(),
update_aview()
- Added am_deleted_alias() to src/aliases/def_aliases.h
and src/aliases/aliases_map.c
- Fixed '$' command on a)lias -screen that
it does not print "Updating aliases"
if aliases are not deleted or added
(actually .elm/elmaliases is not
written on that situation)
[ That spurious updating message was probably
introduced on Elm ME+ 2.5 PLalpha19 ]
- Changed that '$' command on a)lias -screen
read and merges aliases when .elm/elmaliases
is changed (also when there is no
aliases to be deleted or added for
writing .elm/elmaliases file).
- Added test_file_changes() to hdrs/aliaslib.h and
lib/alias/aliases.c
- Changed prototype of dump_aliases_map()
- Added file_changed_aliasview() to hdrs/me.h and
src/aliases/aliases.c
- Changed prototype of dump_conf_map_f()
- Added -b<backup-suffix> option to elm. Elm checks first that
there is no files in form <config file><backup-suffix> exists
when -b<backup-suffix> option is used.
- Command -wb<backup-suffix> causes that config
file <config file> is preserved as
<config file><backup-suffix> when file <config file> rewritten.
- Option -b<backup-suffix> without -w changes backup
file used with elmrc option "user-conf-rewrite".
- Added check_conf_backup_suffix() and
check_file_backup_suffix() to hdrs/misclib.h
and lib/misc/conf_writer.c
- Changed prototype of save_options()
- Added check_options_backup_suffix() to hdrs/me.h
and src/save_opts.c
* Without -b option ~/.elm/elmrc is saved to
.elm/elmrc.old when -w option is given.
* Note: Backup .elm/elmrc.old is still used
when ~/.elm/elmrc is saved with '>' command
on o)ptions screen.
- Added new_string_sort(), free_string_sort()
and string_sort_cmp(), give_string_from_string_sort()
inc_string_sort_refcount() to hdrs/elmlib.h and
lib/string_sort.c
- Added int refcount; to struct string
- Added inc_string_refcount() to hdrs/cs_imp.h
and lib/string.c
- Added cs_unicode_vector_from_string() to
hdrs/cs_imp.h
- Added cs_unicode_vector_from_default() and
cs_unicode_vector_from_null() to hdrs/cs_imp.h
and lib/string.c
- Changed prototype of safeopen(), safeopen_rdwr(),
register_conf_write(),
write_conf(), search_sort_list_item()
- Changed safeopen(), safeopen_rdwr() to use
common safeopen_core()
- Moved some locking routines from lib/mbox/localmbx.c
to lib/misc/filelock.c
- Added filelock_fd to lib/misc/filelock.c and
hdrs/misclib.h
- Changed GrabRead_the_file(),
Grab_the_file() and Release_the_file()
to use filelock_fd()
- Changed prototype of Release_the_file()
- Changed mbx_syscall_unlock_file to use filelock_fd()
- Fixed valgrind reported memory leak:
124 bytes in 1 blocks are definitely lost in loss record 380 of 511
at 0x4C2FD5F: realloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
by 0x5CDFFF4: safe_realloc (safemalloc.c:115)
by 0x5D3EAAA: strmcat (strmcpy.c:44)
by 0x55C9A46: message_id_func (message-id.c:2261)
by 0x5CAF626: dt_FUNC_print_value (rc_handle.c:1091)
by 0x5CAC88A: dt_DELAY_print_value (rc_delay.c:458)
by 0x5D4D8ED: write_option (write_rc.c:291)
by 0x5D4DD3D: write_rc_part (write_rc.c:407)
by 0x5D4F8AA: write_rc (write_rc.c:919)
by 0x4F1184: save_options (save_opts.c:163)
by 0x489F56: initialize (init.c:715)
by 0x4699EA: main (elm.c:1402)
- Fixed valgrind reported memory leak:
41 bytes in 2 blocks are definitely lost in loss record 323 of 510
at 0x4C2DB8F: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
by 0x5CDFC94: safe_malloc (safemalloc.c:60)
by 0x5C7C05E: cs_stream_from_utf8 (cs_utf.c:747)
by 0x5D3556D: bytestream_from_string (string.c:1482)
by 0x5CAD829: sconvert_to_rcset (rc_handle.c:132)
by 0x5CB7FF0: dt_STRING_print_value (rc_handle.c:4304)
by 0x5D4D8ED: write_option (write_rc.c:291)
by 0x5D4DD3D: write_rc_part (write_rc.c:407)
by 0x5D4F8AA: write_rc (write_rc.c:919)
by 0x4F1184: save_options (save_opts.c:163)
by 0x489F56: initialize (init.c:715)
by 0x4699EA: main (elm.c:1402)
- Fixed crash which occurs when alias with empty address is saved:
SIGNAL PANIC in .../mail/elm-alias/src/signals.c:144:segv_signal
>>>
Segment Violation signal!
Call stack: 7F81788496AC 4FE6E1 7F8177FDB4C0 7F8178D7BEF1 7F8178B56F85
continues: 52F2AE 52A4B1 4299E6 4290E4 466B3D
continues: 497CE4 499584 46ABA0 7F8177FC6840 41FD89
backtrace:
../lib64/libelmme-base.so.1.1.55+(panic+0x1de)[0x7f81788496ac]
../bin/elm(segv_signal+0x80)[0x4fe6e1]
/lib/x86_64-linux-gnu/libc.so.6(+0x354c0)[0x7f8177fdb4c0]
../lib64/libelmme-addr.so.1.1.55+(address_to_str+0x8f)[0x7f8178d7bef1]
../lib64/libelmme-alias.so.1.1.55+(dump_aliases_map+0x78d)[0x7f8178b56f85]
- Added address_is_empty() to hdrs/addrlib and lib/addr/address.c
- Changed parse_one_tokenized_address() on lib/addr/parsestring.c
- Changed parse_one_address() on lib/addr/getaddr.c
- Changed ad_set_alias_person_address() on arc/alias-display.c
- Changed alias_info_update() on src/alias_info.c
- Changed sb_update_alias_info_part on arc/alias-display.c
- Changed do_expand_alias_tail() on lib/alias/aliasexpand.c
- Changed some hdrs/elm_defs.h defines to enum
- Changed thread view to use struct sortlist
and sortlist routines on lib/alias/aliases.c
- Added fix for handling of invalid date
to update_mailbox_threads() on src/messages/thread.c
- Used struct string_sort on struct thread_info
- Changed time_sent_compare()
- Changed compare_threads_1()
- Added compare_threads_1_sentd(),
compare_threads_1_revsentd() to hdrs/me.h
and src/thread.c
- Fixed valgrind reported memory leak:
57,204 (45,880 direct, 11,324 indirect) bytes in 1 blocks are definitely lost in loss record 1,608 of 1,614
at 0x4C2FD5F: realloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
by 0x5CE87EE: safe_array_realloc (safemalloc.c:263)
by 0x50CD9A: sort_threads (thread.c:305)
by 0x51085C: ViewThreads (thread.c:1522)
by 0x46F649: h_view_threads (extended.c:285)
by 0x4706AF: extended_command (extended.c:782)
by 0x467459: mailbox_command (elm.c:301)
by 0x4981FB: main_messages_loop (mailbox.c:315)
by 0x499A9B: main_messages_menu (mailbox.c:964)
by 0x46B09E: main (elm.c:1677)
- Cast dev_t and ino_t to long on printing.
New elmrc options:
user-conf-rewrite
conf-merge-locking
New files:
lib/misc/filelock.c
hdrs/filelock.h
lib/string_sort.c
Changes on Elm ME+ 2.5 PLalpha55 compared with Elm ME+ 2.5 PLalpha54 --------------------------------------------------------------------
SUMMARY: This release fixes some memory errors reported
by valgrind. Delivery status notifications (DSNs)
are stored to =dsn folder instead of =received
folder when mailbox is leaved with new elmrc
option "dsnmail" on this release. This release
changes how UIDL listing of POP mailboxes are
handled. This release adds new "dsn" criteria
to l)imit command. This release changes default
target for DSN mail on s)save command to folder
given on elmrc option "dsnmail".
- Added elmrc option "dsnmail", which default value is "=dsn".
If this is set (not none), read delivery status notifications
are stored that folder and not to folder specified on
"receivedmail". Also default folder for delivery status
notifications is folder given on elmrc option "dsnmail", when
using s)ave command.
* Setting
dsnmail = none
disabled special processing of delivery status notifications
when mailbox is left.
* s)ave command does not use elmrc option "dsnmail", if
that folder is already open. If "folder-locking" is
enabled, saving to open folder does not work.
- Reserved [...] for folder name tags on folder expansion.
- Tag [dsn] indicates folder given on elmrc option "dsnmail".
- Added mime_type_is_dsn() to melib/mime.c and hdrs/melib.h
* Only Content-Type
multipart/report; report-type=delivery-status
is considered to be delivery status notification.
- Added letter 'd' as second status letter on mailbox menu
for delivery status notification.
- Changed how messages are saved on sync_mbox()
- Added question
Move read notifications to "dsn" folder? (y/n)
or
Move read notifications to "dsn" or r)eceived folder? (y/n/r)
- Question
Keep unread message in incoming mailbox? (y/n)
apply only to same type messages (normal or dsn)
than which unread messages are moved to received
or dsn folder.
* If
Move read messages to "received" folder? (y/n)
or
Move read notifications to "dsn" folder? (y/n)
is answered 'n' (no), then also unread messages
are also kept, even when question
Keep unread message in incoming mailbox? (y/n)
is answered 'n' (no).
- Changed question
Keep unread message in incoming mailbox? (y/n)
to
Keep unread notifications in incoming mailbox? (y/n) y
when all unread messages are delivery status
notifications.
- Changed initialization of "receivedmail" and "sentmail"
elmrc options.
- Changed how default target is handled on save()
- Added "dsn" to l)imit criteria.
- Added lib/sortlist.c
- Added alloc_sort_list(), free_sort_list(),
prealloc_sort_list(), sort_list_len(),
get_sort_list_item(), get_sort_list_debug_name(),
and search_sort_list_item()
to hdrs/elmlib.h and lib/sortlist.c
* search_sort_list_item() is generalization of
give_resolv_cache() from shared_libs/resolv/resolv.c
- Changed cache_items to use struct sortlist
and sortlist routines on
shared_libs/resolv/resolv.c
- Changed POP uidl cache to use struct sortlist
and sortlist routines on shared_libs/resolv/resolv.c
* Note: This implementation write uidls to file
on order. If that is read on older
versions of ELM ME+, resulting
binary tree degenerates to linear list.
- This release removes old unused UIDLs,
which are no longer on mailbox, from POP uidl cache.
- Exported GrabRead_the_file() from lib/mbox/localmbx.c
and added to hdrs/mboxlib.h
- Clear new part of allocated area
on resize_resolv_message()
- Possibly fixed valgrind reported error:
Syscall param sendmsg(msg.msg_iov[0]) points to uninitialised byte(s)
at 0x6505590: __sendmsg_nocancel (syscall-template.S:84)
by 0x7A2A746: write_message (query.c:437)
by 0x7A31F95: resolv_write_message (query.c:2547)
by 0x5CEA1D6: real_wait_select (schedule.c:2017)
by 0x5CED01D: real_wait (schedule.c:2500)
by 0x5CEEBF5: wait_for_something (schedule.c:2829)
by 0x5CF0C71: wait_for_action_or_timeout_settime_c (schedule.c:3241)
by 0x7A38CC5: resolv_wait_answer (query.c:4143)
by 0x7A3AE7F: end_query_helper (query.c:4810)
by 0x7A3B969: lookup_resolv_cache_nonblocked (query.c:5020)
by 0x7A21396: call_lookup_resolv_cache (resolv.c:3853)
by 0x7A1F5CE: fill_query_resolv_cache (resolv.c:3081)
Address 0x8aacfc4 is 84 bytes inside a block of size 152 alloc'd
at 0x4C2DB8F: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
by 0x5CD25D1: safe_zero_alloc (safemalloc.c:85)
by 0x7A2C211: new_resolv_message_state (query.c:1051)
by 0x7A33014: give_resolv_process (query.c:2788)
by 0x7A33C0D: have_non_blocking_qm (query.c:2958)
by 0x7A23F92: lookup_service_addresses2 (resolv.c:4654)
by 0x5CDC140: process_one_address_lookup (shared_connect.c:511)
by 0x5CDC250: shared_address_lookup (shared_connect.c:568)
by 0x5CFE110: service_entry_hook (service_list.c:2681)
by 0x5D000B3: gse_scan_hostname (service_list.c:3277)
by 0x5D02B37: give_service_entry5 (service_list.c:4129)
by 0x535B87B: htrem_give_service_entry (hashmark_remote.c:3521)
Uninitialised value was created by a stack allocation
at 0x7A3114B: resolv_write_message (query.c:2359)
- Possibly fixed valgrind reported error:
Syscall param sendmsg(msg.msg_iov[0]) points to uninitialised byte(s)
at 0x6505590: __sendmsg_nocancel (syscall-template.S:84)
by 0x7A2A746: write_message (query.c:439)
by 0x7A32044: resolv_write_message (query.c:2564)
by 0x5CEA1D6: real_wait_select (schedule.c:2017)
by 0x5CED01D: real_wait (schedule.c:2500)
by 0x5CEEBF5: wait_for_something (schedule.c:2829)
by 0x5CF1D5A: wait_for_action_or_deadline_settime_c (schedule.c:3479)
by 0x7A38E37: resolv_wait_answer (query.c:4171)
by 0x7A3AF2E: end_query_helper (query.c:4827)
by 0x7A3BA18: lookup_resolv_cache_nonblocked (query.c:5037)
by 0x7A21396: call_lookup_resolv_cache (resolv.c:3853)
by 0x7A1F5CE: fill_query_resolv_cache (resolv.c:3081)
Address 0x8a896b4 is 84 bytes inside a block of size 152 alloc'd
at 0x4C2DB8F: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
by 0x5CD25D1: safe_zero_alloc (safemalloc.c:85)
by 0x7A2C211: new_resolv_message_state (query.c:1053)
by 0x7A330C3: give_resolv_process (query.c:2805)
by 0x7A33CBC: have_non_blocking_qm (query.c:2975)
by 0x7A23F92: lookup_service_addresses2 (resolv.c:4654)
by 0x5CDC140: process_one_address_lookup (shared_connect.c:511)
by 0x5CDC250: shared_address_lookup (shared_connect.c:568)
by 0x5CFE110: service_entry_hook (service_list.c:2681)
by 0x5D000B3: gse_scan_hostname (service_list.c:3277)
by 0x5D02B37: give_service_entry5 (service_list.c:4129)
by 0x535B87B: htrem_give_service_entry (hashmark_remote.c:3521)
Uninitialised value was created by a heap allocation
at 0x4C2DB8F: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
by 0x5CD2445: safe_malloc (safemalloc.c:60)
by 0x7A2984B: new_resolv_query_hdr (query.c:63)
by 0x7A37181: query_one_name (query.c:3769)
by 0x7A3B9D9: lookup_resolv_cache_nonblocked (query.c:5031)
by 0x7A21396: call_lookup_resolv_cache (resolv.c:3853)
by 0x7A1F5CE: fill_query_resolv_cache (resolv.c:3081)
by 0x7A1FE26: query_resolv_cache (resolv.c:3311)
by 0x7A260AF: lookup_service_addresses2 (resolv.c:5037)
by 0x5CDC140: process_one_address_lookup (shared_connect.c:511)
by 0x5CDC250: shared_address_lookup (shared_connect.c:568)
by 0x5CFE110: service_entry_hook (service_list.c:2681)
- Used bzero() for union xxx_rand initialization of
real_wait_select() and real_wait_poll(). This tries
avoid valgrind's uninitialized memory warnings
(although uninitialized bytes does not really harm
because that data is feed to random generator).
- Added int nested_FreeStreamStack0; to struct streamsched
- Fixed valgrind reported error:
Invalid read of size 8
at 0x5D1C5CC: ss_FreeSocket (streamsched.c:235)
by 0x5D1DD96: free_stack (streamsched.c:757)
by 0x5D21D4D: FreeStreamStack0 (streamsched.c:1931)
by 0x5D21EA6: FreeStreamStack2 (streamsched.c:1966)
by 0x5316A2C: mbx_close_pop (pop.c:1851)
by 0x52BB7AC: close_folder (mbox.c:1038)
by 0x48E471: close_cleanup_mbox (leavembox.c:745)
by 0x4D475A: quit (quit.c:150)
by 0x498AB5: main_messages_loop (mailbox.c:819)
by 0x498EB2: main_messages_menu (mailbox.c:964)
by 0x46A5BC: main (elm.c:1677)
Address 0x8ab2270 is 80 bytes inside a block of size 104 free'd
at 0x4C2EDEB: free (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
by 0x5CD34C5: safe_free (safemalloc.c:354)
by 0x5D21E51: FreeStreamStack0 (streamsched.c:1950)
by 0x5D1DAF2: free_ss_data (streamsched.c:704)
by 0x5CE1509: remove_action0 (schedule.c:175)
by 0x5CE4942: clear_action_idx (schedule.c:812)
by 0x5CE4AEE: clear_action0 (schedule.c:837)
by 0x5D1C5C7: ss_FreeSocket (streamsched.c:231)
by 0x5D1DD96: free_stack (streamsched.c:757)
by 0x5D21D4D: FreeStreamStack0 (streamsched.c:1931)
by 0x5D21EA6: FreeStreamStack2 (streamsched.c:1966)
by 0x5316A2C: mbx_close_pop (pop.c:1851)
by 0x52BB7AC: close_folder (mbox.c:1038)
by 0x48E471: close_cleanup_mbox (leavembox.c:745)
by 0x4D475A: quit (quit.c:150)
by 0x498AB5: main_messages_loop (mailbox.c:819)
by 0x498EB2: main_messages_menu (mailbox.c:964)
by 0x46A5BC: main (elm.c:1677)
Block was alloc'd at
at 0x4C2DB8F: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
by 0x5CD25D1: safe_zero_alloc (safemalloc.c:85)
by 0x5D21660: returnSimpleStream (streamsched.c:1771)
by 0x5CCCC17: connect_remote_account (remote_mbx.c:4189)
by 0x535CC35: htrem_have_connection (hashmark_remote.c:3897)
by 0x535E5F9: hashtype_selectbr_item_remote (hashmark_remote.c:4415)
by 0x534E16F: hashmark_selectbr_item (hashmark.c:2789)
by 0x53619FE: browser_select_hashmark (hashmark_browser.c:402)
by 0x52F6C1A: select_dir_item_helper (savefolder.c:5029)
by 0x52F6F2F: select_dir_item (savefolder.c:5088)
by 0x44958D: browser_expand (browser.c:707)
by 0x44C8FA: gb_browser (browser.c:1966)
by 0x46D509: enter_helper (enter_helper.c:426)
by 0x44D600: run_browser (browser.c:2326)
by 0x450010: gen_browser (browser.c:3334)
by 0x488220: select_folder (init.c:89)
by 0x48A9F9: initialize_mailbox (init.c:980)
by 0x498E4E: main_messages_menu (mailbox.c:951)
by 0x46A5BC: main (elm.c:1677)
- Possibly fixed valgrind reported error:
Syscall param sendmsg(msg.msg_iov[0]) points to uninitialised byte(s)
at 0x6505590: __sendmsg_nocancel (syscall-template.S:84)
by 0x7A2A746: write_message (query.c:444)
by 0x7A32044: resolv_write_message (query.c:2573)
by 0x5CEA1EF: real_wait_select (schedule.c:2021)
by 0x5CED04C: real_wait (schedule.c:2509)
by 0x5CEEC24: wait_for_something (schedule.c:2838)
by 0x5CF0DEC: wait_for_action_or_timeout (schedule.c:3271)
by 0x7A34BC4: free_non_blocking_qm (query.c:3235)
by 0x7A295F6: free_shared_cache (resolv.c:5948)
by 0x5CD9D80: free_shared_cache1 (shared.c:2010)
by 0x5CDA184: free_shared_caches (shared.c:2067)
by 0x50AD0E: leave (utils.c:440)
by 0x46A78B: main (elm.c:1719)
Address 0x8a72914 is 84 bytes inside a block of size 152 alloc'd
at 0x4C2DB8F: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
by 0x5CD25D1: safe_zero_alloc (safemalloc.c:85)
by 0x7A2C211: new_resolv_message_state (query.c:1058)
by 0x7A330C3: give_resolv_process (query.c:2814)
by 0x7A33CBC: have_non_blocking_qm (query.c:2984)
by 0x7A23F92: lookup_service_addresses2 (resolv.c:4654)
by 0x5CDC140: process_one_address_lookup (shared_connect.c:511)
by 0x5CDC250: shared_address_lookup (shared_connect.c:568)
by 0x5CFE13F: service_entry_hook (service_list.c:2681)
by 0x5D000E2: gse_scan_hostname (service_list.c:3277)
by 0x5D02B66: give_service_entry5 (service_list.c:4129)
by 0x535B87B: htrem_give_service_entry (hashmark_remote.c:3521)
by 0x535C89F: htrem_have_connection (hashmark_remote.c:3829)
by 0x535E5F9: hashtype_selectbr_item_remote (hashmark_remote.c:4415)
by 0x534E16F: hashmark_selectbr_item (hashmark.c:2789)
by 0x53619FE: browser_select_hashmark (hashmark_browser.c:402)
by 0x52F6C1A: select_dir_item_helper (savefolder.c:5029)
by 0x52F6F2F: select_dir_item (savefolder.c:5088)
by 0x44958D: browser_expand (browser.c:707)
by 0x44C8FA: gb_browser (browser.c:1966)
Uninitialised value was created by a stack allocation
at 0x7A17790: ??? (in /tmp/TEST/lib64/libelmme-resolv.so.1.1.54+)
- Fixed valgrind reported memory leak:
6 bytes in 2 blocks are definitely lost in loss record 125 of 3,254
at 0x4C2DB8F: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
by 0x5CD2445: safe_malloc (safemalloc.c:60)
by 0x531C832: pop_got_line (pop.c:3636)
by 0x531CF8E: mbx_copy_header_pop (pop.c:3771)
by 0x52C5E72: copy_header_folder (mbox.c:3495)
[continued in next message]
--- SoupGate-Win32 v1.05
* Origin: fsxNet Usenet Gateway (21:1/5)
From
Kari Hurtta@21:1/5 to
All on Thu Nov 24 20:18:28 2022
[continued from previous message]
or IMAP login to <host> as <user> ... (verified: <cn name>)
or IMAP login to <host> as <user> ...
- If 'display-check-host' is given use-tls setting,
openssl includes X509_check_host(), hostname is not
ip address, and X509_check_host() succeed, with POP show
POP login to <host> (verified, host matches) as <user> ...
or POP login to <host> as <user> ... (verified, host matches <name>) ...
instead of
POP login to <host> (verified) as <user> ...
or POP login to <host> as <user> ... (verified: <cn name>)
or POP login to <host> as <user> ...
- Fixed POP error messages for reading non-existing
UIDLS file. This error was probably introduced on
Elm ME+ 2.5 PLalpha55
- Added mbx_remote_login_msg() to lib/mbox/def_mbox.h
and lib/mbox/remote_mbx.c
- Fixed crash when folder browser login prompt from #hashmark
is interrupted with Ctrl-C and new hashmark is then
opened:
CONNECTION PANIC in .../lib/mbox/hashmark_remote.c:3080:hashtype_initd_remote
>>>hassmark_data is set
Call stack: 7F6D8A104A14 7F6D8AB4CEFB 7F6D8AB4015D 7F6D8AB54A7B 7F6D8AB554F5
continues: 7F6D8AAE7C9B 7F6D8AAE7FB0 44A036 44D3A3 46DFDC
continues: 44E0A9 44E604 4D5CAA 498A40 499B65
continues: 46B06F 7F6D89881840 420149
backtrace:
.../libelmme-base.so(panic+0x1de)[0x7f6d8a104a14]
.../libelmme-mbox.so(+0xb9efb)[0x7f6d8ab4cefb]
.../libelmme-mbox.so(hashmark_init_data+0x123)[0x7f6d8ab4015d]
.../libelmme-mbox.so(+0xc1a7b)[0x7f6d8ab54a7b]
.../libelmme-mbox.so(+0xc24f5)[0x7f6d8ab554f5]
.../libelmme-mbox.so(select_dir_item_helper+0x108)[0x7f6d8aae7c9b]
.../libelmme-mbox.so(select_dir_item+0x264)[0x7f6d8aae7fb0]
.../elm(browser_expand+0x3c9)[0x44a036]
.../elm[0x44d3a3]
.../elm(enter_helper+0x169c)[0x46dfdc]
.../elm[0x44e0a9]
.../bin/elm(folder_browser+0x160)[0x44e604]
.../bin/elm(change_file+0x19b)[0x4d5caa]
.../bin/elm[0x498a40]
.../bin/elm(main_messages_menu+0x17d)[0x499b65]
.../bin/elm(main+0xf48)[0x46b06f]
/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf0)[0x7f6d89881840]
.../elm(_start+0x29)[0x420149]
Press a <enter> to abort or <enter> to exit:
> Added hashmark_free_data() to browser_change_hashmark()
- Changed address prompt implementation. Some errors may be
reported when TAB or ENTER is pressed. On some situations
address need to be confirmed by pressing ENTER second
time. However all syntax errors are not reported and do not
require confirm with pressing ENTER second time.
- Added prompt_expanded_address() to hdrs/me.h and src/addr_prompt.c
- Added zero_enter_info() to hdrs/me.h and src/enter_helper.c
- Added struct address_edit *address to struct enter_info
- Added alter_buffer_r * alter_buffer to struct enter_info
- Added default_alter_buffer() to hdrs/me.h and src/enter_helper.c
- Changed prototype of enter_helper()
- Added enum token_status status to struct string_token
- Added update_textual_from_tokenized() to hdrs/me.h and
and src/addr_util.c
- Changed prototype of buffer_to_header(), hdr_to_buffer()
- Make hdr_to_buffer() and buffer_to_header()
static for src/hdrconfig.c and removed from hdrs/me.h
- Changed gb_optionally_enter() on src/in_utils.c
- Possible fix to message_W() on src/out_utils.c
- Possible fix to expanded_to_edit_buffer() on src/addr_util.c
- Replaced sprintf() with elm_message() on do_pipe()
at syscall.c
New elmrc option:
use-tls
New file:
src/addr_prompt.c
Changes on Elm ME+ 2.5 PLalpha57 compared with Elm ME+ 2.5 PLalpha56 --------------------------------------------------------------------
SUMMARY: This release removes "USENET supported version"
string and fixes bogus "Failed to stat mail-file"
error message. Also some other small changes
or bugs fixes are included.
- Removed "USENET supported version" from WHAT_STRING
from hdrs/patchlevel.h. Usenet news (nntp) server
news.kolumbus.fi is closed since 2021-05-04, and
Usenet news servers seems rare.
- Checked possible ctime() failure on mbx_copy_envelope_pop()
- Checked possible ctime() failure on real_from() debug
- Checked possible ctime() failure on real_start_we_local()
- Changed %D (expand date) expansion on fileio.c
- Some changes on mbx_mark_keep_normal()
- Checked possible asctime() failure on debug_message()
- Added some FOLDER_INFO_magic checks to lib/mbox/localmbx.c
- Changed to filter_scanlist() on lib/misc/mime_types.c
- Fixed bogus "Failed to stat mail-file" error message.
Changes on Elm ME+ 2.5 PLalpha56 compared with Elm ME+ 2.5 PLalpha55 --------------------------------------------------------------------
SUMMARY: This release fixes crash when alias with empty
address is saved. This releases changes aliases
handling. Unordered ~/.elm/elmaliases is rewritten
on startup if elmrc option "user-conf-rewrite"
is set (default). New option "conf-merge-locking"
controls locking of ~/.elm/elmaliases.
Also elm command includes -b<backup-suffix> option.
This release fixes some memory leaks reported
by valgrind. Also some other changes are included
and bugs fixed.
- Changed aliases to use struct sortlist
and sortlist routines on lib/alias/aliases.c
* Note: This implementation write aliases to file
on order. If that is read on older
versions of ELM ME+, resulting
binary tree degenerates to linear list.
- Changed prototype of aliases_map_lookup_alias()
- Changed prototype of load_aliases_map()
- If elmrc option "user-conf-rewrite" is set (default),
~/.elm/elmaliases is rewritten on elm startup
if aliases are not on order. In that case
backup is saved as ~/.elm/elmaliases.YYYY-MM-DD.bck
if not exists (where YYYY, MM, and DD are numeric
year, month and day).
> However "elm -w" does not write backup when
writing configuration files.
- Elmrc option "user-conf-rewrite" is ignored
and ~/.elm/elmaliases is not written, if
configure file parsing fails.
- Added support that aliases (~/.elm/elmaliases)
are modified on several Elms on same time
and changes are merged when ~/.elm/elmaliases
is saved.
- Aliases file ~/.elm/elmaliases is exclusively
(read-write) locked and read for new changes
before new file ~/.elm/elmaliases.N written
and then renamed to ~/.elm/elmaliases. When lock is
acquired, writer check that is original file changed
(replaced with new file), if it is then file reopened and
locked again before is its read for merge.
- Locking is controlled with new elmrc option
"conf-merge-locking". This lock option
knows following keywords
none None of values are selected
(use value none to disable locking)
flock Use flock() locking. flock()
does not lock files over NFS.
fcntl Use fcntl() locking.
- Added edited_address_alias() to lib/addr/def_alias.h
and lib/addr/address_alias.c
- Added merge_aliases_map() to hdrs/aliaslib.h
and lib/addr/aliases.c
- If some aliases are deleted from ~/.elm/elmaliases
when changes from it is merged to new ~/.elm/elmaliases(.N),
deleted aliases are show with letter 'X' (as eXpunged)
on Alias mode -screen.
- Added aliases_map_deleted_alias() to hdrs/aliaslib.h
and lib/alias/aliases.c
- Changed show_alias_status(), rebuild_aliasview(),
update_aview()
- Added am_deleted_alias() to src/aliases/def_aliases.h
and src/aliases/aliases_map.c
- Fixed '$' command on a)lias -screen that
it does not print "Updating aliases"
if aliases are not deleted or added
(actually .elm/elmaliases is not
written on that situation)
[ That spurious updating message was probably
introduced on Elm ME+ 2.5 PLalpha19 ]
- Changed that '$' command on a)lias -screen
read and merges aliases when .elm/elmaliases
is changed (also when there is no
aliases to be deleted or added for
writing .elm/elmaliases file).
- Added test_file_changes() to hdrs/aliaslib.h and
lib/alias/aliases.c
- Changed prototype of dump_aliases_map()
- Added file_changed_aliasview() to hdrs/me.h and
src/aliases/aliases.c
- Changed prototype of dump_conf_map_f()
- Added -b<backup-suffix> option to elm. Elm checks first that
there is no files in form <config file><backup-suffix> exists
when -b<backup-suffix> option is used.
- Command -wb<backup-suffix> causes that config
file <config file> is preserved as
<config file><backup-suffix> when file <config file> rewritten.
- Option -b<backup-suffix> without -w changes backup
file used with elmrc option "user-conf-rewrite".
- Added check_conf_backup_suffix() and
check_file_backup_suffix() to hdrs/misclib.h
and lib/misc/conf_writer.c
- Changed prototype of save_options()
- Added check_options_backup_suffix() to hdrs/me.h
and src/save_opts.c
* Without -b option ~/.elm/elmrc is saved to
.elm/elmrc.old when -w option is given.
* Note: Backup .elm/elmrc.old is still used
when ~/.elm/elmrc is saved with '>' command
on o)ptions screen.
- Added new_string_sort(), free_string_sort()
and string_sort_cmp(), give_string_from_string_sort()
inc_string_sort_refcount() to hdrs/elmlib.h and
lib/string_sort.c
- Added int refcount; to struct string
- Added inc_string_refcount() to hdrs/cs_imp.h
and lib/string.c
- Added cs_unicode_vector_from_string() to
hdrs/cs_imp.h
- Added cs_unicode_vector_from_default() and
cs_unicode_vector_from_null() to hdrs/cs_imp.h
and lib/string.c
- Changed prototype of safeopen(), safeopen_rdwr(),
register_conf_write(),
write_conf(), search_sort_list_item()
- Changed safeopen(), safeopen_rdwr() to use
common safeopen_core()
- Moved some locking routines from lib/mbox/localmbx.c
to lib/misc/filelock.c
- Added filelock_fd to lib/misc/filelock.c and
hdrs/misclib.h
- Changed GrabRead_the_file(),
Grab_the_file() and Release_the_file()
to use filelock_fd()
- Changed prototype of Release_the_file()
- Changed mbx_syscall_unlock_file to use filelock_fd()
- Fixed valgrind reported memory leak:
124 bytes in 1 blocks are definitely lost in loss record 380 of 511
at 0x4C2FD5F: realloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
by 0x5CDFFF4: safe_realloc (safemalloc.c:115)
by 0x5D3EAAA: strmcat (strmcpy.c:44)
by 0x55C9A46: message_id_func (message-id.c:2261)
by 0x5CAF626: dt_FUNC_print_value (rc_handle.c:1091)
by 0x5CAC88A: dt_DELAY_print_value (rc_delay.c:458)
by 0x5D4D8ED: write_option (write_rc.c:291)
by 0x5D4DD3D: write_rc_part (write_rc.c:407)
by 0x5D4F8AA: write_rc (write_rc.c:919)
by 0x4F1184: save_options (save_opts.c:163)
by 0x489F56: initialize (init.c:715)
by 0x4699EA: main (elm.c:1402)
- Fixed valgrind reported memory leak:
41 bytes in 2 blocks are definitely lost in loss record 323 of 510
at 0x4C2DB8F: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
by 0x5CDFC94: safe_malloc (safemalloc.c:60)
by 0x5C7C05E: cs_stream_from_utf8 (cs_utf.c:747)
by 0x5D3556D: bytestream_from_string (string.c:1482)
by 0x5CAD829: sconvert_to_rcset (rc_handle.c:132)
by 0x5CB7FF0: dt_STRING_print_value (rc_handle.c:4304)
by 0x5D4D8ED: write_option (write_rc.c:291)
by 0x5D4DD3D: write_rc_part (write_rc.c:407)
by 0x5D4F8AA: write_rc (write_rc.c:919)
by 0x4F1184: save_options (save_opts.c:163)
by 0x489F56: initialize (init.c:715)
by 0x4699EA: main (elm.c:1402)
- Fixed crash which occurs when alias with empty address is saved:
SIGNAL PANIC in .../mail/elm-alias/src/signals.c:144:segv_signal
>>>
Segment Violation signal!
Call stack: 7F81788496AC 4FE6E1 7F8177FDB4C0 7F8178D7BEF1 7F8178B56F85
continues: 52F2AE 52A4B1 4299E6 4290E4 466B3D
continues: 497CE4 499584 46ABA0 7F8177FC6840 41FD89
backtrace:
../lib64/libelmme-base.so.1.1.55+(panic+0x1de)[0x7f81788496ac]
../bin/elm(segv_signal+0x80)[0x4fe6e1]
/lib/x86_64-linux-gnu/libc.so.6(+0x354c0)[0x7f8177fdb4c0]
../lib64/libelmme-addr.so.1.1.55+(address_to_str+0x8f)[0x7f8178d7bef1]
../lib64/libelmme-alias.so.1.1.55+(dump_aliases_map+0x78d)[0x7f8178b56f85]
- Added address_is_empty() to hdrs/addrlib and lib/addr/address.c
- Changed parse_one_tokenized_address() on lib/addr/parsestring.c
- Changed parse_one_address() on lib/addr/getaddr.c
- Changed ad_set_alias_person_address() on arc/alias-display.c
- Changed alias_info_update() on src/alias_info.c
- Changed sb_update_alias_info_part on arc/alias-display.c
- Changed do_expand_alias_tail() on lib/alias/aliasexpand.c
- Changed some hdrs/elm_defs.h defines to enum
- Changed thread view to use struct sortlist
and sortlist routines on lib/alias/aliases.c
- Added fix for handling of invalid date
to update_mailbox_threads() on src/messages/thread.c
- Used struct string_sort on struct thread_info
- Changed time_sent_compare()
- Changed compare_threads_1()
- Added compare_threads_1_sentd(),
compare_threads_1_revsentd() to hdrs/me.h
and src/thread.c
- Fixed valgrind reported memory leak:
57,204 (45,880 direct, 11,324 indirect) bytes in 1 blocks are definitely lost in loss record 1,608 of 1,614
at 0x4C2FD5F: realloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
by 0x5CE87EE: safe_array_realloc (safemalloc.c:263)
by 0x50CD9A: sort_threads (thread.c:305)
by 0x51085C: ViewThreads (thread.c:1522)
by 0x46F649: h_view_threads (extended.c:285)
by 0x4706AF: extended_command (extended.c:782)
by 0x467459: mailbox_command (elm.c:301)
by 0x4981FB: main_messages_loop (mailbox.c:315)
by 0x499A9B: main_messages_menu (mailbox.c:964)
by 0x46B09E: main (elm.c:1677)
- Cast dev_t and ino_t to long on printing.
New elmrc options:
user-conf-rewrite
conf-merge-locking
New files:
lib/misc/filelock.c
hdrs/filelock.h
lib/string_sort.c
Changes on Elm ME+ 2.5 PLalpha55 compared with Elm ME+ 2.5 PLalpha54 --------------------------------------------------------------------
SUMMARY: This release fixes some memory errors reported
by valgrind. Delivery status notifications (DSNs)
are stored to =dsn folder instead of =received
folder when mailbox is leaved with new elmrc
option "dsnmail" on this release. This release
changes how UIDL listing of POP mailboxes are
handled. This release adds new "dsn" criteria
to l)imit command. This release changes default
target for DSN mail on s)save command to folder
given on elmrc option "dsnmail".
- Added elmrc option "dsnmail", which default value is "=dsn".
If this is set (not none), read delivery status notifications
are stored that folder and not to folder specified on
"receivedmail". Also default folder for delivery status
notifications is folder given on elmrc option "dsnmail", when
using s)ave command.
* Setting
dsnmail = none
disabled special processing of delivery status notifications
when mailbox is left.
* s)ave command does not use elmrc option "dsnmail", if
that folder is already open. If "folder-locking" is
enabled, saving to open folder does not work.
- Reserved [...] for folder name tags on folder expansion.
- Tag [dsn] indicates folder given on elmrc option "dsnmail".
- Added mime_type_is_dsn() to melib/mime.c and hdrs/melib.h
* Only Content-Type
multipart/report; report-type=delivery-status
is considered to be delivery status notification.
- Added letter 'd' as second status letter on mailbox menu
for delivery status notification.
- Changed how messages are saved on sync_mbox()
- Added question
Move read notifications to "dsn" folder? (y/n)
or
Move read notifications to "dsn" or r)eceived folder? (y/n/r)
- Question
Keep unread message in incoming mailbox? (y/n)
apply only to same type messages (normal or dsn)
than which unread messages are moved to received
or dsn folder.
* If
Move read messages to "received" folder? (y/n)
or
Move read notifications to "dsn" folder? (y/n)
is answered 'n' (no), then also unread messages
are also kept, even when question
Keep unread message in incoming mailbox? (y/n)
is answered 'n' (no).
- Changed question
Keep unread message in incoming mailbox? (y/n)
to
Keep unread notifications in incoming mailbox? (y/n) y
when all unread messages are delivery status
notifications.
- Changed initialization of "receivedmail" and "sentmail"
elmrc options.
- Changed how default target is handled on save()
- Added "dsn" to l)imit criteria.
- Added lib/sortlist.c
- Added alloc_sort_list(), free_sort_list(),
prealloc_sort_list(), sort_list_len(),
get_sort_list_item(), get_sort_list_debug_name(),
and search_sort_list_item()
to hdrs/elmlib.h and lib/sortlist.c
* search_sort_list_item() is generalization of
give_resolv_cache() from shared_libs/resolv/resolv.c
- Changed cache_items to use struct sortlist
and sortlist routines on
shared_libs/resolv/resolv.c
- Changed POP uidl cache to use struct sortlist
and sortlist routines on shared_libs/resolv/resolv.c
* Note: This implementation write uidls to file
on order. If that is read on older
versions of ELM ME+, resulting
binary tree degenerates to linear list.
- This release removes old unused UIDLs,
which are no longer on mailbox, from POP uidl cache.
- Exported GrabRead_the_file() from lib/mbox/localmbx.c
and added to hdrs/mboxlib.h
- Clear new part of allocated area
on resize_resolv_message()
- Possibly fixed valgrind reported error:
Syscall param sendmsg(msg.msg_iov[0]) points to uninitialised byte(s)
at 0x6505590: __sendmsg_nocancel (syscall-template.S:84)
by 0x7A2A746: write_message (query.c:437)
by 0x7A31F95: resolv_write_message (query.c:2547)
by 0x5CEA1D6: real_wait_select (schedule.c:2017)
by 0x5CED01D: real_wait (schedule.c:2500)
by 0x5CEEBF5: wait_for_something (schedule.c:2829)
by 0x5CF0C71: wait_for_action_or_timeout_settime_c (schedule.c:3241)
by 0x7A38CC5: resolv_wait_answer (query.c:4143)
by 0x7A3AE7F: end_query_helper (query.c:4810)
by 0x7A3B969: lookup_resolv_cache_nonblocked (query.c:5020)
by 0x7A21396: call_lookup_resolv_cache (resolv.c:3853)
by 0x7A1F5CE: fill_query_resolv_cache (resolv.c:3081)
Address 0x8aacfc4 is 84 bytes inside a block of size 152 alloc'd
at 0x4C2DB8F: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
by 0x5CD25D1: safe_zero_alloc (safemalloc.c:85)
by 0x7A2C211: new_resolv_message_state (query.c:1051)
by 0x7A33014: give_resolv_process (query.c:2788)
by 0x7A33C0D: have_non_blocking_qm (query.c:2958)
by 0x7A23F92: lookup_service_addresses2 (resolv.c:4654)
by 0x5CDC140: process_one_address_lookup (shared_connect.c:511)
by 0x5CDC250: shared_address_lookup (shared_connect.c:568)
by 0x5CFE110: service_entry_hook (service_list.c:2681)
by 0x5D000B3: gse_scan_hostname (service_list.c:3277)
by 0x5D02B37: give_service_entry5 (service_list.c:4129)
by 0x535B87B: htrem_give_service_entry (hashmark_remote.c:3521)
Uninitialised value was created by a stack allocation
at 0x7A3114B: resolv_write_message (query.c:2359)
- Possibly fixed valgrind reported error:
Syscall param sendmsg(msg.msg_iov[0]) points to uninitialised byte(s)
at 0x6505590: __sendmsg_nocancel (syscall-template.S:84)
by 0x7A2A746: write_message (query.c:439)
by 0x7A32044: resolv_write_message (query.c:2564)
by 0x5CEA1D6: real_wait_select (schedule.c:2017)
by 0x5CED01D: real_wait (schedule.c:2500)
by 0x5CEEBF5: wait_for_something (schedule.c:2829)
by 0x5CF1D5A: wait_for_action_or_deadline_settime_c (schedule.c:3479)
by 0x7A38E37: resolv_wait_answer (query.c:4171)
by 0x7A3AF2E: end_query_helper (query.c:4827)
by 0x7A3BA18: lookup_resolv_cache_nonblocked (query.c:5037)
by 0x7A21396: call_lookup_resolv_cache (resolv.c:3853)
by 0x7A1F5CE: fill_query_resolv_cache (resolv.c:3081)
Address 0x8a896b4 is 84 bytes inside a block of size 152 alloc'd
at 0x4C2DB8F: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
by 0x5CD25D1: safe_zero_alloc (safemalloc.c:85)
by 0x7A2C211: new_resolv_message_state (query.c:1053)
by 0x7A330C3: give_resolv_process (query.c:2805)
by 0x7A33CBC: have_non_blocking_qm (query.c:2975)
by 0x7A23F92: lookup_service_addresses2 (resolv.c:4654)
by 0x5CDC140: process_one_address_lookup (shared_connect.c:511)
by 0x5CDC250: shared_address_lookup (shared_connect.c:568)
by 0x5CFE110: service_entry_hook (service_list.c:2681)
by 0x5D000B3: gse_scan_hostname (service_list.c:3277)
by 0x5D02B37: give_service_entry5 (service_list.c:4129)
by 0x535B87B: htrem_give_service_entry (hashmark_remote.c:3521)
Uninitialised value was created by a heap allocation
at 0x4C2DB8F: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
by 0x5CD2445: safe_malloc (safemalloc.c:60)
by 0x7A2984B: new_resolv_query_hdr (query.c:63)
by 0x7A37181: query_one_name (query.c:3769)
by 0x7A3B9D9: lookup_resolv_cache_nonblocked (query.c:5031)
by 0x7A21396: call_lookup_resolv_cache (resolv.c:3853)
by 0x7A1F5CE: fill_query_resolv_cache (resolv.c:3081)
by 0x7A1FE26: query_resolv_cache (resolv.c:3311)
by 0x7A260AF: lookup_service_addresses2 (resolv.c:5037)
by 0x5CDC140: process_one_address_lookup (shared_connect.c:511)
by 0x5CDC250: shared_address_lookup (shared_connect.c:568)
by 0x5CFE110: service_entry_hook (service_list.c:2681)
- Used bzero() for union xxx_rand initialization of
real_wait_select() and real_wait_poll(). This tries
avoid valgrind's uninitialized memory warnings
(although uninitialized bytes does not really harm
because that data is feed to random generator).
- Added int nested_FreeStreamStack0; to struct streamsched
- Fixed valgrind reported error:
Invalid read of size 8
at 0x5D1C5CC: ss_FreeSocket (streamsched.c:235)
by 0x5D1DD96: free_stack (streamsched.c:757)
by 0x5D21D4D: FreeStreamStack0 (streamsched.c:1931)
by 0x5D21EA6: FreeStreamStack2 (streamsched.c:1966)
by 0x5316A2C: mbx_close_pop (pop.c:1851)
by 0x52BB7AC: close_folder (mbox.c:1038)
by 0x48E471: close_cleanup_mbox (leavembox.c:745)
by 0x4D475A: quit (quit.c:150)
by 0x498AB5: main_messages_loop (mailbox.c:819)
by 0x498EB2: main_messages_menu (mailbox.c:964)
by 0x46A5BC: main (elm.c:1677)
Address 0x8ab2270 is 80 bytes inside a block of size 104 free'd
at 0x4C2EDEB: free (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
by 0x5CD34C5: safe_free (safemalloc.c:354)
by 0x5D21E51: FreeStreamStack0 (streamsched.c:1950)
by 0x5D1DAF2: free_ss_data (streamsched.c:704)
by 0x5CE1509: remove_action0 (schedule.c:175)
by 0x5CE4942: clear_action_idx (schedule.c:812)
by 0x5CE4AEE: clear_action0 (schedule.c:837)
by 0x5D1C5C7: ss_FreeSocket (streamsched.c:231)
by 0x5D1DD96: free_stack (streamsched.c:757)
by 0x5D21D4D: FreeStreamStack0 (streamsched.c:1931)
by 0x5D21EA6: FreeStreamStack2 (streamsched.c:1966)
by 0x5316A2C: mbx_close_pop (pop.c:1851)
by 0x52BB7AC: close_folder (mbox.c:1038)
by 0x48E471: close_cleanup_mbox (leavembox.c:745)
by 0x4D475A: quit (quit.c:150)
by 0x498AB5: main_messages_loop (mailbox.c:819)
by 0x498EB2: main_messages_menu (mailbox.c:964)
by 0x46A5BC: main (elm.c:1677)
Block was alloc'd at
at 0x4C2DB8F: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
by 0x5CD25D1: safe_zero_alloc (safemalloc.c:85)
by 0x5D21660: returnSimpleStream (streamsched.c:1771)
by 0x5CCCC17: connect_remote_account (remote_mbx.c:4189)
by 0x535CC35: htrem_have_connection (hashmark_remote.c:3897)
by 0x535E5F9: hashtype_selectbr_item_remote (hashmark_remote.c:4415)
by 0x534E16F: hashmark_selectbr_item (hashmark.c:2789)
by 0x53619FE: browser_select_hashmark (hashmark_browser.c:402)
by 0x52F6C1A: select_dir_item_helper (savefolder.c:5029)
by 0x52F6F2F: select_dir_item (savefolder.c:5088)
by 0x44958D: browser_expand (browser.c:707)
by 0x44C8FA: gb_browser (browser.c:1966)
by 0x46D509: enter_helper (enter_helper.c:426)
by 0x44D600: run_browser (browser.c:2326)
by 0x450010: gen_browser (browser.c:3334)
by 0x488220: select_folder (init.c:89)
by 0x48A9F9: initialize_mailbox (init.c:980)
by 0x498E4E: main_messages_menu (mailbox.c:951)
by 0x46A5BC: main (elm.c:1677)
- Possibly fixed valgrind reported error:
Syscall param sendmsg(msg.msg_iov[0]) points to uninitialised byte(s)
at 0x6505590: __sendmsg_nocancel (syscall-template.S:84)
by 0x7A2A746: write_message (query.c:444)
by 0x7A32044: resolv_write_message (query.c:2573)
by 0x5CEA1EF: real_wait_select (schedule.c:2021)
by 0x5CED04C: real_wait (schedule.c:2509)
by 0x5CEEC24: wait_for_something (schedule.c:2838)
by 0x5CF0DEC: wait_for_action_or_timeout (schedule.c:3271)
by 0x7A34BC4: free_non_blocking_qm (query.c:3235)
by 0x7A295F6: free_shared_cache (resolv.c:5948)
by 0x5CD9D80: free_shared_cache1 (shared.c:2010)
by 0x5CDA184: free_shared_caches (shared.c:2067)
by 0x50AD0E: leave (utils.c:440)
by 0x46A78B: main (elm.c:1719)
Address 0x8a72914 is 84 bytes inside a block of size 152 alloc'd
at 0x4C2DB8F: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
by 0x5CD25D1: safe_zero_alloc (safemalloc.c:85)
by 0x7A2C211: new_resolv_message_state (query.c:1058)
by 0x7A330C3: give_resolv_process (query.c:2814)
by 0x7A33CBC: have_non_blocking_qm (query.c:2984)
by 0x7A23F92: lookup_service_addresses2 (resolv.c:4654)
by 0x5CDC140: process_one_address_lookup (shared_connect.c:511)
by 0x5CDC250: shared_address_lookup (shared_connect.c:568)
by 0x5CFE13F: service_entry_hook (service_list.c:2681)
by 0x5D000E2: gse_scan_hostname (service_list.c:3277)
by 0x5D02B66: give_service_entry5 (service_list.c:4129)
by 0x535B87B: htrem_give_service_entry (hashmark_remote.c:3521)
by 0x535C89F: htrem_have_connection (hashmark_remote.c:3829)
by 0x535E5F9: hashtype_selectbr_item_remote (hashmark_remote.c:4415)
by 0x534E16F: hashmark_selectbr_item (hashmark.c:2789)
by 0x53619FE: browser_select_hashmark (hashmark_browser.c:402)
by 0x52F6C1A: select_dir_item_helper (savefolder.c:5029)
by 0x52F6F2F: select_dir_item (savefolder.c:5088)
by 0x44958D: browser_expand (browser.c:707)
by 0x44C8FA: gb_browser (browser.c:1966)
Uninitialised value was created by a stack allocation
at 0x7A17790: ??? (in /tmp/TEST/lib64/libelmme-resolv.so.1.1.54+)
- Fixed valgrind reported memory leak:
6 bytes in 2 blocks are definitely lost in loss record 125 of 3,254
at 0x4C2DB8F: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
by 0x5CD2445: safe_malloc (safemalloc.c:60)
by 0x531C832: pop_got_line (pop.c:3636)
by 0x531CF8E: mbx_copy_header_pop (pop.c:3771)
by 0x52C5E72: copy_header_folder (mbox.c:3495)
[continued in next message]
--- SoupGate-Win32 v1.05
* Origin: fsxNet Usenet Gateway (21:1/5)