• Patch: Elm ME+ 2.5 PLalpha46 -> Elm ME+ 2.5 PLalpha47 [7/7] (1/3)

    From Kari Hurtta@21:1/5 to All on Sat Feb 10 14:47:48 2018
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha47.7

    Elm ME+ 2.5 PLalpha47

    Before applying patch catenate parts 1 - 7 first.
    Also it should be possible to apply parts 1 - 7
    individually.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha46

    ====================================== ( part 7/7 ) =========
    Index: elmME+.2.5.alpha47-cvs/shared_libs/smtp/smtp.c
    *** elmME+.2.5.alpha46/shared_libs/smtp/smtp.c 2017-09-13 19:32:05.000000000 +0300
    --- elmME+.2.5.alpha47-cvs/shared_libs/smtp/smtp.c 2017-12-30 13:44:59.000000000 +0200
    ***************
    *** 1,7 ****
    ! static char rcsid[] = "@(#)$Id: smtp.c,v 2.35 2017/08/28 11:50:52 hurtta Exp $";

    /******************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 2.35 $ $State: Exp $
    *
    * Author: Kari Hurtta <hurtta+elm@siilo.FMI.FI>
    * (was hurtta+elm@posti.FMI.FI, hurtta+elm@ozone.FMI.FI) --- 1,7 ----
    ! static char rcsid[] = "@(#)$Id: smtp.c,v 2.38 2017/12/30 11:44:59 hurtta Exp $";

    /******************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 2.38 $ $State: Exp $
    *
    * Author: Kari Hurtta <hurtta+elm@siilo.FMI.FI>
    * (was hurtta+elm@posti.FMI.FI, hurtta+elm@ozone.FMI.FI) ***************
    *** 3651,3658 ****
    return 0;
    }

    ! if (!tmp)
    return 0;

    if (SMTP_mailer_info_magic != I->p.p
  • From Kari Hurtta@21:1/5 to All on Sun Feb 11 14:28:56 2018
    Experimental RPM spec file for ELM ME+ 2.5 PLalpha47
    exists on <URL: http://www.elmme-mailer.org/rpm/elm-ME+2.5.html >
    directory.

    I do not know rpm, so please do not blame me, if
    I wipe your hardisk...

    Files are following

    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha47-1.spec
    RPM spec file [Note 1]
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha47-1.spec.elm-key-2013.sig
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha47-1.spec.elm-key-2013old.sig
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha47-1.spec.sig
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha47-1.fdr19.src.rpm
    Source rpm [Note 2]
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha47-1.fdr19.src.rpm.elm-key-2013old.sig
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha47-1.fdr19.src.rpm.sig

    * Compiled on Linux Mandrake release 7.2
    (Linux 2.2, glibc 2.1, Sendmail 8.13)

    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha47-1.mdk7.2.i686.rpm
    Package elm binary RPM build on Linux Mandrake release 7.2 [Note 3, Note 4]
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha47-1.mdk7.2.i686.rpm.sig
    - http://www.elmme-mailer.org/rpm/elm-mod-ME+2.5.alpha47-1.mdk7.2.i686.rpm
    Package elm-mod binary RPM build on Linux Mandrake release 7.2 [Note 3, Note 5]
    - http://www.elmme-mailer.org/rpm/elm-mod-ME+2.5.alpha47-1.mdk7.2.i686.rpm.sig
    - http://www.elmme-mailer.org/rpm/elm-tls-ME+2.5.alpha47-1.mdk7.2.i686.rpm
    Package elm-tls binary RPM build on Linux Mandrake release 7.2 [Note 3, Note 6]
    - http://www.elmme-mailer.org/rpm/elm-tls-ME+2.5.alpha47-1.mdk7.2.i686.rpm.sig

    * Compiled on Fedora release 19
    (Linux 3.14, glibc 2.17, Sendmail 8.14)

    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha47-1.fdr19.i686.rpm
    Package elm binary RPM build on Fedora release 19 [Note 7]
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha47-1.fdr19.i686.rpm.sig
    - http://www.elmme-mailer.org/rpm/elm-mod-ME+2.5.alpha47-1.fdr19.i686.rpm
    Package elm-mod binary RPM build on Fedora release 19 [Note 7]
    - http://www.elmme-mailer.org/rpm/elm-mod-ME+2.5.alpha47-1.fdr19.i686.rpm.sig
    - http://www.elmme-mailer.org/rpm/elm-tls-ME+2.5.alpha47-1.fdr19.i686.rpm
    Package elm-tls binary RPM build on Fedora release 19 [Note 7]
    - http://www.elmme-mailer.org/rpm/elm-tls-ME+2.5.alpha47-1.fdr19.i686.rpm.sig
    - http://www.elmme-mailer.org/rpm/elm-debuginfo-ME+2.5.alpha47-1.fdr19.i686.rpm
    Package elm-debuginfo binary RPM build on Fedora release 19 [Note 7, Note 8]
    - http://www.elmme-mailer.org/rpm/elm-debuginfo-ME+2.5.alpha47-1.fdr19.i686.rpm.sig

    * Notes

    Note 1:
    - rpmbuild -ba elm-ME+2.5.alpha47-1.spec warns that "prereq is
    deprecated", but that is required on Linux Mandrake release 7.2
    where older rpm -package is build.

    Note 2:
    - elm-ME+2.5.alpha47-1.fdr19.src.rpm is signed internally with GPG key
    elm.key.2013.asc (A54BE3BC 2013-10-20).

    Note 3:
    - elm-ME+2.5.alpha47-1.mdk7.2.i686.rpm and
    elm-*-ME+2.5.alpha47-1.mdk7.2.i686.rpm are signed internally with
    GPG key elm.key.2013old.asc (825FDF78 2013-10-26).

    Note 4:
    - elm-ME+2.5.alpha47-1.mdk7.2.i686.rpm is compiled agaist Sendmail
    8.13 (not from Mandrake distribution).

    Note 5:
    - elm-mod-ME+2.5.alpha47-1.mdk7.2.i686.rpm does not include
    libelmme-resolv.so.

    Note 6:
    - elm-tls-ME+2.5.alpha47-1.mdk7.2.i686.rpm do not load/work on
    Mandrake 7.2, because openssl library misses RAND_egd_bytes
    function.

    Note 7:
    - elm-ME+2.5.alpha47-1.fdr19.i686.rpm and
    elm-*-ME+2.5.alpha47-1.fdr19.i686.rpm are signed internally with GPG
    key elm.key.2013.asc (A54BE3BC 2013-10-20).

    Note 8:
    - elm-ME+2.5.alpha47-1.spec do not have %package debuginfo, but
    rpmbuild -ba elm-ME+2.5.alpha47-1.spec build
    elm-debuginfo-ME+2.5.alpha47-1.fdr19.i686.rpm anyway.

    * Signatures

    {file}.sig PGP signature (old key pubkey.asc, EA5A2379 1996-04-23)
    {file}.elm-key-2013.sig GPG signature (key elm.key.2013.asc, A54BE3BC 2013-10-20, expires: 2018-10-19)
    {file}.elm-key-2013old.sig GPG signature (key elm.key.2013old.asc, 825FDF78 2013-10-26, expires: 2018-10-25)

    * Configuration

    Following files (if exists) are rewritten by elmconfwriter on
    installation:

    - /usr/local/lib/elm.rc
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.hashmarks

    Spec file compiles elm for binary distribution, so you must edit
    /usr/local/lib/elm.rc before using Elm ME+ 2.5. Following variables may
    need to be modified on elm.rc:

    - mailer
    - hostdomain (this is usually needed)
    - hostfullname
    - hostname (usually this is not needed)
    - mailname (default values is generated from other values)
    name-resolution (controls default values of hostdomain,
    hostfullname, hostname, mailname)

    For re-generation of following file, old information (if exists) is
    used:

    - /usr/local/lib/elm.rc

    WARNING: Check after installation that libraries are enabled. Global
    elm.rc values are:

    use-library =
    use-base-library = iconv
    use-config-library = resolv
    use-connect-library = tls resolv
    use-mailer-library = smtp resolv

    Note that libelmme-resolv.so does not compile on all distributions. In
    that case omit resolv from elm.rc.

    After editing global elm.rc run /usr/local/lib/elmrc-write -GI for
    fixing possible errors.

    On installation following existing files are merged with new values:

    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.hashmarks

    Old values from /usr/local/lib/aliases.text are converted to /usr/local/lib/elm.aliases and /usr/local/lib/aliases.text is renamed to /usr/local/lib/aliases.text.OLD.

    On installation new values without merging are written to following
    files:

    - /usr/local/lib/elm.aliases.NEW
    - /usr/local/lib/elm.mailinglists.NEW
    - /usr/local/lib/elm.mailservices.NEW
    - /usr/local/lib/elm.mimecharsets.NEW
    - /usr/local/lib/elm.mimetypes.NEW
    - /usr/local/lib/elm.terminalinfo.NEW
    - /usr/local/lib/elm.iso2022sets.NEW
    - /usr/local/lib/elm.hashmarks.NEW

    Package elm-mod includes libelmme-iconv.so and libelmme-smtp.so. If
    package elm-mod includes libelmme-resolv.so, this is noted. And package
    elm-tls includes libelmme-tls.so.

    Installation loses mailer = submission setting from global /usr/local/lib/elm.rc, because when elm package rewrites elm.rc,
    submission mailer is not available. It becomes from elm-mod package.

    However failed values of /usr/local/lib/elm.rc are saved to /usr/local/lib/elm.rc.old-values file during installation.

    Global setting mailer = submission is restored from /usr/local/lib/elm.rc.old-values file, when package elm-mod is
    installed.

    Also following directories are used:

    - /usr/local/lib/elm.map.txt/ (global setting map-text-dir =
    {lib}/elm.map.txt)
    - /usr/local/lib/elm.map.bin/ (global setting map-bin-dir =
    {lib}/elm.map.bin)
    - /usr/local/lib/elm.user.map/ (global setting user-map-dir =
    {lib}/elm.user.map)

    Hashmark EXAMPLE uses file /usr/local/lib/elm.user.map/elm.usermap.

    SUMMARY: This release implements interruptible
    (with interrupt character, usually Ctrl-C)
    DNS queries on some systems when
    libelmme-resolv.so module is used. New
    elmrc options are "name-lookup-cache-time",
    "name-lookup-cancel",
    "special-use-domains-lookup" and
    "static-hosts-max-names" (and
    "query-mode" on "resolv:" section).
    This release includes some changes
    and fixes for elmrc parsing. Also some other
    changes and some bug fixes are included.

    ELM ME+ 2.5 PLalpha47 changelog

    Changes on Elm ME+ 2.5 PLalpha47 compared with Elm ME+ 2.5 PLalpha46 --------------------------------------------------------------------

    SUMMARY: This release implements interruptible
    (with interrupt character, usually Ctrl-C)
    DNS queries on some systems when
    libelmme-resolv.so module is used. New
    elmrc options are "name-lookup-cache-time",
    "name-lookup-cancel",
    "special-use-domains-lookup" and
    "static-hosts-max-names" (and
    "query-mode" on "resolv:" section).
    This release includes some changes
    and fixes for elmrc parsing. Also some other
    changes and some bug fixes are included.

    - Changed gethostdomain() on lib/opt_utils.c
    - Added check that domain name accepts only
    ASCII characters on gethostdomain().
    - Added gethostdomain() to read $LOCALDOMAIN
    environment variable before {lib}/domain
    file (and before using getdomainname()
    if "getdomainname" is given on "name-resolution"
    elmrc option.)
    - If $LOCALDOMAIN includes space separated list of domains,
    then first domain is used.
    - Changed generate_hostfullname() on lib/read_rc.c
    - Update doc/elmrc-info

    - If DNS answer is truncated and equal of buffer size then
    resolv -module retries query with bigger buffer
    (up to 65535 bytes) [when using query-mode = blocking].

    - Configure for resolv -module now tests if
    res_mkquery(), res_send() and related routines
    can be used to make DNS queries. Using
    these routines means that res_query() and
    specially res_search() is replaced with
    own code.
    - Configure for resolv -module now tests if
    socketpair(AF_UNIX,SOCK_SEQPACKET,0,pair)
    can be used.
    - This release adds "query-mode" elmrc option to
    resolv: -section. This option have values
    blocking This uses res_query()
    or res_search()
    non-blocking This uses res_mkquery() and runs
    res_send() on separate process.
    In that case resolv -module
    implements internally
    res_search() like search
    algorithm.
    > Parameter "helper=allow-interrupt" of "query-mode"
    elmrc option tells that interrupt character (Ctrl-C)
    is allowed kill res_send() helper processes.
    > Parameter "helper=ignore-interrupt" of "query-mode"
    elmrc option tells that interrupt character
    (Ctrl-C) is ignored (does not kill process).
    > Numeric value to "helper" of "query-mode"
    elmrc option parameter tells how many helper
    processes is considered for query.
    > Parameter "helper-skip-limit" of "query-mode"
    elmrc option tells how many busy helper processes
    are skipped and not considered for query.
    > Parameter "parallel-lookup-max-time" of "query-mode"
    elmrc option gives maximum time what is used to resolve DNS
    lookup when non-blocking mode is used.
    - Added add_foreign_background() to lib/syscall.c
    - Added wait_background_end() to lib/syscall.c
    - Changed maybe_background() on lib/syscall.c
    - Added wait_for_action_or_timeout_settime() to lib/schedule.c
    - Added wait_for_action_or_deadline_settime() to lib/schedule.c
    - Added wait_for_timeout_f() to lib/schedule.c
    - Small fix for real_wait_poll()

    - This release adds "name-lookup-cache-time" elmrc option
    which tells default cache time on seconds for mail service
    if it is cached (usually not). Default value is
    320 seconds. This replaces DEFAULT_CACHE_TIME constant
    from lib/service_list.c

    - Fixed error
    Enumerated values resolv:* ignored -- code not loaded
    I can't understand mail-services-lookup key "resolv:all-addresses"
    in line 54 in "(...)/lib/elm.rc" file
    - Changed set_dt_enumerate_as_str() on lib/rc_handle.c
    - Changed give_dt_enumerate_as_int() on lib/rc_handle.c
    - Changed give_dt_shared_value() on lib/rc_handle.c
    - Changed struct dt_enumerate_info on hdrs/save_opts.h
    - Fixed case-insensitive matching of tagged keyword
    on set_dt_enumerate_as_str()

    - Fixed error
    Keywords on section "resolv" ignored starting
    from line 419 on file (...)/lib/elm.rc

    - Added new warning of ignored elm.rc lines.
    - Added rc_eval_tail_cline() to lib/read_rc.c
    - Added rc_eval_tail_line() to lib/read_rc.c

    - Changed struct parsed_rc
    - Changed do_rc_parse(), do_rc_process()
    on lib/rc_parse.c
    - Changed shared_fill_dt_enumerate_values(),
    give_options() on lib/shared.c

    - Fixed frm and elmrc-write -command error
    Keywords on section "smtp" ignored starting
    from line 1889 on file .elm/elmrc
    - Changed frm -command option handling.
    - Added rc_DT_DELAYSHARED
    - Added some
    # Failed to convert charset of option ...
    comments to generated elm.rc or .elm/elmrc
    on error.
    - Changed do_rc_parse() so that empty line
    followed by comment line resets last option
    which is considered for continuation lines. This changes
    error messages like
    Key "@charset" does not accept continuation lines
    in line 119 in ".../elm.rc" file
    > Added error message
    Continuation line 119 on file ".../elm.rc"
    ignored: ...
    - Also comment lines starting with "### " resets
    last option which is considered for continuation lines.
    - Also section tag: lines resets last option which is
    considered for continuation lines.

    - Small change to mail_gets() and malloc_gets()

    - Fixed crash on smtp -module if submission/smtp
    server's name is not resolvable.

    - Made DNS query wait to be interruptible with Ctrl-C
    when
    query-mode=non-blocking
    is used on resolv -section with
    mail-services-lookup = resolv:addresses
    or
    mail-services-lookup = resolv:all-addresses
    - Also DNS query is interruptible with Ctrl-C
    when
    query-mode=non-blocking
    is used on resolv -section with
    verify-domain = resolv:mx-address
    or
    verify-domain = resolv:mx
    or
    verify-domain = resolv:any
    > NOTE: This uses actually interrupt signal
    which is usually generated with Ctrl-C
    but tty settings can vary.
    > NOTE: Also interrupt character (Ctrl-C) may kill
    res_send() helper process
    [when using helper=allow-interrupt].
    Otherwise
    DNS query is still completed (and resolv
    -module caches answer).
    > NOTE: If
    mail-services-lookup = hostname
    or
    mail-services-lookup = gethostbyname
    or
    mail-services-lookup = getaddrinfo
    is used, then DNS host lookup is not
    interruptible with Ctrl-C.
    > NOTE: If
    verify-domain = hostname
    is used, then DNS host lookup is not
    interruptible with Ctrl-C.
    > NOTE: Also DNS
    lookup is not interruptible with Ctrl-C
    if
    query-mode = blocking
    is used on resolv -section.
    - This release adds "name-lookup-cancel"
    elmrc option, which controls behaviour of
    Ctrl-C (interrupt character) on DNS lookup handling.
    This option have values
    disabled hostname / mail domain name
    lookups are not interruptible.
    enabled hostname / mail domain name
    lookups are assumed to be
    interruptible (but that is
    not likely not work with
    gethostbyname(), getaddrinfo(),
    res_query() and res_search()).
    auto hostname / mail domain names
    lookup result waiting is
    interruptible when res_send()
    helper process is used.
    Value "auto" is default. This may case that
    this is disabled (unless "mail-services-lookup"
    is modified). Also boolean ON, OFF, TRUE, FALSE, YES and NO
    values are allowed on elmrc option "name-lookup-cancel".
    - Added set_cancel_message()
    - Changed connect_remote_account(), make_remote_mbox(),
    give_service_entryS(), lookup_namei(),
    lookup_name()
    - Added give_service_entry_can(),
    give_service_entry4_can()
    - Added wait_for_action_or_timeout_settime_c() to lib/schedule.c
    - Added wait_for_action_or_deadline_settime_c() to lib/schedule.c

    - Changed that real_wait_select() and real_wait_poll()
    return -1 on error. Added enum wait_for_status.
    - Changed real_wait(), real_wait_check_timeout(),
    wait_for_something()
    - Some changes on my_wait()
    - Changed error_sleep() return type to be void (no value).

    - Changed SR_RawState()
    - Fixed crash on connect-mode -keyword parsing.
    - Added conf_split_param_value() to lib/remote_mbx.c

    - Added sigchld_handler() call to
    verify_transmission(), enter_helper(),
    attach_modify(), extended_command(),
    fbrowser(), edit_headers(),
    alias_modify(), ViewThreads()

    - Added lib/static-hosts.c, which parsed
    /etc/hosts file without using gethostent()
    function.
    - If elmrc option "special-use-domains-lookup"
    have value "static-hosts", names given on elmrc
    option "special-use-domains-blacklist"
    are directly read from /etc/hosts (only).
    > Names given on elmrc option
    "special-use-domain" are not looked up
    from DNS and are not looked up with elmrc
    option "mail-services-lookup".

    - If elmrc option "search-mail-service" on
    "resolv:" section is value "static-hosts-dotless-search-name",
    libelmme-resolv.so module search /etc/hosts first
    if name does not include dot (.), then lookups
    name from DNS with default search rules (res_search()).
    If name not found from DNS and name includes dot (.), then
    libelmme-resolv.so module search /etc/hosts.
    > libelmme-resolv.so module uses elmrc option
    "search-mail-service", when it searches names for
    addresses.
    - If elmrc option "search-mail-service" on
    "resolv:" section is value "static-hosts-dotless",
    libelmme-resolv.so module search /etc/hosts first
    if name does not include dot (.), then queries
    exact name from DNS (res_query()). If name not found
    from DNS and name includes dot (.), then
    libelmme-resolv.so module search /etc/hosts.

    - If "query-mode" on "resolv:" section have value
    "blocking", then default value of "search-mail-service"
    on "resolv:" section is "fallback-dotless-search-name".
    - If "query-mode" on "resolv:" section have value
    "non-blocking", then default value of "search-mail-service"
    on "resolv:" section is "static-hosts-dotless-search-name".

    - libelmme-resolv.so -module changes default value of
    "mail-services-lookup" if "query-mode" on "resolv:"
    section have "non-blocking" values and "use-config-library"
    includes "resolv". This is similar than libelmme-resolv.so
    -module's change of "verify-domain".

    - Changed wait_for_something(), real_wait_select() and
    real_wait_poll() on lib/schedule.c

    - Added "X-Autogenerated:" to default weedlist. This header
    is generated by Communigate Pro.
    - Added "Auto-Submitted:" to default weedlist. This is defined
    on RFC 3834.
    - Added "X-MS-Exchange-" to default weedlist (removed
    "X-MS-Exchange-Organization-").
    - Added "X-Originating-IP:" and "Accept-Language:" to
    default weedlist.
    - Added "Resent-Message-ID:" to default weedlist.

    - Added warning of magic values >= 256 to
    parse_magic() on lib/misc/mime_types.c
    - Added some fixes for magic values >= 256 to
    parse_magic() on lib/misc/mime_types.c
    - Changes error messages on load_mime_types_map()
    on lib/misc/mime_types.c

    New elmrc options:
    name-lookup-cache-time
    name-lookup-cancel
    special-use-domains-lookup
    static-hosts-max-names

    New files:
    shared_libs/resolv/resolvertest2.c
    shared_libs/resolv/resolvconf.h.SH
    shared_libs/resolv/query.c
    lib/static-hosts.c
    hdrs/service_imp.h

    Warnings
    --------

    - Not compiled with MMDF support defined, so probably it doesn't
    work (or even compile).

    - This has not been tested much so there can be bad bugs.

    Bug reports to: Kari E. Hurtta <elm@elmme-mailer.org>
    (was hurtta+elm@posti.FMI.FI)

    - Internationalized (ie. non-ASCII) domain names are not supported.

    - Support for multipart/signed and multipart/encrypted (specially:
    support for PGP/MIME) only in reading side. There is no support
    for attachments with multipart/encrypted.

    - HP's shoftkeys are no longer supported

    - DECNET addresses like host::user may be interpreted as phrase
    of group syntax or as route of source routed address.

    - Header editing screen now uses addresses in form phrase <address>,
    but because it does not require using of comma (,), multiword
    phrases must be entered in quotes.

    For example: "Kari Hurtta" <hurtta>

    - If address includes <> or comments (), they are not aliased
    expanded. So aliases must be entered as bare words.

    - Addresses given as arguments to elm command should be given
    as one address per argument. Giving of sevaral addresses per
    one argument causes that address is misparsed if header is
    edited on header editing screen.

    That is:

    Use: elm '"Kari Hurtta" <hurtta>' 'Admin <root>'

    Don't use: elm 'Kari Hurtta <hurtta>, Admin <root>'

    - p)rint command acts as P)rint text -command. So it
    is currently quite useless.
    p)rint command does that via readmsg -command. However
    P)rint text does actually same (without readmsg).

    - Some Linux libraries does not follow $LC_CTYPE when program is
    setgid. Net result is that your locale is always C. That is
    visible that $LC_CTYPE does not effect to locale printed by
    'elm -vvvvv':

    Locale (LC_CTYPE): C
    Display character-set: US-ASCII
    Sending character-set: US-ASCII

    - All refrences iso2022 maps are parsed and read to memory.
    This may cause quite big memory consumption specially because
    eastern (multibyte) sets tend to be lot of characters. That
    mapping information should be shared between processes to
    reduce memory consuption.

    - If display charset is produced by using mapping from locale
    to charset where charset definition is later invalidated
    ("removed") by setting explicit compatcharsets on user's
    .elm/elmrc, that may cause PANIC on elm's internal pager
    or other problems. Invalidation happens if display charset
    is on implicit compatcharsets list (because of charset
    definition), but does not have explicit compatcharsets list
    given by user.

    - Neither Unicode didirectional algorithm nor Right-Left scripts
    are supported.

    - In some situations two Status headers may be generated two
    Status headers -- one by IMAP deamon and one from APPENDed
    message.

    - When APPENDing message to IMAP folder (which is normal UNIX
    mailbox format) original "From " separator line can not be
    preserved -- specially it is not possible to pass envelope
    sender address.

    - For UTF-8 charset Elm only knows printable characters from
    Latin/1 range, if unicode database (see elmrc option "unidata")
    is not loaded.

    - For using of ISO2022 character sets it is required that mapping
    them to unicode is know -- otherwise Elm ME+ does not know which
    characters are printable.

    - UTF-16 surrogate pairs (D800-DFFF) are not supported on UTF-7
    charset.

    - Mixing of names using IMAP naming convention
    (imap-naming-convention = yes)
    and names using imap-charset does not work very well...

    - " Regarding my message (8 Aug 2000) regarding 'newmail' on
    AIX 4.3.3 in an 'aixterm' window and the 'aixterm' did not
    close, indeed the problem was NOT related to 'newmail' but an
    AIX bug.

    IBM has release a patch, and the 'aixterm' in AIX 4.3.3 must
    be update with fileset X11.apps.aixterm.4.3.3.26 (PTF
    U473920) is solved to problem."
    From: Noam G. Nudelman <noam@mail.biu.ac.il>

    - File /usr/share/locale/fi/charset gives charset name utf-8 on
    Linux Mandrake 7.2. This causes that Configure generates
    mapping
    fi utf-8
    to elm.mimecharsets. However that seems to have
    incorrect mapping. You may want change this to
    fi ISO-8859-1

    ( however nl_langinfo(CODESET) gives charset ISO-8859-15
    but look following entry. )

    - Locale 'fi' seems to have charset ISO-8859-15 according
    of nl_langinfo(CODESET) on Mandrake Linux 7.2 (and probaly
    others with same glibc version). However for example gnome
    terminal uses font
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-1
    and not
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-15

    Also KDE's konsole program seems use iso8859-1 character set
    although locale is 'fi' which should have ISO-8859-15 according
    of nl_langinfo (selecting "unicode" from menu seems fix that.)

    Because of mismatch more correct locale is fi_FI.88591, which gives
    ISO-8859-1 character set according of nl_langinfo(CODESET).

    ( Locale seems come from /etc/sysconfig/i18n or $HOME/.i18n )

    > To enable handling of ISO-8859-1 and ISO-8859-15 character sets
    on linux console, read comments from doc/terminal.info file.

    - Mandrake Linux 7.2 seems set LD_PRELOAD to load
    /usr/lib/libxalflaunch.so.0. That (xalf-0.4-2mdk) causes that
    elm to crash on startup (actually before main() is reached.)

    - kterm on Mandrake Linux 7.2 seems have (at least on my test
    environment) seems get bad fontlist (*VT100*fontList) which
    gives bad font for iso8859-1 -- therefore ISO-8859-1 characters
    do not work.

    ("xrdb -query" seems report resource with name "*fontList"
    -- that probably overrides "*VT100*fontList" which comes
    from /usr/lib/X11/app-defaults/KTerm )

    - Also note that initially kterm does NOT default to
    ISO-8859-1 -- therefore ISO-8859-1 works only when
    elm explicity switch to ISO-8859-1 (for example
    with 'elm -D ISO-8859-1')

    - When assembling message/partial MIME (RFC 2046)
    requires that all headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are copied from
    initial enclosing message to assembled message. It also
    requires that headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are ignored and
    dropped from enclosed message.

    For now we copy only Received: -headers. Dropping extra
    headers from enclosed message makes assembly more
    complicated (and dropping of Received: -headers
    from enclosed message do not make sense.)

    - EXIF files are sometimes labeled with content-type
    image/jpeg. They also use .jpg filename extension. They are
    not accepted by Elm ME+ as image/jpeg because magic number
    (and format) is different. It is unclear what is correct
    treatment. According of specification EXIF files may
    wrap also other file types than jpeg (JFIF).

    - mailer=sendmail; verify=yes works only when sendmail
    is installed as setuid root. Use mailer=submission instead.
    * Starting from sendmail 8.12 sendmail is normally
    installed as setgid smmsp and not as setuid root.
    - However error message is printed only if
    verify-local-address=yes is also set

    - IMAP connection is stalled some times. Reason is unknown.

    - From name option (-f) on fastmail is currently broken.

    Collector of these patches
    --------------------------

    Kari Hurtta <elm@elmme-mailer.org>
    Kari Hurtta <hurtta+elm@siilo.FMI.FI>

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Kari Hurtta@21:1/5 to All on Mon Feb 12 20:09:26 2018
    Experimental DEB generator script for Elm ME+ 2.5 PLalpha47
    exists on <URL: http://www.elmme-mailer.org/deb/elm-ME+2.5.html >
    directory.

    Files are following

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha47-1.gen_deb
    DEB generator script
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha47-1.gen_deb.elm-key-2013.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha47-1.gen_deb.elm-key-2013old.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha47-1.gen_deb.sig

    A command

    elm-ME+2.5.alpha47-1.gen_deb {packager}

    generates package elmme with version 1.1.46-1.{distribution}.

    A command

    elm-ME+2.5.alpha47-1.gen_deb --nonew {packager}

    generates package elm with version ME+2.5.alpha47-1.{distribution}.

    Both commands produce package with filename elm-ME+2.5.alpha47-1.{distribution}.{arch}.deb.

    Module libelmme-resolv.so is included for all distributions below, but libelmme-resolv.so does not implement interruptible DNS queries on all distributions.

    == Old package names, i386

    Package elm with version ME+2.5.alpha47-1.{distribution} and
    architecture i386.

    * Compiled on Debian GNU/Linux 3.1
    (Linux 2.4, glibc 2.3, Exim 3.36)

    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha47-1.Debian3.1.i386.deb
    Package elm binary DEB build on Debian GNU/Linux 3.1
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha47-1.Debian3.1.i386.deb.elm-key-2013.sig
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha47-1.Debian3.1.i386.deb.elm-key-2013old.sig
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha47-1.Debian3.1.i386.deb.sig

    Module libelmme-resolv.so does not implement interruptible DNS queries
    on Debian GNU/Linux 3.1.

    * Compiled on Ubuntu 6.06.2 LTS
    (Linux 2.6, glibc 2.3, Sendmail 8.13)

    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha47-1.Ubuntu6.06.i386.deb
    Package elm binary DEB build on Ubuntu 6.06.2 LTS
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha47-1.Ubuntu6.06.i386.deb.elm-key-2013.sig
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha47-1.Ubuntu6.06.i386.deb.sig

    * Compiled on Ubuntu 10.04.4 LTS
    (Linux 2.6, glibc 2.11, Sendmail 8.14)

    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha47-1.Ubuntu10.04.i386.deb
    Package elm binary DEB build on Ubuntu 10.04.4 LTS
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha47-1.Ubuntu10.04.i386.deb.elm-key-2013.sig
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha47-1.Ubuntu10.04.i386.deb.sig

    == New package names, i386

    Package elmme with version 1.1.47-1.{distribution} and architecture
    i386.

    * Compiled on Ubuntu 10.04.4 LTS
    (Linux 2.6, glibc 2.11, Sendmail 8.14)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha47-1.Ubuntu10.04.i386.deb
    Package elmme binary DEB build on Ubuntu 10.04.4 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha47-1.Ubuntu10.04.i386.deb.elm-key-2013.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha47-1.Ubuntu10.04.i386.deb.sig

    * Compiled on Ubuntu 14.04.5 LTS
    (Linux 4.4, glibc 2.19, no MTA)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha47-1.Ubuntu14.04.i386.deb
    Package elmme binary DEB build on Ubuntu 14.04.5 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha47-1.Ubuntu14.04.i386.deb.elm-key-2013.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha47-1.Ubuntu14.04.i386.deb.sig

    * Compiled on Ubuntu 16.04.3 LTS
    (Linux 4.4, glibc 2.23, no MTA)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha47-1.Ubuntu16.04.i386.deb
    Package elmme binary DEB build on Ubuntu 16.04.3 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha47-1.Ubuntu16.04.i386.deb.elm-key-2013.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha47-1.Ubuntu16.04.i386.deb.sig

    == New package names, amd64 (x86_64)

    Package elmme with version 1.1.47-1.{distribution} and architecture
    amd64 (also known as x86_64).

    * Compiled on Ubuntu 16.04.3 LTS
    (Linux 4.4, glibc 2.23, Sendmail 8.15)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha47-1.Ubuntu16.04.amd64.deb
    Package elmme binary DEB build on Ubuntu 16.04.3 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha47-1.Ubuntu16.04.amd64.deb.elm-key-2013.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha47-1.Ubuntu16.04.amd64.deb.sig

    == Signatures

    {file}.sig PGP signature (old key pubkey.asc, EA5A2379 1996-04-23)
    {file}.elm-key-2013.sig GPG signature (key elm.key.2013.asc, A54BE3BC 2013-10-20, expires: 2018-10-19)
    {file}.elm-key-2013old.sig GPG signature (key elm.key.2013old.asc, 825FDF78 2013-10-26, expires: 2018-10-25)

    == Configuration

    Following files (if exists) are rewritten by elmconfwriter on
    installation:

    - /usr/local/lib/elm.rc
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.hashmarks

    Deb generator script compiles elm for binary distribution, so you must
    edit /usr/local/lib/elm.rc before using Elm ME+ 2.5. Following
    variables may need to be modified on elm.rc:

    - mailer
    - hostdomain (this is usually needed)
    - hostfullname
    - hostname (usually this is not needed)
    - mailname (default values is generated from other values)
    - name-resolution (controls default values of hostdomain,
    hostfullname, hostname, mailname)

    By default first value for mailname is read from /etc/mailname file.

    For re-generation of following file, old information (if exists) is
    used:

    - /usr/local/lib/elm.rc

    WARNING: Check after installation that libraries are enabled. Global
    elm.rc values are:

    use-library =
    use-base-library = iconv
    use-config-library = resolv
    use-connect-library = tls resolv
    use-mailer-library = smtp resolv

    After editing global elm.rc run /usr/local/lib/elmrc-write -GI for
    fixing possible errors.



    On installation following existing files are merged with new values:

    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.hashmarks

    Old values from /usr/local/lib/aliases.text are converted to /usr/local/lib/elm.aliases and /usr/local/lib/aliases.text is renamed to /usr/local/lib/aliases.text.OLD.

    On installation new values without merging are written to following
    files:

    - /usr/local/lib/elm.aliases.NEW
    - /usr/local/lib/elm.mailinglists.NEW
    - /usr/local/lib/elm.mailservices.NEW
    - /usr/local/lib/elm.mimecharsets.NEW
    - /usr/local/lib/elm.mimetypes.NEW
    - /usr/local/lib/elm.terminalinfo.NEW
    - /usr/local/lib/elm.iso2022sets.NEW
    - /usr/local/lib/elm.hashmarks.NEW

    Also following directories are used:

    - /usr/local/lib/elm.map.txt/ (global setting map-text-dir =
    {lib}/elm.map.txt)
    - /usr/local/lib/elm.map.bin/ (global setting map-bin-dir =
    {lib}/elm.map.bin)
    - /usr/local/lib/elm.user.map/ (global setting user-map-dir =
    {lib}/elm.user.map)

    A command

    elm-{version}-{release}.gen_deb {packager}

    generates package elmme with version {library-version}-{release}.{distribution}. Note that a resulted
    filename of package is still elm-{version}-{release}.{arch}.deb. This
    version number is same than on files /usr/local/lib/libelmme-{module}.so.{library-version}. A filename of
    package is related to used source archive name, which is elm-{version}-{release}.tar.gz.

    A command

    elm-{version}-{release}.gen_deb --nonew {packager}

    generates package elm with version {version}-{release}.{distribution}.
    Also on this case a resulted filename of package is elm-{version}-{release}.{arch}.deb.

    SUMMARY: This release implements interruptible
    (with interrupt character, usually Ctrl-C)
    DNS queries on some systems when
    libelmme-resolv.so module is used. New
    elmrc options are "name-lookup-cache-time",
    "name-lookup-cancel",
    "special-use-domains-lookup" and
    "static-hosts-max-names" (and
    "query-mode" on "resolv:" section).
    This release includes some changes
    and fixes for elmrc parsing. Also some other
    changes and some bug fixes are included.

    ELM ME+ 2.5 PLalpha47 changelog

    Changes on Elm ME+ 2.5 PLalpha47 compared with Elm ME+ 2.5 PLalpha46 --------------------------------------------------------------------

    SUMMARY: This release implements interruptible
    (with interrupt character, usually Ctrl-C)
    DNS queries on some systems when
    libelmme-resolv.so module is used. New
    elmrc options are "name-lookup-cache-time",
    "name-lookup-cancel",
    "special-use-domains-lookup" and
    "static-hosts-max-names" (and
    "query-mode" on "resolv:" section).
    This release includes some changes
    and fixes for elmrc parsing. Also some other
    changes and some bug fixes are included.

    - Changed gethostdomain() on lib/opt_utils.c
    - Added check that domain name accepts only
    ASCII characters on gethostdomain().
    - Added gethostdomain() to read $LOCALDOMAIN
    environment variable before {lib}/domain
    file (and before using getdomainname()
    if "getdomainname" is given on "name-resolution"
    elmrc option.)
    - If $LOCALDOMAIN includes space separated list of domains,
    then first domain is used.
    - Changed generate_hostfullname() on lib/read_rc.c
    - Update doc/elmrc-info

    - If DNS answer is truncated and equal of buffer size then
    resolv -module retries query with bigger buffer
    (up to 65535 bytes) [when using query-mode = blocking].

    - Configure for resolv -module now tests if
    res_mkquery(), res_send() and related routines
    can be used to make DNS queries. Using
    these routines means that res_query() and
    specially res_search() is replaced with
    own code.
    - Configure for resolv -module now tests if
    socketpair(AF_UNIX,SOCK_SEQPACKET,0,pair)
    can be used.
    - This release adds "query-mode" elmrc option to
    resolv: -section. This option have values
    blocking This uses res_query()
    or res_search()
    non-blocking This uses res_mkquery() and runs
    res_send() on separate process.
    In that case resolv -module
    implements internally
    res_search() like search
    algorithm.
    > Parameter "helper=allow-interrupt" of "query-mode"
    elmrc option tells that interrupt character (Ctrl-C)
    is allowed kill res_send() helper processes.
    > Parameter "helper=ignore-interrupt" of "query-mode"
    elmrc option tells that interrupt character
    (Ctrl-C) is ignored (does not kill process).
    > Numeric value to "helper" of "query-mode"
    elmrc option parameter tells how many helper
    processes is considered for query.
    > Parameter "helper-skip-limit" of "query-mode"
    elmrc option tells how many busy helper processes
    are skipped and not considered for query.
    > Parameter "parallel-lookup-max-time" of "query-mode"
    elmrc option gives maximum time what is used to resolve DNS
    lookup when non-blocking mode is used.
    - Added add_foreign_background() to lib/syscall.c
    - Added wait_background_end() to lib/syscall.c
    - Changed maybe_background() on lib/syscall.c
    - Added wait_for_action_or_timeout_settime() to lib/schedule.c
    - Added wait_for_action_or_deadline_settime() to lib/schedule.c
    - Added wait_for_timeout_f() to lib/schedule.c
    - Small fix for real_wait_poll()

    - This release adds "name-lookup-cache-time" elmrc option
    which tells default cache time on seconds for mail service
    if it is cached (usually not). Default value is
    320 seconds. This replaces DEFAULT_CACHE_TIME constant
    from lib/service_list.c

    - Fixed error
    Enumerated values resolv:* ignored -- code not loaded
    I can't understand mail-services-lookup key "resolv:all-addresses"
    in line 54 in "(...)/lib/elm.rc" file
    - Changed set_dt_enumerate_as_str() on lib/rc_handle.c
    - Changed give_dt_enumerate_as_int() on lib/rc_handle.c
    - Changed give_dt_shared_value() on lib/rc_handle.c
    - Changed struct dt_enumerate_info on hdrs/save_opts.h
    - Fixed case-insensitive matching of tagged keyword
    on set_dt_enumerate_as_str()

    - Fixed error
    Keywords on section "resolv" ignored starting
    from line 419 on file (...)/lib/elm.rc

    - Added new warning of ignored elm.rc lines.
    - Added rc_eval_tail_cline() to lib/read_rc.c
    - Added rc_eval_tail_line() to lib/read_rc.c

    - Changed struct parsed_rc
    - Changed do_rc_parse(), do_rc_process()
    on lib/rc_parse.c
    - Changed shared_fill_dt_enumerate_values(),
    give_options() on lib/shared.c

    - Fixed frm and elmrc-write -command error
    Keywords on section "smtp" ignored starting
    from line 1889 on file .elm/elmrc
    - Changed frm -command option handling.
    - Added rc_DT_DELAYSHARED
    - Added some
    # Failed to convert charset of option ...
    comments to generated elm.rc or .elm/elmrc
    on error.
    - Changed do_rc_parse() so that empty line
    followed by comment line resets last option
    which is considered for continuation lines. This changes
    error messages like
    Key "@charset" does not accept continuation lines
    in line 119 in ".../elm.rc" file
    > Added error message
    Continuation line 119 on file ".../elm.rc"
    ignored: ...
    - Also comment lines starting with "### " resets
    last option which is considered for continuation lines.
    - Also section tag: lines resets last option which is
    considered for continuation lines.

    - Small change to mail_gets() and malloc_gets()

    - Fixed crash on smtp -module if submission/smtp
    server's name is not resolvable.

    - Made DNS query wait to be interruptible with Ctrl-C
    when
    query-mode=non-blocking
    is used on resolv -section with
    mail-services-lookup = resolv:addresses
    or
    mail-services-lookup = resolv:all-addresses
    - Also DNS query is interruptible with Ctrl-C
    when
    query-mode=non-blocking
    is used on resolv -section with
    verify-domain = resolv:mx-address
    or
    verify-domain = resolv:mx
    or
    verify-domain = resolv:any
    > NOTE: This uses actually interrupt signal
    which is usually generated with Ctrl-C
    but tty settings can vary.
    > NOTE: Also interrupt character (Ctrl-C) may kill
    res_send() helper process
    [when using helper=allow-interrupt].
    Otherwise
    DNS query is still completed (and resolv
    -module caches answer).
    > NOTE: If
    mail-services-lookup = hostname
    or
    mail-services-lookup = gethostbyname
    or
    mail-services-lookup = getaddrinfo
    is used, then DNS host lookup is not
    interruptible with Ctrl-C.
    > NOTE: If
    verify-domain = hostname
    is used, then DNS host lookup is not
    interruptible with Ctrl-C.
    > NOTE: Also DNS
    lookup is not interruptible with Ctrl-C
    if
    query-mode = blocking
    is used on resolv -section.
    - This release adds "name-lookup-cancel"
    elmrc option, which controls behaviour of
    Ctrl-C (interrupt character) on DNS lookup handling.
    This option have values
    disabled hostname / mail domain name
    lookups are not interruptible.
    enabled hostname / mail domain name
    lookups are assumed to be
    interruptible (but that is
    not likely not work with
    gethostbyname(), getaddrinfo(),
    res_query() and res_search()).
    auto hostname / mail domain names
    lookup result waiting is
    interruptible when res_send()
    helper process is used.
    Value "auto" is default. This may case that
    this is disabled (unless "mail-services-lookup"
    is modified). Also boolean ON, OFF, TRUE, FALSE, YES and NO
    values are allowed on elmrc option "name-lookup-cancel".
    - Added set_cancel_message()
    - Changed connect_remote_account(), make_remote_mbox(),
    give_service_entryS(), lookup_namei(),
    lookup_name()
    - Added give_service_entry_can(),
    give_service_entry4_can()
    - Added wait_for_action_or_timeout_settime_c() to lib/schedule.c
    - Added wait_for_action_or_deadline_settime_c() to lib/schedule.c

    - Changed that real_wait_select() and real_wait_poll()
    return -1 on error. Added enum wait_for_status.
    - Changed real_wait(), real_wait_check_timeout(),
    wait_for_something()
    - Some changes on my_wait()
    - Changed error_sleep() return type to be void (no value).

    - Changed SR_RawState()
    - Fixed crash on connect-mode -keyword parsing.
    - Added conf_split_param_value() to lib/remote_mbx.c

    - Added sigchld_handler() call to
    verify_transmission(), enter_helper(),
    attach_modify(), extended_command(),
    fbrowser(), edit_headers(),
    alias_modify(), ViewThreads()

    - Added lib/static-hosts.c, which parsed
    /etc/hosts file without using gethostent()
    function.
    - If elmrc option "special-use-domains-lookup"
    have value "static-hosts", names given on elmrc
    option "special-use-domains-blacklist"
    are directly read from /etc/hosts (only).
    > Names given on elmrc option
    "special-use-domain" are not looked up
    from DNS and are not looked up with elmrc
    option "mail-services-lookup".

    - If elmrc option "search-mail-service" on
    "resolv:" section is value "static-hosts-dotless-search-name",
    libelmme-resolv.so module search /etc/hosts first
    if name does not include dot (.), then lookups
    name from DNS with default search rules (res_search()).
    If name not found from DNS and name includes dot (.), then
    libelmme-resolv.so module search /etc/hosts.
    > libelmme-resolv.so module uses elmrc option
    "search-mail-service", when it searches names for
    addresses.
    - If elmrc option "search-mail-service" on
    "resolv:" section is value "static-hosts-dotless",
    libelmme-resolv.so module search /etc/hosts first
    if name does not include dot (.), then queries
    exact name from DNS (res_query()). If name not found
    from DNS and name includes dot (.), then
    libelmme-resolv.so module search /etc/hosts.

    - If "query-mode" on "resolv:" section have value
    "blocking", then default value of "search-mail-service"
    on "resolv:" section is "fallback-dotless-search-name".
    - If "query-mode" on "resolv:" section have value
    "non-blocking", then default value of "search-mail-service"
    on "resolv:" section is "static-hosts-dotless-search-name".

    - libelmme-resolv.so -module changes default value of
    "mail-services-lookup" if "query-mode" on "resolv:"
    section have "non-blocking" values and "use-config-library"
    includes "resolv". This is similar than libelmme-resolv.so
    -module's change of "verify-domain".

    - Changed wait_for_something(), real_wait_select() and
    real_wait_poll() on lib/schedule.c

    - Added "X-Autogenerated:" to default weedlist. This header
    is generated by Communigate Pro.
    - Added "Auto-Submitted:" to default weedlist. This is defined
    on RFC 3834.
    - Added "X-MS-Exchange-" to default weedlist (removed
    "X-MS-Exchange-Organization-").
    - Added "X-Originating-IP:" and "Accept-Language:" to
    default weedlist.
    - Added "Resent-Message-ID:" to default weedlist.

    - Added warning of magic values >= 256 to
    parse_magic() on lib/misc/mime_types.c
    - Added some fixes for magic values >= 256 to
    parse_magic() on lib/misc/mime_types.c
    - Changes error messages on load_mime_types_map()
    on lib/misc/mime_types.c

    New elmrc options:
    name-lookup-cache-time
    name-lookup-cancel
    special-use-domains-lookup
    static-hosts-max-names

    New files:
    shared_libs/resolv/resolvertest2.c
    shared_libs/resolv/resolvconf.h.SH
    shared_libs/resolv/query.c
    lib/static-hosts.c
    hdrs/service_imp.h

    Warnings
    --------

    - Not compiled with MMDF support defined, so probably it doesn't
    work (or even compile).

    - This has not been tested much so there can be bad bugs.

    Bug reports to: Kari E. Hurtta <elm@elmme-mailer.org>
    (was hurtta+elm@posti.FMI.FI)

    - Internationalized (ie. non-ASCII) domain names are not supported.

    - Support for multipart/signed and multipart/encrypted (specially:
    support for PGP/MIME) only in reading side. There is no support
    for attachments with multipart/encrypted.

    - HP's shoftkeys are no longer supported

    - DECNET addresses like host::user may be interpreted as phrase
    of group syntax or as route of source routed address.

    - Header editing screen now uses addresses in form phrase <address>,
    but because it does not require using of comma (,), multiword
    phrases must be entered in quotes.

    For example: "Kari Hurtta" <hurtta>

    - If address includes <> or comments (), they are not aliased
    expanded. So aliases must be entered as bare words.

    - Addresses given as arguments to elm command should be given
    as one address per argument. Giving of sevaral addresses per
    one argument causes that address is misparsed if header is
    edited on header editing screen.

    That is:

    Use: elm '"Kari Hurtta" <hurtta>' 'Admin <root>'

    Don't use: elm 'Kari Hurtta <hurtta>, Admin <root>'

    - p)rint command acts as P)rint text -command. So it
    is currently quite useless.
    p)rint command does that via readmsg -command. However
    P)rint text does actually same (without readmsg).

    - Some Linux libraries does not follow $LC_CTYPE when program is
    setgid. Net result is that your locale is always C. That is
    visible that $LC_CTYPE does not effect to locale printed by
    'elm -vvvvv':

    Locale (LC_CTYPE): C
    Display character-set: US-ASCII
    Sending character-set: US-ASCII

    - All refrences iso2022 maps are parsed and read to memory.
    This may cause quite big memory consumption specially because
    eastern (multibyte) sets tend to be lot of characters. That
    mapping information should be shared between processes to
    reduce memory consuption.

    - If display charset is produced by using mapping from locale
    to charset where charset definition is later invalidated
    ("removed") by setting explicit compatcharsets on user's
    .elm/elmrc, that may cause PANIC on elm's internal pager
    or other problems. Invalidation happens if display charset
    is on implicit compatcharsets list (because of charset
    definition), but does not have explicit compatcharsets list
    given by user.

    - Neither Unicode didirectional algorithm nor Right-Left scripts
    are supported.

    - In some situations two Status headers may be generated two
    Status headers -- one by IMAP deamon and one from APPENDed
    message.

    - When APPENDing message to IMAP folder (which is normal UNIX
    mailbox format) original "From " separator line can not be
    preserved -- specially it is not possible to pass envelope
    sender address.

    - For UTF-8 charset Elm only knows printable characters from
    Latin/1 range, if unicode database (see elmrc option "unidata")
    is not loaded.

    - For using of ISO2022 character sets it is required that mapping
    them to unicode is know -- otherwise Elm ME+ does not know which
    characters are printable.

    - UTF-16 surrogate pairs (D800-DFFF) are not supported on UTF-7
    charset.

    - Mixing of names using IMAP naming convention
    (imap-naming-convention = yes)
    and names using imap-charset does not work very well...

    - " Regarding my message (8 Aug 2000) regarding 'newmail' on
    AIX 4.3.3 in an 'aixterm' window and the 'aixterm' did not
    close, indeed the problem was NOT related to 'newmail' but an
    AIX bug.

    IBM has release a patch, and the 'aixterm' in AIX 4.3.3 must
    be update with fileset X11.apps.aixterm.4.3.3.26 (PTF
    U473920) is solved to problem."
    From: Noam G. Nudelman <noam@mail.biu.ac.il>

    - File /usr/share/locale/fi/charset gives charset name utf-8 on
    Linux Mandrake 7.2. This causes that Configure generates
    mapping
    fi utf-8
    to elm.mimecharsets. However that seems to have
    incorrect mapping. You may want change this to
    fi ISO-8859-1

    ( however nl_langinfo(CODESET) gives charset ISO-8859-15
    but look following entry. )

    - Locale 'fi' seems to have charset ISO-8859-15 according
    of nl_langinfo(CODESET) on Mandrake Linux 7.2 (and probaly
    others with same glibc version). However for example gnome
    terminal uses font
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-1
    and not
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-15

    Also KDE's konsole program seems use iso8859-1 character set
    although locale is 'fi' which should have ISO-8859-15 according
    of nl_langinfo (selecting "unicode" from menu seems fix that.)

    Because of mismatch more correct locale is fi_FI.88591, which gives
    ISO-8859-1 character set according of nl_langinfo(CODESET).

    ( Locale seems come from /etc/sysconfig/i18n or $HOME/.i18n )

    > To enable handling of ISO-8859-1 and ISO-8859-15 character sets
    on linux console, read comments from doc/terminal.info file.

    - Mandrake Linux 7.2 seems set LD_PRELOAD to load
    /usr/lib/libxalflaunch.so.0. That (xalf-0.4-2mdk) causes that
    elm to crash on startup (actually before main() is reached.)

    - kterm on Mandrake Linux 7.2 seems have (at least on my test
    environment) seems get bad fontlist (*VT100*fontList) which
    gives bad font for iso8859-1 -- therefore ISO-8859-1 characters
    do not work.

    ("xrdb -query" seems report resource with name "*fontList"
    -- that probably overrides "*VT100*fontList" which comes
    from /usr/lib/X11/app-defaults/KTerm )

    - Also note that initially kterm does NOT default to
    ISO-8859-1 -- therefore ISO-8859-1 works only when
    elm explicity switch to ISO-8859-1 (for example
    with 'elm -D ISO-8859-1')

    - When assembling message/partial MIME (RFC 2046)
    requires that all headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are copied from
    initial enclosing message to assembled message. It also
    requires that headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are ignored and
    dropped from enclosed message.

    For now we copy only Received: -headers. Dropping extra
    headers from enclosed message makes assembly more
    complicated (and dropping of Received: -headers
    from enclosed message do not make sense.)

    - EXIF files are sometimes labeled with content-type
    image/jpeg. They also use .jpg filename extension. They are
    not accepted by Elm ME+ as image/jpeg because magic number
    (and format) is different. It is unclear what is correct
    treatment. According of specification EXIF files may
    wrap also other file types than jpeg (JFIF).

    - mailer=sendmail; verify=yes works only when sendmail
    is installed as setuid root. Use mailer=submission instead.
    * Starting from sendmail 8.12 sendmail is normally
    installed as setgid smmsp and not as setuid root.
    - However error message is printed only if
    verify-local-address=yes is also set

    - IMAP connection is stalled some times. Reason is unknown.

    - From name option (-f) on fastmail is currently broken.

    Collector of these patches
    --------------------------

    Kari Hurtta <elm@elmme-mailer.org>
    Kari Hurtta <hurtta+elm@siilo.FMI.FI>

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Kari Hurtta@21:1/5 to All on Fri Jun 1 20:13:21 2018
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha48.0

    Elm ME+ 2.5 PLalpha48

    Before applying patch catenate parts 1 - 2 first.
    Also it should be possible to apply parts 1 - 2
    individually.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha47

    ====================================== ( part 0/2 ) =========

    Elm ME+ 2.5 PLalpha48

    - Is available with
    <URL: http://www.elmme-mailer.org/elm-ME+2.5.PLalpha48.patch.gz >
    and <URL: http://www.elmme-mailer.org/elm-ME+2.5.alpha48.tar.gz >

    - Is available on ftp.funet.fi
    via anonymous ftp
    directory pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/

    files elm-ME+2.5.PLalpha48.patch.gz
    and elm-ME+2.5.alpha48.tar.gz

    or is available with
    <URL: http://www.nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha48.patch.gz >
    and <URL: http://www.nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.alpha48.tar.gz >

    SUMMARY: This release updates mime types list
    and adds additional magic numbers
    (byte sequence signatures) to
    global elm.mimetypes file. Also
    this release fixes panic when
    s)aving to username@server. Now
    this allows s)aving to #hashmark
    if hashmark refers to IMAP server.
    Also some other changes and some bug
    fixes are included.

    Changes on Elm ME+ 2.5 PLalpha48 compared with Elm ME+ 2.5 PLalpha47 --------------------------------------------------------------------

    SUMMARY: This release updates mime types list
    and adds additional magic numbers
    (byte sequence signatures) to
    global elm.mimetypes file. Also
    this release fixes panic when
    s)aving to username@server. Now
    this allows s)aving to #hashmark
    if hashmark refers to IMAP server.
    Also some other changes and some bug
    fixes are included.

    - Updated subtypes of application
    on doc/mime.types
    - Added MIME_TYPE_FONT to enum mime_major_type
    at hdrs/misclib.h
    - Added "font" to major_type [] at
    lib/misc/mediatype.c
    - Added MIME_TYPE_MODEL to enum mime_major_type
    hdrs/misclib.h (model was already
    on major_type [] at lib/misc/mediatype.c)
    - Added MIME_TYPE_EXAMPLE to enum mime_major_type
    at hdrs/misclib.h
    - Added "example" to major_type [] at
    lib/misc/mediatype.c ("example" is treated
    like MIME_TYPE_UNKNOWN / "?unknown?" ).
    - Added "chemical" to major_type [] at
    lib/misc/mediatype.c (but no constant
    to enum mime_major_type).
    - Updated subtypes of audio
    on doc/mime.types
    - Added subtypes of font
    to doc/mime.types
    - Removed image/t38 from doc/mime.types
    - Updated subtypes of image
    on doc/mime.types
    - Updated subtypes of text
    on doc/mime.types
    - Updated subtypes of video
    on doc/mime.types

    - Added ignore_mime_types_map() to
    hdrs/misclib.h and lib/misc/mime_types.c
    - Added -I mapfile to elmmimetypes
    to specify list of mappings which
    are ignored.
    - Mapping for image/t38
    is removed during installation

    - Allowed several magic numbers
    (byte sequence signatures) on
    global {lib}/elm.mimetypes and
    user's .elm/mime.types. Magic
    numbers (byte sequence signatures)
    must be on offset order and all
    magic numbers (byte sequence signatures)
    need match.
    - Added additional magic numbers
    (byte sequence signatures) to
    application/vnd.etsi.asic-e+zip
    application/vnd.etsi.asic-s+zip
    application/epub+zip
    application/vnd.kde.kchart
    application/vnd.kde.kivio
    application/vnd.kde.karbon
    application/vnd.kde.kformula
    application/vnd.kde.kontour
    application/vnd.kde.kpresenter
    application/vnd.kde.kspread
    application/vnd.kde.kword
    application/vnd.oasis.opendocument.database
    application/vnd.oasis.opendocument.chart
    application/vnd.oasis.opendocument.formula
    application/vnd.oasis.opendocument.graphics
    application/vnd.oasis.opendocument.image
    application/vnd.oasis.opendocument.text-master
    application/vnd.oasis.opendocument.presentation
    application/vnd.oasis.opendocument.spreadsheet
    application/vnd.oasis.opendocument.text
    application/vnd.oasis.opendocument.chart-template
    application/vnd.oasis.opendocument.formula-template
    application/vnd.oasis.opendocument.graphics-template
    application/vnd.oasis.opendocument.text-web
    application/vnd.oasis.opendocument.image-template
    application/vnd.oasis.opendocument.presentation-template
    application/vnd.oasis.opendocument.spreadsheet-template
    application/vnd.oasis.opendocument.text-template
    application/vnd.collabio.xodocuments.presentation
    application/vnd.collabio.xodocuments.document
    application/vnd.collabio.xodocuments.spreadsheet
    application/vnd.collabio.xodocuments.presentation-template
    application/vnd.collabio.xodocuments.spreadsheet-template
    application/vnd.collabio.xodocuments.document-template
    audio/sp-midi
    audio/qcelp
    to doc/mime.types. However many of these seems
    to be incorrect.

    - Added safe_stralloc_append() to
    lib/safemalloc.c

    - Do not give error message
    Don't understand specifying a subject and no-one to send to!
    when called as
    elm -S -s subject
    (send only mode).
    - Also
    elm -s subject
    alone implies send only mode.

    - Fixed error where s)ave command for target
    username@server produces
    BROWSER PANIC in .../lib/mbox/savefolder.c:5705:prepare_write_folder
    >>>No selection
    Problem noted by: Laura Kataja
    ( But target username@server:INBOX works.)
    > Changed that change_folder_browser_type() does
    not clear selection, but frees only type
    specific type.
    > If browser type supports hashmark data
    on selection, possible hashmark info is
    copied.
    - Added support to to s)ave for target
    #hashmark. This is only supported
    if hashmark refers to IMAP server.
    In that case mail is saved to INBOX
    on IMAP server.
    - Changed implementation of
    browser_cat_hashmark() on hashmark
    browser.

    - Fixed possible bug on showmsg_visit_mailbox_cmd()
    - Fixed possible bug on metapager()

    New file:
    ConfTool/killmimetypes

    Warnings
    --------

    - Not compiled with MMDF support defined, so probably it doesn't
    work (or even compile).

    - This has not been tested much so there can be bad bugs.

    Bug reports to: Kari E. Hurtta <elm@elmme-mailer.org>
    (was hurtta+elm@posti.FMI.FI)

    - Internationalized (ie. non-ASCII) domain names are not supported.

    - Support for multipart/signed and multipart/encrypted (specially:
    support for PGP/MIME) only in reading side. There is no support
    for attachments with multipart/encrypted.

    - HP's shoftkeys are no longer supported

    - DECNET addresses like host::user may be interpreted as phrase
    of group syntax or as route of source routed address.

    - Header editing screen now uses addresses in form phrase <address>,
    but because it does not require using of comma (,), multiword
    phrases must be entered in quotes.

    For example: "Kari Hurtta" <hurtta>

    - If address includes <> or comments (), they are not aliased
    expanded. So aliases must be entered as bare words.

    - Addresses given as arguments to elm command should be given
    as one address per argument. Giving of sevaral addresses per
    one argument causes that address is misparsed if header is
    edited on header editing screen.

    That is:

    Use: elm '"Kari Hurtta" <hurtta>' 'Admin <root>'

    Don't use: elm 'Kari Hurtta <hurtta>, Admin <root>'

    - p)rint command acts as P)rint text -command. So it
    is currently quite useless.
    p)rint command does that via readmsg -command. However
    P)rint text does actually same (without readmsg).

    - Some Linux libraries does not follow $LC_CTYPE when program is
    setgid. Net result is that your locale is always C. That is
    visible that $LC_CTYPE does not effect to locale printed by
    'elm -vvvvv':

    Locale (LC_CTYPE): C
    Display character-set: US-ASCII
    Sending character-set: US-ASCII

    - All refrences iso2022 maps are parsed and read to memory.
    This may cause quite big memory consumption specially because
    eastern (multibyte) sets tend to be lot of characters. That
    mapping information should be shared between processes to
    reduce memory consuption.

    - If display charset is produced by using mapping from locale
    to charset where charset definition is later invalidated
    ("removed") by setting explicit compatcharsets on user's
    .elm/elmrc, that may cause PANIC on elm's internal pager
    or other problems. Invalidation happens if display charset
    is on implicit compatcharsets list (because of charset
    definition), but does not have explicit compatcharsets list
    given by user.

    - Neither Unicode didirectional algorithm nor Right-Left scripts
    are supported.

    - In some situations two Status headers may be generated two
    Status headers -- one by IMAP deamon and one from APPENDed
    message.

    - When APPENDing message to IMAP folder (which is normal UNIX
    mailbox format) original "From " separator line can not be
    preserved -- specially it is not possible to pass envelope
    sender address.

    - For UTF-8 charset Elm only knows printable characters from
    Latin/1 range, if unicode database (see elmrc option "unidata")
    is not loaded.

    - For using of ISO2022 character sets it is required that mapping
    them to unicode is know -- otherwise Elm ME+ does not know which
    characters are printable.

    - UTF-16 surrogate pairs (D800-DFFF) are not supported on UTF-7
    charset.

    - Mixing of names using IMAP naming convention
    (imap-naming-convention = yes)
    and names using imap-charset does not work very well...

    - " Regarding my message (8 Aug 2000) regarding 'newmail' on
    AIX 4.3.3 in an 'aixterm' window and the 'aixterm' did not
    close, indeed the problem was NOT related to 'newmail' but an
    AIX bug.

    IBM has release a patch, and the 'aixterm' in AIX 4.3.3 must
    be update with fileset X11.apps.aixterm.4.3.3.26 (PTF
    U473920) is solved to problem."
    From: Noam G. Nudelman <noam@mail.biu.ac.il>

    - File /usr/share/locale/fi/charset gives charset name utf-8 on
    Linux Mandrake 7.2. This causes that Configure generates
    mapping
    fi utf-8
    to elm.mimecharsets. However that seems to have
    incorrect mapping. You may want change this to
    fi ISO-8859-1

    ( however nl_langinfo(CODESET) gives charset ISO-8859-15
    but look following entry. )

    - Locale 'fi' seems to have charset ISO-8859-15 according
    of nl_langinfo(CODESET) on Mandrake Linux 7.2 (and probaly
    others with same glibc version). However for example gnome
    terminal uses font
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-1
    and not
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-15

    Also KDE's konsole program seems use iso8859-1 character set
    although locale is 'fi' which should have ISO-8859-15 according
    of nl_langinfo (selecting "unicode" from menu seems fix that.)

    Because of mismatch more correct locale is fi_FI.88591, which gives
    ISO-8859-1 character set according of nl_langinfo(CODESET).

    ( Locale seems come from /etc/sysconfig/i18n or $HOME/.i18n )

    > To enable handling of ISO-8859-1 and ISO-8859-15 character sets
    on linux console, read comments from doc/terminal.info file.

    - Mandrake Linux 7.2 seems set LD_PRELOAD to load
    /usr/lib/libxalflaunch.so.0. That (xalf-0.4-2mdk) causes that
    elm to crash on startup (actually before main() is reached.)

    - kterm on Mandrake Linux 7.2 seems have (at least on my test
    environment) seems get bad fontlist (*VT100*fontList) which
    gives bad font for iso8859-1 -- therefore ISO-8859-1 characters
    do not work.

    ("xrdb -query" seems report resource with name "*fontList"
    -- that probably overrides "*VT100*fontList" which comes
    from /usr/lib/X11/app-defaults/KTerm )

    - Also note that initially kterm does NOT default to
    ISO-8859-1 -- therefore ISO-8859-1 works only when
    elm explicity switch to ISO-8859-1 (for example
    with 'elm -D ISO-8859-1')

    - When assembling message/partial MIME (RFC 2046)
    requires that all headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are copied from
    initial enclosing message to assembled message. It also
    requires that headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are ignored and
    dropped from enclosed message.

    For now we copy only Received: -headers. Dropping extra
    headers from enclosed message makes assembly more
    complicated (and dropping of Received: -headers
    from enclosed message do not make sense.)

    - EXIF files are sometimes labeled with content-type
    image/jpeg. They also use .jpg filename extension. They are
    not accepted by Elm ME+ as image/jpeg because magic number
    (and format) is different. It is unclear what is correct
    treatment. According of specification EXIF files may
    wrap also other file types than jpeg (JFIF).

    - mailer=sendmail; verify=yes works only when sendmail
    is installed as setuid root. Use mailer=submission instead.
    * Starting from sendmail 8.12 sendmail is normally
    installed as setgid smmsp and not as setuid root.
    - However error message is printed only if
    verify-local-address=yes is also set

    - IMAP connection is stalled some times. Reason is unknown.

    - From name option (-f) on fastmail is currently broken.

    Collector of these patches
    --------------------------

    Kari Hurtta <elm@elmme-mailer.org>
    Kari Hurtta <hurtta+elm@siilo.FMI.FI>


    ConfTool/killmimetypes | 5
    MANIFEST | 1
    Makefile-1.SH | 13
    README.ME+ | 383 +++++!!!!!!!!!
    doc/elmmimetypes-info | 15
    doc/elmmimetypes.1 | 9
    doc/mime.types | 1170 ++++++++++++++++++++++++++++++++---!!!!!!!!
    hdrs/elmlib.h | 9
    hdrs/hashmark.h | 17
    hdrs/hashmark_imp.h | 60 !!
    hdrs/mbx_imp.h | 92 !!!
    hdrs/misclib.h | 18
    hdrs/patchlevel.h | 10
    hdrs/s_elm.h | 2
    hdrs/s_me.h | 1
    lib/mbox/def_mbox.h | 19
    lib/mbox/hashmark.c | 101 +++
    lib/mbox/hashmark_browser.c | 148 +++!!
    lib/mbox/hashmark_local.c | 203 +++-!
    lib/mbox/hashmark_remote.c | 182 ++++++
    lib/mbox/imap.c | 10
    lib/mbox/localmbx.c | 58 +!
    lib/mbox/mbox_generic.c | 28 !
    lib/mbox/remote_server.c | 8
    lib/mbox/savefolder.c | 118 ++!!
    lib/misc/mediatype.c | 16
    lib/misc/mime_types.c | 797 ++++++++-!!!!!!!!!!!!!!!!!!!
    lib/safemalloc.c | 44 +
    nls/C/C/C/s_elm.m | 4
    nls/C/C/C/s_me.m | 2
    src/args.c | 14
    src/attach_menu.c | 40
    src/file.c | 34 !
    src/list/visit_mailbox.c | 16
    src/metapager.c | 6
    src/savecopy.c | 17
    src/showmsg_c.c | 8
    utils/elmmimetypes.c | 43 +
    38 files changed, 2008 insertions(+), 136 deletions(-), 1577 modifications(!)

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Kari Hurtta@21:1/5 to All on Fri Jun 1 20:14:14 2018
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha48.1

    Elm ME+ 2.5 PLalpha48

    Before applying patch catenate parts 1 - 2 first.
    Also it should be possible to apply parts 1 - 2
    individually.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha47

    ====================================== ( part 1/2 ) =========

    For applying thich patch use (on directory where Configure is)

    patch -p1 < {this-file}

    ------------------------------------------------------------------------------ Index: elmME+.2.5.alpha48-cvs/hdrs/patchlevel.h
    Prereq: 1540000000
    *** elmME+.2.5.alpha47/hdrs/patchlevel.h Sun Feb 4 21:36:28 2018
    --- elmME+.2.5.alpha48-cvs/hdrs/patchlevel.h Sun May 20 19:17:35 2018 ***************
    *** 1,12 ****
    ! #define PATCHLEVEL "alpha47"
    /* Used by Configure:
    ! SHAREDTAG: .1.1.47
    */
    ! #define LAST_REPORT_TIME 1540000000
    #define BUG_REPORT_ADDR "Kari Hurtta <elm@elmme-mailer.org>"
    ! #define VERS_DATE "Feb 2018" /* for elm -v option */
    #define WHAT_STRING \
    ! "@(#) Version ME+ 2.5, USENET supported version, released Feb 2018"

    /*
    * Local Variables:
    --- 1,12 ----
    ! #define PATCHLEVEL "alpha48"
    /* Used by Configure:
    ! SHAREDTAG: .1.1.48
    */
    ! #define LAST_REPORT_TIME 1550000000
    #define BUG_REPORT_ADDR "Kari Hurtta <elm@elmme-mailer.org>"
    ! #define VERS_DATE "Jun 2018" /* for elm -v option */
    #define WHAT_STRING \
    ! "@(#) Version ME+ 2.5, USENET supported version, released Jun 2018"

    /*
    * Local Variables:
    Index: elmME+.2.5.alpha48-cvs/README.ME+
    *** elmME+.2.5.alpha47/README.ME+ Sun Feb 4 21:36:28 2018
    --- elmME+.2.5.alpha48-cvs/README.ME
  • From Kari Hurtta@21:1/5 to All on Fri Jun 1 20:14:57 2018
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha48.2

    Elm ME+ 2.5 PLalpha48

    Before applying patch catenate parts 1 - 2 first.
    Also it should be possible to apply parts 1 - 2
    individually.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha47

    ====================================== ( part 2/2 ) =========

    Index: elmME+.2.5.alpha48-cvs/lib/mbox/remote_server.c
    *** elmME+.2.5.alpha47/lib/mbox/remote_server.c Sun Feb 4 21:36:28 2018
    --- elmME+.2.5.alpha48-cvs/lib/mbox/remote_server.c Thu May 10 13:39:46 2018
    ***************
    *** 1,7 ****
    ! static char rcsid[] = "@(#)$Id: remote_server.c,v 2.23 2017/12/03 12:28:59 hurtta Exp $";

    /******************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 2.23 $ $State: Exp $
    *
    * Author: Kari Hurtta <hurtta+elm@siilo.FMI.FI>
    * (was hurtta+elm@posti.FMI.FI)
    --- 1,7 ----
    ! static char rcsid[] = "@(#)$Id: remote_server.c,v 2.24 2018/05/10 10:39:46 hurtta Exp $";

    /******************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 2.24 $ $State: Exp $
    *
    * Author: Kari Hurtta <hurtta+elm@siilo.FMI.FI>
    * (was hurtta+elm@posti.FMI.FI)
    ***************
    *** 3772,3778 ****
    only on fbrowser (Elm 2.5 stype file browser) */
    browser_select_idx_generic,
    browser_line_idx_remote,
    ! browser_reload
  • From Kari Hurtta@21:1/5 to All on Sat Jun 2 09:25:30 2018
    Experimental RPM spec file for ELM ME+ 2.5 PLalpha48
    exists on <URL: http://www.elmme-mailer.org/rpm/elm-ME+2.5.html >
    directory.

    I do not know rpm, so please do not blame me, if
    I wipe your hardisk...

    Files are following

    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha48-1.spec
    RPM spec file [Note 1]
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha48-1.spec.elm-key-2013.sig
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha48-1.spec.elm-key-2013old.sig
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha48-1.spec.sig
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha48-1.fdr19.src.rpm
    Source rpm [Note 2]

    * Compiled on Linux Mandrake release 7.2
    (Linux 2.2, glibc 2.1, Sendmail 8.13)

    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha48-1.mdk7.2.i686.rpm
    Package elm binary RPM build on Linux Mandrake release 7.2 [Note 3, Note 4]
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha48-1.mdk7.2.i686.rpm.sig
    - http://www.elmme-mailer.org/rpm/elm-mod-ME+2.5.alpha48-1.mdk7.2.i686.rpm
    Package elm-mod binary RPM build on Linux Mandrake release 7.2 [Note 3, Note 5]
    - http://www.elmme-mailer.org/rpm/elm-mod-ME+2.5.alpha48-1.mdk7.2.i686.rpm.sig
    - http://www.elmme-mailer.org/rpm/elm-tls-ME+2.5.alpha48-1.mdk7.2.i686.rpm
    Package elm-tls binary RPM build on Linux Mandrake release 7.2 [Note 3, Note 6]
    - http://www.elmme-mailer.org/rpm/elm-tls-ME+2.5.alpha48-1.mdk7.2.i686.rpm.sig

    * Compiled on Fedora release 19
    (Linux 3.14, glibc 2.17, Sendmail 8.14)

    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha48-1.fdr19.i686.rpm
    Package elm binary RPM build on Fedora release 19 [Note 7]
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha48-1.fdr19.i686.rpm.sig
    - http://www.elmme-mailer.org/rpm/elm-mod-ME+2.5.alpha48-1.fdr19.i686.rpm
    Package elm-mod binary RPM build on Fedora release 19 [Note 7]
    - http://www.elmme-mailer.org/rpm/elm-mod-ME+2.5.alpha48-1.fdr19.i686.rpm.sig
    - http://www.elmme-mailer.org/rpm/elm-tls-ME+2.5.alpha48-1.fdr19.i686.rpm
    Package elm-tls binary RPM build on Fedora release 19 [Note 7]
    - http://www.elmme-mailer.org/rpm/elm-tls-ME+2.5.alpha48-1.fdr19.i686.rpm.sig
    - http://www.elmme-mailer.org/rpm/elm-debuginfo-ME+2.5.alpha48-1.fdr19.i686.rpm
    Package elm-debuginfo binary RPM build on Fedora release 19 [Note 7, Note 8]
    - http://www.elmme-mailer.org/rpm/elm-debuginfo-ME+2.5.alpha48-1.fdr19.i686.rpm.sig

    * Notes

    Note 1:
    - rpmbuild -ba elm-ME+2.5.alpha48-1.spec warns that "prereq is
    deprecated", but that is required on Linux Mandrake release 7.2
    where older rpm -package is build.

    Note 2:
    - elm-ME+2.5.alpha48-1.fdr19.src.rpm is signed internally with GPG key
    elm.key.2013.asc (A54BE3BC 2013-10-20).

    Note 3:
    - elm-ME+2.5.alpha48-1.mdk7.2.i686.rpm and
    elm-*-ME+2.5.alpha48-1.mdk7.2.i686.rpm are signed internally with
    GPG key elm.key.2013old.asc (825FDF78 2013-10-26).

    Note 4:
    - elm-ME+2.5.alpha48-1.mdk7.2.i686.rpm is compiled agaist Sendmail
    8.13 (not from Mandrake distribution).

    Note 5:
    - elm-mod-ME+2.5.alpha48-1.mdk7.2.i686.rpm does not include
    libelmme-resolv.so.

    Note 6:
    - elm-tls-ME+2.5.alpha48-1.mdk7.2.i686.rpm do not load/work on
    Mandrake 7.2, because openssl library misses RAND_egd_bytes
    function.

    Note 7:
    - elm-ME+2.5.alpha48-1.fdr19.i686.rpm and
    elm-*-ME+2.5.alpha48-1.fdr19.i686.rpm are signed internally with GPG
    key elm.key.2013.asc (A54BE3BC 2013-10-20).

    Note 8:
    - elm-ME+2.5.alpha48-1.spec do not have %package debuginfo, but
    rpmbuild -ba elm-ME+2.5.alpha48-1.spec build
    elm-debuginfo-ME+2.5.alpha48-1.fdr19.i686.rpm anyway.

    * Signatures

    {file}.sig PGP signature (old key pubkey.asc, EA5A2379 1996-04-23)
    {file}.elm-key-2013.sig GPG signature (key elm.key.2013.asc, A54BE3BC 2013-10-20, expires: 2018-10-19)
    {file}.elm-key-2013old.sig GPG signature (key elm.key.2013old.asc, 825FDF78 2013-10-26, expires: 2018-10-25)

    * Configuration

    Following files (if exists) are rewritten by elmconfwriter on
    installation:

    - /usr/local/lib/elm.rc
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.hashmarks

    Spec file compiles elm for binary distribution, so you must edit
    /usr/local/lib/elm.rc before using Elm ME+ 2.5. Following variables may
    need to be modified on elm.rc:

    - mailer
    - hostdomain (this is usually needed)
    - hostfullname
    - hostname (usually this is not needed)
    - mailname (default values is generated from other values)
    name-resolution (controls default values of hostdomain,
    hostfullname, hostname, mailname)

    For re-generation of following file, old information (if exists) is
    used:

    - /usr/local/lib/elm.rc

    WARNING: Check after installation that libraries are enabled. Global
    elm.rc values are:

    use-library =
    use-base-library = iconv
    use-config-library = resolv
    use-connect-library = tls resolv
    use-mailer-library = smtp resolv

    Note that libelmme-resolv.so does not compile on all distributions. In
    that case omit resolv from elm.rc.

    After editing global elm.rc run /usr/local/lib/elmrc-write -GI for
    fixing possible errors.

    On installation following existing files are merged with new values:

    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.hashmarks

    Old values from /usr/local/lib/aliases.text are converted to /usr/local/lib/elm.aliases and /usr/local/lib/aliases.text is renamed to /usr/local/lib/aliases.text.OLD.

    On installation new values without merging are written to following
    files:

    - /usr/local/lib/elm.aliases.NEW
    - /usr/local/lib/elm.mailinglists.NEW
    - /usr/local/lib/elm.mailservices.NEW
    - /usr/local/lib/elm.mimecharsets.NEW
    - /usr/local/lib/elm.mimetypes.NEW
    - /usr/local/lib/elm.terminalinfo.NEW
    - /usr/local/lib/elm.iso2022sets.NEW
    - /usr/local/lib/elm.hashmarks.NEW

    Package elm-mod includes libelmme-iconv.so and libelmme-smtp.so. If
    package elm-mod includes libelmme-resolv.so, this is noted. And package
    elm-tls includes libelmme-tls.so.

    Installation loses mailer = submission setting from global /usr/local/lib/elm.rc, because when elm package rewrites elm.rc,
    submission mailer is not available. It becomes from elm-mod package.

    However failed values of /usr/local/lib/elm.rc are saved to /usr/local/lib/elm.rc.old-values file during installation.

    Global setting mailer = submission is restored from /usr/local/lib/elm.rc.old-values file, when package elm-mod is
    installed.

    Also following directories are used:

    - /usr/local/lib/elm.map.txt/ (global setting map-text-dir =
    {lib}/elm.map.txt)
    - /usr/local/lib/elm.map.bin/ (global setting map-bin-dir =
    {lib}/elm.map.bin)
    - /usr/local/lib/elm.user.map/ (global setting user-map-dir =
    {lib}/elm.user.map)

    Hashmark EXAMPLE uses file /usr/local/lib/elm.user.map/elm.usermap.

    SUMMARY: This release updates mime types list
    and adds additional magic numbers
    (byte sequence signatures) to
    global elm.mimetypes file. Also
    this release fixes panic when
    s)aving to username@server. Now
    this allows s)aving to #hashmark
    if hashmark refers to IMAP server.
    Also some other changes and some bug
    fixes are included.

    ELM ME+ 2.5 PLalpha48 changelog

    Changes on Elm ME+ 2.5 PLalpha48 compared with Elm ME+ 2.5 PLalpha47 --------------------------------------------------------------------

    SUMMARY: This release updates mime types list
    and adds additional magic numbers
    (byte sequence signatures) to
    global elm.mimetypes file. Also
    this release fixes panic when
    s)aving to username@server. Now
    this allows s)aving to #hashmark
    if hashmark refers to IMAP server.
    Also some other changes and some bug
    fixes are included.

    - Updated subtypes of application
    on doc/mime.types
    - Added MIME_TYPE_FONT to enum mime_major_type
    at hdrs/misclib.h
    - Added "font" to major_type [] at
    lib/misc/mediatype.c
    - Added MIME_TYPE_MODEL to enum mime_major_type
    hdrs/misclib.h (model was already
    on major_type [] at lib/misc/mediatype.c)
    - Added MIME_TYPE_EXAMPLE to enum mime_major_type
    at hdrs/misclib.h
    - Added "example" to major_type [] at
    lib/misc/mediatype.c ("example" is treated
    like MIME_TYPE_UNKNOWN / "?unknown?" ).
    - Added "chemical" to major_type [] at
    lib/misc/mediatype.c (but no constant
    to enum mime_major_type).
    - Updated subtypes of audio
    on doc/mime.types
    - Added subtypes of font
    to doc/mime.types
    - Removed image/t38 from doc/mime.types
    - Updated subtypes of image
    on doc/mime.types
    - Updated subtypes of text
    on doc/mime.types
    - Updated subtypes of video
    on doc/mime.types

    - Added ignore_mime_types_map() to
    hdrs/misclib.h and lib/misc/mime_types.c
    - Added -I mapfile to elmmimetypes
    to specify list of mappings which
    are ignored.
    - Mapping for image/t38
    is removed during installation

    - Allowed several magic numbers
    (byte sequence signatures) on
    global {lib}/elm.mimetypes and
    user's .elm/mime.types. Magic
    numbers (byte sequence signatures)
    must be on offset order and all
    magic numbers (byte sequence signatures)
    need match.
    - Added additional magic numbers
    (byte sequence signatures) to
    application/vnd.etsi.asic-e+zip
    application/vnd.etsi.asic-s+zip
    application/epub+zip
    application/vnd.kde.kchart
    application/vnd.kde.kivio
    application/vnd.kde.karbon
    application/vnd.kde.kformula
    application/vnd.kde.kontour
    application/vnd.kde.kpresenter
    application/vnd.kde.kspread
    application/vnd.kde.kword
    application/vnd.oasis.opendocument.database
    application/vnd.oasis.opendocument.chart
    application/vnd.oasis.opendocument.formula
    application/vnd.oasis.opendocument.graphics
    application/vnd.oasis.opendocument.image
    application/vnd.oasis.opendocument.text-master
    application/vnd.oasis.opendocument.presentation
    application/vnd.oasis.opendocument.spreadsheet
    application/vnd.oasis.opendocument.text
    application/vnd.oasis.opendocument.chart-template
    application/vnd.oasis.opendocument.formula-template
    application/vnd.oasis.opendocument.graphics-template
    application/vnd.oasis.opendocument.text-web
    application/vnd.oasis.opendocument.image-template
    application/vnd.oasis.opendocument.presentation-template
    application/vnd.oasis.opendocument.spreadsheet-template
    application/vnd.oasis.opendocument.text-template
    application/vnd.collabio.xodocuments.presentation
    application/vnd.collabio.xodocuments.document
    application/vnd.collabio.xodocuments.spreadsheet
    application/vnd.collabio.xodocuments.presentation-template
    application/vnd.collabio.xodocuments.spreadsheet-template
    application/vnd.collabio.xodocuments.document-template
    audio/sp-midi
    audio/qcelp
    to doc/mime.types. However many of these seems
    to be incorrect.

    - Added safe_stralloc_append() to
    lib/safemalloc.c

    - Do not give error message
    Don't understand specifying a subject and no-one to send to!
    when called as
    elm -S -s subject
    (send only mode).
    - Also
    elm -s subject
    alone implies send only mode.

    - Fixed error where s)ave command for target
    username@server produces
    BROWSER PANIC in .../lib/mbox/savefolder.c:5705:prepare_write_folder
    >>>No selection
    Problem noted by: Laura Kataja
    ( But target username@server:INBOX works.)
    > Changed that change_folder_browser_type() does
    not clear selection, but frees only type
    specific type.
    > If browser type supports hashmark data
    on selection, possible hashmark info is
    copied.
    - Added support to to s)ave for target
    #hashmark. This is only supported
    if hashmark refers to IMAP server.
    In that case mail is saved to INBOX
    on IMAP server.
    - Changed implementation of
    browser_cat_hashmark() on hashmark
    browser.

    - Fixed possible bug on showmsg_visit_mailbox_cmd()
    - Fixed possible bug on metapager()

    New file:
    ConfTool/killmimetypes

    Warnings
    --------

    - Not compiled with MMDF support defined, so probably it doesn't
    work (or even compile).

    - This has not been tested much so there can be bad bugs.

    Bug reports to: Kari E. Hurtta <elm@elmme-mailer.org>
    (was hurtta+elm@posti.FMI.FI)

    - Internationalized (ie. non-ASCII) domain names are not supported.

    - Support for multipart/signed and multipart/encrypted (specially:
    support for PGP/MIME) only in reading side. There is no support
    for attachments with multipart/encrypted.

    - HP's shoftkeys are no longer supported

    - DECNET addresses like host::user may be interpreted as phrase
    of group syntax or as route of source routed address.

    - Header editing screen now uses addresses in form phrase <address>,
    but because it does not require using of comma (,), multiword
    phrases must be entered in quotes.

    For example: "Kari Hurtta" <hurtta>

    - If address includes <> or comments (), they are not aliased
    expanded. So aliases must be entered as bare words.

    - Addresses given as arguments to elm command should be given
    as one address per argument. Giving of sevaral addresses per
    one argument causes that address is misparsed if header is
    edited on header editing screen.

    That is:

    Use: elm '"Kari Hurtta" <hurtta>' 'Admin <root>'

    Don't use: elm 'Kari Hurtta <hurtta>, Admin <root>'

    - p)rint command acts as P)rint text -command. So it
    is currently quite useless.
    p)rint command does that via readmsg -command. However
    P)rint text does actually same (without readmsg).

    - Some Linux libraries does not follow $LC_CTYPE when program is
    setgid. Net result is that your locale is always C. That is
    visible that $LC_CTYPE does not effect to locale printed by
    'elm -vvvvv':

    Locale (LC_CTYPE): C
    Display character-set: US-ASCII
    Sending character-set: US-ASCII

    - All refrences iso2022 maps are parsed and read to memory.
    This may cause quite big memory consumption specially because
    eastern (multibyte) sets tend to be lot of characters. That
    mapping information should be shared between processes to
    reduce memory consuption.

    - If display charset is produced by using mapping from locale
    to charset where charset definition is later invalidated
    ("removed") by setting explicit compatcharsets on user's
    .elm/elmrc, that may cause PANIC on elm's internal pager
    or other problems. Invalidation happens if display charset
    is on implicit compatcharsets list (because of charset
    definition), but does not have explicit compatcharsets list
    given by user.

    - Neither Unicode didirectional algorithm nor Right-Left scripts
    are supported.

    - In some situations two Status headers may be generated two
    Status headers -- one by IMAP deamon and one from APPENDed
    message.

    - When APPENDing message to IMAP folder (which is normal UNIX
    mailbox format) original "From " separator line can not be
    preserved -- specially it is not possible to pass envelope
    sender address.

    - For UTF-8 charset Elm only knows printable characters from
    Latin/1 range, if unicode database (see elmrc option "unidata")
    is not loaded.

    - For using of ISO2022 character sets it is required that mapping
    them to unicode is know -- otherwise Elm ME+ does not know which
    characters are printable.

    - UTF-16 surrogate pairs (D800-DFFF) are not supported on UTF-7
    charset.

    - Mixing of names using IMAP naming convention
    (imap-naming-convention = yes)
    and names using imap-charset does not work very well...

    - " Regarding my message (8 Aug 2000) regarding 'newmail' on
    AIX 4.3.3 in an 'aixterm' window and the 'aixterm' did not
    close, indeed the problem was NOT related to 'newmail' but an
    AIX bug.

    IBM has release a patch, and the 'aixterm' in AIX 4.3.3 must
    be update with fileset X11.apps.aixterm.4.3.3.26 (PTF
    U473920) is solved to problem."
    From: Noam G. Nudelman <noam@mail.biu.ac.il>

    - File /usr/share/locale/fi/charset gives charset name utf-8 on
    Linux Mandrake 7.2. This causes that Configure generates
    mapping
    fi utf-8
    to elm.mimecharsets. However that seems to have
    incorrect mapping. You may want change this to
    fi ISO-8859-1

    ( however nl_langinfo(CODESET) gives charset ISO-8859-15
    but look following entry. )

    - Locale 'fi' seems to have charset ISO-8859-15 according
    of nl_langinfo(CODESET) on Mandrake Linux 7.2 (and probaly
    others with same glibc version). However for example gnome
    terminal uses font
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-1
    and not
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-15

    Also KDE's konsole program seems use iso8859-1 character set
    although locale is 'fi' which should have ISO-8859-15 according
    of nl_langinfo (selecting "unicode" from menu seems fix that.)

    Because of mismatch more correct locale is fi_FI.88591, which gives
    ISO-8859-1 character set according of nl_langinfo(CODESET).

    ( Locale seems come from /etc/sysconfig/i18n or $HOME/.i18n )

    > To enable handling of ISO-8859-1 and ISO-8859-15 character sets
    on linux console, read comments from doc/terminal.info file.

    - Mandrake Linux 7.2 seems set LD_PRELOAD to load
    /usr/lib/libxalflaunch.so.0. That (xalf-0.4-2mdk) causes that
    elm to crash on startup (actually before main() is reached.)

    - kterm on Mandrake Linux 7.2 seems have (at least on my test
    environment) seems get bad fontlist (*VT100*fontList) which
    gives bad font for iso8859-1 -- therefore ISO-8859-1 characters
    do not work.

    ("xrdb -query" seems report resource with name "*fontList"
    -- that probably overrides "*VT100*fontList" which comes
    from /usr/lib/X11/app-defaults/KTerm )

    - Also note that initially kterm does NOT default to
    ISO-8859-1 -- therefore ISO-8859-1 works only when
    elm explicity switch to ISO-8859-1 (for example
    with 'elm -D ISO-8859-1')

    - When assembling message/partial MIME (RFC 2046)
    requires that all headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are copied from
    initial enclosing message to assembled message. It also
    requires that headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are ignored and
    dropped from enclosed message.

    For now we copy only Received: -headers. Dropping extra
    headers from enclosed message makes assembly more
    complicated (and dropping of Received: -headers
    from enclosed message do not make sense.)

    - EXIF files are sometimes labeled with content-type
    image/jpeg. They also use .jpg filename extension. They are
    not accepted by Elm ME+ as image/jpeg because magic number
    (and format) is different. It is unclear what is correct
    treatment. According of specification EXIF files may
    wrap also other file types than jpeg (JFIF).

    - mailer=sendmail; verify=yes works only when sendmail
    is installed as setuid root. Use mailer=submission instead.
    * Starting from sendmail 8.12 sendmail is normally
    installed as setgid smmsp and not as setuid root.
    - However error message is printed only if
    verify-local-address=yes is also set

    - IMAP connection is stalled some times. Reason is unknown.

    - From name option (-f) on fastmail is currently broken.

    Collector of these patches
    --------------------------

    Kari Hurtta <elm@elmme-mailer.org>
    Kari Hurtta <hurtta+elm@siilo.FMI.FI>

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Kari Hurtta@21:1/5 to All on Sat Jun 2 14:17:22 2018
    Experimental DEB generator script for Elm ME+ 2.5 PLalpha48
    exists on <URL: http://www.elmme-mailer.org/deb/elm-ME+2.5.html >
    directory.

    Files are following

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha48-1.gen_deb
    DEB generator script
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha48-1.gen_deb.elm-key-2013.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha48-1.gen_deb.elm-key-2013old.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha48-1.gen_deb.sig

    A command

    elm-ME+2.5.alpha48-1.gen_deb {packager}

    generates package elmme with version 1.1.48-1.{distribution}.

    A command

    elm-ME+2.5.alpha48-1.gen_deb --nonew {packager}

    generates package elm with version ME+2.5.alpha48-1.{distribution}.

    Both commands produce package with filename elm-ME+2.5.alpha48-1.{distribution}.{arch}.deb.

    Module libelmme-resolv.so is included for all distributions below, but libelmme-resolv.so does not implement interruptible DNS queries on all distributions.

    == Old package names, i386

    Package elm with version ME+2.5.alpha48-1.{distribution} and
    architecture i386.

    * Compiled on Debian GNU/Linux 3.1
    (Linux 2.4, glibc 2.3, Exim 3.36)

    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha48-1.Debian3.1.i386.deb
    Package elm binary DEB build on Debian GNU/Linux 3.1
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha48-1.Debian3.1.i386.deb.elm-key-2013.sig
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha48-1.Debian3.1.i386.deb.elm-key-2013old.sig
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha48-1.Debian3.1.i386.deb.sig

    Module libelmme-resolv.so does not implement interruptible DNS queries
    on Debian GNU/Linux 3.1.

    * Compiled on Ubuntu 6.06.2 LTS
    (Linux 2.6, glibc 2.3, Sendmail 8.13)

    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha48-1.Ubuntu6.06.i386.deb
    Package elm binary DEB build on Ubuntu 6.06.2 LTS
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha48-1.Ubuntu6.06.i386.deb.elm-key-2013.sig
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha48-1.Ubuntu6.06.i386.deb.sig

    * Compiled on Ubuntu 10.04.4 LTS
    (Linux 2.6, glibc 2.11, Sendmail 8.14)

    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha48-1.Ubuntu10.04.i386.deb
    Package elm binary DEB build on Ubuntu 10.04.4 LTS
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha48-1.Ubuntu10.04.i386.deb.elm-key-2013.sig
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha48-1.Ubuntu10.04.i386.deb.sig

    == New package names, i386

    Package elmme with version 1.1.48-1.{distribution} and architecture
    i386.

    * Compiled on Ubuntu 10.04.4 LTS
    (Linux 2.6, glibc 2.11, Sendmail 8.14)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha48-1.Ubuntu10.04.i386.deb
    Package elmme binary DEB build on Ubuntu 10.04.4 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha48-1.Ubuntu10.04.i386.deb.elm-key-2013.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha48-1.Ubuntu10.04.i386.deb.sig

    * Compiled on Ubuntu 14.04.5 LTS
    (Linux 4.4, glibc 2.19, no MTA)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha48-1.Ubuntu14.04.i386.deb
    Package elmme binary DEB build on Ubuntu 14.04.5 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha48-1.Ubuntu14.04.i386.deb.elm-key-2013.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha48-1.Ubuntu14.04.i386.deb.sig

    * Compiled on Ubuntu 16.04.4 LTS
    (Linux 4.4, glibc 2.23, no MTA)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha48-1.Ubuntu16.04.i386.deb
    Package elmme binary DEB build on Ubuntu 16.04.4 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha48-1.Ubuntu16.04.i386.deb.elm-key-2013.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha48-1.Ubuntu16.04.i386.deb.sig

    == New package names, amd64 (x86_64)

    Package elmme with version 1.1.48-1.{distribution} and architecture
    amd64 (also known as x86_64).

    * Compiled on Ubuntu 16.04.4 LTS
    (Linux 4.4, glibc 2.23, Sendmail 8.15)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha48-1.Ubuntu16.04.amd64.deb
    Package elmme binary DEB build on Ubuntu 16.04.4 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha48-1.Ubuntu16.04.amd64.deb.elm-key-2013.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha48-1.Ubuntu16.04.amd64.deb.sig

    == Signatures

    {file}.sig PGP signature (old key pubkey.asc, EA5A2379 1996-04-23)
    {file}.elm-key-2013.sig GPG signature (key elm.key.2013.asc, A54BE3BC 2013-10-20, expires: 2018-10-19)
    {file}.elm-key-2013old.sig GPG signature (key elm.key.2013old.asc, 825FDF78 2013-10-26, expires: 2018-10-25)

    == Configuration

    Following files (if exists) are rewritten by elmconfwriter on
    installation:

    - /usr/local/lib/elm.rc
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.hashmarks

    Deb generator script compiles elm for binary distribution, so you must
    edit /usr/local/lib/elm.rc before using Elm ME+ 2.5. Following
    variables may need to be modified on elm.rc:

    - mailer
    - hostdomain (this is usually needed)
    - hostfullname
    - hostname (usually this is not needed)
    - mailname (default values is generated from other values)
    - name-resolution (controls default values of hostdomain,
    hostfullname, hostname, mailname)

    By default first value for mailname is read from /etc/mailname file.

    For re-generation of following file, old information (if exists) is
    used:

    - /usr/local/lib/elm.rc

    WARNING: Check after installation that libraries are enabled. Global
    elm.rc values are:

    use-library =
    use-base-library = iconv
    use-config-library = resolv
    use-connect-library = tls resolv
    use-mailer-library = smtp resolv

    After editing global elm.rc run /usr/local/lib/elmrc-write -GI for
    fixing possible errors.

    On installation following existing files are merged with new values:

    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.hashmarks

    Old values from /usr/local/lib/aliases.text are converted to /usr/local/lib/elm.aliases and /usr/local/lib/aliases.text is renamed to /usr/local/lib/aliases.text.OLD.

    On installation new values without merging are written to following
    files:

    - /usr/local/lib/elm.aliases.NEW
    - /usr/local/lib/elm.mailinglists.NEW
    - /usr/local/lib/elm.mailservices.NEW
    - /usr/local/lib/elm.mimecharsets.NEW
    - /usr/local/lib/elm.mimetypes.NEW
    - /usr/local/lib/elm.terminalinfo.NEW
    - /usr/local/lib/elm.iso2022sets.NEW
    - /usr/local/lib/elm.hashmarks.NEW

    Also following directories are used:

    - /usr/local/lib/elm.map.txt/ (global setting map-text-dir =
    {lib}/elm.map.txt)
    - /usr/local/lib/elm.map.bin/ (global setting map-bin-dir =
    {lib}/elm.map.bin)
    - /usr/local/lib/elm.user.map/ (global setting user-map-dir =
    {lib}/elm.user.map)

    Hashmark EXAMPLE uses file /usr/local/lib/elm.user.map/elm.usermap.

    A command

    elm-{version}-{release}.gen_deb {packager}

    generates package elmme with version {library-version}-{release}.{distribution}. Note that a resulted
    filename of package is still elm-{version}-{release}.{arch}.deb. This
    version number is same than on files /usr/local/lib/libelmme-{module}.so.{library-version}. A filename of
    package is related to used source archive name, which is elm-{version}-{release}.tar.gz.

    A command

    elm-{version}-{release}.gen_deb --nonew {packager}

    generates package elm with version {version}-{release}.{distribution}.
    Also on this case a resulted filename of package is elm-{version}-{release}.{arch}.deb.

    SUMMARY: This release updates mime types list
    and adds additional magic numbers
    (byte sequence signatures) to
    global elm.mimetypes file. Also
    this release fixes panic when
    s)aving to username@server. Now
    this allows s)aving to #hashmark
    if hashmark refers to IMAP server.
    Also some other changes and some bug
    fixes are included.

    ELM ME+ 2.5 PLalpha48 changelog

    Changes on Elm ME+ 2.5 PLalpha48 compared with Elm ME+ 2.5 PLalpha47 --------------------------------------------------------------------

    SUMMARY: This release updates mime types list
    and adds additional magic numbers
    (byte sequence signatures) to
    global elm.mimetypes file. Also
    this release fixes panic when
    s)aving to username@server. Now
    this allows s)aving to #hashmark
    if hashmark refers to IMAP server.
    Also some other changes and some bug
    fixes are included.

    - Updated subtypes of application
    on doc/mime.types
    - Added MIME_TYPE_FONT to enum mime_major_type
    at hdrs/misclib.h
    - Added "font" to major_type [] at
    lib/misc/mediatype.c
    - Added MIME_TYPE_MODEL to enum mime_major_type
    hdrs/misclib.h (model was already
    on major_type [] at lib/misc/mediatype.c)
    - Added MIME_TYPE_EXAMPLE to enum mime_major_type
    at hdrs/misclib.h
    - Added "example" to major_type [] at
    lib/misc/mediatype.c ("example" is treated
    like MIME_TYPE_UNKNOWN / "?unknown?" ).
    - Added "chemical" to major_type [] at
    lib/misc/mediatype.c (but no constant
    to enum mime_major_type).
    - Updated subtypes of audio
    on doc/mime.types
    - Added subtypes of font
    to doc/mime.types
    - Removed image/t38 from doc/mime.types
    - Updated subtypes of image
    on doc/mime.types
    - Updated subtypes of text
    on doc/mime.types
    - Updated subtypes of video
    on doc/mime.types

    - Added ignore_mime_types_map() to
    hdrs/misclib.h and lib/misc/mime_types.c
    - Added -I mapfile to elmmimetypes
    to specify list of mappings which
    are ignored.
    - Mapping for image/t38
    is removed during installation

    - Allowed several magic numbers
    (byte sequence signatures) on
    global {lib}/elm.mimetypes and
    user's .elm/mime.types. Magic
    numbers (byte sequence signatures)
    must be on offset order and all
    magic numbers (byte sequence signatures)
    need match.
    - Added additional magic numbers
    (byte sequence signatures) to
    application/vnd.etsi.asic-e+zip
    application/vnd.etsi.asic-s+zip
    application/epub+zip
    application/vnd.kde.kchart
    application/vnd.kde.kivio
    application/vnd.kde.karbon
    application/vnd.kde.kformula
    application/vnd.kde.kontour
    application/vnd.kde.kpresenter
    application/vnd.kde.kspread
    application/vnd.kde.kword
    application/vnd.oasis.opendocument.database
    application/vnd.oasis.opendocument.chart
    application/vnd.oasis.opendocument.formula
    application/vnd.oasis.opendocument.graphics
    application/vnd.oasis.opendocument.image
    application/vnd.oasis.opendocument.text-master
    application/vnd.oasis.opendocument.presentation
    application/vnd.oasis.opendocument.spreadsheet
    application/vnd.oasis.opendocument.text
    application/vnd.oasis.opendocument.chart-template
    application/vnd.oasis.opendocument.formula-template
    application/vnd.oasis.opendocument.graphics-template
    application/vnd.oasis.opendocument.text-web
    application/vnd.oasis.opendocument.image-template
    application/vnd.oasis.opendocument.presentation-template
    application/vnd.oasis.opendocument.spreadsheet-template
    application/vnd.oasis.opendocument.text-template
    application/vnd.collabio.xodocuments.presentation
    application/vnd.collabio.xodocuments.document
    application/vnd.collabio.xodocuments.spreadsheet
    application/vnd.collabio.xodocuments.presentation-template
    application/vnd.collabio.xodocuments.spreadsheet-template
    application/vnd.collabio.xodocuments.document-template
    audio/sp-midi
    audio/qcelp
    to doc/mime.types. However many of these seems
    to be incorrect.

    - Added safe_stralloc_append() to
    lib/safemalloc.c

    - Do not give error message
    Don't understand specifying a subject and no-one to send to!
    when called as
    elm -S -s subject
    (send only mode).
    - Also
    elm -s subject
    alone implies send only mode.

    - Fixed error where s)ave command for target
    username@server produces
    BROWSER PANIC in .../lib/mbox/savefolder.c:5705:prepare_write_folder
    >>>No selection
    Problem noted by: Laura Kataja
    ( But target username@server:INBOX works.)
    > Changed that change_folder_browser_type() does
    not clear selection, but frees only type
    specific type.
    > If browser type supports hashmark data
    on selection, possible hashmark info is
    copied.
    - Added support to to s)ave for target
    #hashmark. This is only supported
    if hashmark refers to IMAP server.
    In that case mail is saved to INBOX
    on IMAP server.
    - Changed implementation of
    browser_cat_hashmark() on hashmark
    browser.

    - Fixed possible bug on showmsg_visit_mailbox_cmd()
    - Fixed possible bug on metapager()

    New file:
    ConfTool/killmimetypes

    Warnings
    --------

    - Not compiled with MMDF support defined, so probably it doesn't
    work (or even compile).

    - This has not been tested much so there can be bad bugs.

    Bug reports to: Kari E. Hurtta <elm@elmme-mailer.org>
    (was hurtta+elm@posti.FMI.FI)

    - Internationalized (ie. non-ASCII) domain names are not supported.

    - Support for multipart/signed and multipart/encrypted (specially:
    support for PGP/MIME) only in reading side. There is no support
    for attachments with multipart/encrypted.

    - HP's shoftkeys are no longer supported

    - DECNET addresses like host::user may be interpreted as phrase
    of group syntax or as route of source routed address.

    - Header editing screen now uses addresses in form phrase <address>,
    but because it does not require using of comma (,), multiword
    phrases must be entered in quotes.

    For example: "Kari Hurtta" <hurtta>

    - If address includes <> or comments (), they are not aliased
    expanded. So aliases must be entered as bare words.

    - Addresses given as arguments to elm command should be given
    as one address per argument. Giving of sevaral addresses per
    one argument causes that address is misparsed if header is
    edited on header editing screen.

    That is:

    Use: elm '"Kari Hurtta" <hurtta>' 'Admin <root>'

    Don't use: elm 'Kari Hurtta <hurtta>, Admin <root>'

    - p)rint command acts as P)rint text -command. So it
    is currently quite useless.
    p)rint command does that via readmsg -command. However
    P)rint text does actually same (without readmsg).

    - Some Linux libraries does not follow $LC_CTYPE when program is
    setgid. Net result is that your locale is always C. That is
    visible that $LC_CTYPE does not effect to locale printed by
    'elm -vvvvv':

    Locale (LC_CTYPE): C
    Display character-set: US-ASCII
    Sending character-set: US-ASCII

    - All refrences iso2022 maps are parsed and read to memory.
    This may cause quite big memory consumption specially because
    eastern (multibyte) sets tend to be lot of characters. That
    mapping information should be shared between processes to
    reduce memory consuption.

    - If display charset is produced by using mapping from locale
    to charset where charset definition is later invalidated
    ("removed") by setting explicit compatcharsets on user's
    .elm/elmrc, that may cause PANIC on elm's internal pager
    or other problems. Invalidation happens if display charset
    is on implicit compatcharsets list (because of charset
    definition), but does not have explicit compatcharsets list
    given by user.

    - Neither Unicode didirectional algorithm nor Right-Left scripts
    are supported.

    - In some situations two Status headers may be generated two
    Status headers -- one by IMAP deamon and one from APPENDed
    message.

    - When APPENDing message to IMAP folder (which is normal UNIX
    mailbox format) original "From " separator line can not be
    preserved -- specially it is not possible to pass envelope
    sender address.

    - For UTF-8 charset Elm only knows printable characters from
    Latin/1 range, if unicode database (see elmrc option "unidata")
    is not loaded.

    - For using of ISO2022 character sets it is required that mapping
    them to unicode is know -- otherwise Elm ME+ does not know which
    characters are printable.

    - UTF-16 surrogate pairs (D800-DFFF) are not supported on UTF-7
    charset.

    - Mixing of names using IMAP naming convention
    (imap-naming-convention = yes)
    and names using imap-charset does not work very well...

    - " Regarding my message (8 Aug 2000) regarding 'newmail' on
    AIX 4.3.3 in an 'aixterm' window and the 'aixterm' did not
    close, indeed the problem was NOT related to 'newmail' but an
    AIX bug.

    IBM has release a patch, and the 'aixterm' in AIX 4.3.3 must
    be update with fileset X11.apps.aixterm.4.3.3.26 (PTF
    U473920) is solved to problem."
    From: Noam G. Nudelman <noam@mail.biu.ac.il>

    - File /usr/share/locale/fi/charset gives charset name utf-8 on
    Linux Mandrake 7.2. This causes that Configure generates
    mapping
    fi utf-8
    to elm.mimecharsets. However that seems to have
    incorrect mapping. You may want change this to
    fi ISO-8859-1

    ( however nl_langinfo(CODESET) gives charset ISO-8859-15
    but look following entry. )

    - Locale 'fi' seems to have charset ISO-8859-15 according
    of nl_langinfo(CODESET) on Mandrake Linux 7.2 (and probaly
    others with same glibc version). However for example gnome
    terminal uses font
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-1
    and not
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-15

    Also KDE's konsole program seems use iso8859-1 character set
    although locale is 'fi' which should have ISO-8859-15 according
    of nl_langinfo (selecting "unicode" from menu seems fix that.)

    Because of mismatch more correct locale is fi_FI.88591, which gives
    ISO-8859-1 character set according of nl_langinfo(CODESET).

    ( Locale seems come from /etc/sysconfig/i18n or $HOME/.i18n )

    > To enable handling of ISO-8859-1 and ISO-8859-15 character sets
    on linux console, read comments from doc/terminal.info file.

    - Mandrake Linux 7.2 seems set LD_PRELOAD to load
    /usr/lib/libxalflaunch.so.0. That (xalf-0.4-2mdk) causes that
    elm to crash on startup (actually before main() is reached.)

    - kterm on Mandrake Linux 7.2 seems have (at least on my test
    environment) seems get bad fontlist (*VT100*fontList) which
    gives bad font for iso8859-1 -- therefore ISO-8859-1 characters
    do not work.

    ("xrdb -query" seems report resource with name "*fontList"
    -- that probably overrides "*VT100*fontList" which comes
    from /usr/lib/X11/app-defaults/KTerm )

    - Also note that initially kterm does NOT default to
    ISO-8859-1 -- therefore ISO-8859-1 works only when
    elm explicity switch to ISO-8859-1 (for example
    with 'elm -D ISO-8859-1')

    - When assembling message/partial MIME (RFC 2046)
    requires that all headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are copied from
    initial enclosing message to assembled message. It also
    requires that headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are ignored and
    dropped from enclosed message.

    For now we copy only Received: -headers. Dropping extra
    headers from enclosed message makes assembly more
    complicated (and dropping of Received: -headers
    from enclosed message do not make sense.)

    - EXIF files are sometimes labeled with content-type
    image/jpeg. They also use .jpg filename extension. They are
    not accepted by Elm ME+ as image/jpeg because magic number
    (and format) is different. It is unclear what is correct
    treatment. According of specification EXIF files may
    wrap also other file types than jpeg (JFIF).

    - mailer=sendmail; verify=yes works only when sendmail
    is installed as setuid root. Use mailer=submission instead.
    * Starting from sendmail 8.12 sendmail is normally
    installed as setgid smmsp and not as setuid root.
    - However error message is printed only if
    verify-local-address=yes is also set

    - IMAP connection is stalled some times. Reason is unknown.

    - From name option (-f) on fastmail is currently broken.

    Collector of these patches
    --------------------------

    Kari Hurtta <elm@elmme-mailer.org>
    Kari Hurtta <hurtta+elm@siilo.FMI.FI>

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Kari Hurtta@21:1/5 to All on Thu Jan 3 16:39:38 2019
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha49.0

    Elm ME+ 2.5 PLalpha49

    Before applying patch catenate parts 1 - 9 first.
    Also it should be possible to apply parts 1 - 9
    individually.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha48

    ====================================== ( part 0/9 ) =========

    Elm ME+ 2.5 PLalpha49

    - Is available with
    <URL: http://www.elmme-mailer.org/elm-ME+2.5.PLalpha49.patch.gz >
    and <URL: http://www.elmme-mailer.org/elm-ME+2.5.alpha49.tar.gz >

    - Is available on ftp.funet.fi
    via anonymous ftp
    directory pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/

    files elm-ME+2.5.PLalpha49.patch.gz
    and elm-ME+2.5.alpha49.tar.gz

    or is available with
    <URL: http://www.nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha49.patch.gz >
    and <URL: http://www.nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.alpha49.tar.gz >

    SUMMARY: This release changes date display on
    mail listing and adds separator lines
    to mail listing. Also this release changes
    Expires: and Sender: -header field
    generation. This release checks more
    email addresses for mail domain
    validity (when libelmme-resolv.so module
    is used). New elmrc options are
    "expires-have-time", "mail-menu-time",
    "verify-alias-domain" and "verify-local-domain".
    Also some other changes and some bug fixes are
    included.

    Changes on Elm ME+ 2.5 PLalpha49 compared with Elm ME+ 2.5 PLalpha48 --------------------------------------------------------------------

    SUMMARY: This release changes date display on
    mail listing and adds separator lines
    to mail listing. Also this release changes
    Expires: and Sender: -header field
    generation. This release checks more
    email addresses for mail domain
    validity (when libelmme-resolv.so module
    is used). New elmrc options are
    "expires-have-time", "mail-menu-time",
    "verify-alias-domain" and "verify-local-domain".
    Also some other changes and some bug
    fixes are included.

    * Change from Elm 2.5

    - Changed make_menu_date() to generate
    Elm 2.5 style local specific date
    (uses strftime).
    - Changed days_ahead[_tm]() to use Elm 2.5
    style algorithm where localtime()
    is used first and then day is
    incremented on instead of
    Elm 2.4 style algorithm where
    time_t values is incremented
    by days * 24 * 60 *60 and
    localtime() is used.
    - Changed days_ahead[_text]() to generate
    Elm 2.5 style local specific date
    (uses strftime) for hdrconfig. This
    is not used for actual Expires:
    header. However %Y (year with century)
    is used instead of %y (year with 2
    digits).
    - Changed elm_date_str() to generate
    Elm 2.5 style local specific date
    (uses strftime) for pager and
    phrase of in-reply-to (if
    "add-in-reply-to-phrase" is set). However
    %Y (year with century) is used
    instead of %y (year with 2 digits).

    - Added year to mail listing. This is controlled
    with new elmrc option "mail-menu-time". Year is
    included on separator line.
    - New elmrc option "mail-menu-time" knows following keywords
    none None of values are selected
    year-separator Show separator line with
    year on date -column.
    auto-separator Show separator line for
    some sorting orders when
    message list space is sufficient
    big (21 lines).
    today Show time as hh:mm on date
    column instead of date if
    date is today and timezone
    is same. Also shows separator
    with "today" if separator
    lines are shown.
    today-separator Show separator line for
    some sorting orders when
    message list space is sufficient
    big (6 lines). Also show separator
    when all messages are from
    current year.
    year-or-time Add either year or time as hh:mm
    on date column when date is shown.
    Time is shown when year is current and
    timezone is same.
    These options also accepts additive form where
    changes from compile time default (or changes from
    global elm.rc) are listed:
    +year-separator -year-separator
    +auto-separator -auto-separator
    +today -today
    +today-separator -today-separator
    +year-or-time -year-or-time
    - Separator line is not shown if all mail are from
    current year. In that case that does not add
    much information and just consumes one line from
    mail listing. Keyword "today-separator" is
    exception for this.
    - Keyword "auto-separator" on elmrc option "mail-menu-time"
    enables separator lines when sorting order is
    "sent", "received" or "mailbox". Or when sorting
    order is "reverse-" version of these. There must
    be at least 21 lines available for mail listing.
    - Keyword "today" on elmrc option "mail-menu-time"
    causes that sent time on form hh:mm is shown
    on date -column on mail listing if day, month and
    year is same as today date and timezone offset is same
    than on local timezone. Note that date column
    shows sending date on sender's timezone which
    may be different than local timezone.
    - Keyword "today" together with "year-separator"
    or "auto-separator" on elmrc option "mail-menu-time"
    causes that separator line with "today"
    on date -column. Mails are considered to
    be sent today if day, month and
    year is same as today date or sent time
    is between of local today date start and
    end.
    - Keyword "today-separator" on elmrc option "mail-menu-time"
    enables separator lines when sorting order is
    "sent", "received" or "mailbox". Or when sorting
    order is "reverse-" version of these. This
    keyword causes that separator line with "today"
    on date -column is used. If there is at least
    one mail which is considered to be send today,
    separators are send even when all mails are from
    current year. There must be at least 6 lines
    available for mail listing.
    - Keyword "year-or-time" on elmrc option
    "mail-menu-time" adds year or time after
    message date to date -column on mail listing.
    Time is added if year is same as on today date
    and timezone offset is same than on local timezone.
    Otherwise year of message is added to date column.
    If time of message is added because of "today"
    keyword, keyword "year-or-time" adds nothing
    to date column.
    - Keywords "auto-separator" and "today" are
    default values for "mail-menu-time".
    Separator lines is not shown if all mails
    are from current year.
    > Keyword "year-or-time" on elmrc option
    "mail-menu-time" may work better if
    "today" is disabled and keyword
    "today-separator" is used instead.
    That is:
    mail-menu-time = -today +year-or-time +today-separator

    - Added menu_header_change_page() to lib/screen/header.c
    - Changed prototype of new_menu_header()

    - Added hdr_line_separator_index(), hdr_show_separator(),
    hdr_init_separators(), hdr_setup_line()
    and hdr_setup_init() to src/screen.c
    - Added mcommon_init_separators(), mcommon_separator_count(),
    mcommon_screen_print_sep_line(), mcommon_get_separator_index(),
    mcommon_screen_setup_menu_init() and
    mcommon_screen_setup_menu_line()
    to src/menu_common/mcommon.c
    - Added give_menu_separator(), menu_separator_count(),
    menu_separator_init(), get_menu_separator_index(),
    get_today_info(), message_hdr_setup_init() and
    message_hdr_setup_line()
    to src/messages/messages.c
    - Changed prototype of build_alias_line()
    - Changed prototype of make_menu_date()
    - Required width for mail number and
    date columns are calculated before printing
    of mail list.

    - Also changed Elm 2.5 browser to use
    these header setup init/line routines
    to calculate width for date column.
    - Replaced fbrowser_mp_cur_page menu_param
    with cur_page on struct menu_anon_param.
    - Replaced fbrowser_mp_headers_per_page
    menu_param with headers_per_page
    on struct menu_anon_param.
    - Replaced fbrowser_mp_options menu_param
    with options on struct menu_anon_param.
    - Replaced fbrowser_mp_tlen menu_param
    with time_len on struct menu_anon_param.
    - Replaced fbrowser_mp_comcol menu_param
    with comment_column on struct menu_anon_param.

    - Added Configure test for mktime()

    * Tried check that gmtime() and localtime()
    returns non-NULL result. These can fail if
    time_t is 64-bit and values does not fit
    to struct tm for example.
    - Added some fixes to src/date.c
    - Added some fixes to lib/get_tz.c
    - Added some fixes to lib/getarpdate.c
    - Added some fixes to src/thread.c
    - Added some fixes to src/elm.c
    - Added some fixes to lib/mbox/imap.c

    - Some changes to lib/strftime.c

    - Changed parse_date_time() so it detect if
    time_t overflows.
    - Changed make_gmttime() return LONG_MAX
    (or LONG_MIN) on overflow
    - Changed parse_date_time() to return
    *time_result as time_MAX on overflow or
    *time_result as 0 if result is negative
    (before year 1970).
    - Changed prototype of parse_date_time()
    - If parse_date_time() detects overflow
    (or negative (before year 1970) result)
    only year is printed on date -column on
    mail listing.
    - If time_sent is stored as time_MAX or
    0 then just stored year is used for sent
    time sorting.
    - Also only year is printed on
    on date -column thread view if there
    was overflow (or negative (before year
    1970) result) on some mails of thread.

    - Small fix to compare_thread() on src/sort.c

    - Moved most of days_ahead() on src/date.c
    to days_ahead_tm() on lib/addr/date.c
    - Moved days_ahead() as textual output
    for hdrconfig to days_ahead_text().
    This part uses strftime as on Elm 2.5.
    - Moved Elm 2.4 style formatting of
    days_ahead() to days_ahead_hdrval()
    on lib/addr/date.c

    - Added write_expires_header() to lib/addr/write_hdr.c
    - Added lib/addr/outexpires.c with new_expanded_expires(),
    free_expanded_expire(), get_expanded_expires_textual(),
    set_expanded_expires_textual(),
    get_expanded_expires_value(), get_expanded_expires_days_ahead(),
    get_expanded_expires_print_time(),
    get_expanded_expires_cached_time()
    - Changed static struct header_info header_types[]
    on lib/addr/headers.c so that Expires: is also
    allowed on .elm/elmheaders (although that is not very
    useful).
    > If Expires: -header on .elm/elmheaders includes time,
    time is included to Expires: -header on outgoing mail.
    Note however that time zone is not correctly handled
    and mostly ignored.
    - Moved part of parse_date_time() from lib/mbox/parsarpdat.c
    to new parse_parts_date_time()
    on lib/addr/parsarpdat.c
    - Moved lib/mbox/getword.c to lib/addr/getword.c
    - If new elmrc option "expires-have-time" have set, then
    time is included to Expires: -header on outgoing mail
    when header is generated from Message Header Edit Screen.

    - Added overflow checking to aton()

    - Changed prototype (including return type) of elm_date_str()

    - Changed thread view to generate
    local specific date (uses strftime).
    - Required width for thread number
    and date columns are calculated
    before printing of thread list.

    - Possible fix for sort_threads()
    and correspond change for ViewThreads()
    on src/thread.c

    - Added useful_mailname() to lib/addr/split_addr.c
    - If interface addresses are added to "mailname"
    global elm.rc option and they are only names
    added, then add "(none)" as first value
    of "mailname" global elm.rc option.
    - If first value of "mailname" global elm.rc option
    is "(none)" or does not include '.' then use
    "hostfullname" elmrc option when sending mail.

    - Small fix for smtp_run_ehlo()

    - Added MI_REMOTE_MAILER to enum MI_query for
    query_mailer_info()
    - Added same_SOCKADDR_ptr() to lib/remobe_mbx.c
    - Added elmrc option "verify-local-domain".
    Values are:
    no Do not verify mail domain
    given on "mailname" or
    "hostfullname" when sending
    mail.
    yes Use "verify-domain" setting
    for mail domain given on "mailname"
    or "hostfullname" when sending
    mail.
    if-remote-mailer Use "verify-domain" setting
    for mail domain given on "mailname"
    or "hostfullname" when sending
    mail if mailer is remote
    (mailer=submission and "server" is
    not local).
    Also boolean ON, OFF, TRUE, FALSE, YES and NO values are allowed
    on elmrc option "verify-local-domain".
    - Keyword "if-remote-mailer" is default value for
    "verify-local-domain". Therefore local domain (as given
    on "mailname" elmrc option) is verified with
    "verify-domain" setting setting when "mailer"
    global elm.rc option have value "submission" (and
    "server" is set to something other than local host).
    - Added elmrc option "verify-alias-domain". If this is
    set (default), then also domain of alias expanded
    address is verified (uses "verify-domain" setting).

    - "special-use-domains-blacklist" elmrc option also
    applies to autofilled "mailname" / "hostfullname" and these
    case local recipient is not allowed (unless
    "valid-domains" elmrc option overrides this).
    - "special-use-domains-blacklist" elmrc option also
    applies to domain of alias expanded address
    (unless "valid-domains" elmrc option overrides this).

    - Changed prototype of get_alias_address_expanded(),
    aliases_expand_alias(), alias_stack_lookup_f(),
    alias_simple_lookup(), lookup_local(),
    lookup_dummy()

    - Moved some code of build_address_l() to separate functions.
    - build_address_l() no longer return 1 (indicating
    alias expansion), when local address is handled.
    This fixes -c (check alias) output so that
    that "elm -c {userid}" does not claim successful
    alias expansion.
    - Small change to clear_error() and do_check_only()
    - Added build_address_classify_domain(),
    build_address_classify_message(),
    build_address_is_local() and need_verify_ldomain()
    to src/addr_util.c
    - Also exported build_address_cancel_mode() and
    verify_mail_domain_util() from src/addr_util.c

    - Changed return type of mailer_restarted()
    to enum restart_mailer_status.
    - Changed return type of mailer_info_verify_addr()
    to enum mi_vrfyaddr_mailer_status.

    - Changed envelope sender handling on submission mailer.
    - Added mailer_env_from_verified(),
    mailer_env_from_domain(), and
    mailer_env_from_angleaddr()
    to lib/mailer/mailer.c
    - Renamed env_from_changed() to mailer_env_from_changed()
    on lib/mailer/mailer.c
    - Changed prototype of mailer_info_set_ef()
    - Show Return-Path (envelope sender) on
    "Mail Pre-Send Screen" even when
    userlevel = beginner if it is changed
    (for example via ~/.elm/elmheaders).
    - Changed prototype of mailer_env_from_change()
    - Changed mailer_env_from_change() on lib/mailer/mailer.c
    - "special-use-domains-blacklist" elmrc option also
    applies to domain of envelope sender address (shown as
    Return-Path: -header; unless submission mailer is
    returned 250 for VRFY of that address or unless
    "valid-domains" elmrc option overrides this). In
    that case envelope sender address is changed to
    null address (<>).
    NOTE: "special-use-domains-blacklist" elmrc option does
    not prevent using of mailer option verify=yes
    option for envelope sender address.
    - "verify-domain" and "verify-local-domain" elmrc
    options also applies to domain of envelope sender
    address (shown as Return-Path: -header; unless
    submission mailer is returned 250 for VRFY of
    that address or unless "valid-domains" elmrc option
    overrides this).
    > If NULL MX is returned, envelope sender address is changed to
    null address (<>).
    RFC 7505: "Null MX" No Service Resource Record
    for Domains That Accept No Mail
    > If domain does not found, just message is given (but
    envelope sender address is not changed). If submission
    mailer is used sending mail probably fails later
    when domain of envelope sender address does not found.
    - If there is errors on envelope sender (also known as
    Return-Path) and 'allow-set-sender=yes' is set on
    "mailer" global elm.rc option, then prompt on
    "Mail Pre-Send Screen" defaults to R)eturn-path command.

    - Also b)ounce -command checks envelope sender.
    - Added rp_classify_domain_message() and
    env_from_classify_domain(), prompt_mailmsg_page_interactive(),
    mail_env_from_presend(), mail_show_env_from(),
    mail_env_from_def_edit(), mail_edit_return_path()
    to src/mailmsg2.c
    - Changed remail() on src/remail.c
    - Changed import_mailheaders() on lib/addr/outheaders.c
    - Changed show_presend_headers(), presend_action()
    - Added "Bounce Pre-Send Screen" to b)ounce command.
    This is used, when there is Return-Path set or
    editable. This is similar than "Mail Pre-Send Screen"
    on m)ail command.
    - Added error message in for case where
    importing .elm/elmheaders header field fails.
    - If header field name on .elm/elmheaders
    start with '#', it is ignored. Also
    `backticked` command on .elm/elmheaders
    is not executed in that case.
    Output of `backticked` command is not
    checked for '#' character on header field name.
    - Added check that addresses with domain given on
    "special-use-domains-blacklist" elmrc option
    are dot imported (unless "valid-domains" elmrc
    option overrides this). If there is blacklisted
    domain on "From:", "To:", "Cc:" "Bcc:" or
    "Reply-To:" -header field, whole .elm/elmheaders
    line is ignored and error message is given.

    - Changed add_from_hdr(), add_to_hdr(),
    add_cc_hdr(), add_bcc_hdr(),
    add_replyto_hdr(), add_env_from_hdr()
    on lib/addr/outheaders.c

    - Moved addr_is_user() from lib/okay_addr.c
    to lib/addr/okay_addr.c
    - Moved split_internet_address() from lib/okay_addr.c
    to lib/addr/split_addr.c
    - Moved clear_split_addr() from lib/okay_addr.c
    to lib/addr/split_addr.c
    - Moved match_splitted_addr() from lib/okay_addr.c
    to lib/addr/split_addr.c
    - Moved match_local_addr() from lib/okay_addr.c
    to lib/addr/split_addr.c

    - Changed that shared_libs/resolv/resolvertest2.c
    returns 3 when connection is refused
    (errno == ECONNREFUSED) and not only on
    timeout (errno == ETIMEDOUT).

    - Changed ConfTool/Makefile
    - Changed lib/mailer/Makefile.SH
    - Changed lib/Makefile.SH
    - Changed shared_libs/tls/Makefile.SH
    - Changed shared_libs/smtp/Makefile.SH
    - Changed shared_libs/resolv/Makefile.SH
    - Changed shared_libs/iconv/Makefile.SH
    - Changed utils/readmsg/Makefile.SH
    - Changed utils/Makefile.SH
    - Changed src/url/Makefile.SH
    - Changed src/messages/Makefile.SH
    - Changed src/command/Makefile.SH
    - Changed src/aliases/Makefile.SH
    - Changed src/list/Makefile.SH
    - Changed src/screen/Makefile.SH
    - Changed src/pager/Makefile.SH
    - Changed src/menu_common/Makefile.SH
    - Changed src/block/Makefile.SH
    - Changed src/Makefile.SH
    - Changed lib/addr/Makefile.SH
    - Changed lib/alias/Makefile.SH
    - Changed lib/mbox/Makefile.SH
    - Changed lib/misc/Makefile.SH
    - Changed melib/Makefile.SH
    - Changed nls/gencat/Makefile.SH

    - Fixed valgrind reported memory leak:
    294 bytes in 2 blocks are definitely lost in loss record 246 of 280
    at 0x4C2DB8F: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
    by 0x5C3B0CC: safe_malloc (lib/safemalloc.c:60)
    by 0x52B5674: browser_local_do_stat_2 (lib/mbox/localmbx.c:603)
    by 0x52B6517: browser_local_do_stat_1 (lib/mbox/localmbx.c:875)
    by 0x52BBF16: fbrowser_give_entry (lib/mbox/localmbx.c:2931)
    by 0x467011: fbrowser_scan_directory (src/fbrowser.c:1243)
    by 0x467EAF: fbrowser (src/fbrowser.c:1628)
    by 0x469F7A: fbrowser_hook_enter (src/fbrowser.c:2508)
    by 0x44AD78: gen_browser (src/browser.c:3366)
    by 0x47BA63: arg_to_folder (src/init.c:182)
    by 0x47D70B: initialize_mailbox (src/init.c:928)
    by 0x484A39: main_messages_menu (src/mailbox.c:762)
    - Fixed valgrind reported memory leak:
    70 (24 direct, 46 indirect) bytes in 1 blocks are definitely lost in loss record 70 of 151
    at 0x4C2DB8F: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
    by 0x5C3B1F8: safe_zero_alloc (safemalloc.c:85)
    by 0x5C76E4A: malloc_string (string.c:85)
    by 0x5C784CD: cat_strings_internal (string.c:553)
    by 0x5C80BF4: string_copy_character (string.c:3371)
    by 0x5780454: unquote_string (parsestring.c:596)
    by 0x531BBA7: hashtype_parse_kw_value_remote (hashmark_remote.c:1622)
    by 0x531076B: parse_hash_mark_entries (hashmark.c:1462)
    by 0x52AD5C1: hashmark_read_rc_file (init.c:147)
    by 0x5C29ABD: read_rc_file (read_rc.c:4918)
    by 0x47C58C: initialize (init.c:464)
    by 0x45E94B: main (elm.c:1221)
    - Fixed valgrind reported memory leak:
    42 bytes in 1 blocks are definitely lost in loss record 173 of 283
    at 0x4C2DB8F: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
    by 0x5C3BA55: safe_strdup (lib/safemalloc.c:277)
    by 0x52C0A7D: mbx_init_spool (lib/mbox/localmbx.c:4561)
    by 0x52F71DD: real_folder_from_local (lib/mbox/common_local.c:295)
    by 0x52B9F6D: browser_folder_from_local (lib/mbox/localmbx.c:2137)
    by 0x52D8C70: folder_from_dir_item (lib/mbox/savefolder.c:5705)
    by 0x47C153: arg_to_folder (src/init.c:288)
    by 0x47DA29: initialize_mailbox (src/init.c:928)
    by 0x484D57: main_messages_menu (src/mailbox.c:762)
    by 0x45F546: main (src/elm.c:1489)

    - Fixed segmentation fault on start up when
    certain interfaces are present. Specially
    allow ifa_addr pointer on struct ifaddrs to
    be NULL.
    Problem noted by: Jeffrey H. Johnson

    - Possible fix for mailer_get_env_from()

    - Changed global elm.rc option "add-sender"
    to type struct dt_enumerate_info.
    This option have values
    no Add Sender: header only when there is
    more than one address on From: -header.
    yes Add Sender: header also when user
    specifies From: -header or user changes
    changes envelope sender address (aka Return-Path).
    auto If mailer is local or mail domain can
    be verified (or verify is disabled), add
    Sender: header when user
    specifies From: -header or user changes
    changes envelope sender address (aka Return-Path).
    Value "auto" is default. Also boolean ON, OFF, TRUE, FALSE, YES and NO
    values are allowed on global elm.rc option "add-sender".
    If there is more than one address on From: -header,
    Sender: -header is always added.
    NOTE: Value "auto" of elm.rc option "add-sender" also adds Sender:
    -header if DNS query fails (does not get positive or negative answer).
    Sender: header is not added if DNS query succeed and mail domain does
    not found (or if mail domain does not accept mail) and there is
    just one address on From: -header.
    - When elm.rc option "add-sender" have value of "auto", domain of
    Sender address may be rewritten.
    - If Sender: address uses domain from "special-use-domains-blacklist"
    elmrc option and global elm.rc option "add-sender" causes Sender:
    header to be added, m)ail and other similar commands refuse
    to send mail (unless "valid-domains" elmrc option overrides this).
    - Changed prototype of from_addr_literal() and
    from_addr_literal1().
    - On some cases "self-cc" and "self-bcc" keyword
    on hashmarks file is not used if keyword
    uses domain from "special-use-domains-blacklist" elmrc option
    (unless "valid-domains" elmrc option overrides this).

    - If Sender: address for b)ounce command uses
    domain from "special-use-domains-blacklist" elmrc option,
    b)ounce command is refused (unless "valid-domains"
    elmrc option overrides this).

    - Moved "valid-domains" elmrc option from mailerlib
    to addrlib.

    - "However, a more serious problem is that as soon as there is a
    blank line before the first alias in the file, not a single alias
    is processed." (on OLD .elm/aliases.text file)
    Problem noted by: Dirk Craeynest
    * Possibly fixed get_line() on lib/alias/oldaliases.c

    - Added small fix to "elm -h" text.
    - Added small fix to prompt menu text of Mail Preview Screen.

    - Changed make_from_addr() to check "special-use-domains-blacklist"
    elmrc option (unless "valid-domains" elmrc option overrides this).
    make_from_addr() returns status of that check.
    - Changed prototype of make_from_addr().
    - Domain of make_from_addr() result is checked on
    m)ail and r)eply -commands (and similar commands
    which use mail()) with elmrc options "verify-local-domain"
    and "verify-domain" settings. If verify fails, confirmation is
    asked with "Continue send or preview message?" -prompt.
    - Added force_from_addr() to lib/mailer/outheaders.c
    - Changed add_commands_help_merge() on src/command/command.c

    - Added fcntl(fd,F_SETFD,FD_CLOEXEC) calls to socket
    file descriptions created by socket() and socketpair().
    - Added pid to debug output.
    - Added clear_other_actions() to lib/schedule.c
    - Clear actions on subprocess at give_resolv_process()
    on shared_libs/resolv/query.c
    - Clear actions on subprocess at metapager()
    on src/metapager.c
    * Fixed error where IMAP (or POP) connection state
    was messed when external pager was used.
    Problem noted by: Dirk Craeynest
    - Changed change_action(), set_schedule_action() and
    clear_action() on lib/schedule.c
    - Replaced change_action() with change_action2()
    * Added badpid_action_f * badpid_act
    to change_action.
    - Small fix for wait_for_something()
    - Added ConfigStream0(), ConfigStream2()
    - Added FreeStreamStack0(), FreeStreamStack2()
    - Added setup_actions0(), clear_action0()
    - Added clear_remote_account0()

    - Changed Metamail text of Configure.

    - "I should report that on OpenBSD, at least recent OpenBSD,
    there is no sys/timeb.h include file."
    Problem noted by: Jeffrey H. Johnson
    > Elm ME+ have some

    #ifdef BSD_TYPE
    # include <sys/timeb.h>
    #endif

    But <sys/timeb.h> gives only struct timeb
    on Linux and that is not used by Elm ME+.
    Function ftime() uses struct timeb but
    that system call is not used. Removed

    #ifdef BSD_TYPE
    # include <sys/timeb.h>
    #endif

    from Configure, src/date.c, src/elm.c

    - Added -I option to elmconfwriter -command.
    This is used together with -l to
    ignore missing shared libraries
    (given on use-library and use-*-library
    elmrc options) and some other missing
    data.
    - Changed prototype of init_addrlib(),
    init_aliaslib(), read_rc_file(),
    post_init_check(), parse_elmrc(),
    mailerfunc(), init_default_mailer(),
    init_mboxlib(), init_misclib(),
    do_rc_parse(), do_rc_process(),
    process_delayed_blocks(), delay_lib_reg(),
    do_set(), rc_eval_tail(), rc_eval_tail_cline(),
    rc_eval_tail_line(), expand_dt_path(),

    [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 Jan 3 16:40:46 2019
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha49.1

    Elm ME+ 2.5 PLalpha49

    Before applying patch catenate parts 1 - 9 first.
    Also it should be possible to apply parts 1 - 9
    individually.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha48

    ====================================== ( part 1/9 ) =========

    For applying thich patch use (on directory where Configure is)

    patch -p1 < {this-file}

    Then check that removed files do not exists or are empty

    ls -la `cat OBSOLETE `

    If that lists non-empty files, patch failed.

    Then remove emty files with command

    rm `cat OBSOLETE ` ----------------------------------------------------------------------------- Index: elmME+.2.5.alpha49-cvs/hdrs/patchlevel.h
    Prereq: 1550000000
    *** elmME+.2.5.alpha48/hdrs/patchlevel.h Sun May 20 19:35:33 2018
    --- elmME+.2.5.alpha49-cvs/hdrs/patchlevel.h Sat Dec 22 11:03:51 2018 ***************
    *** 1,12 ****
    ! #define PATCHLEVEL "alpha48"
    /* Used by Configure:
    ! SHAREDTAG: .1.1.48
    */
    ! #define LAST_REPORT_TIME 1550000000
    #define BUG_REPORT_ADDR "Kari Hurtta <elm@elmme-mailer.org>"
    ! #define VERS_DATE "Jun 2018" /* for elm -v option */
    #define WHAT_STRING \
    ! "@(#) Version ME+ 2.5, USENET supported version, released Jun 2018"

    /*
    * Local Variables:
    --- 1,12 ----
    ! #define PATCHLEVEL "alpha49"
    /* Used by Configure:
    ! SHAREDTAG: .1.1.49
    */
    ! #define LAST_REPORT_TIME 1570000000
    #define BUG_REPORT_ADDR "Kari Hurtta <elm@elmme-mailer.org>"
    ! #define VERS_DATE "Jan 2019" /* for elm -v option */
    #define WHAT_STRING \
    ! "@(#) Version ME+ 2.5, USENET supported version, released Jan 2019"

    /*
    * Local Variables:
    Index: elmME+.2.5.alpha49-cvs/README.ME+
    *** elmME+.2.5.alpha48/README.ME+ Sun May 20 19:35:33 2018
    --- elmME+.2.5.alpha49-cvs/README.ME
  • From Kari Hurtta@21:1/5 to All on Thu Jan 3 16:41:31 2019
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha49.2

    Elm ME+ 2.5 PLalpha49

    Before applying patch catenate parts 1 - 9 first.
    Also it should be possible to apply parts 1 - 9
    individually.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha48

    ====================================== ( part 2/9 ) =========

    Index: elmME+.2.5.alpha49-cvs/hdrs/s_command.h
    *** elmME+.2.5.alpha48/hdrs/s_command.h Wed Nov 16 20:04:18 2016
    --- elmME+.2.5.alpha49-cvs/hdrs/s_command.h Sat Nov 17 14:07:53 2018 ***************
    *** 402,404 ****
    --- 402,409 ----
    #define CommandBuiltinQuitPager0 0x1a2
    #define CommandSendPreviewMsgAllHdr 0x1a3
    #define CommandPreviewDisplayMsgAllHdr 0x1a4
    + #define CommandCFKeyTitle 0x1a5
    + #define CommandCFDescTitle 0x1a6
    + #define CommandCFContinue 0x1a7
    + #define CommandCFforget 0x1a8
    + #define CommandCFPreviewMenu 0x1a9
    Index: elmME+.2.5.alpha49-cvs/hdrs/s_elm.h
    *** elmME+.2.5.alpha48/hdrs/s_elm.h Sun May 20 19:35:33 2018
    --- elmME+.2.5.alpha49-cvs/hdrs/s_elm.h Sat Nov 17 14:07:53 2018 ***************
    *** 1401,1403 ****
    --- 1401,1429 ----
    #define ElmIgnoredLineElmrc 0x6ad
    #define ElmContLineIgnored 0x6ae
    #define ElmCannotSaveMessage0 0x6af
    + #define ElmSepOther 0x6b0
    + #define ElmSepToday 0x6b1
    + #define ElmDefineMailname 0x6b2
    + #define ElmBadEnvelopeSenderAddress 0x6b3
    + #define ElmEnvSendChanged 0x6b4
    + #define ElmEnvSendBadDomain 0x6b5
    + #define ElmEnvSendUnknownDomain 0x6b
  • From Kari Hurtta@21:1/5 to All on Thu Jan 3 16:42:07 2019
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha49.3

    Elm ME+ 2.5 PLalpha49

    Before applying patch catenate parts 1 - 9 first.
    Also it should be possible to apply parts 1 - 9
    individually.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha48

    ====================================== ( part 3/9 ) =========

    Index: elmME+.2.5.alpha49-cvs/lib/mailer/outheaders.c
    *** elmME+.2.5.alpha48/lib/mailer/outheaders.c Wed Sep 13 19:32:05 2017
    --- elmME+.2.5.alpha49-cvs/lib/mailer/outheaders.c Sat Nov 17 14:07:53 2018
    ***************
    *** 1,7 ****
    ! static char rcsid[] = "@(#)$Id: outheaders.c,v 2.10 2017/09/03 10:53:02 hurtta Exp $";

    /******************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 2.10 $ $State: Exp $
    *
    * Author: Kari Hurtta <hurtta+elm@siilo.FMI.FI>
    * (was hurtta+elm@posti.FMI.FI, hurtta+elm@ozone.FMI.FI) --- 1,7 ----
    ! static char rcsid[] = "@(#)$Id: outheaders.c,v 2.15 2018/11/17 12:07:53 hurtta Exp $";

    /******************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 2.15 $ $State: Exp $
    *
    * Author: Kari Hurtta <hurtta+elm@siilo.FMI.FI>
    * (was hurtta+elm@posti.FMI.FI, hurtta+elm@ozone.FMI.FI) ***************
    *** 27,34 ****
    return (unsigned char *)str;
    }

    ! char * from_addr_literal1(add_dom)
    ! int add_dom;
  • From Kari Hurtta@21:1/5 to All on Thu Jan 3 16:42:46 2019
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha49.4

    Elm ME+ 2.5 PLalpha49

    Before applying patch catenate parts 1 - 9 first.
    Also it should be possible to apply parts 1 - 9
    individually.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha48

    ====================================== ( part 4/9 ) =========

    Index: elmME+.2.5.alpha49-cvs/lib/remote_mbx.c
    *** elmME+.2.5.alpha48/lib/remote_mbx.c Sun Feb 4 21:36:28 2018
    --- elmME+.2.5.alpha49-cvs/lib/remote_mbx.c Fri Dec 21 13:21:42 2018 ***************
    *** 1,7 ****
    ! static char rcsid[] = "@(#)$Id: remote_mbx.c,v 2.50 2018/02/02 20:34:54 hurtta Exp $";

    /******************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 2.50 $ $State: Exp $
    *
    * Author: Kari Hurtta <hurtta+elm@siilo.FMI.FI>
    * (was hurtta+elm@posti.FMI.FI, hurtta+elm@ozone.FMI.FI) --- 1,7 ----
    ! static char rcsid[] = "@(#)$Id: remote_mbx.c,v 2.57 2018/12/21 11:21:42 hurtta Exp $";

    /******************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 2.57 $ $State: Exp $
    *
    * Author: Kari Hurtta <hurtta+elm@siilo.FMI.FI>
    * (was hurtta+elm@posti.FMI.FI, hurtta+elm@ozone.FMI.FI) ***************
    *** 622,632 ****
    #ifdef ANSI_C
    option_func connect_mode_func;
    #endif
    ! int connect_mode_func(value,enter,lineno,file
  • From Kari Hurtta@21:1/5 to All on Thu Jan 3 16:43:16 2019
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha49.5

    Elm ME+ 2.5 PLalpha49

    Before applying patch catenate parts 1 - 9 first.
    Also it should be possible to apply parts 1 - 9
    individually.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha48

    ====================================== ( part 5/9 ) =========

    Index: elmME+.2.5.alpha49-cvs/shared_libs/resolv/resolvertest2.c
    *** elmME+.2.5.alpha48/shared_libs/resolv/resolvertest2.c Sun Feb 4 21:36:29 2018
    --- elmME+.2.5.alpha49-cvs/shared_libs/resolv/resolvertest2.c Sun Jul 29 20:54:21 2018
    ***************
    *** 1,7 ****
    ! static char rcsid[] = "@(#)$Id: resolvertest2.c,v 1.2 2017/11/11 12:37:28 hurtta Exp $";

    /******************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 1.2 $ $State: Exp $
    *
    * Author: Kari Hurtta <hurtta+elm@siilo.FMI.FI>
    * or Kari Hurtta <elm@elmme-mailer.org>
    --- 1,7 ----
    ! static char rcsid[] = "@(#)$Id: resolvertest2.c,v 1.3 2018/07/29 17:54:21 hurtta Exp $";

    /******************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 1.3 $ $State: Exp $
    *
    * Author: Kari Hurtta <hurtta+elm@siilo.FMI.FI>
    * or Kari Hurtta <elm@elmme-mailer.org>
    ***************
    *** 590,596 ****
    }

    if (err == ECONNREFUSED)
    ! r = -1;
    else if (err == ETIMEDOUT)
    r = -3;
    else if (TRY_AGAIN == h_errno
  • From Kari Hurtta@21:1/5 to All on Thu Jan 3 16:43:54 2019
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha49.6

    Elm ME+ 2.5 PLalpha49

    Before applying patch catenate parts 1 - 9 first.
    Also it should be possible to apply parts 1 - 9
    individually.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha48

    ====================================== ( part 6/9 ) =========

    Index: elmME+.2.5.alpha49-cvs/shared_libs/tls/Makefile.SH
    *** elmME+.2.5.alpha48/shared_libs/tls/Makefile.SH Wed Sep 13 19:32:05 2017
    --- elmME+.2.5.alpha49-cvs/shared_libs/tls/Makefile.SH Wed Aug 1 12:36:26 2018
    ***************
    *** 52,58 ****
    $cat >Makefile <<!GROK!THIS!
    #!$make
    #
    ! # $Id: Makefile.SH,v 2.13 2017/07/09 10:47:32 hurtta Exp $
    #
    # Makefile for the ELM (ME+) mail program.
    #
    --- 52,58 ----
    $cat >Makefile <<!GROK!THIS!
    #!$make
    #
    ! # $Id: Makefile.SH,v 2.14 2018/08/01 09:36:26 hurtta Exp $
    #
    # Makefile for the ELM (ME+) mail program.
    #
    ***************
    *** 133,148 ****

    $(IHDR)/elmshared.h: $(IHDR2)/elm_defs.h $(INCLDIR2)/patchlevel.h \
    $(INCLDIR)/shared.h
    ! $(CHMOD) u+w $@
    $(TOUCH) $@

    $(IHDR2)/elm_defs.h: $(IHDR2)/defs_major.h $(INCLDIR2)/elm_nl_types.h \
    $(INCLDIR2)/hdrs/elmlib.h
    ! $(CHMOD) u+w $@
    $(TOUCH) $@

    $(IHDR2)/defs_major.h: ../../config.h $(IHDR2)/sysdefs.h
    ! $(CHMOD) u+w $@
    $(TOUCH) $@

    Makefile: Makefile.SH ../../config.sh config.res
    --- 133,148 ----

    $(IHDR)/elmshared.h: $(IHDR2)/elm_defs.h $(INCLDIR2)/patchlevel.h \
    $(I
  • From Kari Hurtta@21:1/5 to All on Thu Jan 3 16:44:26 2019
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha49.7

    Elm ME+ 2.5 PLalpha49

    Before applying patch catenate parts 1 - 9 first.
    Also it should be possible to apply parts 1 - 9
    individually.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha48

    ====================================== ( part 7/9 ) =========

    Index: elmME+.2.5.alpha49-cvs/src/file.c
    *** elmME+.2.5.alpha48/src/file.c Sun May 20 19:35:33 2018
    --- elmME+.2.5.alpha49-cvs/src/file.c Thu Jun 28 10:37:39 2018 ***************
    *** 1,7 ****
    ! static char rcsid[] = "@(#)$Id: file.c,v 2.11 2018/05/10 10:39:46 hurtta Exp $";

    /**************************************************************************** ! * The Elm (ME+) Mail System - $Revision: 2.11 $ $State: Exp $
    *
    * Modified by: Kari Hurtta <hurtta+elm@siilo.FMI.FI>
    * (was hurtta+elm@posti.FMI.FI,
    --- 1,7 ----
    ! static char rcsid[] = "@(#)$Id: file.c,v 2.13 2018/06/28 07:37:39 hurtta Exp $";

    /**************************************************************************** ! * The Elm (ME+) Mail System - $Revision: 2.13 $ $State: Exp $
    *
    * Modified by: Kari Hurtta <hurtta+elm@siilo.FMI.FI>
    * (was hurtta+elm@posti.FMI.FI,
    Index: elmME+.2.5.alpha49-cvs/src/hdrconfg.c
    *** elmME+.2.5.alpha48/src/hdrconfg.c Sun Feb 4 21:36:29 2018
    --- elmME+.2.5.alpha49-cvs/src/hdrconfg.c Mon Sep 24 19:52:25 2018 ***************
  • From Kari Hurtta@21:1/5 to All on Thu Jan 3 16:45:45 2019
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha49.8

    Elm ME+ 2.5 PLalpha49

    Before applying patch catenate parts 1 - 9 first.
    Also it should be possible to apply parts 1 - 9
    individually.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha48

    ====================================== ( part 8/9 ) =========

    Index: elmME+.2.5.alpha49-cvs/src/messages/Makefile.SH
    *** elmME+.2.5.alpha48/src/messages/Makefile.SH Wed Sep 13 19:32:05 2017
    --- elmME+.2.5.alpha49-cvs/src/messages/Makefile.SH Wed Aug 1 12:36:26 2018
    ***************
    *** 33,39 ****
    cat >Makefile <<!GROK!THIS!
    #!$make
    #
    ! # $Id: Makefile.SH,v 2.8 2017/08/16 18:54:52 hurtta Exp $
    #
    # Makefile for the ELM (ME+) mail program.
    #
    --- 33,39 ----
    cat >Makefile <<!GROK!THIS!
    #!$make
    #
    ! # $Id: Makefile.SH,v 2.10 2018/08/01 09:36:26 hurtta Exp $
    #
    # Makefile for the ELM (ME+) mail program.
    #
    ***************
    *** 88,98 ****

    $(IHDR)/elm_defs.h: $(IHDR)/defs_major.h $(INCLDIR)/elm_nl_types.h \
    $(INCLDIR)/elmlib.h
    ! $(CHMOD) u+w $@
    $(TOUCH) $@

    $(IHDR)/defs_major.h: ../../config.h $(IHDR)/sysdefs.h
    ! $(CHMOD) u+w $@
    $(TOUCH) $@

    def_messages.h: $(IHDR)/elm_defs.h $(IHDR)/me.h \
    --- 88,98 ----

    $(IHDR)/elm_defs.h: $(IHDR)/defs_major.h $(INCLDIR)/elm_nl_types.h \
    $(INCLDIR)/elmlib.h
    ! -$(CHMOD) -f u+w $@
    $(TOUCH) $@

    $(IHDR)/defs_major.h: ../../config.h $(IHDR)/sysdefs.h
    ! -$(CHMOD) -f u+w
  • From Kari Hurtta@21:1/5 to All on Thu Jan 3 16:46:15 2019
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha49.9

    Elm ME+ 2.5 PLalpha49

    Before applying patch catenate parts 1 - 9 first.
    Also it should be possible to apply parts 1 - 9
    individually.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha48

    ====================================== ( part 9/9 ) =========

    Index: elmME+.2.5.alpha49-cvs/src/syscall.c
    *** elmME+.2.5.alpha48/src/syscall.c Sun Feb 4 21:36:29 2018
    --- elmME+.2.5.alpha49-cvs/src/syscall.c Thu Jun 28 10:37:39 2018 ***************
    *** 1,7 ****
    ! static char rcsid[] = "@(#)$Id: syscall.c,v 2.15 2017/11/18 16:49:27 hurtta Exp $";

    /******************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 2.15 $ $State: Exp $
    *
    * Modified by: Kari Hurtta <hurtta+elm@siilo.FMI.FI>
    * (was hurtta+elm@posti.FMI.FI. hurtta+elm@ozone.FMI.FI)
    --- 1,7 ----
    ! static char rcsid[] = "@(#)$Id: syscall.c,v 2.17 2018/06/28 07:37:39 hurtta Exp $";

    /******************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 2.17 $ $State: Exp $
    *
    * Modified by: Kari Hurtta <hurtta+elm@siilo.FMI.FI>
    * (was hurtta+elm@posti.FMI.FI. hurtta+elm@ozone.FMI.FI)
    Index: elmME+.2.5.alpha49-cvs/src/thread.c
    *** elmME+.2.5.alpha48/src/thread.c Sun Feb 4 21:36:29 2018
    --- elmME+.2.5.alpha49-cvs
  • From Kari Hurtta@21:1/5 to All on Fri Jan 4 19:44:04 2019
    Experimental RPM spec file for ELM ME+ 2.5 PLalpha49
    exists on <URL: http://www.elmme-mailer.org/rpm/elm-ME+2.5.html >
    directory.

    Files are following

    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha49-2.spec
    RPM spec file [Note 1]
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha49-2.spec.elm-key-2018.sig
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha49-2.spec.sig
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha49-2.mdk7.2.src.rpm
    Source rpm [Note 2]
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha49-2.mdk7.2.src.rpm.sig

    * Compiled on Linux Mandrake release 7.2
    (Linux 2.2, glibc 2.1, Sendmail 8.13)

    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha49-2.mdk7.2.i686.rpm
    Package elm binary RPM build on Linux Mandrake release 7.2
    [Note 2, Note 3]
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha49-2.mdk7.2.i686.rpm.sig
    - http://www.elmme-mailer.org/rpm/elm-mod-ME+2.5.alpha49-2.mdk7.2.i686.rpm
    Package elm-mod binary RPM build on Linux Mandrake release 7.2
    [Note 2, Note 4]
    - http://www.elmme-mailer.org/rpm/elm-mod-ME+2.5.alpha49-2.mdk7.2.i686.rpm.sig
    - http://www.elmme-mailer.org/rpm/elm-tls-ME+2.5.alpha49-2.mdk7.2.i686.rpm
    Package elm-tls binary RPM build on Linux Mandrake release 7.2
    [Note 2, Note 5]
    - http://www.elmme-mailer.org/rpm/elm-tls-ME+2.5.alpha49-2.mdk7.2.i686.rpm.sig

    * Compiled on Fedora release 19
    (Linux 3.14, glibc 2.17, Sendmail 8.14)

    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha49-2.fdr19.i686.rpm
    Package elm binary RPM build on Fedora release 19 [Note 2]
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha49-2.fdr19.i686.rpm.sig
    - http://www.elmme-mailer.org/rpm/elm-mod-ME+2.5.alpha49-2.fdr19.i686.rpm
    Package elm-mod binary RPM build on Fedora release 19 [Note 2]
    - http://www.elmme-mailer.org/rpm/elm-mod-ME+2.5.alpha49-2.fdr19.i686.rpm.sig
    - http://www.elmme-mailer.org/rpm/elm-tls-ME+2.5.alpha49-2.fdr19.i686.rpm
    Package elm-tls binary RPM build on Fedora release 19 [Note 2]
    - http://www.elmme-mailer.org/rpm/elm-tls-ME+2.5.alpha49-2.fdr19.i686.rpm.sig
    - http://www.elmme-mailer.org/rpm/elm-debuginfo-ME+2.5.alpha49-2.fdr19.i686.rpm
    Package elm-debuginfo binary RPM build on Fedora release 19
    [Note 2, Note 6]
    - http://www.elmme-mailer.org/rpm/elm-debuginfo-ME+2.5.alpha49-2.fdr19.i686.rpm.sig

    * Notes

    Note 1:
    - rpmbuild -ba elm-ME+2.5.alpha49-2.spec warns that "prereq is
    deprecated", but that is required on Linux Mandrake release 7.2
    where older rpm -package is build.

    Note 2:
    - elm-ME+2.5.alpha49-2.mdk7.2.src.rpm, elm-ME+2.5.alpha49-2.*.i686.rpm
    and elm-*-ME+2.5.alpha49-2.*.i686.rpm are signed internally with GPG
    key elm.key.2018.asc (44FC796B 2018-12-01).

    Note 3:
    - elm-ME+2.5.alpha49-2.mdk7.2.i686.rpm is compiled agaist Sendmail
    8.13 (not from Mandrake distribution).

    Note 4:
    - elm-mod-ME+2.5.alpha49-2.mdk7.2.i686.rpm does not include
    libelmme-resolv.so.

    Note 5:
    - elm-tls-ME+2.5.alpha49-2.mdk7.2.i686.rpm do not load/work on
    Mandrake 7.2, because openssl library misses RAND_egd_bytes
    function.

    Note 6:
    - elm-ME+2.5.alpha49-2.spec do not have %package debuginfo, but
    rpmbuild -ba elm-ME+2.5.alpha49-2.spec build
    elm-debuginfo-ME+2.5.alpha49-2.fdr19.i686.rpm anyway.

    * Signatures

    {file}.sig PGP signature (old key pubkey.asc, EA5A2379 1996-04-23)
    {file}.elm-key-2018.sig GPG signature (key elm.key.2018.asc, 44FC796B 2018-12-01, expires: 2028-11-28)

    * Configuration

    Following files (if exists) are rewritten by elmconfwriter on
    installation:

    - /usr/local/lib/elm.rc
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.hashmarks

    Spec file compiles elm for binary distribution, so you must edit
    /usr/local/lib/elm.rc before using Elm ME+ 2.5. Following variables may
    need to be modified on elm.rc:

    - mailer
    - hostdomain (this is usually needed)
    - hostfullname
    - hostname (usually this is not needed)
    - mailname (default values is generated from other values)
    name-resolution (controls default values of hostdomain,
    hostfullname, hostname, mailname)

    For re-generation of following file, old information (if exists) is
    used:

    - /usr/local/lib/elm.rc

    WARNING: Check after installation that libraries are enabled. Global
    elm.rc values are:

    use-library =
    use-base-library = iconv
    use-config-library = resolv
    use-connect-library = tls resolv
    use-mailer-library = smtp resolv

    Note that libelmme-resolv.so does not compile on all distributions. In
    that case omit resolv from elm.rc.

    After editing global elm.rc run /usr/local/lib/elmrc-write -GI for
    fixing possible errors.

    On installation following existing files are merged with new values:

    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.hashmarks

    Old values from /usr/local/lib/aliases.text are converted to /usr/local/lib/elm.aliases and /usr/local/lib/aliases.text is renamed to /usr/local/lib/aliases.text.OLD.

    On installation new values without merging are written to following
    files:

    - /usr/local/lib/elm.aliases.NEW
    - /usr/local/lib/elm.mailinglists.NEW
    - /usr/local/lib/elm.mailservices.NEW
    - /usr/local/lib/elm.mimecharsets.NEW
    - /usr/local/lib/elm.mimetypes.NEW
    - /usr/local/lib/elm.terminalinfo.NEW
    - /usr/local/lib/elm.iso2022sets.NEW
    - /usr/local/lib/elm.hashmarks.NEW

    Package elm-mod includes libelmme-iconv.so and libelmme-smtp.so. If
    package elm-mod includes libelmme-resolv.so, this is noted. And package
    elm-tls includes libelmme-tls.so.

    Installation loses mailer = submission setting from global /usr/local/lib/elm.rc, because when elm package rewrites elm.rc,
    submission mailer is not available. It becomes from elm-mod package.

    However failed values of /usr/local/lib/elm.rc are saved to /usr/local/lib/elm.rc.old-values file during installation.

    Global setting mailer = submission is restored from /usr/local/lib/elm.rc.old-values file, when package elm-mod is
    installed.

    Also following directories are used:

    - /usr/local/lib/elm.map.txt/ (global setting map-text-dir =
    {lib}/elm.map.txt)
    - /usr/local/lib/elm.map.bin/ (global setting map-bin-dir =
    {lib}/elm.map.bin)
    - /usr/local/lib/elm.user.map/ (global setting user-map-dir =
    {lib}/elm.user.map)

    Hashmark EXAMPLE uses file /usr/local/lib/elm.user.map/elm.usermap.

    SUMMARY: This release changes date display on
    mail listing and adds separator lines
    to mail listing. Also this release changes
    Expires: and Sender: -header field
    generation. This release checks more
    email addresses for mail domain
    validity (when libelmme-resolv.so module
    is used). New elmrc options are
    "expires-have-time", "mail-menu-time",
    "verify-alias-domain" and "verify-local-domain".
    Also some other changes and some bug
    fixes are included.

    Elm ME+ 2.5 PLalpha49 changelog

    Changes on Elm ME+ 2.5 PLalpha49 compared with Elm ME+ 2.5 PLalpha48 --------------------------------------------------------------------

    SUMMARY: This release changes date display on
    mail listing and adds separator lines
    to mail listing. Also this release changes
    Expires: and Sender: -header field
    generation. This release checks more
    email addresses for mail domain
    validity (when libelmme-resolv.so module
    is used). New elmrc options are
    "expires-have-time", "mail-menu-time",
    "verify-alias-domain" and "verify-local-domain".
    Also some other changes and some bug
    fixes are included.

    * Change from Elm 2.5

    - Changed make_menu_date() to generate
    Elm 2.5 style local specific date
    (uses strftime).
    - Changed days_ahead[_tm]() to use Elm 2.5
    style algorithm where localtime()
    is used first and then day is
    incremented on instead of
    Elm 2.4 style algorithm where
    time_t values is incremented
    by days * 24 * 60 *60 and
    localtime() is used.
    - Changed days_ahead[_text]() to generate
    Elm 2.5 style local specific date
    (uses strftime) for hdrconfig. This
    is not used for actual Expires:
    header. However %Y (year with century)
    is used instead of %y (year with 2
    digits).
    - Changed elm_date_str() to generate
    Elm 2.5 style local specific date
    (uses strftime) for pager and
    phrase of in-reply-to (if
    "add-in-reply-to-phrase" is set). However
    %Y (year with century) is used
    instead of %y (year with 2 digits).

    - Added year to mail listing. This is controlled
    with new elmrc option "mail-menu-time". Year is
    included on separator line.
    - New elmrc option "mail-menu-time" knows following keywords
    none None of values are selected
    year-separator Show separator line with
    year on date -column.
    auto-separator Show separator line for
    some sorting orders when
    message list space is sufficient
    big (21 lines).
    today Show time as hh:mm on date
    column instead of date if
    date is today and timezone
    is same. Also shows separator
    with "today" if separator
    lines are shown.
    today-separator Show separator line for
    some sorting orders when
    message list space is sufficient
    big (6 lines). Also show separator
    when all messages are from
    current year.
    year-or-time Add either year or time as hh:mm
    on date column when date is shown.
    Time is shown when year is current and
    timezone is same.
    These options also accepts additive form where
    changes from compile time default (or changes from
    global elm.rc) are listed:
    +year-separator -year-separator
    +auto-separator -auto-separator
    +today -today
    +today-separator -today-separator
    +year-or-time -year-or-time
    - Separator line is not shown if all mail are from
    current year. In that case that does not add
    much information and just consumes one line from
    mail listing. Keyword "today-separator" is
    exception for this.
    - Keyword "auto-separator" on elmrc option "mail-menu-time"
    enables separator lines when sorting order is
    "sent", "received" or "mailbox". Or when sorting
    order is "reverse-" version of these. There must
    be at least 21 lines available for mail listing.
    - Keyword "today" on elmrc option "mail-menu-time"
    causes that sent time on form hh:mm is shown
    on date -column on mail listing if day, month and
    year is same as today date and timezone offset is same
    than on local timezone. Note that date column
    shows sending date on sender's timezone which
    may be different than local timezone.
    - Keyword "today" together with "year-separator"
    or "auto-separator" on elmrc option "mail-menu-time"
    causes that separator line with "today"
    on date -column. Mails are considered to
    be sent today if day, month and
    year is same as today date or sent time
    is between of local today date start and
    end.
    - Keyword "today-separator" on elmrc option "mail-menu-time"
    enables separator lines when sorting order is
    "sent", "received" or "mailbox". Or when sorting
    order is "reverse-" version of these. This
    keyword causes that separator line with "today"
    on date -column is used. If there is at least
    one mail which is considered to be send today,
    separators are send even when all mails are from
    current year. There must be at least 6 lines
    available for mail listing.
    - Keyword "year-or-time" on elmrc option
    "mail-menu-time" adds year or time after
    message date to date -column on mail listing.
    Time is added if year is same as on today date
    and timezone offset is same than on local timezone.
    Otherwise year of message is added to date column.
    If time of message is added because of "today"
    keyword, keyword "year-or-time" adds nothing
    to date column.
    - Keywords "auto-separator" and "today" are
    default values for "mail-menu-time".
    Separator lines is not shown if all mails
    are from current year.
    > Keyword "year-or-time" on elmrc option
    "mail-menu-time" may work better if
    "today" is disabled and keyword
    "today-separator" is used instead.
    That is:
    mail-menu-time = -today +year-or-time +today-separator

    - Added menu_header_change_page() to lib/screen/header.c
    - Changed prototype of new_menu_header()

    - Added hdr_line_separator_index(), hdr_show_separator(),
    hdr_init_separators(), hdr_setup_line()
    and hdr_setup_init() to src/screen.c
    - Added mcommon_init_separators(), mcommon_separator_count(),
    mcommon_screen_print_sep_line(), mcommon_get_separator_index(),
    mcommon_screen_setup_menu_init() and
    mcommon_screen_setup_menu_line()
    to src/menu_common/mcommon.c
    - Added give_menu_separator(), menu_separator_count(),
    menu_separator_init(), get_menu_separator_index(),
    get_today_info(), message_hdr_setup_init() and
    message_hdr_setup_line()
    to src/messages/messages.c
    - Changed prototype of build_alias_line()
    - Changed prototype of make_menu_date()
    - Required width for mail number and
    date columns are calculated before printing
    of mail list.

    - Also changed Elm 2.5 browser to use
    these header setup init/line routines
    to calculate width for date column.
    - Replaced fbrowser_mp_cur_page menu_param
    with cur_page on struct menu_anon_param.
    - Replaced fbrowser_mp_headers_per_page
    menu_param with headers_per_page
    on struct menu_anon_param.
    - Replaced fbrowser_mp_options menu_param
    with options on struct menu_anon_param.
    - Replaced fbrowser_mp_tlen menu_param
    with time_len on struct menu_anon_param.
    - Replaced fbrowser_mp_comcol menu_param
    with comment_column on struct menu_anon_param.

    - Added Configure test for mktime()

    * Tried check that gmtime() and localtime()
    returns non-NULL result. These can fail if
    time_t is 64-bit and values does not fit
    to struct tm for example.
    - Added some fixes to src/date.c
    - Added some fixes to lib/get_tz.c
    - Added some fixes to lib/getarpdate.c
    - Added some fixes to src/thread.c
    - Added some fixes to src/elm.c
    - Added some fixes to lib/mbox/imap.c

    - Some changes to lib/strftime.c

    - Changed parse_date_time() so it detect if
    time_t overflows.
    - Changed make_gmttime() return LONG_MAX
    (or LONG_MIN) on overflow
    - Changed parse_date_time() to return
    *time_result as time_MAX on overflow or
    *time_result as 0 if result is negative
    (before year 1970).
    - Changed prototype of parse_date_time()
    - If parse_date_time() detects overflow
    (or negative (before year 1970) result)
    only year is printed on date -column on
    mail listing.
    - If time_sent is stored as time_MAX or
    0 then just stored year is used for sent
    time sorting.
    - Also only year is printed on
    on date -column thread view if there
    was overflow (or negative (before year
    1970) result) on some mails of thread.

    - Small fix to compare_thread() on src/sort.c

    - Moved most of days_ahead() on src/date.c
    to days_ahead_tm() on lib/addr/date.c
    - Moved days_ahead() as textual output
    for hdrconfig to days_ahead_text().
    This part uses strftime as on Elm 2.5.
    - Moved Elm 2.4 style formatting of
    days_ahead() to days_ahead_hdrval()
    on lib/addr/date.c

    - Added write_expires_header() to lib/addr/write_hdr.c
    - Added lib/addr/outexpires.c with new_expanded_expires(),
    free_expanded_expire(), get_expanded_expires_textual(),
    set_expanded_expires_textual(),
    get_expanded_expires_value(), get_expanded_expires_days_ahead(),
    get_expanded_expires_print_time(),
    get_expanded_expires_cached_time()
    - Changed static struct header_info header_types[]
    on lib/addr/headers.c so that Expires: is also
    allowed on .elm/elmheaders (although that is not very
    useful).
    > If Expires: -header on .elm/elmheaders includes time,
    time is included to Expires: -header on outgoing mail.
    Note however that time zone is not correctly handled
    and mostly ignored.
    - Moved part of parse_date_time() from lib/mbox/parsarpdat.c
    to new parse_parts_date_time()
    on lib/addr/parsarpdat.c
    - Moved lib/mbox/getword.c to lib/addr/getword.c
    - If new elmrc option "expires-have-time" have set, then
    time is included to Expires: -header on outgoing mail
    when header is generated from Message Header Edit Screen.

    - Added overflow checking to aton()

    - Changed prototype (including return type) of elm_date_str()

    - Changed thread view to generate
    local specific date (uses strftime).
    - Required width for thread number
    and date columns are calculated
    before printing of thread list.

    - Possible fix for sort_threads()
    and correspond change for ViewThreads()
    on src/thread.c

    - Added useful_mailname() to lib/addr/split_addr.c
    - If interface addresses are added to "mailname"
    global elm.rc option and they are only names
    added, then add "(none)" as first value
    of "mailname" global elm.rc option.
    - If first value of "mailname" global elm.rc option
    is "(none)" or does not include '.' then use
    "hostfullname" elmrc option when sending mail.

    - Small fix for smtp_run_ehlo()

    - Added MI_REMOTE_MAILER to enum MI_query for
    query_mailer_info()
    - Added same_SOCKADDR_ptr() to lib/remobe_mbx.c
    - Added elmrc option "verify-local-domain".
    Values are:
    no Do not verify mail domain
    given on "mailname" or
    "hostfullname" when sending
    mail.
    yes Use "verify-domain" setting
    for mail domain given on "mailname"
    or "hostfullname" when sending
    mail.
    if-remote-mailer Use "verify-domain" setting
    for mail domain given on "mailname"
    or "hostfullname" when sending
    mail if mailer is remote
    (mailer=submission and "server" is
    not local).
    Also boolean ON, OFF, TRUE, FALSE, YES and NO values are allowed
    on elmrc option "verify-local-domain".
    - Keyword "if-remote-mailer" is default value for
    "verify-local-domain". Therefore local domain (as given
    on "mailname" elmrc option) is verified with
    "verify-domain" setting setting when "mailer"
    global elm.rc option have value "submission" (and
    "server" is set to something other than local host).
    - Added elmrc option "verify-alias-domain". If this is
    set (default), then also domain of alias expanded
    address is verified (uses "verify-domain" setting).

    - "special-use-domains-blacklist" elmrc option also
    applies to autofilled "mailname" / "hostfullname" and these
    case local recipient is not allowed (unless
    "valid-domains" elmrc option overrides this).
    - "special-use-domains-blacklist" elmrc option also
    applies to domain of alias expanded address
    (unless "valid-domains" elmrc option overrides this).

    - Changed prototype of get_alias_address_expanded(),
    aliases_expand_alias(), alias_stack_lookup_f(),
    alias_simple_lookup(), lookup_local(),
    lookup_dummy()

    - Moved some code of build_address_l() to separate functions.
    - build_address_l() no longer return 1 (indicating
    alias expansion), when local address is handled.
    This fixes -c (check alias) output so that
    that "elm -c {userid}" does not claim successful
    alias expansion.
    - Small change to clear_error() and do_check_only()
    - Added build_address_classify_domain(),
    build_address_classify_message(),
    build_address_is_local() and need_verify_ldomain()
    to src/addr_util.c
    - Also exported build_address_cancel_mode() and
    verify_mail_domain_util() from src/addr_util.c

    - Changed return type of mailer_restarted()
    to enum restart_mailer_status.
    - Changed return type of mailer_info_verify_addr()
    to enum mi_vrfyaddr_mailer_status.

    - Changed envelope sender handling on submission mailer.
    - Added mailer_env_from_verified(),
    mailer_env_from_domain(), and
    mailer_env_from_angleaddr()
    to lib/mailer/mailer.c
    - Renamed env_from_changed() to mailer_env_from_changed()
    on lib/mailer/mailer.c
    - Changed prototype of mailer_info_set_ef()
    - Show Return-Path (envelope sender) on
    "Mail Pre-Send Screen" even when
    userlevel = beginner if it is changed
    (for example via ~/.elm/elmheaders).
    - Changed prototype of mailer_env_from_change()
    - Changed mailer_env_from_change() on lib/mailer/mailer.c
    - "special-use-domains-blacklist" elmrc option also
    applies to domain of envelope sender address (shown as
    Return-Path: -header; unless submission mailer is
    returned 250 for VRFY of that address or unless
    "valid-domains" elmrc option overrides this). In
    that case envelope sender address is changed to
    null address (<>).
    NOTE: "special-use-domains-blacklist" elmrc option does
    not prevent using of mailer option verify=yes
    option for envelope sender address.
    - "verify-domain" and "verify-local-domain" elmrc
    options also applies to domain of envelope sender
    address (shown as Return-Path: -header; unless
    submission mailer is returned 250 for VRFY of
    that address or unless "valid-domains" elmrc option
    overrides this).
    > If NULL MX is returned, envelope sender address is changed to
    null address (<>).
    RFC 7505: "Null MX" No Service Resource Record
    for Domains That Accept No Mail
    > If domain does not found, just message is given (but
    envelope sender address is not changed). If submission
    mailer is used sending mail probably fails later
    when domain of envelope sender address does not found.
    - If there is errors on envelope sender (also known as
    Return-Path) and 'allow-set-sender=yes' is set on
    "mailer" global elm.rc option, then prompt on
    "Mail Pre-Send Screen" defaults to R)eturn-path command.

    - Also b)ounce -command checks envelope sender.
    - Added rp_classify_domain_message() and
    env_from_classify_domain(), prompt_mailmsg_page_interactive(),
    mail_env_from_presend(), mail_show_env_from(),
    mail_env_from_def_edit(), mail_edit_return_path()
    to src/mailmsg2.c
    - Changed remail() on src/remail.c
    - Changed import_mailheaders() on lib/addr/outheaders.c
    - Changed show_presend_headers(), presend_action()
    - Added "Bounce Pre-Send Screen" to b)ounce command.
    This is used, when there is Return-Path set or
    editable. This is similar than "Mail Pre-Send Screen"
    on m)ail command.
    - Added error message in for case where
    importing .elm/elmheaders header field fails.
    - If header field name on .elm/elmheaders
    start with '#', it is ignored. Also
    `backticked` command on .elm/elmheaders
    is not executed in that case.
    Output of `backticked` command is not
    checked for '#' character on header field name.
    - Added check that addresses with domain given on
    "special-use-domains-blacklist" elmrc option
    are dot imported (unless "valid-domains" elmrc
    option overrides this). If there is blacklisted
    domain on "From:", "To:", "Cc:" "Bcc:" or
    "Reply-To:" -header field, whole .elm/elmheaders
    line is ignored and error message is given.

    - Changed add_from_hdr(), add_to_hdr(),
    add_cc_hdr(), add_bcc_hdr(),
    add_replyto_hdr(), add_env_from_hdr()
    on lib/addr/outheaders.c

    - Moved addr_is_user() from lib/okay_addr.c
    to lib/addr/okay_addr.c
    - Moved split_internet_address() from lib/okay_addr.c
    to lib/addr/split_addr.c
    - Moved clear_split_addr() from lib/okay_addr.c
    to lib/addr/split_addr.c
    - Moved match_splitted_addr() from lib/okay_addr.c
    to lib/addr/split_addr.c
    - Moved match_local_addr() from lib/okay_addr.c
    to lib/addr/split_addr.c

    - Changed that shared_libs/resolv/resolvertest2.c
    returns 3 when connection is refused
    (errno == ECONNREFUSED) and not only on
    timeout (errno == ETIMEDOUT).

    - Changed ConfTool/Makefile
    - Changed lib/mailer/Makefile.SH
    - Changed lib/Makefile.SH
    - Changed shared_libs/tls/Makefile.SH
    - Changed shared_libs/smtp/Makefile.SH
    - Changed shared_libs/resolv/Makefile.SH
    - Changed shared_libs/iconv/Makefile.SH
    - Changed utils/readmsg/Makefile.SH
    - Changed utils/Makefile.SH
    - Changed src/url/Makefile.SH
    - Changed src/messages/Makefile.SH
    - Changed src/command/Makefile.SH
    - Changed src/aliases/Makefile.SH
    - Changed src/list/Makefile.SH
    - Changed src/screen/Makefile.SH
    - Changed src/pager/Makefile.SH
    - Changed src/menu_common/Makefile.SH
    - Changed src/block/Makefile.SH
    - Changed src/Makefile.SH
    - Changed lib/addr/Makefile.SH
    - Changed lib/alias/Makefile.SH
    - Changed lib/mbox/Makefile.SH
    - Changed lib/misc/Makefile.SH
    - Changed melib/Makefile.SH
    - Changed nls/gencat/Makefile.SH

    - Fixed valgrind reported memory leak:
    294 bytes in 2 blocks are definitely lost in loss record 246 of 280
    at 0x4C2DB8F: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
    by 0x5C3B0CC: safe_malloc (lib/safemalloc.c:60)
    by 0x52B5674: browser_local_do_stat_2 (lib/mbox/localmbx.c:603)
    by 0x52B6517: browser_local_do_stat_1 (lib/mbox/localmbx.c:875)
    by 0x52BBF16: fbrowser_give_entry (lib/mbox/localmbx.c:2931)
    by 0x467011: fbrowser_scan_directory (src/fbrowser.c:1243)
    by 0x467EAF: fbrowser (src/fbrowser.c:1628)
    by 0x469F7A: fbrowser_hook_enter (src/fbrowser.c:2508)
    by 0x44AD78: gen_browser (src/browser.c:3366)
    by 0x47BA63: arg_to_folder (src/init.c:182)
    by 0x47D70B: initialize_mailbox (src/init.c:928)
    by 0x484A39: main_messages_menu (src/mailbox.c:762)
    - Fixed valgrind reported memory leak:
    70 (24 direct, 46 indirect) bytes in 1 blocks are definitely lost in loss record 70 of 151
    at 0x4C2DB8F: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
    by 0x5C3B1F8: safe_zero_alloc (safemalloc.c:85)
    by 0x5C76E4A: malloc_string (string.c:85)
    by 0x5C784CD: cat_strings_internal (string.c:553)
    by 0x5C80BF4: string_copy_character (string.c:3371)
    by 0x5780454: unquote_string (parsestring.c:596)
    by 0x531BBA7: hashtype_parse_kw_value_remote (hashmark_remote.c:1622)
    by 0x531076B: parse_hash_mark_entries (hashmark.c:1462)
    by 0x52AD5C1: hashmark_read_rc_file (init.c:147)
    by 0x5C29ABD: read_rc_file (read_rc.c:4918)
    by 0x47C58C: initialize (init.c:464)
    by 0x45E94B: main (elm.c:1221)
    - Fixed valgrind reported memory leak:
    42 bytes in 1 blocks are definitely lost in loss record 173 of 283
    at 0x4C2DB8F: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
    by 0x5C3BA55: safe_strdup (lib/safemalloc.c:277)
    by 0x52C0A7D: mbx_init_spool (lib/mbox/localmbx.c:4561)
    by 0x52F71DD: real_folder_from_local (lib/mbox/common_local.c:295)
    by 0x52B9F6D: browser_folder_from_local (lib/mbox/localmbx.c:2137)
    by 0x52D8C70: folder_from_dir_item (lib/mbox/savefolder.c:5705)
    by 0x47C153: arg_to_folder (src/init.c:288)
    by 0x47DA29: initialize_mailbox (src/init.c:928)
    by 0x484D57: main_messages_menu (src/mailbox.c:762)
    by 0x45F546: main (src/elm.c:1489)

    - Fixed segmentation fault on start up when
    certain interfaces are present. Specially
    allow ifa_addr pointer on struct ifaddrs to
    be NULL.
    Problem noted by: Jeffrey H. Johnson

    - Possible fix for mailer_get_env_from()

    - Changed global elm.rc option "add-sender"
    to type struct dt_enumerate_info.

    [continued in next message]

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Kari Hurtta@21:1/5 to All on Sat Jan 5 17:29:54 2019
    Experimental DEB generator script for Elm ME+ 2.5 PLalpha49
    exists on <URL: http://www.elmme-mailer.org/deb/elm-ME+2.5.html >
    directory.

    Files are following

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha49-2.gen_deb
    DEB generator script
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha49-2.gen_deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha49-2.gen_deb.sig

    A command

    elm-ME+2.5.alpha49-2.gen_deb {packager}

    generates package elmme with version 1.1.49-2.{distribution}.

    A command

    elm-ME+2.5.alpha49-2.gen_deb --nonew {packager}

    generates package elm with version ME+2.5.alpha49-2.{distribution}.

    Both commands produce package with filename elm-ME+2.5.alpha49-2.{distribution}.{arch}.deb.

    Module libelmme-resolv.so is included for all distributions below, but libelmme-resolv.so does not implement interruptible DNS queries on all distributions.

    == Old package names, i386

    Package elm with version ME+2.5.alpha49-2.{distribution} and
    architecture i386.

    * Compiled on Debian GNU/Linux 3.1
    (Linux 2.4, glibc 2.3, Exim 3.36)

    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha49-2.Debian3.1.i386.deb
    Package elm binary DEB build on Debian GNU/Linux 3.1
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha49-2.Debian3.1.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha49-2.Debian3.1.i386.deb.sig

    * Compiled on Ubuntu 6.06.2 LTS
    (Linux 2.6, glibc 2.3, Sendmail 8.13)

    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha49-2.Ubuntu6.06.i386.deb
    Package elm binary DEB build on Ubuntu 6.06.2 LTS
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha49-2.Ubuntu6.06.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha49-2.Ubuntu6.06.i386.deb.sig

    * Compiled on Ubuntu 10.04.4 LTS
    (Linux 2.6, glibc 2.11, Sendmail 8.14)

    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha49-2.Ubuntu10.04.i386.deb
    Package elm binary DEB build on Ubuntu 10.04.4 LTS
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha49-2.Ubuntu10.04.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha49-2.Ubuntu10.04.i386.deb.sig

    == New package names, i386

    Package elmme with version 1.1.49-2.{distribution} and architecture
    i386.

    * Compiled on Ubuntu 10.04.4 LTS
    (Linux 2.6, glibc 2.11, Sendmail 8.14)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha49-2.Ubuntu10.04.i386.deb
    Package elmme binary DEB build on Ubuntu 10.04.4 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha49-2.Ubuntu10.04.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha49-2.Ubuntu10.04.i386.deb.sig

    * Compiled on Ubuntu 14.04.5 LTS
    (Linux 4.4, glibc 2.19, no MTA)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha49-2.Ubuntu14.04.i386.deb
    Package elmme binary DEB build on Ubuntu 14.04.5 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha49-2.Ubuntu14.04.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha49-2.Ubuntu14.04.i386.deb.sig

    * Compiled on Ubuntu 16.04.5 LTS
    (Linux 4.4, glibc 2.23, no MTA)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha49-2.Ubuntu16.04.i386.deb
    Package elmme binary DEB build on Ubuntu 16.04.5 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha49-2.Ubuntu16.04.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha49-2.Ubuntu16.04.i386.deb.sig

    == New package names, amd64 (x86_64)

    Package elmme with version 1.1.49-2.{distribution} and architecture
    amd64 (also known as x86_64).

    * Compiled on Ubuntu 16.04.5 LTS
    (Linux 4.4, glibc 2.23, Sendmail 8.15)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha49-2.Ubuntu16.04.amd64.deb
    Package elmme binary DEB build on Ubuntu 16.04.5 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha49-2.Ubuntu16.04.amd64.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha49-2.Ubuntu16.04.amd64.deb.sig

    == Signatures

    {file}.sig PGP signature (old key pubkey.asc, EA5A2379 1996-04-23)
    {file}.elm-key-2018.sig GPG signature (key elm.key.2018.asc, 44FC796B 2018-12-01, expires: 2028-11-28)

    == Configuration

    Following files (if exists) are rewritten by elmconfwriter on
    installation:

    - /usr/local/lib/elm.rc
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.hashmarks

    Deb generator script compiles elm for binary distribution, so you must
    edit /usr/local/lib/elm.rc before using Elm ME+ 2.5. Following
    variables may need to be modified on elm.rc:

    - mailer
    - hostdomain (this is usually needed)
    - hostfullname
    - hostname (usually this is not needed)
    - mailname (default values is generated from other values)
    - name-resolution (controls default values of hostdomain,
    hostfullname, hostname, mailname)

    By default first value for mailname is read from /etc/mailname file.

    For re-generation of following file, old information (if exists) is
    used:

    - /usr/local/lib/elm.rc

    WARNING: Check after installation that libraries are enabled. Global
    elm.rc values are:

    use-library =
    use-base-library = iconv
    use-config-library = resolv
    use-connect-library = tls resolv
    use-mailer-library = smtp resolv

    After editing global elm.rc run /usr/local/lib/elmrc-write -GI for
    fixing possible errors.

    On installation following existing files are merged with new values:

    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.hashmarks

    Old values from /usr/local/lib/aliases.text are converted to /usr/local/lib/elm.aliases and /usr/local/lib/aliases.text is renamed to /usr/local/lib/aliases.text.OLD.

    On installation new values without merging are written to following
    files:

    - /usr/local/lib/elm.aliases.NEW
    - /usr/local/lib/elm.mailinglists.NEW
    - /usr/local/lib/elm.mailservices.NEW
    - /usr/local/lib/elm.mimecharsets.NEW
    - /usr/local/lib/elm.mimetypes.NEW
    - /usr/local/lib/elm.terminalinfo.NEW
    - /usr/local/lib/elm.iso2022sets.NEW
    - /usr/local/lib/elm.hashmarks.NEW

    Also following directories are used:

    - /usr/local/lib/elm.map.txt/ (global setting map-text-dir =
    {lib}/elm.map.txt)
    - /usr/local/lib/elm.map.bin/ (global setting map-bin-dir =
    {lib}/elm.map.bin)
    - /usr/local/lib/elm.user.map/ (global setting user-map-dir =
    {lib}/elm.user.map)

    Hashmark EXAMPLE uses file /usr/local/lib/elm.user.map/elm.usermap.

    A command

    elm-{version}-{release}.gen_deb {packager}

    generates package elmme with version {library-version}-{release}.{distribution}. Note that a resulted
    filename of package is still elm-{version}-{release}.{arch}.deb. This
    version number is same than on files /usr/local/lib/libelmme-{module}.so.{library-version}. A filename of
    package is related to used source archive name, which is elm-{version}-{release}.tar.gz.

    A command

    elm-{version}-{release}.gen_deb --nonew {packager}

    generates package elm with version {version}-{release}.{distribution}.
    Also on this case a resulted filename of package is elm-{version}-{release}.{arch}.deb.

    SUMMARY: This release changes date display on
    mail listing and adds separator lines
    to mail listing. Also this release changes
    Expires: and Sender: -header field
    generation. This release checks more
    email addresses for mail domain
    validity (when libelmme-resolv.so module
    is used). New elmrc options are
    "expires-have-time", "mail-menu-time",
    "verify-alias-domain" and "verify-local-domain".
    Also some other changes and some bug
    fixes are included.

    Elm ME+ 2.5 PLalpha49 changelog

    Changes on Elm ME+ 2.5 PLalpha49 compared with Elm ME+ 2.5 PLalpha48 --------------------------------------------------------------------

    SUMMARY: This release changes date display on
    mail listing and adds separator lines
    to mail listing. Also this release changes
    Expires: and Sender: -header field
    generation. This release checks more
    email addresses for mail domain
    validity (when libelmme-resolv.so module
    is used). New elmrc options are
    "expires-have-time", "mail-menu-time",
    "verify-alias-domain" and "verify-local-domain".
    Also some other changes and some bug
    fixes are included.

    * Change from Elm 2.5

    - Changed make_menu_date() to generate
    Elm 2.5 style local specific date
    (uses strftime).
    - Changed days_ahead[_tm]() to use Elm 2.5
    style algorithm where localtime()
    is used first and then day is
    incremented on instead of
    Elm 2.4 style algorithm where
    time_t values is incremented
    by days * 24 * 60 *60 and
    localtime() is used.
    - Changed days_ahead[_text]() to generate
    Elm 2.5 style local specific date
    (uses strftime) for hdrconfig. This
    is not used for actual Expires:
    header. However %Y (year with century)
    is used instead of %y (year with 2
    digits).
    - Changed elm_date_str() to generate
    Elm 2.5 style local specific date
    (uses strftime) for pager and
    phrase of in-reply-to (if
    "add-in-reply-to-phrase" is set). However
    %Y (year with century) is used
    instead of %y (year with 2 digits).

    - Added year to mail listing. This is controlled
    with new elmrc option "mail-menu-time". Year is
    included on separator line.
    - New elmrc option "mail-menu-time" knows following keywords
    none None of values are selected
    year-separator Show separator line with
    year on date -column.
    auto-separator Show separator line for
    some sorting orders when
    message list space is sufficient
    big (21 lines).
    today Show time as hh:mm on date
    column instead of date if
    date is today and timezone
    is same. Also shows separator
    with "today" if separator
    lines are shown.
    today-separator Show separator line for
    some sorting orders when
    message list space is sufficient
    big (6 lines). Also show separator
    when all messages are from
    current year.
    year-or-time Add either year or time as hh:mm
    on date column when date is shown.
    Time is shown when year is current and
    timezone is same.
    These options also accepts additive form where
    changes from compile time default (or changes from
    global elm.rc) are listed:
    +year-separator -year-separator
    +auto-separator -auto-separator
    +today -today
    +today-separator -today-separator
    +year-or-time -year-or-time
    - Separator line is not shown if all mail are from
    current year. In that case that does not add
    much information and just consumes one line from
    mail listing. Keyword "today-separator" is
    exception for this.
    - Keyword "auto-separator" on elmrc option "mail-menu-time"
    enables separator lines when sorting order is
    "sent", "received" or "mailbox". Or when sorting
    order is "reverse-" version of these. There must
    be at least 21 lines available for mail listing.
    - Keyword "today" on elmrc option "mail-menu-time"
    causes that sent time on form hh:mm is shown
    on date -column on mail listing if day, month and
    year is same as today date and timezone offset is same
    than on local timezone. Note that date column
    shows sending date on sender's timezone which
    may be different than local timezone.
    - Keyword "today" together with "year-separator"
    or "auto-separator" on elmrc option "mail-menu-time"
    causes that separator line with "today"
    on date -column. Mails are considered to
    be sent today if day, month and
    year is same as today date or sent time
    is between of local today date start and
    end.
    - Keyword "today-separator" on elmrc option "mail-menu-time"
    enables separator lines when sorting order is
    "sent", "received" or "mailbox". Or when sorting
    order is "reverse-" version of these. This
    keyword causes that separator line with "today"
    on date -column is used. If there is at least
    one mail which is considered to be send today,
    separators are send even when all mails are from
    current year. There must be at least 6 lines
    available for mail listing.
    - Keyword "year-or-time" on elmrc option
    "mail-menu-time" adds year or time after
    message date to date -column on mail listing.
    Time is added if year is same as on today date
    and timezone offset is same than on local timezone.
    Otherwise year of message is added to date column.
    If time of message is added because of "today"
    keyword, keyword "year-or-time" adds nothing
    to date column.
    - Keywords "auto-separator" and "today" are
    default values for "mail-menu-time".
    Separator lines is not shown if all mails
    are from current year.
    > Keyword "year-or-time" on elmrc option
    "mail-menu-time" may work better if
    "today" is disabled and keyword
    "today-separator" is used instead.
    That is:
    mail-menu-time = -today +year-or-time +today-separator

    - Added menu_header_change_page() to lib/screen/header.c
    - Changed prototype of new_menu_header()

    - Added hdr_line_separator_index(), hdr_show_separator(),
    hdr_init_separators(), hdr_setup_line()
    and hdr_setup_init() to src/screen.c
    - Added mcommon_init_separators(), mcommon_separator_count(),
    mcommon_screen_print_sep_line(), mcommon_get_separator_index(),
    mcommon_screen_setup_menu_init() and
    mcommon_screen_setup_menu_line()
    to src/menu_common/mcommon.c
    - Added give_menu_separator(), menu_separator_count(),
    menu_separator_init(), get_menu_separator_index(),
    get_today_info(), message_hdr_setup_init() and
    message_hdr_setup_line()
    to src/messages/messages.c
    - Changed prototype of build_alias_line()
    - Changed prototype of make_menu_date()
    - Required width for mail number and
    date columns are calculated before printing
    of mail list.

    - Also changed Elm 2.5 browser to use
    these header setup init/line routines
    to calculate width for date column.
    - Replaced fbrowser_mp_cur_page menu_param
    with cur_page on struct menu_anon_param.
    - Replaced fbrowser_mp_headers_per_page
    menu_param with headers_per_page
    on struct menu_anon_param.
    - Replaced fbrowser_mp_options menu_param
    with options on struct menu_anon_param.
    - Replaced fbrowser_mp_tlen menu_param
    with time_len on struct menu_anon_param.
    - Replaced fbrowser_mp_comcol menu_param
    with comment_column on struct menu_anon_param.

    - Added Configure test for mktime()

    * Tried check that gmtime() and localtime()
    returns non-NULL result. These can fail if
    time_t is 64-bit and values does not fit
    to struct tm for example.
    - Added some fixes to src/date.c
    - Added some fixes to lib/get_tz.c
    - Added some fixes to lib/getarpdate.c
    - Added some fixes to src/thread.c
    - Added some fixes to src/elm.c
    - Added some fixes to lib/mbox/imap.c

    - Some changes to lib/strftime.c

    - Changed parse_date_time() so it detect if
    time_t overflows.
    - Changed make_gmttime() return LONG_MAX
    (or LONG_MIN) on overflow
    - Changed parse_date_time() to return
    *time_result as time_MAX on overflow or
    *time_result as 0 if result is negative
    (before year 1970).
    - Changed prototype of parse_date_time()
    - If parse_date_time() detects overflow
    (or negative (before year 1970) result)
    only year is printed on date -column on
    mail listing.
    - If time_sent is stored as time_MAX or
    0 then just stored year is used for sent
    time sorting.
    - Also only year is printed on
    on date -column thread view if there
    was overflow (or negative (before year
    1970) result) on some mails of thread.

    - Small fix to compare_thread() on src/sort.c

    - Moved most of days_ahead() on src/date.c
    to days_ahead_tm() on lib/addr/date.c
    - Moved days_ahead() as textual output
    for hdrconfig to days_ahead_text().
    This part uses strftime as on Elm 2.5.
    - Moved Elm 2.4 style formatting of
    days_ahead() to days_ahead_hdrval()
    on lib/addr/date.c

    - Added write_expires_header() to lib/addr/write_hdr.c
    - Added lib/addr/outexpires.c with new_expanded_expires(),
    free_expanded_expire(), get_expanded_expires_textual(),
    set_expanded_expires_textual(),
    get_expanded_expires_value(), get_expanded_expires_days_ahead(),
    get_expanded_expires_print_time(),
    get_expanded_expires_cached_time()
    - Changed static struct header_info header_types[]
    on lib/addr/headers.c so that Expires: is also
    allowed on .elm/elmheaders (although that is not very
    useful).
    > If Expires: -header on .elm/elmheaders includes time,
    time is included to Expires: -header on outgoing mail.
    Note however that time zone is not correctly handled
    and mostly ignored.
    - Moved part of parse_date_time() from lib/mbox/parsarpdat.c
    to new parse_parts_date_time()
    on lib/addr/parsarpdat.c
    - Moved lib/mbox/getword.c to lib/addr/getword.c
    - If new elmrc option "expires-have-time" have set, then
    time is included to Expires: -header on outgoing mail
    when header is generated from Message Header Edit Screen.

    - Added overflow checking to aton()

    - Changed prototype (including return type) of elm_date_str()

    - Changed thread view to generate
    local specific date (uses strftime).
    - Required width for thread number
    and date columns are calculated
    before printing of thread list.

    - Possible fix for sort_threads()
    and correspond change for ViewThreads()
    on src/thread.c

    - Added useful_mailname() to lib/addr/split_addr.c
    - If interface addresses are added to "mailname"
    global elm.rc option and they are only names
    added, then add "(none)" as first value
    of "mailname" global elm.rc option.
    - If first value of "mailname" global elm.rc option
    is "(none)" or does not include '.' then use
    "hostfullname" elmrc option when sending mail.

    - Small fix for smtp_run_ehlo()

    - Added MI_REMOTE_MAILER to enum MI_query for
    query_mailer_info()
    - Added same_SOCKADDR_ptr() to lib/remobe_mbx.c
    - Added elmrc option "verify-local-domain".
    Values are:
    no Do not verify mail domain
    given on "mailname" or
    "hostfullname" when sending
    mail.
    yes Use "verify-domain" setting
    for mail domain given on "mailname"
    or "hostfullname" when sending
    mail.
    if-remote-mailer Use "verify-domain" setting
    for mail domain given on "mailname"
    or "hostfullname" when sending
    mail if mailer is remote
    (mailer=submission and "server" is
    not local).
    Also boolean ON, OFF, TRUE, FALSE, YES and NO values are allowed
    on elmrc option "verify-local-domain".
    - Keyword "if-remote-mailer" is default value for
    "verify-local-domain". Therefore local domain (as given
    on "mailname" elmrc option) is verified with
    "verify-domain" setting setting when "mailer"
    global elm.rc option have value "submission" (and
    "server" is set to something other than local host).
    - Added elmrc option "verify-alias-domain". If this is
    set (default), then also domain of alias expanded
    address is verified (uses "verify-domain" setting).

    - "special-use-domains-blacklist" elmrc option also
    applies to autofilled "mailname" / "hostfullname" and these
    case local recipient is not allowed (unless
    "valid-domains" elmrc option overrides this).
    - "special-use-domains-blacklist" elmrc option also
    applies to domain of alias expanded address
    (unless "valid-domains" elmrc option overrides this).

    - Changed prototype of get_alias_address_expanded(),
    aliases_expand_alias(), alias_stack_lookup_f(),
    alias_simple_lookup(), lookup_local(),
    lookup_dummy()

    - Moved some code of build_address_l() to separate functions.
    - build_address_l() no longer return 1 (indicating
    alias expansion), when local address is handled.
    This fixes -c (check alias) output so that
    that "elm -c {userid}" does not claim successful
    alias expansion.
    - Small change to clear_error() and do_check_only()
    - Added build_address_classify_domain(),
    build_address_classify_message(),
    build_address_is_local() and need_verify_ldomain()
    to src/addr_util.c
    - Also exported build_address_cancel_mode() and
    verify_mail_domain_util() from src/addr_util.c

    - Changed return type of mailer_restarted()
    to enum restart_mailer_status.
    - Changed return type of mailer_info_verify_addr()
    to enum mi_vrfyaddr_mailer_status.

    - Changed envelope sender handling on submission mailer.
    - Added mailer_env_from_verified(),
    mailer_env_from_domain(), and
    mailer_env_from_angleaddr()
    to lib/mailer/mailer.c
    - Renamed env_from_changed() to mailer_env_from_changed()
    on lib/mailer/mailer.c
    - Changed prototype of mailer_info_set_ef()
    - Show Return-Path (envelope sender) on
    "Mail Pre-Send Screen" even when
    userlevel = beginner if it is changed
    (for example via ~/.elm/elmheaders).
    - Changed prototype of mailer_env_from_change()
    - Changed mailer_env_from_change() on lib/mailer/mailer.c
    - "special-use-domains-blacklist" elmrc option also
    applies to domain of envelope sender address (shown as
    Return-Path: -header; unless submission mailer is
    returned 250 for VRFY of that address or unless
    "valid-domains" elmrc option overrides this). In
    that case envelope sender address is changed to
    null address (<>).
    NOTE: "special-use-domains-blacklist" elmrc option does
    not prevent using of mailer option verify=yes
    option for envelope sender address.
    - "verify-domain" and "verify-local-domain" elmrc
    options also applies to domain of envelope sender
    address (shown as Return-Path: -header; unless
    submission mailer is returned 250 for VRFY of
    that address or unless "valid-domains" elmrc option
    overrides this).
    > If NULL MX is returned, envelope sender address is changed to
    null address (<>).
    RFC 7505: "Null MX" No Service Resource Record
    for Domains That Accept No Mail
    > If domain does not found, just message is given (but
    envelope sender address is not changed). If submission
    mailer is used sending mail probably fails later
    when domain of envelope sender address does not found.
    - If there is errors on envelope sender (also known as
    Return-Path) and 'allow-set-sender=yes' is set on
    "mailer" global elm.rc option, then prompt on
    "Mail Pre-Send Screen" defaults to R)eturn-path command.

    - Also b)ounce -command checks envelope sender.
    - Added rp_classify_domain_message() and
    env_from_classify_domain(), prompt_mailmsg_page_interactive(),
    mail_env_from_presend(), mail_show_env_from(),
    mail_env_from_def_edit(), mail_edit_return_path()
    to src/mailmsg2.c
    - Changed remail() on src/remail.c
    - Changed import_mailheaders() on lib/addr/outheaders.c
    - Changed show_presend_headers(), presend_action()
    - Added "Bounce Pre-Send Screen" to b)ounce command.
    This is used, when there is Return-Path set or
    editable. This is similar than "Mail Pre-Send Screen"
    on m)ail command.
    - Added error message in for case where
    importing .elm/elmheaders header field fails.
    - If header field name on .elm/elmheaders
    start with '#', it is ignored. Also
    `backticked` command on .elm/elmheaders
    is not executed in that case.
    Output of `backticked` command is not
    checked for '#' character on header field name.
    - Added check that addresses with domain given on
    "special-use-domains-blacklist" elmrc option
    are dot imported (unless "valid-domains" elmrc
    option overrides this). If there is blacklisted
    domain on "From:", "To:", "Cc:" "Bcc:" or
    "Reply-To:" -header field, whole .elm/elmheaders
    line is ignored and error message is given.

    - Changed add_from_hdr(), add_to_hdr(),
    add_cc_hdr(), add_bcc_hdr(),
    add_replyto_hdr(), add_env_from_hdr()
    on lib/addr/outheaders.c

    - Moved addr_is_user() from lib/okay_addr.c
    to lib/addr/okay_addr.c
    - Moved split_internet_address() from lib/okay_addr.c
    to lib/addr/split_addr.c
    - Moved clear_split_addr() from lib/okay_addr.c
    to lib/addr/split_addr.c
    - Moved match_splitted_addr() from lib/okay_addr.c
    to lib/addr/split_addr.c
    - Moved match_local_addr() from lib/okay_addr.c
    to lib/addr/split_addr.c

    - Changed that shared_libs/resolv/resolvertest2.c
    returns 3 when connection is refused
    (errno == ECONNREFUSED) and not only on
    timeout (errno == ETIMEDOUT).

    - Changed ConfTool/Makefile
    - Changed lib/mailer/Makefile.SH
    - Changed lib/Makefile.SH
    - Changed shared_libs/tls/Makefile.SH
    - Changed shared_libs/smtp/Makefile.SH
    - Changed shared_libs/resolv/Makefile.SH
    - Changed shared_libs/iconv/Makefile.SH
    - Changed utils/readmsg/Makefile.SH
    - Changed utils/Makefile.SH
    - Changed src/url/Makefile.SH
    - Changed src/messages/Makefile.SH
    - Changed src/command/Makefile.SH
    - Changed src/aliases/Makefile.SH
    - Changed src/list/Makefile.SH
    - Changed src/screen/Makefile.SH
    - Changed src/pager/Makefile.SH
    - Changed src/menu_common/Makefile.SH
    - Changed src/block/Makefile.SH
    - Changed src/Makefile.SH
    - Changed lib/addr/Makefile.SH
    - Changed lib/alias/Makefile.SH
    - Changed lib/mbox/Makefile.SH
    - Changed lib/misc/Makefile.SH
    - Changed melib/Makefile.SH
    - Changed nls/gencat/Makefile.SH

    - Fixed valgrind reported memory leak:
    294 bytes in 2 blocks are definitely lost in loss record 246 of 280
    at 0x4C2DB8F: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
    by 0x5C3B0CC: safe_malloc (lib/safemalloc.c:60)
    by 0x52B5674: browser_local_do_stat_2 (lib/mbox/localmbx.c:603)
    by 0x52B6517: browser_local_do_stat_1 (lib/mbox/localmbx.c:875)
    by 0x52BBF16: fbrowser_give_entry (lib/mbox/localmbx.c:2931)
    by 0x467011: fbrowser_scan_directory (src/fbrowser.c:1243)
    by 0x467EAF: fbrowser (src/fbrowser.c:1628)
    by 0x469F7A: fbrowser_hook_enter (src/fbrowser.c:2508)
    by 0x44AD78: gen_browser (src/browser.c:3366)
    by 0x47BA63: arg_to_folder (src/init.c:182)
    by 0x47D70B: initialize_mailbox (src/init.c:928)
    by 0x484A39: main_messages_menu (src/mailbox.c:762)
    - Fixed valgrind reported memory leak:
    70 (24 direct, 46 indirect) bytes in 1 blocks are definitely lost in loss record 70 of 151
    at 0x4C2DB8F: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
    by 0x5C3B1F8: safe_zero_alloc (safemalloc.c:85)
    by 0x5C76E4A: malloc_string (string.c:85)
    by 0x5C784CD: cat_strings_internal (string.c:553)
    by 0x5C80BF4: string_copy_character (string.c:3371)
    by 0x5780454: unquote_string (parsestring.c:596)
    by 0x531BBA7: hashtype_parse_kw_value_remote (hashmark_remote.c:1622)
    by 0x531076B: parse_hash_mark_entries (hashmark.c:1462)
    by 0x52AD5C1: hashmark_read_rc_file (init.c:147)
    by 0x5C29ABD: read_rc_file (read_rc.c:4918)
    by 0x47C58C: initialize (init.c:464)
    by 0x45E94B: main (elm.c:1221)
    - Fixed valgrind reported memory leak:
    42 bytes in 1 blocks are definitely lost in loss record 173 of 283
    at 0x4C2DB8F: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
    by 0x5C3BA55: safe_strdup (lib/safemalloc.c:277)
    by 0x52C0A7D: mbx_init_spool (lib/mbox/localmbx.c:4561)
    by 0x52F71DD: real_folder_from_local (lib/mbox/common_local.c:295)
    by 0x52B9F6D: browser_folder_from_local (lib/mbox/localmbx.c:2137)
    by 0x52D8C70: folder_from_dir_item (lib/mbox/savefolder.c:5705)

    [continued in next message]

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Kari Hurtta@21:1/5 to All on Mon Jun 10 20:43:59 2019
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha50.0

    Elm ME+ 2.5 PLalpha50

    Before applying patch catenate parts 1 - 7 first.
    Also it should be possible to apply parts 1 - 7
    individually.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha47

    ====================================== ( part 0/7 ) =========
    Elm ME+ 2.5 PLalpha50

    - Is available with
    <URL: http://www.elmme-mailer.org/elm-ME+2.5.PLalpha50.patch.gz >
    and <URL: http://www.elmme-mailer.org/elm-ME+2.5.alpha50.tar.gz >

    - This seems NOT to be mirrored to ftp.funet.fi
    so this is not available via anonymous ftp,
    directory pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/

    SUMMARY: This release adds new magic numbers for
    JPG (EXIF), better reconnection handling
    for broken IMAP connections and 'Er'
    (reconnect) command. This release allows
    interrupting stalled connection with
    interrupt character (Ctrl-C) on new mail
    check and 'X' (Quick Exit) command. Other
    commands still are stuck if connection
    is stalled. Also some other changes and
    fixes are included.

    Changes on Elm ME+ 2.5 PLalpha50 compared with Elm ME+ 2.5 PLalpha49 --------------------------------------------------------------------

    SUMMARY: This release adds new magic numbers for
    JPG (EXIF), better reconnection handling
    for broken IMAP connections and 'Er'
    (reconnect) command. This release allows
    interrupting stalled connection with
    interrupt character (Ctrl-C) on new mail
    check and 'X' (Quick Exit) command. Other
    commands still are stuck if connection
    is stalled. Also some other changes and
    fixes are included.

    - Changed magic number of image/jpeg on
    lib/misc/mime_types.c

    RFC 2046 says: "An initial subtype is "jpeg" for the JPEG format
    using JFIF encoding [JPEG]."

    > Also adds Digital camera JPG using
    Exchangeable Image File Format (EXIF) as
    image/jpeg.

    - Exported wday_from_year_month_day()
    from lib/addr/outheaders.c
    - Changed that lib/mbox/imap.c generates
    real weekday name to From -separator line
    (was using "XXX" as weekday name).

    - Changed mbx_copy_envelope_pop() to use
    return_path_to_env_from_1() for generating From
    -separator address as mbx_copy_envelope_imap()
    is using.

    - Changed screen update on read_headers()

    - Changed header allocation on read_headers()
    - Added malloc_header_rec() and free_header_rec()
    to src/messages/header_alloc.c

    - Fixed handling of mails which arrive to
    IMAP mailbox when mailbox is read (opened).
    - Changed prototype of copy_envelope_end_folder(),
    mbx_copy_envelope_end_folder()
    - Changed parse_body_routine() on src/newmbox.c

    - If IMAP mailbox connection is broken,
    after reconnection different
    temp folder is used when mails
    are read from mailbox.
    * If different temp folder is used
    all mails are no longer included
    as new mails to mail listing with mails
    before connection was broken.
    - When POP connection is re$yncronized
    different temp folder is used.
    (POP mailbox also always reopen
    connection when mailbox is
    re$yncronized).
    - If messages are EXPUNGEd from IMAP
    folder, different temp folder is used
    when mail is re$yncronized.
    - If skipped mail is later loaded
    from IMAP folder, different temp folder
    is used when mail is re$yncronized.

    - Added 'Er' command for reconnect broken
    mailbox connections.
    - Added update_selected_counter(),
    found_disconnected(), ReconnectMailbox() and
    ReconnectMailboxPost() to src/reconnect.c

    - If IMAP / POP mailbox connection is
    broken, some hint from
    Use 'X' for Quick Exit
    XXX disconnected and failed. Use 'Er' for reconnecting or 'X' for Quick Exit
    XXX disconnected. Use 'Er' for reconnecting broken connection
    XXX failed. Use 'X' for Quick Exit
    is given, where XXX is some from
    POP mailbox
    IMAP mailbox
    IMAP folder
    Read-only IMAP folder
    > However re$yncronize command may try reconnect
    IMAP or POP mailbox connection.

    - Changed prototype of
    prepare_read_folder(), end_read_folder(),
    copy_envelope_folder(), sessionlock_folder(),
    open_folder_lock(), new_mail_check(),
    flush_folder()

    - Changed prototype of mbx_prepare_read_folder(),
    mbx_end_read_folder(), mbx_sessionlock_folder(),
    mbx_flush_folder(), mbx_flush_temp()
    - Added search_previous_header(),
    copy_previous_mail(), free_reconnect_mode(),
    malloc_reconnect_mode() to lib/mbox/mbox.c

    - Added
    unsigned int was_reconnected :1;
    unsigned int got_skipped_mail :1;
    to struct folder_info
    - Added
    int uidvalidity;
    unsigned int got_EXPUNGE :1;
    to struct IMAP_MBX

    - Changed prototype of end_edit_folder()
    - Changed prototype of mbx_end_edit_folder()

    - Changed sync_mbox(), usr1_signal(), usr2_signal(),
    resync(), visit_mailbox_loop(), change_file()
    - Added reconnect_mails() to src/newmbox.c

    - Changed prototype of newmbox_1()
    - Changed prototype of file_bytes()
    - Changed prototype of show_last_error()

    - Changed file_bytes() on lib/file_util.c

    - Fixed error message on check_mailfile_size()

    - Fixed error where re$yncronizing
    POP mailbox shows ridiculous
    large percents when loading mails.

    - Added sessionlock_create_tempfolder()
    to lib/mbox/mbox_generic.c
    - Added mbx_prepare_read_reconnect()
    to lib/mbox/remote_mbx.c
    - Changed mbx_sessionlock_pop(),
    mbx_sessionlock_spool(), mbx_sessionlock_imap()
    - Added mbx_comp_prev_hdr_folder(),
    mbx_update_prev_hdr_folder()
    - Added mbx_comp_prev_hdr_default(),
    mbx_update_prev_hdr_default () to
    lib/mbox/mbox_generic.c
    - Exported adjust_content_remaining from
    lib/mbox/localmbx.c
    - Added struct copy_previous_rs * reconnect_copy_previous
    to struct read_folder_state.
    - Changed copy_header_folder(),
    copy_body_folder(), copy_envelope_end_folder()
    on lib/mbox/mbox.c

    - Changed new_mail_on_folder(), new_mail_check(),
    main_messages_loop()

    - Moved addr_is_same() from src/messages/duplicate.c
    to lib/addr/duplicate.c as addr_list_is_same()
    - Added message_id_to_string() to
    lib/addr/message-id.c
    - Added references_to_string() to
    lib/addr/references.c

    - Fix for debug_message() on src/elm.c

    - Message
    Checking new mail...
    is shown on new mail check after
    0.5 second delay when checking remote mailbox
    (IMAP mailbox). Check may be cancelable with
    interrupt character (Ctrl-C) but remote
    mailbox connection may be disconnected.
    - Added start_imap_command_c(), imap_command_ok_c(),
    imap_clear_command_c() to lib/mbox/con_imap.c

    - Message
    Leaving mailbox ...
    is shown on eXiting main mailbox
    screen after 2 second delay if remote
    mailbox is stalled. Wait may be cancelable with
    interrupt character (Ctrl-C).
    - Changed prototype of free_mailbox(), free_storage(),
    leave_old_folder(), close_folder(),
    close_connection(), free_connection(),
    free_mailbox(), free_all_mailboxes(),
    free_connection(), close_cached_connections()
    - Changed prototype of mbx_close_folder(),
    cache_close_connection(), mt_free_mailbox(),
    mbx_free_folder()

    - Take account artificial "From " separator line
    when estimating IMAP mailfile size (temp
    folder size). This affects percent display
    when reading mailbox.

    New files:
    lib/addr/duplicate.c
    src/reconnect.c

    Warnings
    --------

    - Not compiled with MMDF support defined, so probably it doesn't
    work (or even compile).

    - This has not been tested much so there can be bad bugs.

    Bug reports to: Kari E. Hurtta <elm@elmme-mailer.org>
    (was hurtta+elm@posti.FMI.FI)

    - Internationalized (ie. non-ASCII) domain names are not supported.

    - Support for multipart/signed and multipart/encrypted (specially:
    support for PGP/MIME) only in reading side. There is no support
    for attachments with multipart/encrypted.

    - HP's shoftkeys are no longer supported

    - DECNET addresses like host::user may be interpreted as phrase
    of group syntax or as route of source routed address.

    - Header editing screen now uses addresses in form phrase <address>,
    but because it does not require using of comma (,), multiword
    phrases must be entered in quotes.

    For example: "Kari Hurtta" <hurtta>

    - If address includes <> or comments (), they are not aliased
    expanded. So aliases must be entered as bare words.

    - Addresses given as arguments to elm command should be given
    as one address per argument. Giving of sevaral addresses per
    one argument causes that address is misparsed if header is
    edited on header editing screen.

    That is:

    Use: elm '"Kari Hurtta" <hurtta>' 'Admin <root>'

    Don't use: elm 'Kari Hurtta <hurtta>, Admin <root>'

    - p)rint command acts as P)rint text -command. So it
    is currently quite useless.
    p)rint command does that via readmsg -command. However
    P)rint text does actually same (without readmsg).

    - Some Linux libraries does not follow $LC_CTYPE when program is
    setgid. Net result is that your locale is always C. That is
    visible that $LC_CTYPE does not effect to locale printed by
    'elm -vvvvv':

    Locale (LC_CTYPE): C
    Display character-set: US-ASCII
    Sending character-set: US-ASCII

    - All refrences iso2022 maps are parsed and read to memory.
    This may cause quite big memory consumption specially because
    eastern (multibyte) sets tend to be lot of characters. That
    mapping information should be shared between processes to
    reduce memory consuption.

    - If display charset is produced by using mapping from locale
    to charset where charset definition is later invalidated
    ("removed") by setting explicit compatcharsets on user's
    .elm/elmrc, that may cause PANIC on elm's internal pager
    or other problems. Invalidation happens if display charset
    is on implicit compatcharsets list (because of charset
    definition), but does not have explicit compatcharsets list
    given by user.

    - Neither Unicode didirectional algorithm nor Right-Left scripts
    are supported.

    - In some situations two Status headers may be generated two
    Status headers -- one by IMAP deamon and one from APPENDed
    message.

    - When APPENDing message to IMAP folder (which is normal UNIX
    mailbox format) original "From " separator line can not be
    preserved -- specially it is not possible to pass envelope
    sender address.

    - For UTF-8 charset Elm only knows printable characters from
    Latin/1 range, if unicode database (see elmrc option "unidata")
    is not loaded.

    - For using of ISO2022 character sets it is required that mapping
    them to unicode is know -- otherwise Elm ME+ does not know which
    characters are printable.

    - UTF-16 surrogate pairs (D800-DFFF) are not supported on UTF-7
    charset.

    - Mixing of names using IMAP naming convention
    (imap-naming-convention = yes)
    and names using imap-charset does not work very well...

    - " Regarding my message (8 Aug 2000) regarding 'newmail' on
    AIX 4.3.3 in an 'aixterm' window and the 'aixterm' did not
    close, indeed the problem was NOT related to 'newmail' but an
    AIX bug.

    IBM has release a patch, and the 'aixterm' in AIX 4.3.3 must
    be update with fileset X11.apps.aixterm.4.3.3.26 (PTF
    U473920) is solved to problem."
    From: Noam G. Nudelman <noam@mail.biu.ac.il>

    - File /usr/share/locale/fi/charset gives charset name utf-8 on
    Linux Mandrake 7.2. This causes that Configure generates
    mapping
    fi utf-8
    to elm.mimecharsets. However that seems to have
    incorrect mapping. You may want change this to
    fi ISO-8859-1

    ( however nl_langinfo(CODESET) gives charset ISO-8859-15
    but look following entry. )

    - Locale 'fi' seems to have charset ISO-8859-15 according
    of nl_langinfo(CODESET) on Mandrake Linux 7.2 (and probaly
    others with same glibc version). However for example gnome
    terminal uses font
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-1
    and not
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-15

    Also KDE's konsole program seems use iso8859-1 character set
    although locale is 'fi' which should have ISO-8859-15 according
    of nl_langinfo (selecting "unicode" from menu seems fix that.)

    Because of mismatch more correct locale is fi_FI.88591, which gives
    ISO-8859-1 character set according of nl_langinfo(CODESET).

    ( Locale seems come from /etc/sysconfig/i18n or $HOME/.i18n )

    > To enable handling of ISO-8859-1 and ISO-8859-15 character sets
    on linux console, read comments from doc/terminal.info file.

    - Mandrake Linux 7.2 seems set LD_PRELOAD to load
    /usr/lib/libxalflaunch.so.0. That (xalf-0.4-2mdk) causes that
    elm to crash on startup (actually before main() is reached.)

    - kterm on Mandrake Linux 7.2 seems have (at least on my test
    environment) seems get bad fontlist (*VT100*fontList) which
    gives bad font for iso8859-1 -- therefore ISO-8859-1 characters
    do not work.

    ("xrdb -query" seems report resource with name "*fontList"
    -- that probably overrides "*VT100*fontList" which comes
    from /usr/lib/X11/app-defaults/KTerm )

    - Also note that initially kterm does NOT default to
    ISO-8859-1 -- therefore ISO-8859-1 works only when
    elm explicity switch to ISO-8859-1 (for example
    with 'elm -D ISO-8859-1')

    - When assembling message/partial MIME (RFC 2046)
    requires that all headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are copied from
    initial enclosing message to assembled message. It also
    requires that headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are ignored and
    dropped from enclosed message.

    For now we copy only Received: -headers. Dropping extra
    headers from enclosed message makes assembly more
    complicated (and dropping of Received: -headers
    from enclosed message do not make sense.)

    - mailer=sendmail; verify=yes works only when sendmail
    is installed as setuid root. Use mailer=submission instead.
    * Starting from sendmail 8.12 sendmail is normally
    installed as setgid smmsp and not as setuid root.
    - However error message is printed only if
    verify-local-address=yes is also set

    - IMAP connection is stalled some times. Reason is unknown.

    - From name option (-f) on fastmail is currently broken.

    Collector of these patches
    --------------------------

    Kari Hurtta <elm@elmme-mailer.org>
    Kari Hurtta <hurtta+elm@siilo.FMI.FI>


    MANIFEST | 2
    README.ME+ | 202 +++
    doc/elm.1 | 2
    doc/elmalias.1 | 2
    doc/elmhashmarks.1 | 2
    doc/fastmail.1 | 2
    doc/frm.1 | 2
    doc/newalias.1 | 2
    doc/newmail.1 | 2
    doc/readmsg.1 | 2
    hdrs/addrlib.h | 18
    hdrs/connection_imp.h | 21
    hdrs/elm_defs.h | 17
    hdrs/elmlib.h | 8
    hdrs/mboxlib.h | 158 !!
    hdrs/mbx_imp.h | 109 !
    hdrs/mbximap_imp.h | 30
    hdrs/me.h | 69 !
    hdrs/patchlevel.h | 10
    hdrs/readmsg.h | 4
    hdrs/s_command.h | 1
    hdrs/s_elm.h | 34
    hdrs/s_from.h | 1
    hdrs/s_me.h | 4
    lib/MAGIC | 2
    lib/addr/Makefile.SH | 5
    lib/addr/def_addr.h | 10
    lib/addr/duplicate.c | 91 +
    lib/addr/message-id.c | 49
    lib/addr/outheaders.c | 7
    lib/addr/parsestring.c | 8
    lib/addr/references.c | 91 +
    lib/cancel.c | 5
    lib/file_util.c | 71
    lib/mbox/common_local.c | 9
    lib/mbox/con_imap.c | 712 ++++++!!!!
    lib/mbox/connection.c | 55
    lib/mbox/def_mbox.h | 42
    lib/mbox/hashmark_remote.c | 70
    lib/mbox/headers.c | 11
    lib/mbox/imap.c | 1353 ++++++++++-!!!!!!!!!!!
    lib/mbox/localmbx.c | 1502 ++++-!!!!!!!!!!!!!!!!!!
    lib/mbox/mbox.c | 2461 +++++++++-!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    lib/mbox/mbox_generic.c | 148 ++
    lib/mbox/pop.c | 1233 ++++++++++-!!!!!!!!
    lib/mbox/remote_mbx.c | 144 ++
    lib/misc/mime_types.c | 51
    lib/schedule.c | 140 !!
    lib/streamsched.c | 11
    nls/C/C/C/s_command.m | 2
    nls/C/C/C/s_elm.m | 70 !
    nls/C/C/C/s_from.m | 2
    nls/C/C/C/s_me.m | 8
    src/Makefile.SH | 5
    src/args.c | 8
    src/canceled.c | 6
    src/command/extendedcmd.c | 17
    src/digest.c | 32
    src/duplicate_removal.c | 52
    src/edit.c | 26
    src/elm.c | 306 +!!!!
    src/extended.c | 46
    src/file_util.c | 20
    src/in_utils.c | 40
    src/init.c | 198 !!!
    src/leavembox.c | 409 ++!!!
    src/list/info.c | 61 !
    src/list/visit_mailbox.c | 255 +!!!
    src/mailbox.c | 264 !!!!
    src/messages/canceled_mail.c | 62
    src/messages/def_messages.h | 9
    src/messages/digest.c | 17
    src/messages/duplicate.c | 94 -
    src/messages/header_alloc.c | 39
    src/messages/mailfile.c | 18
    src/messages/messages.c | 59
    src/messages/partial.c | 36
    src/messages/status_common.c | 14
    src/messages/storage.c | 45
    src/messages/thread_messages.c | 17
    src/newmbox.c | 1409 ++++-!!!!!!!!!!!!!!!!
    src/openmailbox.c | 75
    src/out_utils.c | 36
    src/partial.c | 54
    src/quit.c | 290 +!!!
    src/reconnect.c | 150 ++
    src/savecopy.c | 57
    src/showmsg_1.c | 11
    src/signals.c | 108 !
    src/thread.c | 6
    src/utils.c | 183 !!!
    src/view_folder.c | 6
    src/view_one_thread.c | 29
    utils/from.c | 138 !!
    utils/newmail.c | 397 !!!!!
    utils/readmsg/folder.c | 132 !!
    96 files changed, 4774 insertions(+), 333 deletions(-), 9196 modifications(!)

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Kari Hurtta@21:1/5 to All on Mon Jun 10 20:49:27 2019
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha50.0

    Elm ME+ 2.5 PLalpha50

    Before applying patch catenate parts 1 - 7 first.
    Also it should be possible to apply parts 1 - 7
    individually.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha49

    ====================================== ( part 0/7 ) =========
    Elm ME+ 2.5 PLalpha50

    - Is available with
    <URL: http://www.elmme-mailer.org/elm-ME+2.5.PLalpha50.patch.gz >
    and <URL: http://www.elmme-mailer.org/elm-ME+2.5.alpha50.tar.gz >

    - This seems NOT to be mirrored to ftp.funet.fi
    so this is not available via anonymous ftp,
    directory pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/

    SUMMARY: This release adds new magic numbers for
    JPG (EXIF), better reconnection handling
    for broken IMAP connections and 'Er'
    (reconnect) command. This release allows
    interrupting stalled connection with
    interrupt character (Ctrl-C) on new mail
    check and 'X' (Quick Exit) command. Other
    commands still are stuck if connection
    is stalled. Also some other changes and
    fixes are included.

    Changes on Elm ME+ 2.5 PLalpha50 compared with Elm ME+ 2.5 PLalpha49 --------------------------------------------------------------------

    SUMMARY: This release adds new magic numbers for
    JPG (EXIF), better reconnection handling
    for broken IMAP connections and 'Er'
    (reconnect) command. This release allows
    interrupting stalled connection with
    interrupt character (Ctrl-C) on new mail
    check and 'X' (Quick Exit) command. Other
    commands still are stuck if connection
    is stalled. Also some other changes and
    fixes are included.

    - Changed magic number of image/jpeg on
    lib/misc/mime_types.c

    RFC 2046 says: "An initial subtype is "jpeg" for the JPEG format
    using JFIF encoding [JPEG]."

    > Also adds Digital camera JPG using
    Exchangeable Image File Format (EXIF) as
    image/jpeg.

    - Exported wday_from_year_month_day()
    from lib/addr/outheaders.c
    - Changed that lib/mbox/imap.c generates
    real weekday name to From -separator line
    (was using "XXX" as weekday name).

    - Changed mbx_copy_envelope_pop() to use
    return_path_to_env_from_1() for generating From
    -separator address as mbx_copy_envelope_imap()
    is using.

    - Changed screen update on read_headers()

    - Changed header allocation on read_headers()
    - Added malloc_header_rec() and free_header_rec()
    to src/messages/header_alloc.c

    - Fixed handling of mails which arrive to
    IMAP mailbox when mailbox is read (opened).
    - Changed prototype of copy_envelope_end_folder(),
    mbx_copy_envelope_end_folder()
    - Changed parse_body_routine() on src/newmbox.c

    - If IMAP mailbox connection is broken,
    after reconnection different
    temp folder is used when mails
    are read from mailbox.
    * If different temp folder is used
    all mails are no longer included
    as new mails to mail listing with mails
    before connection was broken.
    - When POP connection is re$yncronized
    different temp folder is used.
    (POP mailbox also always reopen
    connection when mailbox is
    re$yncronized).
    - If messages are EXPUNGEd from IMAP
    folder, different temp folder is used
    when mail is re$yncronized.
    - If skipped mail is later loaded
    from IMAP folder, different temp folder
    is used when mail is re$yncronized.

    - Added 'Er' command for reconnect broken
    mailbox connections.
    - Added update_selected_counter(),
    found_disconnected(), ReconnectMailbox() and
    ReconnectMailboxPost() to src/reconnect.c

    - If IMAP / POP mailbox connection is
    broken, some hint from
    Use 'X' for Quick Exit
    XXX disconnected and failed. Use 'Er' for reconnecting or 'X' for Quick Exit
    XXX disconnected. Use 'Er' for reconnecting broken connection
    XXX failed. Use 'X' for Quick Exit
    is given, where XXX is some from
    POP mailbox
    IMAP mailbox
    IMAP folder
    Read-only IMAP folder
    > However re$yncronize command may try reconnect
    IMAP or POP mailbox connection.

    - Changed prototype of
    prepare_read_folder(), end_read_folder(),
    copy_envelope_folder(), sessionlock_folder(),
    open_folder_lock(), new_mail_check(),
    flush_folder()

    - Changed prototype of mbx_prepare_read_folder(),
    mbx_end_read_folder(), mbx_sessionlock_folder(),
    mbx_flush_folder(), mbx_flush_temp()
    - Added search_previous_header(),
    copy_previous_mail(), free_reconnect_mode(),
    malloc_reconnect_mode() to lib/mbox/mbox.c

    - Added
    unsigned int was_reconnected :1;
    unsigned int got_skipped_mail :1;
    to struct folder_info
    - Added
    int uidvalidity;
    unsigned int got_EXPUNGE :1;
    to struct IMAP_MBX

    - Changed prototype of end_edit_folder()
    - Changed prototype of mbx_end_edit_folder()

    - Changed sync_mbox(), usr1_signal(), usr2_signal(),
    resync(), visit_mailbox_loop(), change_file()
    - Added reconnect_mails() to src/newmbox.c

    - Changed prototype of newmbox_1()
    - Changed prototype of file_bytes()
    - Changed prototype of show_last_error()

    - Changed file_bytes() on lib/file_util.c

    - Fixed error message on check_mailfile_size()

    - Fixed error where re$yncronizing
    POP mailbox shows ridiculous
    large percents when loading mails.

    - Added sessionlock_create_tempfolder()
    to lib/mbox/mbox_generic.c
    - Added mbx_prepare_read_reconnect()
    to lib/mbox/remote_mbx.c
    - Changed mbx_sessionlock_pop(),
    mbx_sessionlock_spool(), mbx_sessionlock_imap()
    - Added mbx_comp_prev_hdr_folder(),
    mbx_update_prev_hdr_folder()
    - Added mbx_comp_prev_hdr_default(),
    mbx_update_prev_hdr_default () to
    lib/mbox/mbox_generic.c
    - Exported adjust_content_remaining from
    lib/mbox/localmbx.c
    - Added struct copy_previous_rs * reconnect_copy_previous
    to struct read_folder_state.
    - Changed copy_header_folder(),
    copy_body_folder(), copy_envelope_end_folder()
    on lib/mbox/mbox.c

    - Changed new_mail_on_folder(), new_mail_check(),
    main_messages_loop()

    - Moved addr_is_same() from src/messages/duplicate.c
    to lib/addr/duplicate.c as addr_list_is_same()
    - Added message_id_to_string() to
    lib/addr/message-id.c
    - Added references_to_string() to
    lib/addr/references.c

    - Fix for debug_message() on src/elm.c

    - Message
    Checking new mail...
    is shown on new mail check after
    0.5 second delay when checking remote mailbox
    (IMAP mailbox). Check may be cancelable with
    interrupt character (Ctrl-C) but remote
    mailbox connection may be disconnected.
    - Added start_imap_command_c(), imap_command_ok_c(),
    imap_clear_command_c() to lib/mbox/con_imap.c

    - Message
    Leaving mailbox ...
    is shown on eXiting main mailbox
    screen after 2 second delay if remote
    mailbox is stalled. Wait may be cancelable with
    interrupt character (Ctrl-C).
    - Changed prototype of free_mailbox(), free_storage(),
    leave_old_folder(), close_folder(),
    close_connection(), free_connection(),
    free_mailbox(), free_all_mailboxes(),
    free_connection(), close_cached_connections()
    - Changed prototype of mbx_close_folder(),
    cache_close_connection(), mt_free_mailbox(),
    mbx_free_folder()

    - Take account artificial "From " separator line
    when estimating IMAP mailfile size (temp
    folder size). This affects percent display
    when reading mailbox.

    New files:
    lib/addr/duplicate.c
    src/reconnect.c

    Warnings
    --------

    - Not compiled with MMDF support defined, so probably it doesn't
    work (or even compile).

    - This has not been tested much so there can be bad bugs.

    Bug reports to: Kari E. Hurtta <elm@elmme-mailer.org>
    (was hurtta+elm@posti.FMI.FI)

    - Internationalized (ie. non-ASCII) domain names are not supported.

    - Support for multipart/signed and multipart/encrypted (specially:
    support for PGP/MIME) only in reading side. There is no support
    for attachments with multipart/encrypted.

    - HP's shoftkeys are no longer supported

    - DECNET addresses like host::user may be interpreted as phrase
    of group syntax or as route of source routed address.

    - Header editing screen now uses addresses in form phrase <address>,
    but because it does not require using of comma (,), multiword
    phrases must be entered in quotes.

    For example: "Kari Hurtta" <hurtta>

    - If address includes <> or comments (), they are not aliased
    expanded. So aliases must be entered as bare words.

    - Addresses given as arguments to elm command should be given
    as one address per argument. Giving of sevaral addresses per
    one argument causes that address is misparsed if header is
    edited on header editing screen.

    That is:

    Use: elm '"Kari Hurtta" <hurtta>' 'Admin <root>'

    Don't use: elm 'Kari Hurtta <hurtta>, Admin <root>'

    - p)rint command acts as P)rint text -command. So it
    is currently quite useless.
    p)rint command does that via readmsg -command. However
    P)rint text does actually same (without readmsg).

    - Some Linux libraries does not follow $LC_CTYPE when program is
    setgid. Net result is that your locale is always C. That is
    visible that $LC_CTYPE does not effect to locale printed by
    'elm -vvvvv':

    Locale (LC_CTYPE): C
    Display character-set: US-ASCII
    Sending character-set: US-ASCII

    - All refrences iso2022 maps are parsed and read to memory.
    This may cause quite big memory consumption specially because
    eastern (multibyte) sets tend to be lot of characters. That
    mapping information should be shared between processes to
    reduce memory consuption.

    - If display charset is produced by using mapping from locale
    to charset where charset definition is later invalidated
    ("removed") by setting explicit compatcharsets on user's
    .elm/elmrc, that may cause PANIC on elm's internal pager
    or other problems. Invalidation happens if display charset
    is on implicit compatcharsets list (because of charset
    definition), but does not have explicit compatcharsets list
    given by user.

    - Neither Unicode didirectional algorithm nor Right-Left scripts
    are supported.

    - In some situations two Status headers may be generated two
    Status headers -- one by IMAP deamon and one from APPENDed
    message.

    - When APPENDing message to IMAP folder (which is normal UNIX
    mailbox format) original "From " separator line can not be
    preserved -- specially it is not possible to pass envelope
    sender address.

    - For UTF-8 charset Elm only knows printable characters from
    Latin/1 range, if unicode database (see elmrc option "unidata")
    is not loaded.

    - For using of ISO2022 character sets it is required that mapping
    them to unicode is know -- otherwise Elm ME+ does not know which
    characters are printable.

    - UTF-16 surrogate pairs (D800-DFFF) are not supported on UTF-7
    charset.

    - Mixing of names using IMAP naming convention
    (imap-naming-convention = yes)
    and names using imap-charset does not work very well...

    - " Regarding my message (8 Aug 2000) regarding 'newmail' on
    AIX 4.3.3 in an 'aixterm' window and the 'aixterm' did not
    close, indeed the problem was NOT related to 'newmail' but an
    AIX bug.

    IBM has release a patch, and the 'aixterm' in AIX 4.3.3 must
    be update with fileset X11.apps.aixterm.4.3.3.26 (PTF
    U473920) is solved to problem."
    From: Noam G. Nudelman <noam@mail.biu.ac.il>

    - File /usr/share/locale/fi/charset gives charset name utf-8 on
    Linux Mandrake 7.2. This causes that Configure generates
    mapping
    fi utf-8
    to elm.mimecharsets. However that seems to have
    incorrect mapping. You may want change this to
    fi ISO-8859-1

    ( however nl_langinfo(CODESET) gives charset ISO-8859-15
    but look following entry. )

    - Locale 'fi' seems to have charset ISO-8859-15 according
    of nl_langinfo(CODESET) on Mandrake Linux 7.2 (and probaly
    others with same glibc version). However for example gnome
    terminal uses font
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-1
    and not
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-15

    Also KDE's konsole program seems use iso8859-1 character set
    although locale is 'fi' which should have ISO-8859-15 according
    of nl_langinfo (selecting "unicode" from menu seems fix that.)

    Because of mismatch more correct locale is fi_FI.88591, which gives
    ISO-8859-1 character set according of nl_langinfo(CODESET).

    ( Locale seems come from /etc/sysconfig/i18n or $HOME/.i18n )

    > To enable handling of ISO-8859-1 and ISO-8859-15 character sets
    on linux console, read comments from doc/terminal.info file.

    - Mandrake Linux 7.2 seems set LD_PRELOAD to load
    /usr/lib/libxalflaunch.so.0. That (xalf-0.4-2mdk) causes that
    elm to crash on startup (actually before main() is reached.)

    - kterm on Mandrake Linux 7.2 seems have (at least on my test
    environment) seems get bad fontlist (*VT100*fontList) which
    gives bad font for iso8859-1 -- therefore ISO-8859-1 characters
    do not work.

    ("xrdb -query" seems report resource with name "*fontList"
    -- that probably overrides "*VT100*fontList" which comes
    from /usr/lib/X11/app-defaults/KTerm )

    - Also note that initially kterm does NOT default to
    ISO-8859-1 -- therefore ISO-8859-1 works only when
    elm explicity switch to ISO-8859-1 (for example
    with 'elm -D ISO-8859-1')

    - When assembling message/partial MIME (RFC 2046)
    requires that all headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are copied from
    initial enclosing message to assembled message. It also
    requires that headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are ignored and
    dropped from enclosed message.

    For now we copy only Received: -headers. Dropping extra
    headers from enclosed message makes assembly more
    complicated (and dropping of Received: -headers
    from enclosed message do not make sense.)

    - mailer=sendmail; verify=yes works only when sendmail
    is installed as setuid root. Use mailer=submission instead.
    * Starting from sendmail 8.12 sendmail is normally
    installed as setgid smmsp and not as setuid root.
    - However error message is printed only if
    verify-local-address=yes is also set

    - IMAP connection is stalled some times. Reason is unknown.

    - From name option (-f) on fastmail is currently broken.

    Collector of these patches
    --------------------------

    Kari Hurtta <elm@elmme-mailer.org>
    Kari Hurtta <hurtta+elm@siilo.FMI.FI>


    MANIFEST | 2
    README.ME+ | 202 +++
    doc/elm.1 | 2
    doc/elmalias.1 | 2
    doc/elmhashmarks.1 | 2
    doc/fastmail.1 | 2
    doc/frm.1 | 2
    doc/newalias.1 | 2
    doc/newmail.1 | 2
    doc/readmsg.1 | 2
    hdrs/addrlib.h | 18
    hdrs/connection_imp.h | 21
    hdrs/elm_defs.h | 17
    hdrs/elmlib.h | 8
    hdrs/mboxlib.h | 158 !!
    hdrs/mbx_imp.h | 109 !
    hdrs/mbximap_imp.h | 30
    hdrs/me.h | 69 !
    hdrs/patchlevel.h | 10
    hdrs/readmsg.h | 4
    hdrs/s_command.h | 1
    hdrs/s_elm.h | 34
    hdrs/s_from.h | 1
    hdrs/s_me.h | 4
    lib/MAGIC | 2
    lib/addr/Makefile.SH | 5
    lib/addr/def_addr.h | 10
    lib/addr/duplicate.c | 91 +
    lib/addr/message-id.c | 49
    lib/addr/outheaders.c | 7
    lib/addr/parsestring.c | 8
    lib/addr/references.c | 91 +
    lib/cancel.c | 5
    lib/file_util.c | 71
    lib/mbox/common_local.c | 9
    lib/mbox/con_imap.c | 712 ++++++!!!!
    lib/mbox/connection.c | 55
    lib/mbox/def_mbox.h | 42
    lib/mbox/hashmark_remote.c | 70
    lib/mbox/headers.c | 11
    lib/mbox/imap.c | 1353 ++++++++++-!!!!!!!!!!!
    lib/mbox/localmbx.c | 1502 ++++-!!!!!!!!!!!!!!!!!!
    lib/mbox/mbox.c | 2461 +++++++++-!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    lib/mbox/mbox_generic.c | 148 ++
    lib/mbox/pop.c | 1233 ++++++++++-!!!!!!!!
    lib/mbox/remote_mbx.c | 144 ++
    lib/misc/mime_types.c | 51
    lib/schedule.c | 140 !!
    lib/streamsched.c | 11
    nls/C/C/C/s_command.m | 2
    nls/C/C/C/s_elm.m | 70 !
    nls/C/C/C/s_from.m | 2
    nls/C/C/C/s_me.m | 8
    src/Makefile.SH | 5
    src/args.c | 8
    src/canceled.c | 6
    src/command/extendedcmd.c | 17
    src/digest.c | 32
    src/duplicate_removal.c | 52
    src/edit.c | 26
    src/elm.c | 306 +!!!!
    src/extended.c | 46
    src/file_util.c | 20
    src/in_utils.c | 40
    src/init.c | 198 !!!
    src/leavembox.c | 409 ++!!!
    src/list/info.c | 61 !
    src/list/visit_mailbox.c | 255 +!!!
    src/mailbox.c | 264 !!!!
    src/messages/canceled_mail.c | 62
    src/messages/def_messages.h | 9
    src/messages/digest.c | 17
    src/messages/duplicate.c | 94 -
    src/messages/header_alloc.c | 39
    src/messages/mailfile.c | 18
    src/messages/messages.c | 59
    src/messages/partial.c | 36
    src/messages/status_common.c | 14
    src/messages/storage.c | 45
    src/messages/thread_messages.c | 17
    src/newmbox.c | 1409 ++++-!!!!!!!!!!!!!!!!
    src/openmailbox.c | 75
    src/out_utils.c | 36
    src/partial.c | 54
    src/quit.c | 290 +!!!
    src/reconnect.c | 150 ++
    src/savecopy.c | 57
    src/showmsg_1.c | 11
    src/signals.c | 108 !
    src/thread.c | 6
    src/utils.c | 183 !!!
    src/view_folder.c | 6
    src/view_one_thread.c | 29
    utils/from.c | 138 !!
    utils/newmail.c | 397 !!!!!
    utils/readmsg/folder.c | 132 !!
    96 files changed, 4774 insertions(+), 333 deletions(-), 9196 modifications(!)

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Kari Hurtta@21:1/5 to All on Mon Jun 10 20:44:54 2019
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha50.1

    Elm ME+ 2.5 PLalpha50

    Before applying patch catenate parts 1 - 7 first.
    Also it should be possible to apply parts 1 - 7
    individually.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha47

    ====================================== ( part 1/7 ) =========
    For applying thich patch use (on directory where Configure is)

    patch -p1 < {this-file}

    ------------------------------------------------------------------------
    Index: elmME+.2.5.alpha50-cvs/hdrs/patchlevel.h
    Prereq: 1570000000
    *** elmME+.2.5.alpha49/hdrs/patchlevel.h Tue Dec 25 20:13:54 2018
    --- elmME+.2.5.alpha50-cvs/hdrs/patchlevel.h Mon Jun 3 19:21:04 2019 ***************
    *** 1,12 ****
    ! #define PATCHLEVEL "alpha49"
    /* Used by Configure:
    ! SHAREDTAG: .1.1.49
    */
    ! #define LAST_REPORT_TIME 1570000000
    #define BUG_REPORT_ADDR "Kari Hurtta <elm@elmme-mailer.org>"
    ! #define VERS_DATE "Jan 2019" /* for elm -v option */
    #define WHAT_STRING \
    ! "@(#) Version ME+ 2.5, USENET supported version, released Jan 2019"

    /*
    * Local Variables:
    --- 1,12 ----
    ! #define PATCHLEVEL "alpha50"
    /* Used by Configure:
    ! SHAREDTAG: .1.1.50
    */
    ! #define LAST_REPORT_TIME 1590000000
    #define BUG_REPORT_ADDR "Kari Hurtta <elm@elmme-mailer.org>"
    ! #define VERS_DATE "Jun 2019" /* for elm -v option */
    #define WHAT_STRING \
    ! "@(#) Version ME+ 2.5, USENET supported version, released Jun 2019"

    /*
    * Local Variables:
    Index: elmME+.2.5.alpha50-cvs/README.ME+
    *** elmME+.2.5.alpha49/README.ME+ Tue Dec 25 20:13:54 2018
    --- elmME+.2.5.alpha50-cvs/README.ME
  • From Kari Hurtta@21:1/5 to All on Mon Jun 10 20:51:29 2019
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha50.1

    Elm ME+ 2.5 PLalpha50

    Before applying patch catenate parts 1 - 7 first.
    Also it should be possible to apply parts 1 - 7
    individually.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha49

    ====================================== ( part 1/7 ) =========
    For applying thich patch use (on directory where Configure is)

    patch -p1 < {this-file}

    ------------------------------------------------------------------------
    Index: elmME+.2.5.alpha50-cvs/hdrs/patchlevel.h
    Prereq: 1570000000
    *** elmME+.2.5.alpha49/hdrs/patchlevel.h Tue Dec 25 20:13:54 2018
    --- elmME+.2.5.alpha50-cvs/hdrs/patchlevel.h Mon Jun 3 19:21:04 2019 ***************
    *** 1,12 ****
    ! #define PATCHLEVEL "alpha49"
    /* Used by Configure:
    ! SHAREDTAG: .1.1.49
    */
    ! #define LAST_REPORT_TIME 1570000000
    #define BUG_REPORT_ADDR "Kari Hurtta <elm@elmme-mailer.org>"
    ! #define VERS_DATE "Jan 2019" /* for elm -v option */
    #define WHAT_STRING \
    ! "@(#) Version ME+ 2.5, USENET supported version, released Jan 2019"

    /*
    * Local Variables:
    --- 1,12 ----
    ! #define PATCHLEVEL "alpha50"
    /* Used by Configure:
    ! SHAREDTAG: .1.1.50
    */
    ! #define LAST_REPORT_TIME 1590000000
    #define BUG_REPORT_ADDR "Kari Hurtta <elm@elmme-mailer.org>"
    ! #define VERS_DATE "Jun 2019" /* for elm -v option */
    #define WHAT_STRING \
    ! "@(#) Version ME+ 2.5, USENET supported version, released Jun 2019"

    /*
    * Local Variables:
    Index: elmME+.2.5.alpha50-cvs/README.ME+
    *** elmME+.2.5.alpha49/README.ME+ Tue Dec 25 20:13:54 2018
    --- elmME+.2.5.alpha50-cvs/README.ME
  • From Kari Hurtta@21:1/5 to All on Mon Jun 10 20:53:28 2019
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha50.3

    Elm ME+ 2.5 PLalpha50

    Before applying patch catenate parts 1 - 7 first.
    Also it should be possible to apply parts 1 - 7
    individually.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha49

    ====================================== ( part 3/7 ) =========
    Index: elmME+.2.5.alpha50-cvs/lib/mbox/mbox.c
    *** elmME+.2.5.alpha49/lib/mbox/mbox.c Sun Feb 4 21:36:28 2018
    --- elmME+.2.5.alpha50-cvs/lib/mbox/mbox.c Sat May 11 18:54:00 2019 ***************
    *** 1,7 ****
    ! static char rcsid[] = "@(#)$Id: mbox.c,v 2.25 2017/11/18 16:49:26 hurtta Exp $";

    /******************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 2.25 $ $State: Exp $
    *
    * Author: Kari Hurtta <hurtta+elm@siilo.FMI.FI>
    * (was hurtta+elm@posti.FMI.FI, hurtta+elm@ozone.FMI.FI) --- 1,7 ----
    ! static char rcsid[] = "@(#)$Id: mbox.c,v 2.30 2019/05/11 15:54:00 hurtta Exp $";

    /******************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 2.30 $ $State: Exp $
    *
    * Author: Kari Hurtta <hurtta+elm@siilo.FMI.FI>
    * (was hurtta+elm@posti.FMI.FI, hurtta+elm@ozone.FMI.FI) ***************
    *** 30,35 ****
    --- 30,41 ----
    extern int errno;
    #endif

    + static unsigned char * s2us P_((char *str));
    + static unsigned char * s
  • From Kari Hurtta@21:1/5 to All on Mon Jun 10 20:52:35 2019
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha50.2

    Elm ME+ 2.5 PLalpha50

    Before applying patch catenate parts 1 - 7 first.
    Also it should be possible to apply parts 1 - 7
    individually.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha49

    ====================================== ( part 2/7 ) =========
    Index: elmME+.2.5.alpha50-cvs/lib/mbox/hashmark_remote.c
    *** elmME+.2.5.alpha49/lib/mbox/hashmark_remote.c Tue Dec 25 20:13:54 2018
    --- elmME+.2.5.alpha50-cvs/lib/mbox/hashmark_remote.c Tue May 7 20:49:09 2019
    ***************
    *** 1,7 ****
    ! static char rcsid[] = "@(#)$Id: hashmark_remote.c,v 2.8 2018/07/28 11:20:08 hurtta Exp $";

    /******************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 2.8 $ $State: Exp $
    *
    * Author: Kari Hurtta <hurtta+elm@siilo.FMI.FI>
    * or Kari Hurtta <elm@elmme-mailer.org>
    --- 1,7 ----
    ! static char rcsid[] = "@(#)$Id: hashmark_remote.c,v 2.9 2019/05/07 17:49:09 hurtta Exp $";

    /******************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 2.9 $ $State: Exp $
    *
    * Author: Kari Hurtta <hurtta+elm@siilo.FMI.FI>
    * or Kari Hurtta <elm@elmme-mailer.org>
    ***************
    *** 3114,3122 ****
    return;
    }

    ! if ((*rdata)->CX)
    ! free_connection(& ((*rdata)->CX));

    if ((*rdata)->ra)
    free_remote_account(&
  • From Kari Hurtta@21:1/5 to All on Mon Jun 10 20:54:31 2019
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha50.4

    Elm ME+ 2.5 PLalpha50

    Before applying patch catenate parts 1 - 7 first.
    Also it should be possible to apply parts 1 - 7
    individually.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha49

    ====================================== ( part 4/7 ) =========
    Index: elmME+.2.5.alpha50-cvs/lib/mbox/pop.c
    *** elmME+.2.5.alpha49/lib/mbox/pop.c Tue Dec 25 20:13:54 2018
    --- elmME+.2.5.alpha50-cvs/lib/mbox/pop.c Tue May 7 20:49:09 2019 ***************
    *** 1,7 ****
    ! static char rcsid[] = "@(#)$Id: pop.c,v 2.27 2018/12/01 08:19:44 hurtta Exp $";

    /******************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 2.27 $ $State: Exp $
    *
    * Author: Kari Hurtta <hurtta+elm@siilo.FMI.FI>
    * (was hurtta+elm@posti.FMI.FI, hurtta+elm@ozone.FMI.FI) --- 1,7 ----
    ! static char rcsid[] = "@(#)$Id: pop.c,v 2.32 2019/05/07 17:49:09 hurtta Exp $";

    /******************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 2.32 $ $State: Exp $
    *
    * Author: Kari Hurtta <hurtta+elm@siilo.FMI.FI>
    * (was hurtta+elm@posti.FMI.FI, hurtta+elm@ozone.FMI.FI) ***************
    *** 37,42 ****
    --- 37,48 ----



    + #if ANSI_C
    + #define S_(x) static x;
    + #else
    + #define S_(x)
    + #endif
    +


    struct uidl_entry
  • From Kari Hurtta@21:1/5 to All on Mon Jun 10 20:55:12 2019
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha50.5

    Elm ME+ 2.5 PLalpha50

    Before applying patch catenate parts 1 - 7 first.
    Also it should be possible to apply parts 1 - 7
    individually.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha49

    ====================================== ( part 5/7 ) =========
    Index: elmME+.2.5.alpha50-cvs/src/elm.c
    *** elmME+.2.5.alpha49/src/elm.c Tue Dec 25 20:13:54 2018
    --- elmME+.2.5.alpha50-cvs/src/elm.c Tue May 7 20:49:09 2019 ***************
    *** 1,7 ****
    ! static char rcsid[] = "@(#)$Id: elm.c,v 2.40 2018/12/13 18:01:46 hurtta Exp $";

    /*****************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 2.40 $ $State: Exp $
    *
    * Modified by: Kari Hurtta <hurtta+elm@siilo.FMI.FI>
    * (was hurtta+elm@posti.FMI.FI, hurtta+elm@ozone.FMI.FI)
    --- 1,7 ----
    ! static char rcsid[] = "@(#)$Id: elm.c,v 2.46 2019/05/07 17:49:09 hurtta Exp $";

    /*****************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 2.46 $ $State: Exp $
    *
    * Modified by: Kari Hurtta <hurtta+elm@siilo.FMI.FI>
    * (was hurtta+elm@posti.FMI.FI, hurtta+elm@ozone.FMI.FI)
    ***************
    *** 93,98 ****
    --- 93,99 ----

    void forget_passphrase()
    {
    +

    if (use_PGP &&
    pgp_void_passphrase())
    ********
  • From Kari Hurtta@21:1/5 to All on Mon Jun 10 20:56:34 2019
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha50.7

    Elm ME+ 2.5 PLalpha50

    Before applying patch catenate parts 1 - 7 first.
    Also it should be possible to apply parts 1 - 7
    individually.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha49

    ====================================== ( part 7/7 ) =========
    Index: elmME+.2.5.alpha50-cvs/src/thread.c
    *** elmME+.2.5.alpha49/src/thread.c Tue Dec 25 20:13:54 2018
    --- elmME+.2.5.alpha50-cvs/src/thread.c Mon Mar 11 20:23:56 2019 ***************
    *** 1,7 ****
    ! static char rcsid[] = "@(#)$Id: thread.c,v 2.16 2018/08/01 09:36:26 hurtta Exp $";

    /******************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 2.16 $ $State: Exp $
    *
    * Author: Kari Hurtta <hurtta+elm@siilo.FMI.FI> (was hurtta+elm@posti.FMI.FI)
    * or Kari Hurtta <elm@elmme-mailer.org>
    --- 1,7 ----
    ! static char rcsid[] = "@(#)$Id: thread.c,v 2.17 2019/03/11 18:23:56 hurtta Exp $";

    /******************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 2.17 $ $State: Exp $
    *
    * Author: Kari Hurtta <hurtta+elm@siilo.FMI.FI> (was hurtta+elm@posti.FMI.FI)
    * or Kari Hurtta <elm@elmme-mailer.org>
    ***************
    *** 1176,1182 ****
    update = 1;
    }

    ! new_mail_check(mailbox, page, &LOC);

    if (update_view(mailbox)) {
    upda
  • From Kari Hurtta@21:1/5 to All on Mon Jun 10 20:55:53 2019
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha50.6

    Elm ME+ 2.5 PLalpha50

    Before applying patch catenate parts 1 - 7 first.
    Also it should be possible to apply parts 1 - 7
    individually.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha49

    ====================================== ( part 6/7 ) =========
    Index: elmME+.2.5.alpha50-cvs/src/messages/partial.c
    *** elmME+.2.5.alpha49/src/messages/partial.c Sat May 21 10:02:24 2016
    --- elmME+.2.5.alpha50-cvs/src/messages/partial.c Tue May 7 20:49:09 2019
    ***************
    *** 1,7 ****
    ! static char rcsid[] = "@(#)$Id: partial.c,v 2.12 2016/03/21 20:26:15 hurtta Exp $";

    /******************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 2.12 $ $State: Exp $
    *
    * Author: Kari Hurtta <hurtta+elm@siilo.FMI.FI>
    * (was hurtta+elm@posti.FMI.FI, hurtta+elm@ozone.FMI.FI) --- 1,7 ----
    ! static char rcsid[] = "@(#)$Id: partial.c,v 2.13 2019/05/07 17:49:09 hurtta Exp $";

    /******************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 2.13 $ $State: Exp $
    *
    * Author: Kari Hurtta <hurtta+elm@siilo.FMI.FI>
    * (was hurtta+elm@posti.FMI.FI, hurtta+elm@ozone.FMI.FI) ***************
    *** 67,77 ****


    S_(mt_free_mailbox mt_free_partial)
    ! static void mt_free_partial P_((struct MailboxView *mbx));
    ! sta
  • From Kari Hurtta@21:1/5 to All on Tue Jun 18 16:11:00 2019
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha50a

    Elm ME+ 2.5 PLalpha50a patch is available with

    <URL: http://www.elmme-mailer.org/elm-ME+2.5/PLalpha50br/elm-ME+2.5.PLalpha50a.patch.gz >

    SUMMARY: This patch fixes "frm", "newmail" and "readmsg"
    -commands crash on startup when prepare_read_folder() is called.


    This patch is agaist Elm ME+ 2.5 PLalpha50

    For applying thich patch use (on directory where Configure is)

    patch -p1 < {this-file}

    ------------------------------------------------------------------------
    Index: elmME+.2.5.alpha50a-cvs/hdrs/patchlevel.h
    Prereq: 1590000000
    *** elmME+.2.5.alpha50/hdrs/patchlevel.h Thu Jun 6 21:00:46 2019
    --- elmME+.2.5.alpha50a-cvs/hdrs/patchlevel.h Thu Jun 13 21:26:58 2019 ***************
    *** 1,8 ****
    ! #define PATCHLEVEL "alpha50"
    /* Used by Configure:
    ! SHAREDTAG: .1.1.50
    */
    ! #define LAST_REPORT_TIME 1590000000
    #define BUG_REPORT_ADDR "Kari Hurtta <elm@elmme-mailer.org>"
    #define VERS_DATE "Jun 2019" /* for elm -v option */
    #define WHAT_STRING \
    --- 1,8 ----
    ! #define PATCHLEVEL "alpha50a"
    /* Used by Configure:
    ! SHAREDTAG: .1.1.50.1
    */
    ! #define LAST_REPORT_TIME 1591000000
    #define BUG_REPORT_ADDR "Kari Hurtta <elm@elmme-mailer.org>"
    #define VERS_DATE "Jun 2019" /* for elm -v option */
    #define WHAT_STRING \
    Index: elmME+.2.5.alpha50a-cvs/README.ME+
    *** elmME+.2.5.alpha50/README.ME+ Thu Jun 6 21:00:46 2019
    --- elmME+.2.5.alpha50a-cvs/README.ME+ Thu Jun 13 21:26:58 2019 ***************
    *** 1,4 ****
    ! $Header: /home/users/hurtta/cvsroot/mail/elmme+/README.ME+,v 2.928 2019/06/03 16:21:04 hurtta Exp $

    Version Elm2.4ME+ PL0 (25) is based
  • From Kari Hurtta@21:1/5 to All on Wed Jun 26 19:15:46 2019
    Experimental RPM spec file for ELM ME+ 2.5 PLalpha50a
    exists on <URL: http://www.elmme-mailer.org/rpm/elm-ME+2.5.html >
    directory.

    Files are following

    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha50a-1.spec
    RPM spec file
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha50a-1.spec.elm-key-2018.sig
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha50a-1.spec.sig
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha50a-1.fdr19.src.rpm
    Source rpm

    ** Notes

    - rpmbuild -ba elm-ME+2.5.alpha50a-1.spec or rpmbuild --rebuild
    elm-ME+2.5.alpha50a-1.fdr19.src.rpm warns that "prereq is
    deprecated", but that is required on Linux Mandrake release 7.2
    where older rpm -package is build.
    - elm-ME+2.5.alpha50a-1.fdr19.src.rpm is signed internally with GPG
    key elm.key.2018.asc (44FC796B 2018-12-01).

    * Compiled on Linux Mandrake release 7.2
    (Linux 2.2, glibc 2.1, Sendmail 8.13)

    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha50a-1.mdk7.2.i686.rpm
    Package elm binary RPM build on Linux Mandrake release 7.2
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha50a-1.mdk7.2.i686.rpm.sig
    - http://www.elmme-mailer.org/rpm/elm-mod-ME+2.5.alpha50a-1.mdk7.2.i686.rpm
    Package elm-mod binary RPM build on Linux Mandrake release 7.2
    - http://www.elmme-mailer.org/rpm/elm-tls-ME+2.5.alpha50a-1.mdk7.2.i686.rpm
    Package elm-tls binary RPM build on Linux Mandrake release 7.2
    - http://www.elmme-mailer.org/rpm/elm-tls-ME+2.5.alpha50a-1.mdk7.2.i686.rpm.sig

    ** Notes

    - elm-ME+2.5.alpha50a-1.mdk7.2.i686.rpm and
    elm-*-ME+2.5.alpha50a-1.mdk7.2.i686.rpm are signed internally with
    GPG key elm.key.2018.asc (44FC796B 2018-12-01).
    - elm-ME+2.5.alpha50a-1.mdk7.2.i686.rpm is compiled agaist Sendmail
    8.13 (not from Mandrake distribution).
    - elm-mod-ME+2.5.alpha50a-1.mdk7.2.i686.rpm does not include
    libelmme-resolv.so.
    - elm-tls-ME+2.5.alpha50a-1.mdk7.2.i686.rpm do not load/work on
    Mandrake 7.2, because openssl library misses RAND_egd_bytes
    function.

    * Compiled on Fedora release 19
    (Linux 3.14, glibc 2.17, Sendmail 8.14)

    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha50a-1.fdr19.i686.rpm
    Package elm binary RPM build on Fedora release 19
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha50a-1.fdr19.i686.rpm.sig
    - http://www.elmme-mailer.org/rpm/elm-debuginfo-ME+2.5.alpha50a-1.fdr19.i686.rpm
    Package elm-debuginfo binary RPM build on Fedora release 19
    - http://www.elmme-mailer.org/rpm/elm-mod-ME+2.5.alpha50a-1.fdr19.i686.rpm
    Package elm-mod binary RPM build on Fedora release 19
    - http://www.elmme-mailer.org/rpm/elm-mod-ME+2.5.alpha50a-1.fdr19.i686.rpm.sig
    - http://www.elmme-mailer.org/rpm/elm-tls-ME+2.5.alpha50a-1.fdr19.i686.rpm
    Package elm-tls binary RPM build on Fedora release 19
    - http://www.elmme-mailer.org/rpm/elm-tls-ME+2.5.alpha50a-1.fdr19.i686.rpm.sig

    ** Notes

    - elm-ME+2.5.alpha50a-1.fdr19.i686.rpm and
    elm-*-ME+2.5.alpha50a-1.fdr19.i686.rpm are signed internally with
    GPG key elm.key.2018.asc (44FC796B 2018-12-01).
    - elm-ME+2.5.alpha50a-1.spec do not have %package debuginfo, but
    rpmbuild -ba elm-ME+2.5.alpha50a-1.spec build
    elm-debuginfo-ME+2.5.alpha50a-1.fdr19.i686.rpm anyway.

    * Signatures

    {file}.sig PGP signature (old key pubkey.asc, EA5A2379 1996-04-23)
    {file}.elm-key-2018.sig GPG signature (key elm.key.2018.asc, 44FC796B 2018-12-01, expires: 2028-11-28)

    * Configuration

    Following files (if exists) are rewritten by elmconfwriter on
    installation:

    - /usr/local/lib/elm.rc
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.hashmarks

    Spec file compiles elm for binary distribution, so you must edit
    /usr/local/lib/elm.rc before using Elm ME+ 2.5. Following variables may
    need to be modified on elm.rc:

    - mailer
    - hostdomain (this is usually needed)
    - hostfullname
    - hostname (usually this is not needed)
    - mailname (default values is generated from other values)
    name-resolution (controls default values of hostdomain,
    hostfullname, hostname, mailname)

    For re-generation of following file, old information (if exists) is
    used:

    - /usr/local/lib/elm.rc

    WARNING: Check after installation that libraries are enabled. Global
    elm.rc values are:

    use-library =
    use-base-library = iconv
    use-config-library = resolv
    use-connect-library = tls resolv
    use-mailer-library = smtp resolv

    Note that libelmme-resolv.so does not compile on all distributions. In
    that case omit resolv from elm.rc.

    After editing global elm.rc run /usr/local/lib/elmrc-write -GI for
    fixing possible errors.

    On installation following existing files are merged with new values:

    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.hashmarks

    Old values from /usr/local/lib/aliases.text are converted to /usr/local/lib/elm.aliases and /usr/local/lib/aliases.text is renamed to /usr/local/lib/aliases.text.OLD.

    On installation new values without merging are written to following
    files:

    - /usr/local/lib/elm.aliases.NEW
    - /usr/local/lib/elm.mailinglists.NEW
    - /usr/local/lib/elm.mailservices.NEW
    - /usr/local/lib/elm.mimecharsets.NEW
    - /usr/local/lib/elm.mimetypes.NEW
    - /usr/local/lib/elm.terminalinfo.NEW
    - /usr/local/lib/elm.iso2022sets.NEW
    - /usr/local/lib/elm.hashmarks.NEW

    Package elm-mod includes libelmme-iconv.so and libelmme-smtp.so. If
    package elm-mod includes libelmme-resolv.so, this is noted. And package
    elm-tls includes libelmme-tls.so.

    Installation loses mailer = submission setting from global /usr/local/lib/elm.rc, because when elm package rewrites elm.rc,
    submission mailer is not available. It becomes from elm-mod package.

    However failed values of /usr/local/lib/elm.rc are saved to /usr/local/lib/elm.rc.old-values file during installation.

    Global setting mailer = submission is restored from /usr/local/lib/elm.rc.old-values file, when package elm-mod is
    installed.

    Also following directories are used:

    - /usr/local/lib/elm.map.txt/ (global setting map-text-dir =
    {lib}/elm.map.txt)
    - /usr/local/lib/elm.map.bin/ (global setting map-bin-dir =
    {lib}/elm.map.bin)
    - /usr/local/lib/elm.user.map/ (global setting user-map-dir =
    {lib}/elm.user.map)

    Hashmark EXAMPLE uses file /usr/local/lib/elm.user.map/elm.usermap.

    Elm ME+ 2.5 PLalpha50a changelog

    Changes on Elm ME+ 2.5 PLalpha50a compared with Elm ME+ 2.5 PLalpha50 ---------------------------------------------------------------------

    [ This patch is branch from the main line. ]

    SUMMARY: This patch fixes "frm", "newmail" and "readmsg"
    -commands crash on startup when
    prepare_read_folder() is called.

    - "newmail core dumps in elmME+.2.5.alpha50 on CentOS 7."
    Reported by: Noam G. Nudelman
    > Fixed crash on prepare_read_folder()
    when called from "frm", "newmail" or
    "readmsg".

    Changes on Elm ME+ 2.5 PLalpha50 compared with Elm ME+ 2.5 PLalpha49 --------------------------------------------------------------------

    SUMMARY: This release adds new magic numbers for
    JPG (EXIF), better reconnection handling
    for broken IMAP connections and 'Er'
    (reconnect) command. This release allows
    interrupting stalled connection with
    interrupt character (Ctrl-C) on new mail
    check and 'X' (Quick Exit) command. Other
    commands still are stuck if connection
    is stalled. Also some other changes and
    fixes are included.

    - Changed magic number of image/jpeg on
    lib/misc/mime_types.c

    RFC 2046 says: "An initial subtype is "jpeg" for the JPEG format
    using JFIF encoding [JPEG]."

    > Also adds Digital camera JPG using
    Exchangeable Image File Format (EXIF) as
    image/jpeg.

    - Exported wday_from_year_month_day()
    from lib/addr/outheaders.c
    - Changed that lib/mbox/imap.c generates
    real weekday name to From -separator line
    (was using "XXX" as weekday name).

    - Changed mbx_copy_envelope_pop() to use
    return_path_to_env_from_1() for generating From
    -separator address as mbx_copy_envelope_imap()
    is using.

    - Changed screen update on read_headers()

    - Changed header allocation on read_headers()
    - Added malloc_header_rec() and free_header_rec()
    to src/messages/header_alloc.c

    - Fixed handling of mails which arrive to
    IMAP mailbox when mailbox is read (opened).
    - Changed prototype of copy_envelope_end_folder(),
    mbx_copy_envelope_end_folder()
    - Changed parse_body_routine() on src/newmbox.c

    - If IMAP mailbox connection is broken,
    after reconnection different
    temp folder is used when mails
    are read from mailbox.
    * If different temp folder is used
    all mails are no longer included
    as new mails to mail listing with mails
    before connection was broken.
    - When POP connection is re$yncronized
    different temp folder is used.
    (POP mailbox also always reopen
    connection when mailbox is
    re$yncronized).
    - If messages are EXPUNGEd from IMAP
    folder, different temp folder is used
    when mail is re$yncronized.
    - If skipped mail is later loaded
    from IMAP folder, different temp folder
    is used when mail is re$yncronized.

    - Added 'Er' command for reconnect broken
    mailbox connections.
    - Added update_selected_counter(),
    found_disconnected(), ReconnectMailbox() and
    ReconnectMailboxPost() to src/reconnect.c

    - If IMAP / POP mailbox connection is
    broken, some hint from
    Use 'X' for Quick Exit
    XXX disconnected and failed. Use 'Er' for reconnecting or 'X' for Quick Exit
    XXX disconnected. Use 'Er' for reconnecting broken connection
    XXX failed. Use 'X' for Quick Exit
    is given, where XXX is some from
    POP mailbox
    IMAP mailbox
    IMAP folder
    Read-only IMAP folder
    > However re$yncronize command may try reconnect
    IMAP or POP mailbox connection.

    - Changed prototype of
    prepare_read_folder(), end_read_folder(),
    copy_envelope_folder(), sessionlock_folder(),
    open_folder_lock(), new_mail_check(),
    flush_folder()

    - Changed prototype of mbx_prepare_read_folder(),
    mbx_end_read_folder(), mbx_sessionlock_folder(),
    mbx_flush_folder(), mbx_flush_temp()
    - Added search_previous_header(),
    copy_previous_mail(), free_reconnect_mode(),
    malloc_reconnect_mode() to lib/mbox/mbox.c

    - Added
    unsigned int was_reconnected :1;
    unsigned int got_skipped_mail :1;
    to struct folder_info
    - Added
    int uidvalidity;
    unsigned int got_EXPUNGE :1;
    to struct IMAP_MBX

    - Changed prototype of end_edit_folder()
    - Changed prototype of mbx_end_edit_folder()

    - Changed sync_mbox(), usr1_signal(), usr2_signal(),
    resync(), visit_mailbox_loop(), change_file()
    - Added reconnect_mails() to src/newmbox.c

    - Changed prototype of newmbox_1()
    - Changed prototype of file_bytes()
    - Changed prototype of show_last_error()

    - Changed file_bytes() on lib/file_util.c

    - Fixed error message on check_mailfile_size()

    - Fixed error where re$yncronizing
    POP mailbox shows ridiculous
    large percents when loading mails.

    - Added sessionlock_create_tempfolder()
    to lib/mbox/mbox_generic.c
    - Added mbx_prepare_read_reconnect()
    to lib/mbox/remote_mbx.c
    - Changed mbx_sessionlock_pop(),
    mbx_sessionlock_spool(), mbx_sessionlock_imap()
    - Added mbx_comp_prev_hdr_folder(),
    mbx_update_prev_hdr_folder()
    - Added mbx_comp_prev_hdr_default(),
    mbx_update_prev_hdr_default () to
    lib/mbox/mbox_generic.c
    - Exported adjust_content_remaining from
    lib/mbox/localmbx.c
    - Added struct copy_previous_rs * reconnect_copy_previous
    to struct read_folder_state.
    - Changed copy_header_folder(),
    copy_body_folder(), copy_envelope_end_folder()
    on lib/mbox/mbox.c

    - Changed new_mail_on_folder(), new_mail_check(),
    main_messages_loop()

    - Moved addr_is_same() from src/messages/duplicate.c
    to lib/addr/duplicate.c as addr_list_is_same()
    - Added message_id_to_string() to
    lib/addr/message-id.c
    - Added references_to_string() to
    lib/addr/references.c

    - Fix for debug_message() on src/elm.c

    - Message
    Checking new mail...
    is shown on new mail check after
    0.5 second delay when checking remote mailbox
    (IMAP mailbox). Check may be cancelable with
    interrupt character (Ctrl-C) but remote
    mailbox connection may be disconnected.
    - Added start_imap_command_c(), imap_command_ok_c(),
    imap_clear_command_c() to lib/mbox/con_imap.c

    - Message
    Leaving mailbox ...
    is shown on eXiting main mailbox
    screen after 2 second delay if remote
    mailbox is stalled. Wait may be cancelable with
    interrupt character (Ctrl-C).
    - Changed prototype of free_mailbox(), free_storage(),
    leave_old_folder(), close_folder(),
    close_connection(), free_connection(),
    free_mailbox(), free_all_mailboxes(),
    free_connection(), close_cached_connections()
    - Changed prototype of mbx_close_folder(),
    cache_close_connection(), mt_free_mailbox(),
    mbx_free_folder()

    - Take account artificial "From " separator line
    when estimating IMAP mailfile size (temp
    folder size). This affects percent display
    when reading mailbox.

    New files:
    lib/addr/duplicate.c
    src/reconnect.c

    Warnings
    --------

    - Not compiled with MMDF support defined, so probably it doesn't
    work (or even compile).

    - This has not been tested much so there can be bad bugs.

    Bug reports to: Kari E. Hurtta <elm@elmme-mailer.org>
    (was hurtta+elm@posti.FMI.FI)

    - Internationalized (ie. non-ASCII) domain names are not supported.

    - Support for multipart/signed and multipart/encrypted (specially:
    support for PGP/MIME) only in reading side. There is no support
    for attachments with multipart/encrypted.

    - HP's shoftkeys are no longer supported

    - DECNET addresses like host::user may be interpreted as phrase
    of group syntax or as route of source routed address.

    - Header editing screen now uses addresses in form phrase <address>,
    but because it does not require using of comma (,), multiword
    phrases must be entered in quotes.

    For example: "Kari Hurtta" <hurtta>

    - If address includes <> or comments (), they are not aliased
    expanded. So aliases must be entered as bare words.

    - Addresses given as arguments to elm command should be given
    as one address per argument. Giving of sevaral addresses per
    one argument causes that address is misparsed if header is
    edited on header editing screen.

    That is:

    Use: elm '"Kari Hurtta" <hurtta>' 'Admin <root>'

    Don't use: elm 'Kari Hurtta <hurtta>, Admin <root>'

    - p)rint command acts as P)rint text -command. So it
    is currently quite useless.
    p)rint command does that via readmsg -command. However
    P)rint text does actually same (without readmsg).

    - Some Linux libraries does not follow $LC_CTYPE when program is
    setgid. Net result is that your locale is always C. That is
    visible that $LC_CTYPE does not effect to locale printed by
    'elm -vvvvv':

    Locale (LC_CTYPE): C
    Display character-set: US-ASCII
    Sending character-set: US-ASCII

    - All refrences iso2022 maps are parsed and read to memory.
    This may cause quite big memory consumption specially because
    eastern (multibyte) sets tend to be lot of characters. That
    mapping information should be shared between processes to
    reduce memory consuption.

    - If display charset is produced by using mapping from locale
    to charset where charset definition is later invalidated
    ("removed") by setting explicit compatcharsets on user's
    .elm/elmrc, that may cause PANIC on elm's internal pager
    or other problems. Invalidation happens if display charset
    is on implicit compatcharsets list (because of charset
    definition), but does not have explicit compatcharsets list
    given by user.

    - Neither Unicode didirectional algorithm nor Right-Left scripts
    are supported.

    - In some situations two Status headers may be generated two
    Status headers -- one by IMAP deamon and one from APPENDed
    message.

    - When APPENDing message to IMAP folder (which is normal UNIX
    mailbox format) original "From " separator line can not be
    preserved -- specially it is not possible to pass envelope
    sender address.

    - For UTF-8 charset Elm only knows printable characters from
    Latin/1 range, if unicode database (see elmrc option "unidata")
    is not loaded.

    - For using of ISO2022 character sets it is required that mapping
    them to unicode is know -- otherwise Elm ME+ does not know which
    characters are printable.

    - UTF-16 surrogate pairs (D800-DFFF) are not supported on UTF-7
    charset.

    - Mixing of names using IMAP naming convention
    (imap-naming-convention = yes)
    and names using imap-charset does not work very well...

    - " Regarding my message (8 Aug 2000) regarding 'newmail' on
    AIX 4.3.3 in an 'aixterm' window and the 'aixterm' did not
    close, indeed the problem was NOT related to 'newmail' but an
    AIX bug.

    IBM has release a patch, and the 'aixterm' in AIX 4.3.3 must
    be update with fileset X11.apps.aixterm.4.3.3.26 (PTF
    U473920) is solved to problem."
    From: Noam G. Nudelman <noam@mail.biu.ac.il>

    - File /usr/share/locale/fi/charset gives charset name utf-8 on
    Linux Mandrake 7.2. This causes that Configure generates
    mapping
    fi utf-8
    to elm.mimecharsets. However that seems to have
    incorrect mapping. You may want change this to
    fi ISO-8859-1

    ( however nl_langinfo(CODESET) gives charset ISO-8859-15
    but look following entry. )

    - Locale 'fi' seems to have charset ISO-8859-15 according
    of nl_langinfo(CODESET) on Mandrake Linux 7.2 (and probaly
    others with same glibc version). However for example gnome
    terminal uses font
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-1
    and not
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-15

    Also KDE's konsole program seems use iso8859-1 character set
    although locale is 'fi' which should have ISO-8859-15 according
    of nl_langinfo (selecting "unicode" from menu seems fix that.)

    Because of mismatch more correct locale is fi_FI.88591, which gives
    ISO-8859-1 character set according of nl_langinfo(CODESET).

    ( Locale seems come from /etc/sysconfig/i18n or $HOME/.i18n )

    > To enable handling of ISO-8859-1 and ISO-8859-15 character sets
    on linux console, read comments from doc/terminal.info file.

    - Mandrake Linux 7.2 seems set LD_PRELOAD to load
    /usr/lib/libxalflaunch.so.0. That (xalf-0.4-2mdk) causes that
    elm to crash on startup (actually before main() is reached.)

    - kterm on Mandrake Linux 7.2 seems have (at least on my test
    environment) seems get bad fontlist (*VT100*fontList) which
    gives bad font for iso8859-1 -- therefore ISO-8859-1 characters
    do not work.

    ("xrdb -query" seems report resource with name "*fontList"
    -- that probably overrides "*VT100*fontList" which comes
    from /usr/lib/X11/app-defaults/KTerm )

    - Also note that initially kterm does NOT default to
    ISO-8859-1 -- therefore ISO-8859-1 works only when
    elm explicity switch to ISO-8859-1 (for example
    with 'elm -D ISO-8859-1')

    - When assembling message/partial MIME (RFC 2046)
    requires that all headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are copied from
    initial enclosing message to assembled message. It also
    requires that headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are ignored and
    dropped from enclosed message.

    For now we copy only Received: -headers. Dropping extra
    headers from enclosed message makes assembly more
    complicated (and dropping of Received: -headers
    from enclosed message do not make sense.)

    - mailer=sendmail; verify=yes works only when sendmail
    is installed as setuid root. Use mailer=submission instead.
    * Starting from sendmail 8.12 sendmail is normally
    installed as setgid smmsp and not as setuid root.
    - However error message is printed only if
    verify-local-address=yes is also set

    - IMAP connection is stalled some times. Reason is unknown.

    - From name option (-f) on fastmail is currently broken.

    Collector of these patches
    --------------------------

    Kari Hurtta <elm@elmme-mailer.org>
    Kari Hurtta <hurtta+elm@siilo.FMI.FI>

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Kari Hurtta@21:1/5 to All on Fri Jun 28 09:49:05 2019
    Experimental DEB generator script for ELM ME+ 2.5 PLalpha50a
    exists on <URL: http://www.elmme-mailer.org/deb/elm-ME+2.5.html >
    directory.

    Files are following

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha50a-1.gen_deb
    DEB generator script
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha50a-1.gen_deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha50a-1.gen_deb.sig

    A command

    elm-ME+2.5.alpha50a-1.gen_deb {packager}

    generates package elmme with version 1.1.50.1-1.{distribution}.

    A command

    elm-ME+2.5.alpha50a-1.gen_deb --nonew {packager}

    generates package elm with version ME+2.5.alpha50a-1.{distribution}.

    Both commands produce package with filename elm-ME+2.5.alpha50a-1.{distribution}.{arch}.deb.

    Module libelmme-resolv.so is included for all distributions below, but libelmme-resolv.so does not implement interruptible DNS queries on all distributions.

    == Old package names, i386

    Package elm with version ME+2.5.alpha50a-1.{distribution} and
    architecture i386.

    * Compiled on Debian GNU/Linux 3.1
    (Linux 2.4, glibc 2.3, Exim 3.36)

    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha50a-1.Debian3.1.i386.deb
    Package elm binary DEB build on Debian GNU/Linux 3.1
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha50a-1.Debian3.1.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha50a-1.Debian3.1.i386.deb.sig

    Module libelmme-resolv.so does not implement interruptible DNS queries
    on Debian GNU/Linux 3.1.

    * Compiled on Ubuntu 6.06.2 LTS
    (Linux 2.6, glibc 2.3, Sendmail 8.13)

    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha50a-1.Ubuntu6.06.i386.deb
    Package elm binary DEB build on Ubuntu 6.06.2 LTS
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha50a-1.Ubuntu6.06.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha50a-1.Ubuntu6.06.i386.deb.sig

    * Compiled on Ubuntu 10.04.4 LTS
    (Linux 2.6, glibc 2.11, Sendmail 8.14)

    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha50a-1.Ubuntu10.04.i386.deb
    Package elm binary DEB build on Ubuntu 10.04.4 LTS
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha50a-1.Ubuntu10.04.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha50a-1.Ubuntu10.04.i386.deb.sig

    == New package names, i386

    Package elmme with version 1.1.50.1-1.{distribution} and architecture
    i386.

    * Compiled on Ubuntu 10.04.4 LTS
    (Linux 2.6, glibc 2.11, Sendmail 8.14)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha50a-1.Ubuntu10.04.i386.deb
    Package elmme binary DEB build on Ubuntu 10.04.4 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha50a-1.Ubuntu10.04.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha50a-1.Ubuntu10.04.i386.deb.sig

    * Compiled on Ubuntu 14.04.5 LTS
    (Linux 4.4, glibc 2.19, no MTA)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha50a-1.Ubuntu14.04.i386.deb
    Package elmme binary DEB build on Ubuntu 14.04.5 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha50a-1.Ubuntu14.04.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha50a-1.Ubuntu14.04.i386.deb.sig

    * Compiled on Ubuntu 16.04.6 LTS
    (Linux 4.4, glibc 2.23, no MTA)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha50a-1.Ubuntu16.04.i386.deb
    Package elmme binary DEB build on Ubuntu 16.04.6 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha50a-1.Ubuntu16.04.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha50a-1.Ubuntu16.04.i386.deb.sig

    == New package names, amd64 (x86_64)

    Package elmme with version 1.1.50.1-1.{distribution} and architecture
    amd64 (also known as x86_64).

    * Compiled on Ubuntu 16.04.6 LTS
    (Linux 4.4, glibc 2.23, Sendmail 8.15)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha50a-1.Ubuntu16.04.amd64.deb
    Package elmme binary DEB build on Ubuntu 16.04.6 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha50a-1.Ubuntu16.04.amd64.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha50a-1.Ubuntu16.04.amd64.deb.sig

    == Signatures

    {file}.sig PGP signature (old key pubkey.asc, EA5A2379 1996-04-23)
    {file}.elm-key-2018.sig GPG signature (key elm.key.2018.asc, 44FC796B 2018-12-01, expires: 2028-11-28)

    == Configuration

    Following files (if exists) are rewritten by elmconfwriter on
    installation:

    - /usr/local/lib/elm.rc
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.hashmarks

    Deb generator script compiles elm for binary distribution, so you must
    edit /usr/local/lib/elm.rc before using Elm ME+ 2.5. Following
    variables may need to be modified on elm.rc:

    - mailer
    - hostdomain (this is usually needed)
    - hostfullname
    - hostname (usually this is not needed)
    - mailname (default values is generated from other values)
    - name-resolution (controls default values of hostdomain,
    hostfullname, hostname, mailname)

    By default first value for mailname is read from /etc/mailname file.

    For re-generation of following file, old information (if exists) is
    used:

    - /usr/local/lib/elm.rc

    WARNING: Check after installation that libraries are enabled. Global
    elm.rc values are:

    use-library =
    use-base-library = iconv
    use-config-library = resolv
    use-connect-library = tls resolv
    use-mailer-library = smtp resolv

    After editing global elm.rc run /usr/local/lib/elmrc-write -GI for
    fixing possible errors.

    On installation following existing files are merged with new values:

    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.hashmarks

    Old values from /usr/local/lib/aliases.text are converted to /usr/local/lib/elm.aliases and /usr/local/lib/aliases.text is renamed to /usr/local/lib/aliases.text.OLD.

    On installation new values without merging are written to following
    files:

    - /usr/local/lib/elm.aliases.NEW
    - /usr/local/lib/elm.mailinglists.NEW
    - /usr/local/lib/elm.mailservices.NEW
    - /usr/local/lib/elm.mimecharsets.NEW
    - /usr/local/lib/elm.mimetypes.NEW
    - /usr/local/lib/elm.terminalinfo.NEW
    - /usr/local/lib/elm.iso2022sets.NEW
    - /usr/local/lib/elm.hashmarks.NEW

    Also following directories are used:

    - /usr/local/lib/elm.map.txt/ (global setting map-text-dir =
    {lib}/elm.map.txt)
    - /usr/local/lib/elm.map.bin/ (global setting map-bin-dir =
    {lib}/elm.map.bin)
    - /usr/local/lib/elm.user.map/ (global setting user-map-dir =
    {lib}/elm.user.map)

    Hashmark EXAMPLE uses file /usr/local/lib/elm.user.map/elm.usermap.

    A command

    elm-{version}-{release}.gen_deb {packager}

    generates package elmme with version {library-version}-{release}.{distribution}. Note that a resulted
    filename of package is still elm-{version}-{release}.{arch}.deb. This
    version number is same than on files /usr/local/lib/libelmme-{module}.so.{library-version}. A filename of
    package is related to used source archive name, which is elm-{version}-{release}.tar.gz.

    A command

    elm-{version}-{release}.gen_deb --nonew {packager}

    generates package elm with version {version}-{release}.{distribution}.
    Also on this case a resulted filename of package is elm-{version}-{release}.{arch}.deb.

    Elm ME+ 2.5 PLalpha50a changelog

    Changes on Elm ME+ 2.5 PLalpha50a compared with Elm ME+ 2.5 PLalpha50 ---------------------------------------------------------------------

    [ This patch is branch from the main line. ]

    SUMMARY: This patch fixes "frm", "newmail" and "readmsg"
    -commands crash on startup when
    prepare_read_folder() is called.

    - "newmail core dumps in elmME+.2.5.alpha50 on CentOS 7."
    Reported by: Noam G. Nudelman
    > Fixed crash on prepare_read_folder()
    when called from "frm", "newmail" or
    "readmsg".

    Changes on Elm ME+ 2.5 PLalpha50 compared with Elm ME+ 2.5 PLalpha49 --------------------------------------------------------------------

    SUMMARY: This release adds new magic numbers for
    JPG (EXIF), better reconnection handling
    for broken IMAP connections and 'Er'
    (reconnect) command. This release allows
    interrupting stalled connection with
    interrupt character (Ctrl-C) on new mail
    check and 'X' (Quick Exit) command. Other
    commands still are stuck if connection
    is stalled. Also some other changes and
    fixes are included.

    - Changed magic number of image/jpeg on
    lib/misc/mime_types.c

    RFC 2046 says: "An initial subtype is "jpeg" for the JPEG format
    using JFIF encoding [JPEG]."

    > Also adds Digital camera JPG using
    Exchangeable Image File Format (EXIF) as
    image/jpeg.

    - Exported wday_from_year_month_day()
    from lib/addr/outheaders.c
    - Changed that lib/mbox/imap.c generates
    real weekday name to From -separator line
    (was using "XXX" as weekday name).

    - Changed mbx_copy_envelope_pop() to use
    return_path_to_env_from_1() for generating From
    -separator address as mbx_copy_envelope_imap()
    is using.

    - Changed screen update on read_headers()

    - Changed header allocation on read_headers()
    - Added malloc_header_rec() and free_header_rec()
    to src/messages/header_alloc.c

    - Fixed handling of mails which arrive to
    IMAP mailbox when mailbox is read (opened).
    - Changed prototype of copy_envelope_end_folder(),
    mbx_copy_envelope_end_folder()
    - Changed parse_body_routine() on src/newmbox.c

    - If IMAP mailbox connection is broken,
    after reconnection different
    temp folder is used when mails
    are read from mailbox.
    * If different temp folder is used
    all mails are no longer included
    as new mails to mail listing with mails
    before connection was broken.
    - When POP connection is re$yncronized
    different temp folder is used.
    (POP mailbox also always reopen
    connection when mailbox is
    re$yncronized).
    - If messages are EXPUNGEd from IMAP
    folder, different temp folder is used
    when mail is re$yncronized.
    - If skipped mail is later loaded
    from IMAP folder, different temp folder
    is used when mail is re$yncronized.

    - Added 'Er' command for reconnect broken
    mailbox connections.
    - Added update_selected_counter(),
    found_disconnected(), ReconnectMailbox() and
    ReconnectMailboxPost() to src/reconnect.c

    - If IMAP / POP mailbox connection is
    broken, some hint from
    Use 'X' for Quick Exit
    XXX disconnected and failed. Use 'Er' for reconnecting or 'X' for Quick Exit
    XXX disconnected. Use 'Er' for reconnecting broken connection
    XXX failed. Use 'X' for Quick Exit
    is given, where XXX is some from
    POP mailbox
    IMAP mailbox
    IMAP folder
    Read-only IMAP folder
    > However re$yncronize command may try reconnect
    IMAP or POP mailbox connection.

    - Changed prototype of
    prepare_read_folder(), end_read_folder(),
    copy_envelope_folder(), sessionlock_folder(),
    open_folder_lock(), new_mail_check(),
    flush_folder()

    - Changed prototype of mbx_prepare_read_folder(),
    mbx_end_read_folder(), mbx_sessionlock_folder(),
    mbx_flush_folder(), mbx_flush_temp()
    - Added search_previous_header(),
    copy_previous_mail(), free_reconnect_mode(),
    malloc_reconnect_mode() to lib/mbox/mbox.c

    - Added
    unsigned int was_reconnected :1;
    unsigned int got_skipped_mail :1;
    to struct folder_info
    - Added
    int uidvalidity;
    unsigned int got_EXPUNGE :1;
    to struct IMAP_MBX

    - Changed prototype of end_edit_folder()
    - Changed prototype of mbx_end_edit_folder()

    - Changed sync_mbox(), usr1_signal(), usr2_signal(),
    resync(), visit_mailbox_loop(), change_file()
    - Added reconnect_mails() to src/newmbox.c

    - Changed prototype of newmbox_1()
    - Changed prototype of file_bytes()
    - Changed prototype of show_last_error()

    - Changed file_bytes() on lib/file_util.c

    - Fixed error message on check_mailfile_size()

    - Fixed error where re$yncronizing
    POP mailbox shows ridiculous
    large percents when loading mails.

    - Added sessionlock_create_tempfolder()
    to lib/mbox/mbox_generic.c
    - Added mbx_prepare_read_reconnect()
    to lib/mbox/remote_mbx.c
    - Changed mbx_sessionlock_pop(),
    mbx_sessionlock_spool(), mbx_sessionlock_imap()
    - Added mbx_comp_prev_hdr_folder(),
    mbx_update_prev_hdr_folder()
    - Added mbx_comp_prev_hdr_default(),
    mbx_update_prev_hdr_default () to
    lib/mbox/mbox_generic.c
    - Exported adjust_content_remaining from
    lib/mbox/localmbx.c
    - Added struct copy_previous_rs * reconnect_copy_previous
    to struct read_folder_state.
    - Changed copy_header_folder(),
    copy_body_folder(), copy_envelope_end_folder()
    on lib/mbox/mbox.c

    - Changed new_mail_on_folder(), new_mail_check(),
    main_messages_loop()

    - Moved addr_is_same() from src/messages/duplicate.c
    to lib/addr/duplicate.c as addr_list_is_same()
    - Added message_id_to_string() to
    lib/addr/message-id.c
    - Added references_to_string() to
    lib/addr/references.c

    - Fix for debug_message() on src/elm.c

    - Message
    Checking new mail...
    is shown on new mail check after
    0.5 second delay when checking remote mailbox
    (IMAP mailbox). Check may be cancelable with
    interrupt character (Ctrl-C) but remote
    mailbox connection may be disconnected.
    - Added start_imap_command_c(), imap_command_ok_c(),
    imap_clear_command_c() to lib/mbox/con_imap.c

    - Message
    Leaving mailbox ...
    is shown on eXiting main mailbox
    screen after 2 second delay if remote
    mailbox is stalled. Wait may be cancelable with
    interrupt character (Ctrl-C).
    - Changed prototype of free_mailbox(), free_storage(),
    leave_old_folder(), close_folder(),
    close_connection(), free_connection(),
    free_mailbox(), free_all_mailboxes(),
    free_connection(), close_cached_connections()
    - Changed prototype of mbx_close_folder(),
    cache_close_connection(), mt_free_mailbox(),
    mbx_free_folder()

    - Take account artificial "From " separator line
    when estimating IMAP mailfile size (temp
    folder size). This affects percent display
    when reading mailbox.

    New files:
    lib/addr/duplicate.c
    src/reconnect.c

    Warnings
    --------

    - Not compiled with MMDF support defined, so probably it doesn't
    work (or even compile).

    - This has not been tested much so there can be bad bugs.

    Bug reports to: Kari E. Hurtta <elm@elmme-mailer.org>
    (was hurtta+elm@posti.FMI.FI)

    - Internationalized (ie. non-ASCII) domain names are not supported.

    - Support for multipart/signed and multipart/encrypted (specially:
    support for PGP/MIME) only in reading side. There is no support
    for attachments with multipart/encrypted.

    - HP's shoftkeys are no longer supported

    - DECNET addresses like host::user may be interpreted as phrase
    of group syntax or as route of source routed address.

    - Header editing screen now uses addresses in form phrase <address>,
    but because it does not require using of comma (,), multiword
    phrases must be entered in quotes.

    For example: "Kari Hurtta" <hurtta>

    - If address includes <> or comments (), they are not aliased
    expanded. So aliases must be entered as bare words.

    - Addresses given as arguments to elm command should be given
    as one address per argument. Giving of sevaral addresses per
    one argument causes that address is misparsed if header is
    edited on header editing screen.

    That is:

    Use: elm '"Kari Hurtta" <hurtta>' 'Admin <root>'

    Don't use: elm 'Kari Hurtta <hurtta>, Admin <root>'

    - p)rint command acts as P)rint text -command. So it
    is currently quite useless.
    p)rint command does that via readmsg -command. However
    P)rint text does actually same (without readmsg).

    - Some Linux libraries does not follow $LC_CTYPE when program is
    setgid. Net result is that your locale is always C. That is
    visible that $LC_CTYPE does not effect to locale printed by
    'elm -vvvvv':

    Locale (LC_CTYPE): C
    Display character-set: US-ASCII
    Sending character-set: US-ASCII

    - All refrences iso2022 maps are parsed and read to memory.
    This may cause quite big memory consumption specially because
    eastern (multibyte) sets tend to be lot of characters. That
    mapping information should be shared between processes to
    reduce memory consuption.

    - If display charset is produced by using mapping from locale
    to charset where charset definition is later invalidated
    ("removed") by setting explicit compatcharsets on user's
    .elm/elmrc, that may cause PANIC on elm's internal pager
    or other problems. Invalidation happens if display charset
    is on implicit compatcharsets list (because of charset
    definition), but does not have explicit compatcharsets list
    given by user.

    - Neither Unicode didirectional algorithm nor Right-Left scripts
    are supported.

    - In some situations two Status headers may be generated two
    Status headers -- one by IMAP deamon and one from APPENDed
    message.

    - When APPENDing message to IMAP folder (which is normal UNIX
    mailbox format) original "From " separator line can not be
    preserved -- specially it is not possible to pass envelope
    sender address.

    - For UTF-8 charset Elm only knows printable characters from
    Latin/1 range, if unicode database (see elmrc option "unidata")
    is not loaded.

    - For using of ISO2022 character sets it is required that mapping
    them to unicode is know -- otherwise Elm ME+ does not know which
    characters are printable.

    - UTF-16 surrogate pairs (D800-DFFF) are not supported on UTF-7
    charset.

    - Mixing of names using IMAP naming convention
    (imap-naming-convention = yes)
    and names using imap-charset does not work very well...

    - " Regarding my message (8 Aug 2000) regarding 'newmail' on
    AIX 4.3.3 in an 'aixterm' window and the 'aixterm' did not
    close, indeed the problem was NOT related to 'newmail' but an
    AIX bug.

    IBM has release a patch, and the 'aixterm' in AIX 4.3.3 must
    be update with fileset X11.apps.aixterm.4.3.3.26 (PTF
    U473920) is solved to problem."
    From: Noam G. Nudelman <noam@mail.biu.ac.il>

    - File /usr/share/locale/fi/charset gives charset name utf-8 on
    Linux Mandrake 7.2. This causes that Configure generates
    mapping
    fi utf-8
    to elm.mimecharsets. However that seems to have
    incorrect mapping. You may want change this to
    fi ISO-8859-1

    ( however nl_langinfo(CODESET) gives charset ISO-8859-15
    but look following entry. )

    - Locale 'fi' seems to have charset ISO-8859-15 according
    of nl_langinfo(CODESET) on Mandrake Linux 7.2 (and probaly
    others with same glibc version). However for example gnome
    terminal uses font
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-1
    and not
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-15

    Also KDE's konsole program seems use iso8859-1 character set
    although locale is 'fi' which should have ISO-8859-15 according
    of nl_langinfo (selecting "unicode" from menu seems fix that.)

    Because of mismatch more correct locale is fi_FI.88591, which gives
    ISO-8859-1 character set according of nl_langinfo(CODESET).

    ( Locale seems come from /etc/sysconfig/i18n or $HOME/.i18n )

    > To enable handling of ISO-8859-1 and ISO-8859-15 character sets
    on linux console, read comments from doc/terminal.info file.

    - Mandrake Linux 7.2 seems set LD_PRELOAD to load
    /usr/lib/libxalflaunch.so.0. That (xalf-0.4-2mdk) causes that
    elm to crash on startup (actually before main() is reached.)

    - kterm on Mandrake Linux 7.2 seems have (at least on my test
    environment) seems get bad fontlist (*VT100*fontList) which
    gives bad font for iso8859-1 -- therefore ISO-8859-1 characters
    do not work.

    ("xrdb -query" seems report resource with name "*fontList"
    -- that probably overrides "*VT100*fontList" which comes
    from /usr/lib/X11/app-defaults/KTerm )

    - Also note that initially kterm does NOT default to
    ISO-8859-1 -- therefore ISO-8859-1 works only when
    elm explicity switch to ISO-8859-1 (for example
    with 'elm -D ISO-8859-1')

    - When assembling message/partial MIME (RFC 2046)
    requires that all headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are copied from
    initial enclosing message to assembled message. It also
    requires that headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are ignored and
    dropped from enclosed message.

    For now we copy only Received: -headers. Dropping extra
    headers from enclosed message makes assembly more
    complicated (and dropping of Received: -headers
    from enclosed message do not make sense.)

    - mailer=sendmail; verify=yes works only when sendmail
    is installed as setuid root. Use mailer=submission instead.
    * Starting from sendmail 8.12 sendmail is normally
    installed as setgid smmsp and not as setuid root.
    - However error message is printed only if
    verify-local-address=yes is also set

    - IMAP connection is stalled some times. Reason is unknown.

    - From name option (-f) on fastmail is currently broken.

    Collector of these patches
    --------------------------

    Kari Hurtta <elm@elmme-mailer.org>
    Kari Hurtta <hurtta+elm@siilo.FMI.FI>

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Kari Hurtta@21:1/5 to All on Tue Feb 11 20:01:57 2020
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha51.0

    Elm ME+ 2.5 PLalpha51

    Before applying this patch catenate parts 1 - 6 first.
    Also it should be possible to apply parts 1 - 6
    individually.

    Undo Elm ME+ 2.5 PLalpha50a patch before applying
    this patch.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha50

    ====================================== ( part 0/6 ) =========
    Elm ME+ 2.5 PLalpha51

    Undo Elm ME+ 2.5 PLalpha50a patch before applying this patch.

    - Is available with
    <URL: http://www.elmme-mailer.org/elm-ME+2.5.PLalpha51.patch.gz >
    and <URL: http://www.elmme-mailer.org/elm-ME+2.5.alpha51.7f66dac3d5980f20f22cd3087d23c858.tar.gz >
    via http.

    - Is available with
    <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.PLalpha51.patch.gz >
    and <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.alpha51.7f66dac3d5980f20f22cd3087d23c858.tar.gz >
    via https.

    - Is available on ftp.funet.fi
    via anonymous ftp
    directory pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/

    files elm-ME+2.5.PLalpha51.patch.gz
    and elm-ME+2.5.alpha51.7f66dac3d5980f20f22cd3087d23c858.tar.gz

    or is available with
    <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha51.patch.gz >
    and <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.alpha51.7f66dac3d5980f20f22cd3087d23c858.tar.gz >
    via https.

    SUMMARY: This release collects patch Elm ME+ 2.5 PLalpha50a,
    fixes crash when mailbox is opened with -Oimaps://...
    option, supports IMAP quotas (RFC 2087), delays
    deletion of temp files used by intern mailcap,
    if view command completes too fast. New elmrc options
    are "show-mail-quota" and "mailcap-tempfile-lifetime".
    This releases adds new command 'Eu' to show mail quota
    (not affected by elmrc option "show-mail-quota").
    Also some other changes and fixes are included.

    Changes on Elm ME+ 2.5 PLalpha51 compared with Elm ME+ 2.5 PLalpha50 --------------------------------------------------------------------

    Undo Elm ME+ 2.5 PLalpha50a patch before applying this patch.

    SUMMARY: This release collects patch Elm ME+ 2.5 PLalpha50a,
    fixes crash when mailbox is opened with -Oimaps://...
    option, supports IMAP quotas (RFC 2087), delays
    deletion of temp files used by intern mailcap,
    if view command completes too fast. New elmrc options
    are "show-mail-quota" and "mailcap-tempfile-lifetime".
    This releases adds new command 'Eu' to show mail quota
    (not affected by elmrc option "show-mail-quota").
    Also some other changes and fixes are included.

    - "newmail core dumps in elmME+.2.5.alpha50 on CentOS 7."
    Reported by: Noam G. Nudelman
    > Fixed crash on prepare_read_folder()
    when called from "frm", "newmail" or
    "readmsg".

    - Small fix for span_line() and span_words()
    on src/pager/span_line.c
    - Small fix for span_helper()
    on src/pager/span_range.c

    - Fixed error where opening folder with
    elm -Oimaps://username@server/INBOX
    produces

    SCREEN PANIC in .../src/screen/menu_param.c:30:mp_lookup_any1
    >>>Bad type
    Call stack: B7514D11 812D83C 812D970 813AF41 813761C
    continues: 8105015 812FB88 8130EBA 8119377 80C3D5F
    continues: 80C5AF3 809F466 B72B5AF3 805EE91
    backtrace:
    /usr/local/lib/libelmme-base.so.1.1.50.1(panic+0x180)[0xb7514d11]
    elm[0x812d83c]
    elm(mp_lookup_integer+0x26)[0x812d970]
    elm(mc_screen_print_mbx_line+0x44)[0x813af41]
    elm(mcommon_screen_print_menu_line+0x3b)[0x813761c]
    elm(hdr_show_current+0x154)[0x8105015]
    elm[0x812fb88]
    elm(menu_header_change+0x1fc)[0x8130eba]
    elm(get_page+0xf1)[0x8119377]
    elm[0x80c3d5f]
    elm(url_messages_menu+0xf1)[0x80c5af3]
    elm(main+0x905)[0x809f466]
    /lib/i386-linux-gnu/libc.so.6(__libc_start_main+0xf3)[0xb72b5af3]

    - Added elmrc option "show-mail-quota".
    - Check IMAP quota when mailbox is opened if
    elmrc option "show-mail-quota" have value
    "on-open".

    RFC 2087: IMAP4 QUOTA extension

    - Option "show-mail-quota" values are:
    off Does not show mail quota on
    mailbox open (command 'Eu'
    still works).
    on-open Shows mail quota (if supported)
    on mailbox open (default).
    - Note that mailbox may have a mail quota even
    when it is not displayed.
    - Mail quota display does not show unit of
    mail usage or quota. That is not available.

    - Command 'Eu' shows quota usage. This is available
    also when "show-mail-quota" have value "off".

    - Added connection_set_reset_quota() to lib/mbox/connection.c
    - Added free_mail_quota(), free_mail_quotaroot_list(),
    free_mail_quotaroot(), free_mail_quota_item(),
    inc_mail_quota_refcount(), inc_mail_quotaroot_list_refcount(),
    quotaroot_list_len(), quotaroot_list_item(),
    quotaroot_list_mquota(), quotaroot_name(),
    quotaroot_item_count(), quotaroot_item(), quota_item_name(),
    quota_item_values(), mail_quota_unlink_con(),
    inc_mail_quotaroot_refcount(), inc_mail_quota_item_refcount()
    to lib/mbox/quota.c
    - Added give_folder_quotaroot_l(), have_folder_quota()
    to lib/mbox/mbox.c

    - Added menu_redraw_done() to src/screen/context.c

    - Message
    Checking mailbox ...
    is shown on screen when mailbox quota is read
    after 0.5 second delay if remote mailbox is stalled.

    - Removed some emergency_exit() calls from change_file()
    on src/quit.c
    - Added some prototypes to nls/gencat/genlib.c and nls/gencat/gencat.h
    - Changed newmbox_1() do not call rm_temps_exit()
    when reading of new mailbox fails (however on resync
    still calls rm_temps_exit() when reading of mailbox
    fails).

    - Added struct menu_context * page; to struct counter_data
    on src/newmbox.c
    - Fix cleanup of struct counter_data on failure.
    - Fixed EOF handling on verify_remote_url()

    - Use conv_from_imap_name() on imap_open_connection()
    at lib/mbox/imap.c

    - Added '%zu' to parse_format_args() and
    convert_number() on lib/output.c (for size_t)
    - Added '%zu' to SKIP_WIDTH() on lib/debug.c
    - Replaced int long_f with enum width_type long_f
    on struct format_elem

    - Replaced
    long len_or_value;
    with
    uint32 value;
    size_t str_len;
    on struct imap_token. 'number' on
    RFC 1730 (IMAP) is unsigned 32-bit integer.
    - Replaced
    long literal_len;
    with
    uint32 wanted_literal_len;
    on struct IMAP_CON
    - Exported
    const size_t size_MAX
    from lib/safemalloc.c;
    - Replaced
    int read_len;
    with
    size_t read_len;
    on
    struct Read_Buffer
    - Changed prototype of cut_line() to use size_t
    - Changed tokenize() to not use
    safe_malloc() to allocate literal.
    - Changed ReadFromSocket() to not use
    safe_realloc() to allocate buffer
    - Close connection, if literal len >= INT_MAX
    when reading from IMAP connection
    - Changed tokenize() to not use strtol()
    to parse literal length or other imap numbers.
    Added parse_imap_number() for that.
    - Added safe_array_size() to lib/safemalloc.c
    - Changed parse_response() to not use
    safe_array_realloc() when handling
    EXISTS response.
    - Changed debug_level_check() so that -d{class}:{level}
    have preference over -d{level} command line flag.

    - Do not call eval_condition() from
    signal handler on loc_info(), added
    int maybe_signal parameter
    > However if wait_can_signal is set,
    memory allocation is still safe.
    - Added int maybe_signal parameter
    to terminal_can_switch(), give_display_charsets(),
    switch_display_charset(), set_display_charset(),
    terminal_switch_to(), terminal_can_switch_to()

    - get_charset_MIME_name() may be called from signal
    handler

    - Added "mailcap-tempfile-lifetime" elmrc option which
    specifies minimum time on seconds which
    temporary file is kept before it is deleted
    when using internal mailcap. This is only available
    if system supports poll() or select(). If mailcap view
    commands exits before "mailcap-tempfile-lifetime" seconds,
    deletion of temporary file is delayed. This assumes that
    mailcap view command is used only to launch actual
    viewing application, that file is opened later.
    If system supports poll() or select(), default value
    is 5 seconds.
    - Added alloc_delay_unlink(), free_delay_unlink(),
    delay_unlink_add_name(), delay_unlink_mark_done(),
    inc_delay_unlink_recount to lib/delay_unlink.c
    - Added delay_unlink_from_state_decode() to
    melib/state_decode.c
    - Added struct delay_unlink * timer_unlink
    to struct in_state_decode
    - Changed const int * conditional_option_p
    on struct rc_save_info_rec to union.
    - Changed prototype of run_mailcap_view()
    - Changed free_timed_task_handle()
    - Added free_schedule() and
    timed_task_alter_cleanup() to lib/schedule.c
    - Changed freeing order on leave(),
    rm_temps_exit(), silently_exit(),
    leave_locked(), main() of Elm

    - Moved
    Closing connections...
    Leaving mailbox ...
    Checking mailbox ...
    to
    setup_mbx_cancel_message()
    on src/network.c

    - Prompt "Press a <enter> to abort or <enter> to exit: "
    on panic(). This is used only when /dev/tty is open
    and current pid is same that when /dev/tty opened.

    - Added message
    ---- Debug output truncated ----
    Lost XXXX characters.
    to debug file if all debug output was not buffered
    successfully.

    - Changed debug so that source file information is printed
    to debug after debug file is established (so that does not fill
    debug buffer on initial debug output).

    New elmrc options:
    show-mail-quota
    mailcap-tempfile-lifetime

    New files:
    lib/mbox/quota.c
    hdrs/quota_imp.h
    src/quotadisp.c
    lib/mbox/imap_quota.c
    src/command/quota_dispcmd.c
    lib/delay_unlink.c
    src/network.c


    Warnings
    --------

    - Not compiled with MMDF support defined, so probably it doesn't
    work (or even compile).

    - This has not been tested much so there can be bad bugs.

    Bug reports to: Kari E. Hurtta <elm@elmme-mailer.org>
    (was hurtta+elm@posti.FMI.FI)

    - Internationalized (ie. non-ASCII) domain names are not supported.

    - Support for multipart/signed and multipart/encrypted (specially:
    support for PGP/MIME) only in reading side. There is no support
    for attachments with multipart/encrypted.

    - HP's shoftkeys are no longer supported

    - DECNET addresses like host::user may be interpreted as phrase
    of group syntax or as route of source routed address.

    - Header editing screen now uses addresses in form phrase <address>,
    but because it does not require using of comma (,), multiword
    phrases must be entered in quotes.

    For example: "Kari Hurtta" <hurtta>

    - If address includes <> or comments (), they are not aliased
    expanded. So aliases must be entered as bare words.

    - Addresses given as arguments to elm command should be given
    as one address per argument. Giving of sevaral addresses per
    one argument causes that address is misparsed if header is
    edited on header editing screen.

    That is:

    Use: elm '"Kari Hurtta" <hurtta>' 'Admin <root>'

    Don't use: elm 'Kari Hurtta <hurtta>, Admin <root>'

    - p)rint command acts as P)rint text -command. So it
    is currently quite useless.
    p)rint command does that via readmsg -command. However
    P)rint text does actually same (without readmsg).

    - Some Linux libraries does not follow $LC_CTYPE when program is
    setgid. Net result is that your locale is always C. That is
    visible that $LC_CTYPE does not effect to locale printed by
    'elm -vvvvv':

    Locale (LC_CTYPE): C
    Display character-set: US-ASCII
    Sending character-set: US-ASCII

    - All refrences iso2022 maps are parsed and read to memory.
    This may cause quite big memory consumption specially because
    eastern (multibyte) sets tend to be lot of characters. That
    mapping information should be shared between processes to
    reduce memory consuption.

    - If display charset is produced by using mapping from locale
    to charset where charset definition is later invalidated
    ("removed") by setting explicit compatcharsets on user's
    .elm/elmrc, that may cause PANIC on elm's internal pager
    or other problems. Invalidation happens if display charset
    is on implicit compatcharsets list (because of charset
    definition), but does not have explicit compatcharsets list
    given by user.

    - Neither Unicode didirectional algorithm nor Right-Left scripts
    are supported.

    - In some situations two Status headers may be generated two
    Status headers -- one by IMAP deamon and one from APPENDed
    message.

    - When APPENDing message to IMAP folder (which is normal UNIX
    mailbox format) original "From " separator line can not be
    preserved -- specially it is not possible to pass envelope
    sender address.

    - For UTF-8 charset Elm only knows printable characters from
    Latin/1 range, if unicode database (see elmrc option "unidata")
    is not loaded.

    - For using of ISO2022 character sets it is required that mapping
    them to unicode is know -- otherwise Elm ME+ does not know which
    characters are printable.

    - UTF-16 surrogate pairs (D800-DFFF) are not supported on UTF-7
    charset.

    - Mixing of names using IMAP naming convention
    (imap-naming-convention = yes)
    and names using imap-charset does not work very well...

    - " Regarding my message (8 Aug 2000) regarding 'newmail' on
    AIX 4.3.3 in an 'aixterm' window and the 'aixterm' did not
    close, indeed the problem was NOT related to 'newmail' but an
    AIX bug.

    IBM has release a patch, and the 'aixterm' in AIX 4.3.3 must
    be update with fileset X11.apps.aixterm.4.3.3.26 (PTF
    U473920) is solved to problem."
    From: Noam G. Nudelman <noam@mail.biu.ac.il>

    - File /usr/share/locale/fi/charset gives charset name utf-8 on
    Linux Mandrake 7.2. This causes that Configure generates
    mapping
    fi utf-8
    to elm.mimecharsets. However that seems to have
    incorrect mapping. You may want change this to
    fi ISO-8859-1

    ( however nl_langinfo(CODESET) gives charset ISO-8859-15
    but look following entry. )

    - Locale 'fi' seems to have charset ISO-8859-15 according
    of nl_langinfo(CODESET) on Mandrake Linux 7.2 (and probaly
    others with same glibc version). However for example gnome
    terminal uses font
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-1
    and not
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-15

    Also KDE's konsole program seems use iso8859-1 character set
    although locale is 'fi' which should have ISO-8859-15 according
    of nl_langinfo (selecting "unicode" from menu seems fix that.)

    Because of mismatch more correct locale is fi_FI.88591, which gives
    ISO-8859-1 character set according of nl_langinfo(CODESET).

    ( Locale seems come from /etc/sysconfig/i18n or $HOME/.i18n )

    > To enable handling of ISO-8859-1 and ISO-8859-15 character sets
    on linux console, read comments from doc/terminal.info file.

    - Mandrake Linux 7.2 seems set LD_PRELOAD to load
    /usr/lib/libxalflaunch.so.0. That (xalf-0.4-2mdk) causes that
    elm to crash on startup (actually before main() is reached.)

    - kterm on Mandrake Linux 7.2 seems have (at least on my test
    environment) seems get bad fontlist (*VT100*fontList) which
    gives bad font for iso8859-1 -- therefore ISO-8859-1 characters
    do not work.

    ("xrdb -query" seems report resource with name "*fontList"
    -- that probably overrides "*VT100*fontList" which comes
    from /usr/lib/X11/app-defaults/KTerm )

    - Also note that initially kterm does NOT default to
    ISO-8859-1 -- therefore ISO-8859-1 works only when
    elm explicity switch to ISO-8859-1 (for example
    with 'elm -D ISO-8859-1')

    - When assembling message/partial MIME (RFC 2046)
    requires that all headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are copied from
    initial enclosing message to assembled message. It also
    requires that headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are ignored and
    dropped from enclosed message.

    For now we copy only Received: -headers. Dropping extra
    headers from enclosed message makes assembly more
    complicated (and dropping of Received: -headers
    from enclosed message do not make sense.)

    - mailer=sendmail; verify=yes works only when sendmail
    is installed as setuid root. Use mailer=submission instead.
    * Starting from sendmail 8.12 sendmail is normally
    installed as setgid smmsp and not as setuid root.
    - However error message is printed only if
    verify-local-address=yes is also set

    - IMAP connection is stalled some times. Reason is unknown.

    - From name option (-f) on fastmail is currently broken.

    Collector of these patches
    --------------------------

    Kari Hurtta <elm@elmme-mailer.org>
    Kari Hurtta <hurtta+elm@siilo.FMI.FI>


    diffstat:

    MANIFEST | 7
    README.ME+ | 248 ++
    doc/elm.1 | 2
    doc/elmalias.1 | 2
    doc/elmaliases-write.1 | 2
    doc/elmbindata.1 | 2
    doc/elmcharset.1 | 2
    doc/elmconfwriter.1 | 2
    doc/elmhashmarks.1 | 2
    doc/elmiso2022sets.1 | 2
    doc/elmlibregister.1 | 2
    doc/elmmailinglists.1 | 2
    doc/elmmailservices.1 | 2
    doc/elmmimetypes.1 | 2
    doc/elmrc-info | 21
    doc/elmrc-write.1 | 2
    doc/elmrc.samp | 21
    doc/elmstringconvert.1 | 2
    doc/elmterminal.1 | 2
    doc/elmunidata.1 | 2
    doc/fastmail.1 | 2
    doc/frm.1 | 2
    doc/newalias.1 | 2
    doc/newmail.1 | 2
    doc/readmsg.1 | 2
    hdrs/connection_imp.h | 10
    hdrs/elm_defs.h | 6
    hdrs/elmlib.h | 55
    hdrs/mboxlib.h | 133 !
    hdrs/mbx_imp.h | 18
    hdrs/mbximap_imp.h | 18
    hdrs/me.h | 129 !
    hdrs/melib.h | 14
    hdrs/misclib.h | 12
    hdrs/pager.h | 7
    hdrs/patchlevel.h | 10
    hdrs/quota_imp.h | 218 ++
    hdrs/readmsg.h | 4
    hdrs/s_command.h | 7
    hdrs/s_elm.h | 3
    hdrs/s_me.h | 22
    hdrs/save_opts.h | 111 !
    hdrs/schedule_time.h | 10
    lib/MAGIC | 12
    lib/Makefile.SH | 5
    lib/charset.c | 8
    lib/debug.c | 387 !!!
    lib/delay_unlink.c | 812 ++++++++
    lib/mbox/Makefile.SH | 9
    lib/mbox/con_imap.c | 759 +!!!!
    lib/mbox/connection.c | 30
    lib/mbox/def_mbox.h | 31
    lib/mbox/imap.c | 34
    lib/mbox/imap_quota.c | 1772 +++++++++++++++++
    lib/mbox/localmbx.c | 17
    lib/mbox/mbox.c | 137 +
    lib/mbox/mbox_generic.c | 24
    lib/mbox/pop.c | 8
    lib/mbox/quota.c | 1068 ++++++++++
    lib/misc/terminal.c | 162 !
    lib/output.c | 43
    lib/panic.c | 78
    lib/read_rc.c | 31
    lib/remote_mbx.c | 120 !
    lib/safemalloc.c | 85
    lib/schedule.c | 279 ++
    lib/streamsched.c | 9
    melib/def_melib.h | 5
    melib/mailcap.c | 21
    melib/mime_selector.c | 21
    melib/state_decode.c | 89
    nls/C/C/C/s_command.m | 14
    nls/C/C/C/s_elm.m | 6
    nls/C/C/C/s_me.m | 44
    nls/gencat/dumpmsg.c | 2
    nls/gencat/gencat.h | 1
    nls/gencat/genlib.c | 4
    src/Makefile.SH | 10
    src/args.c | 8
    src/attach_menu.c | 8
    src/command/Makefile.SH | 6
    src/command/extendedcmd.c | 9
    src/command/quota_dispcmd.c | 97
    src/command/sendcmd.c | 6
    src/digest.c | 14
    src/duplicate_removal.c | 14
    src/edit.c | 10
    src/elm.c | 33
    src/extended.c | 234 +!
    src/in_utils.c | 15
    src/init.c | 368 +-
    src/leavembox.c | 46
    src/list/def_list.h | 7
    src/list/info.c | 182
    src/list/visit_mailbox.c | 26
    src/mailbox.c | 123
    src/metapager.c | 8
    src/network.c | 106 +
    src/newmbox.c | 395 +!!
    src/openmailbox.c | 155 !
    src/pager/span_line.c | 10
    src/pager/span_range.c | 7
    src/partial.c | 12
    src/quit.c | 209 -
    src/quotadisp.c | 4442 ++++++++++++++++++++++++++++++++++++++++++++
    src/screen.c | 7
    src/screen/context.c | 181 +
    src/screen/curses.c | 52
    src/screen/screen.c | 20
    src/screen/termcharset.c | 50
    src/url/def_url.h | 11
    src/url/http.c | 13
    src/url/imap.c | 38
    src/url/mailto.c | 10
    src/url/no_url.c | 11
    src/url/url.c | 20
    src/utils.c | 131
    src/view_one_thread.c | 12
    118 files changed, 10871 insertions(+), 165 deletions(-), 3333 modifications(!)

    --
    / Kari Hurtta

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Kari Hurtta@21:1/5 to All on Tue Feb 11 20:04:52 2020
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha51.3

    Elm ME+ 2.5 PLalpha51

    Before applying this patch catenate parts 1 - 6 first.
    Also it should be possible to apply parts 1 - 6
    individually.

    Undo Elm ME+ 2.5 PLalpha50a patch before applying
    this patch.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha50

    ====================================== ( part 3/6 ) =========
    Index: elmME+.2.5.alpha51-cvs/lib/mbox/localmbx.c
    *** elmME+.2.5.alpha50/lib/mbox/localmbx.c Thu Jun 6 21:00:46 2019
    --- elmME+.2.5.alpha51-cvs/lib/mbox/localmbx.c Sat Jan 18 22:07:41 2020 ***************
    *** 1,7 ****
    ! static char rcsid[] = "@(#)$Id: localmbx.c,v 2.70 2019/06/06 17:53:45 hurtta Exp $";

    /******************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 2.70 $ $State: Exp $
    *
    * Author: Kari Hurtta <hurtta+elm@siilo.FMI.FI>
    * (was hurtta+elm@posti.FMI.FI, hurtta+elm@ozone.FMI.FI) --- 1,7 ----
    ! static char rcsid[] = "@(#)$Id: localmbx.c,v 2.71 2020/01/18 20:07:41 hurtta Exp $";

    /******************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 2.71 $ $State: Exp $
    *
    * Author: Kari Hurtta <hurtta+elm@siilo.FMI.FI>
    * (was hurtta+elm@posti.FMI.FI, hurtta+elm@ozone.FMI.FI) ***************
    *** 8811,8817 ****
    mbx_get_read_only_mode,
    mbx_give_normal_server,
    mbx_comp_prev_hdr_default,
    ! m
  • From Kari Hurtta@21:1/5 to All on Tue Feb 11 20:02:55 2020
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha51.1

    Elm ME+ 2.5 PLalpha51

    Before applying this patch catenate parts 1 - 6 first.
    Also it should be possible to apply parts 1 - 6
    individually.

    Undo Elm ME+ 2.5 PLalpha50a patch before applying
    this patch.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha50

    ====================================== ( part 1/6 ) =========
    For applying thich patch use (on directory where Configure is)

    patch -p1 < {this-file}

    ------------------------------------------------------------------------
    Index: elmME+.2.5.alpha51-cvs/hdrs/patchlevel.h
    Prereq: 1590000000
    *** elmME+.2.5.alpha50/hdrs/patchlevel.h Thu Jun 6 21:00:46 2019
    --- elmME+.2.5.alpha51-cvs/hdrs/patchlevel.h Sat Feb 8 09:46:28 2020 ***************
    *** 1,12 ****
    ! #define PATCHLEVEL "alpha50"
    /* Used by Configure:
    ! SHAREDTAG: .1.1.50
    */
    ! #define LAST_REPORT_TIME 1590000000
    #define BUG_REPORT_ADDR "Kari Hurtta <elm@elmme-mailer.org>"
    ! #define VERS_DATE "Jun 2019" /* for elm -v option */
    #define WHAT_STRING \
    ! "@(#) Version ME+ 2.5, USENET supported version, released Jun 2019"

    /*
    * Local Variables:
    --- 1,12 ----
    ! #define PATCHLEVEL "alpha51"
    /* Used by Configure:
    ! SHAREDTAG: .1.1.51
    */
    ! #define LAST_REPORT_TIME 1610000000
    #define BUG_REPORT_ADDR "Kari Hurtta <elm@elmme-mailer.org>"
    ! #define VERS_DATE "Feb 2020" /* for elm -v option */
    #define WHAT_STRING \
    ! "@(#) Version ME+ 2.5, USENET supported version, released Feb 2020"

    /*
    * Local Variables:
    Index: elmME+.2.5.alpha51-cvs/README.ME+
    *** elmME+.2.5.alpha50/README.ME+ Thu Jun 6 21:00:46 2019
    --- elmME+.2.5.alpha51-cvs/README.ME
  • From Kari Hurtta@21:1/5 to All on Tue Feb 11 20:03:57 2020
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha51.2

    Elm ME+ 2.5 PLalpha51

    Before applying this patch catenate parts 1 - 6 first.
    Also it should be possible to apply parts 1 - 6
    individually.

    Undo Elm ME+ 2.5 PLalpha50a patch before applying
    this patch.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha50

    ====================================== ( part 2/6 ) =========
    Index: elmME+.2.5.alpha51-cvs/lib/delay_unlink.c
    *** /tmp/9791-very-long-file-name/NULL-9791-comes-in-here--XXXXXXXXX Sat Feb 8 13:09:17 2020
    --- elmME+.2.5.alpha51-cvs/lib/delay_unlink.c Sat Feb 1 13:13:46 2020 ***************
    *** 0 ****
    --- 1,812 ----
    + static char rcsid[] = "@(#)$Id: delay_unlink.c,v 2.2 2020/02/01 11:13:46 hurtta Exp $";
    +
    + /******************************************************************************
    + * The Elm (ME+) Mail System - $Revision: 2.2 $ $State: Exp $
    + *
    + * Author: Kari Hurtta <hurtta+elm@siilo.FMI.FI>
    + * or Kari Hurtta <elm@elmme-mailer.org>
    + *****************************************************************************/
    +
    +
    + #include "elm_defs.h"
    + #include "schedule_time.h"
    + #include "s_me.h"
    +
    + DEBUG_VAR(Debug,__FILE__,"file");
    +
    + #if ANSI_C
    + #define S_(x) static x;
    + #else
    + #define S_(x)
    + #endif
    +
    + #define DELAY_UNLINK_magic 0xF103
    +
    +
    + static void timed_task_free_du P_((struct timed_task **task));
    + static void inc_timed_task_du_refcount P_((struct timed_task *task));
    + static enum timed_task_r timed_task_action_du
    + P_((struct timed_task *tas
  • From Kari Hurtta@21:1/5 to All on Tue Feb 11 20:05:51 2020
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha51.4

    Elm ME+ 2.5 PLalpha51

    Before applying this patch catenate parts 1 - 6 first.
    Also it should be possible to apply parts 1 - 6
    individually.

    Undo Elm ME+ 2.5 PLalpha50a patch before applying
    this patch.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha50

    ====================================== ( part 4/6 ) =========
    Index: elmME+.2.5.alpha51-cvs/nls/C/C/C/s_elm.m
    *** elmME+.2.5.alpha50/nls/C/C/C/s_elm.m Thu Jun 6 21:00:46 2019
    --- elmME+.2.5.alpha51-cvs/nls/C/C/C/s_elm.m Wed Jan 29 18:20:24 2020 ***************
    *** 3052,3060 ****
    1766 |Checking new mail...|
    $ #CheckNewMailCanceled
    1767 |Checking new mail canceled (%s)|
    - $ #LeavingMailbox
    - 1768 |Leaving mailbox ...|
    - $ #ClosingConnections
    - 1769 |Closing connections...|
    - $ #CheckingMailbox
    - 1770 |Checking mailbox ...|
    --- 3052,3054 ----
    Index: elmME+.2.5.alpha51-cvs/nls/C/C/C/s_me.m
    *** elmME+.2.5.alpha50/nls/C/C/C/s_me.m Thu Jun 6 21:00:46 2019
    --- elmME+.2.5.alpha51-cvs/nls/C/C/C/s_me.m Wed Jan 29 18:20:24 2020 ***************
    *** 1808,1810 ****
    --- 1808,1854 ----
    966 |No disconnected mailboxes found|
    $ #LeavingMailbox
    967 |Leaving mailbox ...|
    + $ #CheckingMailbox
    + 968 |Checking mailbox ...|
    + $ #QuotaScreenTitle
    + 969 |Mail Quota Screen [ELM %s]|
    + $ #MailQuota
    + 970 |Mail quota|
    + $ #QuotaFor
    + 971 | for |
    + $ #QuotaNotAvailable
    + 972 |Mail quota not available|
    + $ #MQFailedParse
    + 973 |Failed to parse quota root resource limi
  • From Kari Hurtta@21:1/5 to All on Tue Feb 11 20:07:11 2020
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha51.6

    Elm ME+ 2.5 PLalpha51

    Before applying this patch catenate parts 1 - 6 first.
    Also it should be possible to apply parts 1 - 6
    individually.

    Undo Elm ME+ 2.5 PLalpha50a patch before applying
    this patch.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha50

    ====================================== ( part 6/6 ) =========
    Index: elmME+.2.5.alpha51-cvs/src/screen.c
    *** elmME+.2.5.alpha50/src/screen.c Tue Dec 25 20:13:54 2018
    --- elmME+.2.5.alpha51-cvs/src/screen.c Sat Jan 18 22:07:41 2020 ***************
    *** 1,7 ****
    ! static char rcsid[] = "@(#)$Id: screen.c,v 2.13 2018/07/01 12:22:53 hurtta Exp $";

    /******************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 2.13 $ $State: Exp $
    *
    * Modified by: Kari Hurtta <hurtta+elm@siilo.FMI.FI>
    * (was hurtta+elm@posti.FMI.FI, hurtta+elm@ozone.FMI.FI)
    --- 1,7 ----
    ! static char rcsid[] = "@(#)$Id: screen.c,v 2.14 2020/01/18 20:07:41 hurtta Exp $";

    /******************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 2.14 $ $State: Exp $
    *
    * Modified by: Kari Hurtta <hurtta+elm@siilo.FMI.FI>
    * (was hurtta+elm@posti.FMI.FI, hurtta+elm@ozone.FMI.FI)
    ***************
    *** 28,36 ****

    #define minimum(a,b) ((a) < (b) ? (a) : (b))

    - extern char version_buff[];
    -
    -
    static cha
  • From Kari Hurtta@21:1/5 to All on Tue Feb 11 20:06:30 2020
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha51.5

    Elm ME+ 2.5 PLalpha51

    Before applying this patch catenate parts 1 - 6 first.
    Also it should be possible to apply parts 1 - 6
    individually.

    Undo Elm ME+ 2.5 PLalpha50a patch before applying
    this patch.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha50

    ====================================== ( part 5/6 ) =========
    Index: elmME+.2.5.alpha51-cvs/src/openmailbox.c
    *** elmME+.2.5.alpha50/src/openmailbox.c Thu Jun 6 21:00:46 2019
    --- elmME+.2.5.alpha51-cvs/src/openmailbox.c Wed Jan 29 18:20:24 2020 ***************
    *** 1,7 ****
    ! static char rcsid[] = "@(#)$Id: openmailbox.c,v 2.10 2019/05/07 17:49:09 hurtta Exp $";

    /******************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 2.10 $ $State: Exp $
    *
    * Author: Kari Hurtta <hurtta+elm@siilo.FMI.FI>
    * (was hurtta+elm@posti.FMI.FI)
    --- 1,7 ----
    ! static char rcsid[] = "@(#)$Id: openmailbox.c,v 2.13 2020/01/29 16:20:24 hurtta Exp $";

    /******************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 2.13 $ $State: Exp $
    *
    * Author: Kari Hurtta <hurtta+elm@siilo.FMI.FI>
    * (was hurtta+elm@posti.FMI.FI)
    ***************
    *** 22,34 ****
    DEBUG_VAR(Debug,__FILE__,"ELM");

    /* Opens new mailbox to current mailbox view without closing current mailbox */
    ! void OpenMailbox(mailbox,aview,pag
  • From Kari Hurtta@21:1/5 to All on Sun Feb 16 18:54:07 2020
    Experimental DEB generator script for Elm ME+ 2.5 PLalpha51
    exists on <URL: http://www.elmme-mailer.org/deb/elm-ME+2.5.html >
    directory.

    Files are following

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha51-1.gen_deb
    DEB generator script
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha51-1.gen_deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha51-1.gen_deb.sig

    A command

    elm-ME+2.5.alpha51-1.gen_deb {packager}

    generates package elmme with version 1.1.51-1.{distribution}.

    A command

    elm-ME+2.5.alpha51-1.gen_deb --nonew {packager}

    generates package elm with version ME+2.5.alpha51-1.{distribution}.

    Both commands produce package with filename elm-ME+2.5.alpha51-1.{distribution}.{arch}.deb.

    Module libelmme-resolv.so is included for all distributions below, but libelmme-resolv.so does not implement interruptible DNS queries on all distributions.

    == Old package names, i386

    Package elm with version ME+2.5.alpha51-1.{distribution} and
    architecture i386.

    * Compiled on Debian GNU/Linux 3.1
    (Linux 2.4, glibc 2.3, Exim 3.36)

    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha51-1.Debian3.1.i386.deb
    Package elm binary DEB build on Debian GNU/Linux 3.1
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha51-1.Debian3.1.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha51-1.Debian3.1.i386.deb.sig

    Module libelmme-resolv.so does not implement interruptible DNS queries
    on Debian GNU/Linux 3.1.

    * Compiled on Ubuntu 6.06.2 LTS
    (Linux 2.6, glibc 2.3, Sendmail 8.13)

    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha51-1.Ubuntu6.06.i386.deb
    Package elm binary DEB build on Ubuntu 6.06.2 LTS
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha51-1.Ubuntu6.06.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha51-1.Ubuntu6.06.i386.deb.sig

    * Compiled on Ubuntu 10.04.4 LTS
    (Linux 2.6, glibc 2.11, Sendmail 8.14)

    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha51-1.Ubuntu10.04.i386.deb
    Package elm binary DEB build on Ubuntu 10.04.4 LTS
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha51-1.Ubuntu10.04.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha51-1.Ubuntu10.04.i386.deb.sig

    == New package names, i386

    Package elmme with version 1.1.51-1.{distribution} and architecture
    i386.

    * Compiled on Ubuntu 10.04.4 LTS
    (Linux 2.6, glibc 2.11, Sendmail 8.14)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha51-1.Ubuntu10.04.i386.deb
    Package elmme binary DEB build on Ubuntu 10.04.4 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha51-1.Ubuntu10.04.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha51-1.Ubuntu10.04.i386.deb.sig

    * Compiled on Ubuntu 14.04.6 LTS
    (Linux 4.4, glibc 2.19, no MTA)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha51-1.Ubuntu14.04.i386.deb
    Package elmme binary DEB build on Ubuntu 14.04.6 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha51-1.Ubuntu14.04.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha51-1.Ubuntu14.04.i386.deb.sig

    == New package names, amd64 (x86_64)

    Package elmme with version 1.1.51-1.{distribution} and architecture
    amd64 (also known as x86_64).

    * Compiled on Ubuntu 16.04.6 LTS
    (Linux 4.4, glibc 2.23, Sendmail 8.15)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha51-1.Ubuntu16.04.amd64.deb
    Package elmme binary DEB build on Ubuntu 16.04.6 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha51-1.Ubuntu16.04.amd64.deb.elm-key-2018.sig
    -
    http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha51-1.Ubuntu16.04.amd64.deb.sig

    == Signatures

    {file}.sig PGP signature (old key pubkey.asc, EA5A2379 1996-04-23)
    {file}.elm-key-2018.sig GPG signature (key elm.key.2018.asc, 44FC796B 2018-12-01, expires: 2028-11-28)

    == Configuration

    Following files (if exists) are rewritten by elmconfwriter on
    installation:

    - /usr/local/lib/elm.rc
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.hashmarks

    Deb generator script compiles elm for binary distribution, so you must
    edit /usr/local/lib/elm.rc before using Elm ME+ 2.5. Following
    variables may need to be modified on elm.rc:

    - mailer
    - hostdomain (this is usually needed)
    - hostfullname
    - hostname (usually this is not needed)
    - mailname (default values is generated from other values)
    - name-resolution (controls default values of hostdomain,
    hostfullname, hostname, mailname)

    By default first value for mailname is read from /etc/mailname file.

    For re-generation of following file, old information (if exists) is
    used:

    - /usr/local/lib/elm.rc

    WARNING: Check after installation that libraries are enabled. Global
    elm.rc values are:

    use-library =
    use-base-library = iconv
    use-config-library = resolv
    use-connect-library = tls resolv
    use-mailer-library = smtp resolv

    After editing global elm.rc run /usr/local/lib/elmrc-write -GI for
    fixing possible errors.

    On installation following existing files are merged with new values:

    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.hashmarks

    Old values from /usr/local/lib/aliases.text are converted to /usr/local/lib/elm.aliases and /usr/local/lib/aliases.text is renamed to /usr/local/lib/aliases.text.OLD.

    On installation new values without merging are written to following
    files:

    - /usr/local/lib/elm.aliases.NEW
    - /usr/local/lib/elm.mailinglists.NEW
    - /usr/local/lib/elm.mailservices.NEW
    - /usr/local/lib/elm.mimecharsets.NEW
    - /usr/local/lib/elm.mimetypes.NEW
    - /usr/local/lib/elm.terminalinfo.NEW
    - /usr/local/lib/elm.iso2022sets.NEW
    - /usr/local/lib/elm.hashmarks.NEW

    Also following directories are used:

    - /usr/local/lib/elm.map.txt/ (global setting map-text-dir =
    {lib}/elm.map.txt)
    - /usr/local/lib/elm.map.bin/ (global setting map-bin-dir =
    {lib}/elm.map.bin)
    - /usr/local/lib/elm.user.map/ (global setting user-map-dir =
    {lib}/elm.user.map)

    Hashmark EXAMPLE uses file /usr/local/lib/elm.user.map/elm.usermap.

    A command

    elm-{version}-{release}.gen_deb {packager}

    generates package elmme with version {library-version}-{release}.{distribution}. Note that a resulted
    filename of package is still elm-{version}-{release}.{arch}.deb. This
    version number is same than on files /usr/local/lib/libelmme-{module}.so.{library-version}. A filename of
    package is related to used source archive name, which is elm-{version}-{release}.tar.gz.

    A command

    elm-{version}-{release}.gen_deb --nonew {packager}

    generates package elm with version {version}-{release}.{distribution}.
    Also on this case a resulted filename of package is elm-{version}-{release}.{arch}.deb.

    SUMMARY: This release collects patch Elm ME+ 2.5 PLalpha50a,
    fixes crash when mailbox is opened with -Oimaps://...
    option, supports IMAP quotas (RFC 2087), delays
    deletion of temp files used by internal mailcap,
    if view command completes too fast. New elmrc options
    are "show-mail-quota" and "mailcap-tempfile-lifetime".
    This releases adds new command 'Eu' to show mail quota
    (not affected by elmrc option "show-mail-quota").
    Also some other changes and fixes are included.

    Elm ME+ 2.5 PLalpha51 changelog

    Changes on Elm ME+ 2.5 PLalpha51 compared with Elm ME+ 2.5 PLalpha50 --------------------------------------------------------------------

    Undo Elm ME+ 2.5 PLalpha50a patch before applying this patch.

    SUMMARY: This release collects patch Elm ME+ 2.5 PLalpha50a,
    fixes crash when mailbox is opened with -Oimaps://...
    option, supports IMAP quotas (RFC 2087), delays
    deletion of temp files used by internal mailcap,
    if view command completes too fast. New elmrc options
    are "show-mail-quota" and "mailcap-tempfile-lifetime".
    This releases adds new command 'Eu' to show mail quota
    (not affected by elmrc option "show-mail-quota").
    Also some other changes and fixes are included.

    - "newmail core dumps in elmME+.2.5.alpha50 on CentOS 7."
    Reported by: Noam G. Nudelman
    > Fixed crash on prepare_read_folder()
    when called from "frm", "newmail" or
    "readmsg".

    - Small fix for span_line() and span_words()
    on src/pager/span_line.c
    - Small fix for span_helper()
    on src/pager/span_range.c

    - Fixed error where opening folder with
    elm -Oimaps://username@server/INBOX
    produces

    SCREEN PANIC in .../src/screen/menu_param.c:30:mp_lookup_any1
    >>>Bad type
    Call stack: B7514D11 812D83C 812D970 813AF41 813761C
    continues: 8105015 812FB88 8130EBA 8119377 80C3D5F
    continues: 80C5AF3 809F466 B72B5AF3 805EE91
    backtrace:
    /usr/local/lib/libelmme-base.so.1.1.50.1(panic+0x180)[0xb7514d11]
    elm[0x812d83c]
    elm(mp_lookup_integer+0x26)[0x812d970]
    elm(mc_screen_print_mbx_line+0x44)[0x813af41]
    elm(mcommon_screen_print_menu_line+0x3b)[0x813761c]
    elm(hdr_show_current+0x154)[0x8105015]
    elm[0x812fb88]
    elm(menu_header_change+0x1fc)[0x8130eba]
    elm(get_page+0xf1)[0x8119377]
    elm[0x80c3d5f]
    elm(url_messages_menu+0xf1)[0x80c5af3]
    elm(main+0x905)[0x809f466]
    /lib/i386-linux-gnu/libc.so.6(__libc_start_main+0xf3)[0xb72b5af3]

    - Added elmrc option "show-mail-quota".
    - Check IMAP quota when mailbox is opened if
    elmrc option "show-mail-quota" have value
    "on-open".

    RFC 2087: IMAP4 QUOTA extension

    - Option "show-mail-quota" values are:
    off Does not show mail quota on
    mailbox open (command 'Eu'
    still works).
    on-open Shows mail quota (if supported)
    on mailbox open (default).
    - Note that mailbox may have a mail quota even
    when it is not displayed.
    - Mail quota display does not show unit of
    mail usage or quota. That is not available.

    - Command 'Eu' shows quota usage. This is available
    also when "show-mail-quota" have value "off".

    - Added connection_set_reset_quota() to lib/mbox/connection.c
    - Added free_mail_quota(), free_mail_quotaroot_list(),
    free_mail_quotaroot(), free_mail_quota_item(),
    inc_mail_quota_refcount(), inc_mail_quotaroot_list_refcount(),
    quotaroot_list_len(), quotaroot_list_item(),
    quotaroot_list_mquota(), quotaroot_name(),
    quotaroot_item_count(), quotaroot_item(), quota_item_name(),
    quota_item_values(), mail_quota_unlink_con(),
    inc_mail_quotaroot_refcount(), inc_mail_quota_item_refcount()
    to lib/mbox/quota.c
    - Added give_folder_quotaroot_l(), have_folder_quota()
    to lib/mbox/mbox.c

    - Added menu_redraw_done() to src/screen/context.c

    - Message
    Checking mailbox ...
    is shown on screen when mailbox quota is read
    after 0.5 second delay if remote mailbox is stalled.

    - Removed some emergency_exit() calls from change_file()
    on src/quit.c
    - Added some prototypes to nls/gencat/genlib.c and nls/gencat/gencat.h
    - Changed newmbox_1() do not call rm_temps_exit()
    when reading of new mailbox fails (however on resync
    still calls rm_temps_exit() when reading of mailbox
    fails).

    - Added struct menu_context * page; to struct counter_data
    on src/newmbox.c
    - Fix cleanup of struct counter_data on failure.
    - Fixed EOF handling on verify_remote_url()

    - Use conv_from_imap_name() on imap_open_connection()
    at lib/mbox/imap.c

    - Added '%zu' to parse_format_args() and
    convert_number() on lib/output.c (for size_t)
    - Added '%zu' to SKIP_WIDTH() on lib/debug.c
    - Replaced int long_f with enum width_type long_f
    on struct format_elem

    - Replaced
    long len_or_value;
    with
    uint32 value;
    size_t str_len;
    on struct imap_token. 'number' on
    RFC 1730 (IMAP) is unsigned 32-bit integer.
    - Replaced
    long literal_len;
    with
    uint32 wanted_literal_len;
    on struct IMAP_CON
    - Exported
    const size_t size_MAX
    from lib/safemalloc.c;
    - Replaced
    int read_len;
    with
    size_t read_len;
    on
    struct Read_Buffer
    - Changed prototype of cut_line() to use size_t
    - Changed tokenize() to not use
    safe_malloc() to allocate literal.
    - Changed ReadFromSocket() to not use
    safe_realloc() to allocate buffer
    - Close connection, if literal len >= INT_MAX
    when reading from IMAP connection
    - Changed tokenize() to not use strtol()
    to parse literal length or other imap numbers.
    Added parse_imap_number() for that.
    - Added safe_array_size() to lib/safemalloc.c
    - Changed parse_response() to not use
    safe_array_realloc() when handling
    EXISTS response.
    - Changed debug_level_check() so that -d{class}:{level}
    have preference over -d{level} command line flag.

    - Do not call eval_condition() from
    signal handler on loc_info(), added
    int maybe_signal parameter
    > However if wait_can_signal is set,
    memory allocation is still safe.
    - Added int maybe_signal parameter
    to terminal_can_switch(), give_display_charsets(),
    switch_display_charset(), set_display_charset(),
    terminal_switch_to(), terminal_can_switch_to()

    - get_charset_MIME_name() may be called from signal
    handler

    - Added "mailcap-tempfile-lifetime" elmrc option which
    specifies minimum time on seconds which
    temporary file is kept before it is deleted
    when using internal mailcap. This is only available
    if system supports poll() or select(). If mailcap view
    commands exits before "mailcap-tempfile-lifetime" seconds,
    deletion of temporary file is delayed. This assumes that
    mailcap view command is used only to launch actual
    viewing application, that file is opened later.
    If system supports poll() or select(), default value
    is 5 seconds.
    - Added alloc_delay_unlink(), free_delay_unlink(),
    delay_unlink_add_name(), delay_unlink_mark_done(),
    inc_delay_unlink_recount to lib/delay_unlink.c
    - Added delay_unlink_from_state_decode() to
    melib/state_decode.c
    - Added struct delay_unlink * timer_unlink
    to struct in_state_decode
    - Changed const int * conditional_option_p
    on struct rc_save_info_rec to union.
    - Changed prototype of run_mailcap_view()
    - Changed free_timed_task_handle()
    - Added free_schedule() and
    timed_task_alter_cleanup() to lib/schedule.c
    - Changed freeing order on leave(),
    rm_temps_exit(), silently_exit(),
    leave_locked(), main() of Elm

    - Moved
    Closing connections...
    Leaving mailbox ...
    Checking mailbox ...
    to
    setup_mbx_cancel_message()
    on src/network.c

    - Prompt "Press a <enter> to abort or <enter> to exit: "
    on panic(). This is used only when /dev/tty is open
    and current pid is same that when /dev/tty opened.

    - Added message
    ---- Debug output truncated ----
    Lost XXXX characters.
    to debug file if all debug output was not buffered
    successfully.

    - Changed debug so that source file information is printed
    to debug after debug file is established (so that does not fill
    debug buffer on initial debug output).

    New elmrc options:
    show-mail-quota
    mailcap-tempfile-lifetime

    New files:
    lib/mbox/quota.c
    hdrs/quota_imp.h
    src/quotadisp.c
    lib/mbox/imap_quota.c
    src/command/quota_dispcmd.c
    lib/delay_unlink.c
    src/network.c

    Warnings
    --------

    - Not compiled with MMDF support defined, so probably it doesn't
    work (or even compile).

    - This has not been tested much so there can be bad bugs.

    Bug reports to: Kari E. Hurtta <elm@elmme-mailer.org>
    (was hurtta+elm@posti.FMI.FI)

    - Internationalized (ie. non-ASCII) domain names are not supported.

    - Support for multipart/signed and multipart/encrypted (specially:
    support for PGP/MIME) only in reading side. There is no support
    for attachments with multipart/encrypted.

    - HP's shoftkeys are no longer supported

    - DECNET addresses like host::user may be interpreted as phrase
    of group syntax or as route of source routed address.

    - Header editing screen now uses addresses in form phrase <address>,
    but because it does not require using of comma (,), multiword
    phrases must be entered in quotes.

    For example: "Kari Hurtta" <hurtta>

    - If address includes <> or comments (), they are not aliased
    expanded. So aliases must be entered as bare words.

    - Addresses given as arguments to elm command should be given
    as one address per argument. Giving of sevaral addresses per
    one argument causes that address is misparsed if header is
    edited on header editing screen.

    That is:

    Use: elm '"Kari Hurtta" <hurtta>' 'Admin <root>'

    Don't use: elm 'Kari Hurtta <hurtta>, Admin <root>'

    - p)rint command acts as P)rint text -command. So it
    is currently quite useless.
    p)rint command does that via readmsg -command. However
    P)rint text does actually same (without readmsg).

    - Some Linux libraries does not follow $LC_CTYPE when program is
    setgid. Net result is that your locale is always C. That is
    visible that $LC_CTYPE does not effect to locale printed by
    'elm -vvvvv':

    Locale (LC_CTYPE): C
    Display character-set: US-ASCII
    Sending character-set: US-ASCII

    - All refrences iso2022 maps are parsed and read to memory.
    This may cause quite big memory consumption specially because
    eastern (multibyte) sets tend to be lot of characters. That
    mapping information should be shared between processes to
    reduce memory consuption.

    - If display charset is produced by using mapping from locale
    to charset where charset definition is later invalidated
    ("removed") by setting explicit compatcharsets on user's
    .elm/elmrc, that may cause PANIC on elm's internal pager
    or other problems. Invalidation happens if display charset
    is on implicit compatcharsets list (because of charset
    definition), but does not have explicit compatcharsets list
    given by user.

    - Neither Unicode didirectional algorithm nor Right-Left scripts
    are supported.

    - In some situations two Status headers may be generated two
    Status headers -- one by IMAP deamon and one from APPENDed
    message.

    - When APPENDing message to IMAP folder (which is normal UNIX
    mailbox format) original "From " separator line can not be
    preserved -- specially it is not possible to pass envelope
    sender address.

    - For UTF-8 charset Elm only knows printable characters from
    Latin/1 range, if unicode database (see elmrc option "unidata")
    is not loaded.

    - For using of ISO2022 character sets it is required that mapping
    them to unicode is know -- otherwise Elm ME+ does not know which
    characters are printable.

    - UTF-16 surrogate pairs (D800-DFFF) are not supported on UTF-7
    charset.

    - Mixing of names using IMAP naming convention
    (imap-naming-convention = yes)
    and names using imap-charset does not work very well...

    - " Regarding my message (8 Aug 2000) regarding 'newmail' on
    AIX 4.3.3 in an 'aixterm' window and the 'aixterm' did not
    close, indeed the problem was NOT related to 'newmail' but an
    AIX bug.

    IBM has release a patch, and the 'aixterm' in AIX 4.3.3 must
    be update with fileset X11.apps.aixterm.4.3.3.26 (PTF
    U473920) is solved to problem."
    From: Noam G. Nudelman <noam@mail.biu.ac.il>

    - File /usr/share/locale/fi/charset gives charset name utf-8 on
    Linux Mandrake 7.2. This causes that Configure generates
    mapping
    fi utf-8
    to elm.mimecharsets. However that seems to have
    incorrect mapping. You may want change this to
    fi ISO-8859-1

    ( however nl_langinfo(CODESET) gives charset ISO-8859-15
    but look following entry. )

    - Locale 'fi' seems to have charset ISO-8859-15 according
    of nl_langinfo(CODESET) on Mandrake Linux 7.2 (and probaly
    others with same glibc version). However for example gnome
    terminal uses font
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-1
    and not
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-15

    Also KDE's konsole program seems use iso8859-1 character set
    although locale is 'fi' which should have ISO-8859-15 according
    of nl_langinfo (selecting "unicode" from menu seems fix that.)

    Because of mismatch more correct locale is fi_FI.88591, which gives
    ISO-8859-1 character set according of nl_langinfo(CODESET).

    ( Locale seems come from /etc/sysconfig/i18n or $HOME/.i18n )

    > To enable handling of ISO-8859-1 and ISO-8859-15 character sets
    on linux console, read comments from doc/terminal.info file.

    - Mandrake Linux 7.2 seems set LD_PRELOAD to load
    /usr/lib/libxalflaunch.so.0. That (xalf-0.4-2mdk) causes that
    elm to crash on startup (actually before main() is reached.)

    - kterm on Mandrake Linux 7.2 seems have (at least on my test
    environment) seems get bad fontlist (*VT100*fontList) which
    gives bad font for iso8859-1 -- therefore ISO-8859-1 characters
    do not work.

    ("xrdb -query" seems report resource with name "*fontList"
    -- that probably overrides "*VT100*fontList" which comes
    from /usr/lib/X11/app-defaults/KTerm )

    - Also note that initially kterm does NOT default to
    ISO-8859-1 -- therefore ISO-8859-1 works only when
    elm explicity switch to ISO-8859-1 (for example
    with 'elm -D ISO-8859-1')

    - When assembling message/partial MIME (RFC 2046)
    requires that all headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are copied from
    initial enclosing message to assembled message. It also
    requires that headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are ignored and
    dropped from enclosed message.

    For now we copy only Received: -headers. Dropping extra
    headers from enclosed message makes assembly more
    complicated (and dropping of Received: -headers
    from enclosed message do not make sense.)

    - mailer=sendmail; verify=yes works only when sendmail
    is installed as setuid root. Use mailer=submission instead.
    * Starting from sendmail 8.12 sendmail is normally
    installed as setgid smmsp and not as setuid root.
    - However error message is printed only if
    verify-local-address=yes is also set

    - IMAP connection is stalled some times. Reason is unknown.

    - From name option (-f) on fastmail is currently broken.

    Collector of these patches
    --------------------------

    Kari Hurtta <elm@elmme-mailer.org>
    Kari Hurtta <hurtta+elm@siilo.FMI.FI>

    --
    / Kari Hurtta

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Kari Hurtta@21:1/5 to All on Sun Feb 16 18:35:21 2020
    Experimental RPM spec file for ELM ME+ 2.5 PLalpha51
    exists on <URL: http://www.elmme-mailer.org/rpm/elm-ME+2.5.html >
    directory.

    Files are following

    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha51-1.spec
    RPM spec file
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha51-1.spec.elm-key-2018.sig
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha51-1.spec.sig
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha51-1.mdk7.2.src.rpm
    Source rpm
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha51-1.mdk7.2.src.rpm.sig

    ** Notes

    - elm-ME+2.5.alpha51-1.mdk7.1.src.rpm is signed internally with GPG
    key elm.key.2018.asc (44FC796B 2018-12-01).

    * Compiled on Linux Mandrake release 7.2
    (Linux 2.2, glibc 2.1, Sendmail 8.13)

    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha51-1.mdk7.2.i686.rpm
    Package elm binary RPM build on Linux Mandrake release 7.2
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha51-1.mdk7.2.i686.rpm.sig
    - http://www.elmme-mailer.org/rpm/elm-mod-ME+2.5.alpha51-1.mdk7.2.i686.rpm
    Package elm-mod binary RPM build on Linux Mandrake release 7.2
    - http://www.elmme-mailer.org/rpm/elm-mod-ME+2.5.alpha51-1.mdk7.2.i686.rpm.sig
    - http://www.elmme-mailer.org/rpm/elm-tls-ME+2.5.alpha51-1.mdk7.2.i686.rpm
    Package elm-tls binary RPM build on Linux Mandrake release 7.2
    - http://www.elmme-mailer.org/rpm/elm-tls-ME+2.5.alpha51-1.mdk7.2.i686.rpm.sig

    ** Notes

    - elm-ME+2.5.alpha51-1.mdk7.2.i686.rpm and
    elm-*-ME+2.5.alpha51-1.mdk7.2.i686.rpm are signed internally with
    GPG key elm.key.2018.asc (44FC796B 2018-12-01).
    - elm-ME+2.5.alpha51-1.mdk7.2.i686.rpm is compiled agaist Sendmail
    8.13 (not from Mandrake distribution).
    - elm-mod-ME+2.5.alpha51-1.mdk7.2.i686.rpm does not include
    libelmme-resolv.so.
    - elm-tls-ME+2.5.alpha51-1.mdk7.2.i686.rpm do not load/work on
    Mandrake 7.2, because openssl library misses RAND_egd_bytes
    function.

    * Signatures

    {file}.sig PGP signature (old key pubkey.asc, EA5A2379 1996-04-23)
    {file}.elm-key-2018.sig GPG signature (key elm.key.2018.asc, 44FC796B 2018-12-01, expires: 2028-11-28)

    * Configuration

    Following files (if exists) are rewritten by elmconfwriter on
    installation:

    - /usr/local/lib/elm.rc
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.hashmarks

    Spec file compiles elm for binary distribution, so you must edit
    /usr/local/lib/elm.rc before using Elm ME+ 2.5. Following variables may
    need to be modified on elm.rc:

    - mailer
    - hostdomain (this is usually needed)
    - hostfullname
    - hostname (usually this is not needed)
    - mailname (default values is generated from other values)
    name-resolution (controls default values of hostdomain,
    hostfullname, hostname, mailname)

    For re-generation of following file, old information (if exists) is
    used:

    - /usr/local/lib/elm.rc

    WARNING: Check after installation that libraries are enabled. Global
    elm.rc values are:

    use-library =
    use-base-library = iconv
    use-config-library = resolv
    use-connect-library = tls resolv
    use-mailer-library = smtp resolv

    Note that libelmme-resolv.so does not compile on all distributions. In
    that case omit resolv from elm.rc.

    After editing global elm.rc run /usr/local/lib/elmrc-write -GI for
    fixing possible errors.

    On installation following existing files are merged with new values:

    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.hashmarks

    Old values from /usr/local/lib/aliases.text are converted to /usr/local/lib/elm.aliases and /usr/local/lib/aliases.text is renamed to /usr/local/lib/aliases.text.OLD.

    On installation new values without merging are written to following
    files:

    - /usr/local/lib/elm.aliases.NEW
    - /usr/local/lib/elm.mailinglists.NEW
    - /usr/local/lib/elm.mailservices.NEW
    - /usr/local/lib/elm.mimecharsets.NEW
    - /usr/local/lib/elm.mimetypes.NEW
    - /usr/local/lib/elm.terminalinfo.NEW
    - /usr/local/lib/elm.iso2022sets.NEW
    - /usr/local/lib/elm.hashmarks.NEW

    Package elm-mod includes libelmme-iconv.so and libelmme-smtp.so. If
    package elm-mod includes libelmme-resolv.so, this is noted. And package
    elm-tls includes libelmme-tls.so.

    Installation loses mailer = submission setting from global /usr/local/lib/elm.rc, because when elm package rewrites elm.rc,
    submission mailer is not available. It becomes from elm-mod package.

    However failed values of /usr/local/lib/elm.rc are saved to /usr/local/lib/elm.rc.old-values file during installation.

    Global setting mailer = submission is restored from /usr/local/lib/elm.rc.old-values file, when package elm-mod is
    installed.

    Also following directories are used:

    - /usr/local/lib/elm.map.txt/ (global setting map-text-dir =
    {lib}/elm.map.txt)
    - /usr/local/lib/elm.map.bin/ (global setting map-bin-dir =
    {lib}/elm.map.bin)
    - /usr/local/lib/elm.user.map/ (global setting user-map-dir =
    {lib}/elm.user.map)

    Hashmark EXAMPLE uses file /usr/local/lib/elm.user.map/elm.usermap.

    SUMMARY: This release collects patch Elm ME+ 2.5 PLalpha50a,
    fixes crash when mailbox is opened with -Oimaps://...
    option, supports IMAP quotas (RFC 2087), delays
    deletion of temp files used by internal mailcap,
    if view command completes too fast. New elmrc options
    are "show-mail-quota" and "mailcap-tempfile-lifetime".
    This releases adds new command 'Eu' to show mail quota
    (not affected by elmrc option "show-mail-quota").
    Also some other changes and fixes are included.

    Elm ME+ 2.5 PLalpha51 changelog

    Changes on Elm ME+ 2.5 PLalpha51 compared with Elm ME+ 2.5 PLalpha50 --------------------------------------------------------------------

    Undo Elm ME+ 2.5 PLalpha50a patch before applying this patch.

    SUMMARY: This release collects patch Elm ME+ 2.5 PLalpha50a,
    fixes crash when mailbox is opened with -Oimaps://...
    option, supports IMAP quotas (RFC 2087), delays
    deletion of temp files used by internal mailcap,
    if view command completes too fast. New elmrc options
    are "show-mail-quota" and "mailcap-tempfile-lifetime".
    This releases adds new command 'Eu' to show mail quota
    (not affected by elmrc option "show-mail-quota").
    Also some other changes and fixes are included.

    - "newmail core dumps in elmME+.2.5.alpha50 on CentOS 7."
    Reported by: Noam G. Nudelman
    > Fixed crash on prepare_read_folder()
    when called from "frm", "newmail" or
    "readmsg".

    - Small fix for span_line() and span_words()
    on src/pager/span_line.c
    - Small fix for span_helper()
    on src/pager/span_range.c

    - Fixed error where opening folder with
    elm -Oimaps://username@server/INBOX
    produces

    SCREEN PANIC in .../src/screen/menu_param.c:30:mp_lookup_any1
    >>>Bad type
    Call stack: B7514D11 812D83C 812D970 813AF41 813761C
    continues: 8105015 812FB88 8130EBA 8119377 80C3D5F
    continues: 80C5AF3 809F466 B72B5AF3 805EE91
    backtrace:
    /usr/local/lib/libelmme-base.so.1.1.50.1(panic+0x180)[0xb7514d11]
    elm[0x812d83c]
    elm(mp_lookup_integer+0x26)[0x812d970]
    elm(mc_screen_print_mbx_line+0x44)[0x813af41]
    elm(mcommon_screen_print_menu_line+0x3b)[0x813761c]
    elm(hdr_show_current+0x154)[0x8105015]
    elm[0x812fb88]
    elm(menu_header_change+0x1fc)[0x8130eba]
    elm(get_page+0xf1)[0x8119377]
    elm[0x80c3d5f]
    elm(url_messages_menu+0xf1)[0x80c5af3]
    elm(main+0x905)[0x809f466]
    /lib/i386-linux-gnu/libc.so.6(__libc_start_main+0xf3)[0xb72b5af3]

    - Added elmrc option "show-mail-quota".
    - Check IMAP quota when mailbox is opened if
    elmrc option "show-mail-quota" have value
    "on-open".

    RFC 2087: IMAP4 QUOTA extension

    - Option "show-mail-quota" values are:
    off Does not show mail quota on
    mailbox open (command 'Eu'
    still works).
    on-open Shows mail quota (if supported)
    on mailbox open (default).
    - Note that mailbox may have a mail quota even
    when it is not displayed.
    - Mail quota display does not show unit of
    mail usage or quota. That is not available.

    - Command 'Eu' shows quota usage. This is available
    also when "show-mail-quota" have value "off".

    - Added connection_set_reset_quota() to lib/mbox/connection.c
    - Added free_mail_quota(), free_mail_quotaroot_list(),
    free_mail_quotaroot(), free_mail_quota_item(),
    inc_mail_quota_refcount(), inc_mail_quotaroot_list_refcount(),
    quotaroot_list_len(), quotaroot_list_item(),
    quotaroot_list_mquota(), quotaroot_name(),
    quotaroot_item_count(), quotaroot_item(), quota_item_name(),
    quota_item_values(), mail_quota_unlink_con(),
    inc_mail_quotaroot_refcount(), inc_mail_quota_item_refcount()
    to lib/mbox/quota.c
    - Added give_folder_quotaroot_l(), have_folder_quota()
    to lib/mbox/mbox.c

    - Added menu_redraw_done() to src/screen/context.c

    - Message
    Checking mailbox ...
    is shown on screen when mailbox quota is read
    after 0.5 second delay if remote mailbox is stalled.

    - Removed some emergency_exit() calls from change_file()
    on src/quit.c
    - Added some prototypes to nls/gencat/genlib.c and nls/gencat/gencat.h
    - Changed newmbox_1() do not call rm_temps_exit()
    when reading of new mailbox fails (however on resync
    still calls rm_temps_exit() when reading of mailbox
    fails).

    - Added struct menu_context * page; to struct counter_data
    on src/newmbox.c
    - Fix cleanup of struct counter_data on failure.
    - Fixed EOF handling on verify_remote_url()

    - Use conv_from_imap_name() on imap_open_connection()
    at lib/mbox/imap.c

    - Added '%zu' to parse_format_args() and
    convert_number() on lib/output.c (for size_t)
    - Added '%zu' to SKIP_WIDTH() on lib/debug.c
    - Replaced int long_f with enum width_type long_f
    on struct format_elem

    - Replaced
    long len_or_value;
    with
    uint32 value;
    size_t str_len;
    on struct imap_token. 'number' on
    RFC 1730 (IMAP) is unsigned 32-bit integer.
    - Replaced
    long literal_len;
    with
    uint32 wanted_literal_len;
    on struct IMAP_CON
    - Exported
    const size_t size_MAX
    from lib/safemalloc.c;
    - Replaced
    int read_len;
    with
    size_t read_len;
    on
    struct Read_Buffer
    - Changed prototype of cut_line() to use size_t
    - Changed tokenize() to not use
    safe_malloc() to allocate literal.
    - Changed ReadFromSocket() to not use
    safe_realloc() to allocate buffer
    - Close connection, if literal len >= INT_MAX
    when reading from IMAP connection
    - Changed tokenize() to not use strtol()
    to parse literal length or other imap numbers.
    Added parse_imap_number() for that.
    - Added safe_array_size() to lib/safemalloc.c
    - Changed parse_response() to not use
    safe_array_realloc() when handling
    EXISTS response.
    - Changed debug_level_check() so that -d{class}:{level}
    have preference over -d{level} command line flag.

    - Do not call eval_condition() from
    signal handler on loc_info(), added
    int maybe_signal parameter
    > However if wait_can_signal is set,
    memory allocation is still safe.
    - Added int maybe_signal parameter
    to terminal_can_switch(), give_display_charsets(),
    switch_display_charset(), set_display_charset(),
    terminal_switch_to(), terminal_can_switch_to()

    - get_charset_MIME_name() may be called from signal
    handler

    - Added "mailcap-tempfile-lifetime" elmrc option which
    specifies minimum time on seconds which
    temporary file is kept before it is deleted
    when using internal mailcap. This is only available
    if system supports poll() or select(). If mailcap view
    commands exits before "mailcap-tempfile-lifetime" seconds,
    deletion of temporary file is delayed. This assumes that
    mailcap view command is used only to launch actual
    viewing application, that file is opened later.
    If system supports poll() or select(), default value
    is 5 seconds.
    - Added alloc_delay_unlink(), free_delay_unlink(),
    delay_unlink_add_name(), delay_unlink_mark_done(),
    inc_delay_unlink_recount to lib/delay_unlink.c
    - Added delay_unlink_from_state_decode() to
    melib/state_decode.c
    - Added struct delay_unlink * timer_unlink
    to struct in_state_decode
    - Changed const int * conditional_option_p
    on struct rc_save_info_rec to union.
    - Changed prototype of run_mailcap_view()
    - Changed free_timed_task_handle()
    - Added free_schedule() and
    timed_task_alter_cleanup() to lib/schedule.c
    - Changed freeing order on leave(),
    rm_temps_exit(), silently_exit(),
    leave_locked(), main() of Elm

    - Moved
    Closing connections...
    Leaving mailbox ...
    Checking mailbox ...
    to
    setup_mbx_cancel_message()
    on src/network.c

    - Prompt "Press a <enter> to abort or <enter> to exit: "
    on panic(). This is used only when /dev/tty is open
    and current pid is same that when /dev/tty opened.

    - Added message
    ---- Debug output truncated ----
    Lost XXXX characters.
    to debug file if all debug output was not buffered
    successfully.

    - Changed debug so that source file information is printed
    to debug after debug file is established (so that does not fill
    debug buffer on initial debug output).

    New elmrc options:
    show-mail-quota
    mailcap-tempfile-lifetime

    New files:
    lib/mbox/quota.c
    hdrs/quota_imp.h
    src/quotadisp.c
    lib/mbox/imap_quota.c
    src/command/quota_dispcmd.c
    lib/delay_unlink.c
    src/network.c

    Warnings
    --------

    - Not compiled with MMDF support defined, so probably it doesn't
    work (or even compile).

    - This has not been tested much so there can be bad bugs.

    Bug reports to: Kari E. Hurtta <elm@elmme-mailer.org>
    (was hurtta+elm@posti.FMI.FI)

    - Internationalized (ie. non-ASCII) domain names are not supported.

    - Support for multipart/signed and multipart/encrypted (specially:
    support for PGP/MIME) only in reading side. There is no support
    for attachments with multipart/encrypted.

    - HP's shoftkeys are no longer supported

    - DECNET addresses like host::user may be interpreted as phrase
    of group syntax or as route of source routed address.

    - Header editing screen now uses addresses in form phrase <address>,
    but because it does not require using of comma (,), multiword
    phrases must be entered in quotes.

    For example: "Kari Hurtta" <hurtta>

    - If address includes <> or comments (), they are not aliased
    expanded. So aliases must be entered as bare words.

    - Addresses given as arguments to elm command should be given
    as one address per argument. Giving of sevaral addresses per
    one argument causes that address is misparsed if header is
    edited on header editing screen.

    That is:

    Use: elm '"Kari Hurtta" <hurtta>' 'Admin <root>'

    Don't use: elm 'Kari Hurtta <hurtta>, Admin <root>'

    - p)rint command acts as P)rint text -command. So it
    is currently quite useless.
    p)rint command does that via readmsg -command. However
    P)rint text does actually same (without readmsg).

    - Some Linux libraries does not follow $LC_CTYPE when program is
    setgid. Net result is that your locale is always C. That is
    visible that $LC_CTYPE does not effect to locale printed by
    'elm -vvvvv':

    Locale (LC_CTYPE): C
    Display character-set: US-ASCII
    Sending character-set: US-ASCII

    - All refrences iso2022 maps are parsed and read to memory.
    This may cause quite big memory consumption specially because
    eastern (multibyte) sets tend to be lot of characters. That
    mapping information should be shared between processes to
    reduce memory consuption.

    - If display charset is produced by using mapping from locale
    to charset where charset definition is later invalidated
    ("removed") by setting explicit compatcharsets on user's
    .elm/elmrc, that may cause PANIC on elm's internal pager
    or other problems. Invalidation happens if display charset
    is on implicit compatcharsets list (because of charset
    definition), but does not have explicit compatcharsets list
    given by user.

    - Neither Unicode didirectional algorithm nor Right-Left scripts
    are supported.

    - In some situations two Status headers may be generated two
    Status headers -- one by IMAP deamon and one from APPENDed
    message.

    - When APPENDing message to IMAP folder (which is normal UNIX
    mailbox format) original "From " separator line can not be
    preserved -- specially it is not possible to pass envelope
    sender address.

    - For UTF-8 charset Elm only knows printable characters from
    Latin/1 range, if unicode database (see elmrc option "unidata")
    is not loaded.

    - For using of ISO2022 character sets it is required that mapping
    them to unicode is know -- otherwise Elm ME+ does not know which
    characters are printable.

    - UTF-16 surrogate pairs (D800-DFFF) are not supported on UTF-7
    charset.

    - Mixing of names using IMAP naming convention
    (imap-naming-convention = yes)
    and names using imap-charset does not work very well...

    - " Regarding my message (8 Aug 2000) regarding 'newmail' on
    AIX 4.3.3 in an 'aixterm' window and the 'aixterm' did not
    close, indeed the problem was NOT related to 'newmail' but an
    AIX bug.

    IBM has release a patch, and the 'aixterm' in AIX 4.3.3 must
    be update with fileset X11.apps.aixterm.4.3.3.26 (PTF
    U473920) is solved to problem."
    From: Noam G. Nudelman <noam@mail.biu.ac.il>

    - File /usr/share/locale/fi/charset gives charset name utf-8 on
    Linux Mandrake 7.2. This causes that Configure generates
    mapping
    fi utf-8
    to elm.mimecharsets. However that seems to have
    incorrect mapping. You may want change this to
    fi ISO-8859-1

    ( however nl_langinfo(CODESET) gives charset ISO-8859-15
    but look following entry. )

    - Locale 'fi' seems to have charset ISO-8859-15 according
    of nl_langinfo(CODESET) on Mandrake Linux 7.2 (and probaly
    others with same glibc version). However for example gnome
    terminal uses font
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-1
    and not
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-15

    Also KDE's konsole program seems use iso8859-1 character set
    although locale is 'fi' which should have ISO-8859-15 according
    of nl_langinfo (selecting "unicode" from menu seems fix that.)

    Because of mismatch more correct locale is fi_FI.88591, which gives
    ISO-8859-1 character set according of nl_langinfo(CODESET).

    ( Locale seems come from /etc/sysconfig/i18n or $HOME/.i18n )

    > To enable handling of ISO-8859-1 and ISO-8859-15 character sets
    on linux console, read comments from doc/terminal.info file.

    - Mandrake Linux 7.2 seems set LD_PRELOAD to load
    /usr/lib/libxalflaunch.so.0. That (xalf-0.4-2mdk) causes that
    elm to crash on startup (actually before main() is reached.)

    - kterm on Mandrake Linux 7.2 seems have (at least on my test
    environment) seems get bad fontlist (*VT100*fontList) which
    gives bad font for iso8859-1 -- therefore ISO-8859-1 characters
    do not work.

    ("xrdb -query" seems report resource with name "*fontList"
    -- that probably overrides "*VT100*fontList" which comes
    from /usr/lib/X11/app-defaults/KTerm )

    - Also note that initially kterm does NOT default to
    ISO-8859-1 -- therefore ISO-8859-1 works only when
    elm explicity switch to ISO-8859-1 (for example
    with 'elm -D ISO-8859-1')

    - When assembling message/partial MIME (RFC 2046)
    requires that all headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are copied from
    initial enclosing message to assembled message. It also
    requires that headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are ignored and
    dropped from enclosed message.

    For now we copy only Received: -headers. Dropping extra
    headers from enclosed message makes assembly more
    complicated (and dropping of Received: -headers
    from enclosed message do not make sense.)

    - mailer=sendmail; verify=yes works only when sendmail
    is installed as setuid root. Use mailer=submission instead.
    * Starting from sendmail 8.12 sendmail is normally
    installed as setgid smmsp and not as setuid root.
    - However error message is printed only if
    verify-local-address=yes is also set

    - IMAP connection is stalled some times. Reason is unknown.

    - From name option (-f) on fastmail is currently broken.

    Collector of these patches
    --------------------------

    Kari Hurtta <elm@elmme-mailer.org>
    Kari Hurtta <hurtta+elm@siilo.FMI.FI>

    --
    / Kari Hurtta

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Kari Hurtta@21:1/5 to All on Sun Mar 22 09:14:09 2020
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha51a

    Elm ME+ 2.5 PLalpha51a patch is available with

    <URL: http://www.elmme-mailer.org/elm-ME+2.5/PLalpha51br/elm-ME+2.5.PLalpha51a.patch.gz >

    SUMMARY: This patch fixes crash on f)ilename command
    on Elm 2.5 style file browser which occurs
    on x86_64 (amd64) architecture on Linux.

    This patch is agaist Elm ME+ 2.5 PLalpha51

    For applying thich patch use (on directory where Configure is)

    patch -p1 < {this-file}

    ------------------------------------------------------------------------
    Index: elmME+.2.5.alpha51a-cvs/hdrs/patchlevel.h
    Prereq: 1610000000
    *** elmME+.2.5.alpha51/hdrs/patchlevel.h Sat Feb 8 14:34:18 2020
    --- elmME+.2.5.alpha51a-cvs/hdrs/patchlevel.h Sat Mar 21 16:10:26 2020 ***************
    *** 1,12 ****
    ! #define PATCHLEVEL "alpha51"
    /* Used by Configure:
    ! SHAREDTAG: .1.1.51
    */
    ! #define LAST_REPORT_TIME 1610000000
    #define BUG_REPORT_ADDR "Kari Hurtta <elm@elmme-mailer.org>"
    ! #define VERS_DATE "Feb 2020" /* for elm -v option */
    #define WHAT_STRING \
    ! "@(#) Version ME+ 2.5, USENET supported version, released Feb 2020"

    /*
    * Local Variables:
    --- 1,12 ----
    ! #define PATCHLEVEL "alpha51a"
    /* Used by Configure:
    ! SHAREDTAG: .1.1.51.1
    */
    ! #define LAST_REPORT_TIME 1616000000
    #define BUG_REPORT_ADDR "Kari Hurtta <elm@elmme-mailer.org>"
    ! #define VERS_DATE "Mar 2020" /* for elm -v option */
    #define WHAT_STRING \
    ! "@(#) Version ME+ 2.5, USENET supported version, released Mar 2020"

    /*
    * Local Variables:
    Index: elmME+.2.5.alpha51a-cvs/README.ME+
    *** elmME+.2.5.alpha51/README.ME+ Sat Feb 8 14:34:18 2020
    --- elmME+.2.5.alpha51a-cvs/REA
  • From Kari Hurtta@21:1/5 to All on Tue Mar 24 08:20:35 2020
    Experimental DEB generator script for Elm ME+ 2.5 PLalpha51a
    exists on <URL: http://www.elmme-mailer.org/deb/elm-ME+2.5.html >
    directory.

    Files are following

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha51a-1.gen_deb
    DEB generator script
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha51a-1.gen_deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha51a-1.gen_deb.sig

    A command

    elm-ME+2.5.alpha51a-1.gen_deb {packager}

    generates package elmme with version 1.1.51.1-1.{distribution}.

    A command

    elm-ME+2.5.alpha51a-1.gen_deb --nonew {packager}

    generates package elm with version ME+2.5.alpha51a-1.{distribution}.

    Both commands produce package with filename elm-ME+2.5.alpha51a-1.{distribution}.{arch}.deb.

    Elm ME+ 2.5 PLalpha51a -patch fixes crash on f)ilename -command on Elm
    2.5 style file browser which occurs on amd64 (x86_64) -architecture on
    Linux. A crash does not occur on i386 -architecture on Linux.

    == New package names, amd64 (x86_64)

    Package elmme with version 1.1.51.1-1.{distribution} and architecture
    amd64 (also known as x86_64).

    * Compiled on Ubuntu 16.04.6 LTS
    (Linux 4.4, glibc 2.23, Sendmail 8.15)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha51a-1.Ubuntu16.04.amd64.deb
    Package elmme binary DEB build on Ubuntu 16.04.6 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha51a-1.Ubuntu16.04.amd64.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha51a-1.Ubuntu16.04.amd64.deb.sig

    == Signatures

    {file}.sig PGP signature (old key pubkey.asc, EA5A2379 1996-04-23)
    {file}.elm-key-2018.sig GPG signature (key elm.key.2018.asc, 44FC796B 2018-12-01, expires: 2028-11-28)

    == Configuration

    Following files (if exists) are rewritten by elmconfwriter on
    installation:

    - /usr/local/lib/elm.rc
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.hashmarks

    Deb generator script compiles elm for binary distribution, so you must
    edit /usr/local/lib/elm.rc before using Elm ME+ 2.5. Following
    variables may need to be modified on elm.rc:

    - mailer
    - hostdomain (this is usually needed)
    - hostfullname
    - hostname (usually this is not needed)
    - mailname (default values is generated from other values)
    - name-resolution (controls default values of hostdomain,
    hostfullname, hostname, mailname)

    By default first value for mailname is read from /etc/mailname file.

    For re-generation of following file, old information (if exists) is
    used:

    - /usr/local/lib/elm.rc

    WARNING: Check after installation that libraries are enabled. Global
    elm.rc values are:

    use-library =
    use-base-library = iconv
    use-config-library = resolv
    use-connect-library = tls resolv
    use-mailer-library = smtp resolv

    After editing global elm.rc run /usr/local/lib/elmrc-write -GI for
    fixing possible errors.

    On installation following existing files are merged with new values:

    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.hashmarks

    Old values from /usr/local/lib/aliases.text are converted to /usr/local/lib/elm.aliases and /usr/local/lib/aliases.text is renamed to /usr/local/lib/aliases.text.OLD.

    On installation new values without merging are written to following
    files:

    - /usr/local/lib/elm.aliases.NEW
    - /usr/local/lib/elm.mailinglists.NEW
    - /usr/local/lib/elm.mailservices.NEW
    - /usr/local/lib/elm.mimecharsets.NEW
    - /usr/local/lib/elm.mimetypes.NEW
    - /usr/local/lib/elm.terminalinfo.NEW
    - /usr/local/lib/elm.iso2022sets.NEW
    - /usr/local/lib/elm.hashmarks.NEW

    Also following directories are used:

    - /usr/local/lib/elm.map.txt/ (global setting map-text-dir =
    {lib}/elm.map.txt)
    - /usr/local/lib/elm.map.bin/ (global setting map-bin-dir =
    {lib}/elm.map.bin)
    - /usr/local/lib/elm.user.map/ (global setting user-map-dir =
    {lib}/elm.user.map)

    Hashmark EXAMPLE uses file /usr/local/lib/elm.user.map/elm.usermap.

    A command

    elm-{version}-{release}.gen_deb {packager}

    generates package elmme with version {library-version}-{release}.{distribution}. Note that a resulted
    filename of package is still elm-{version}-{release}.{arch}.deb. This
    version number is same than on files /usr/local/lib/libelmme-{module}.so.{library-version}. A filename of
    package is related to used source archive name, which is elm-{version}-{release}.tar.gz.

    A command

    elm-{version}-{release}.gen_deb --nonew {packager}

    generates package elm with version {version}-{release}.{distribution}.
    Also on this case a resulted filename of package is elm-{version}-{release}.{arch}.deb.

    SUMMARY: This patch fixes crash on f)ilename command
    on Elm 2.5 style file browser which occurs
    on x86_64 (amd64) architecture on Linux.

    Elm ME+ 2.5 PLalpha51a changelog

    Changes on Elm ME+ 2.5 PLalpha51a compared with Elm ME+ 2.5 PLalpha51 --------------------------------------------------------------------

    [ This patch is branch from the main line. ]

    SUMMARY: This patch fixes crash on f)ilename command
    on Elm 2.5 style file browser which occurs
    on x86_64 (amd64) architecture on Linux.

    - Changed Va_start() / va_end() usage on gen_browser()
    > This fixes crash on f)ilename command on
    Elm 2.5 style file browser:
    SIGNAL PANIC in signals.c:144:segv_signal
    >>>

    Segment Violation signal!


    Call stack: 7FBC6A31301E 4F108B 7FBC69AAACB0 7FBC69AFCDFA 7FBC6A30C337
    continues: 44D2EE 4502A0 47372E 46470A 490DE5
    continues: 4925FE 466D3A 7FBC69A95F45 41F1A9
    backtrace:
    /usr/local/lib/libelmme-base.so.1.1.51(panic+0x1de)[0x7fbc6a31301e]
    elm(segv_signal+0x80)[0x4f108b]
    /lib/x86_64-linux-gnu/libc.so.6(+0x36cb0)[0x7fbc69aaacb0]
    /lib/x86_64-linux-gnu/libc.so.6(strlen+0x2a)[0x7fbc69afcdfa]
    /usr/local/lib/libelmme-base.so.1.1.51(elm_smessage+0x1025)[0x7fbc6a30c337]
    elm[0x44d2ee]
    elm(gen_browser+0x73b)[0x4502a0]
    elm(save+0x834)[0x47372e]
    elm(mailbox_command+0x1cae)[0x46470a]
    elm[0x490de5]
    elm(main_messages_menu+0x165)[0x4925fe]
    elm(main+0xf13)[0x466d3a]
    /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf5)[0x7fbc69a95f45]
    elm[0x41f1a9]
    Press a <enter> to abort or <enter> to exit:
    Crash occurs on x86_64 (amd64) architecture on Linux.
    Crash does not occur on i386 architecture on Linux.
    - Changed Va_start() / va_end() usage on folder_browser()

    Warnings
    --------

    - Not compiled with MMDF support defined, so probably it doesn't
    work (or even compile).

    - This has not been tested much so there can be bad bugs.

    Bug reports to: Kari E. Hurtta <elm@elmme-mailer.org>
    (was hurtta+elm@posti.FMI.FI)

    - Internationalized (ie. non-ASCII) domain names are not supported.

    - Support for multipart/signed and multipart/encrypted (specially:
    support for PGP/MIME) only in reading side. There is no support
    for attachments with multipart/encrypted.

    - HP's shoftkeys are no longer supported

    - DECNET addresses like host::user may be interpreted as phrase
    of group syntax or as route of source routed address.

    - Header editing screen now uses addresses in form phrase <address>,
    but because it does not require using of comma (,), multiword
    phrases must be entered in quotes.

    For example: "Kari Hurtta" <hurtta>

    - If address includes <> or comments (), they are not aliased
    expanded. So aliases must be entered as bare words.

    - Addresses given as arguments to elm command should be given
    as one address per argument. Giving of sevaral addresses per
    one argument causes that address is misparsed if header is
    edited on header editing screen.

    That is:

    Use: elm '"Kari Hurtta" <hurtta>' 'Admin <root>'

    Don't use: elm 'Kari Hurtta <hurtta>, Admin <root>'

    - p)rint command acts as P)rint text -command. So it
    is currently quite useless.
    p)rint command does that via readmsg -command. However
    P)rint text does actually same (without readmsg).

    - Some Linux libraries does not follow $LC_CTYPE when program is
    setgid. Net result is that your locale is always C. That is
    visible that $LC_CTYPE does not effect to locale printed by
    'elm -vvvvv':

    Locale (LC_CTYPE): C
    Display character-set: US-ASCII
    Sending character-set: US-ASCII

    - All refrences iso2022 maps are parsed and read to memory.
    This may cause quite big memory consumption specially because
    eastern (multibyte) sets tend to be lot of characters. That
    mapping information should be shared between processes to
    reduce memory consuption.

    - If display charset is produced by using mapping from locale
    to charset where charset definition is later invalidated
    ("removed") by setting explicit compatcharsets on user's
    .elm/elmrc, that may cause PANIC on elm's internal pager
    or other problems. Invalidation happens if display charset
    is on implicit compatcharsets list (because of charset
    definition), but does not have explicit compatcharsets list
    given by user.

    - Neither Unicode didirectional algorithm nor Right-Left scripts
    are supported.

    - In some situations two Status headers may be generated two
    Status headers -- one by IMAP deamon and one from APPENDed
    message.

    - When APPENDing message to IMAP folder (which is normal UNIX
    mailbox format) original "From " separator line can not be
    preserved -- specially it is not possible to pass envelope
    sender address.

    - For UTF-8 charset Elm only knows printable characters from
    Latin/1 range, if unicode database (see elmrc option "unidata")
    is not loaded.

    - For using of ISO2022 character sets it is required that mapping
    them to unicode is know -- otherwise Elm ME+ does not know which
    characters are printable.

    - UTF-16 surrogate pairs (D800-DFFF) are not supported on UTF-7
    charset.

    - Mixing of names using IMAP naming convention
    (imap-naming-convention = yes)
    and names using imap-charset does not work very well...

    - " Regarding my message (8 Aug 2000) regarding 'newmail' on
    AIX 4.3.3 in an 'aixterm' window and the 'aixterm' did not
    close, indeed the problem was NOT related to 'newmail' but an
    AIX bug.

    IBM has release a patch, and the 'aixterm' in AIX 4.3.3 must
    be update with fileset X11.apps.aixterm.4.3.3.26 (PTF
    U473920) is solved to problem."
    From: Noam G. Nudelman <noam@mail.biu.ac.il>

    - File /usr/share/locale/fi/charset gives charset name utf-8 on
    Linux Mandrake 7.2. This causes that Configure generates
    mapping
    fi utf-8
    to elm.mimecharsets. However that seems to have
    incorrect mapping. You may want change this to
    fi ISO-8859-1

    ( however nl_langinfo(CODESET) gives charset ISO-8859-15
    but look following entry. )

    - Locale 'fi' seems to have charset ISO-8859-15 according
    of nl_langinfo(CODESET) on Mandrake Linux 7.2 (and probaly
    others with same glibc version). However for example gnome
    terminal uses font
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-1
    and not
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-15

    Also KDE's konsole program seems use iso8859-1 character set
    although locale is 'fi' which should have ISO-8859-15 according
    of nl_langinfo (selecting "unicode" from menu seems fix that.)

    Because of mismatch more correct locale is fi_FI.88591, which gives
    ISO-8859-1 character set according of nl_langinfo(CODESET).

    ( Locale seems come from /etc/sysconfig/i18n or $HOME/.i18n )

    > To enable handling of ISO-8859-1 and ISO-8859-15 character sets
    on linux console, read comments from doc/terminal.info file.

    - Mandrake Linux 7.2 seems set LD_PRELOAD to load
    /usr/lib/libxalflaunch.so.0. That (xalf-0.4-2mdk) causes that
    elm to crash on startup (actually before main() is reached.)

    - kterm on Mandrake Linux 7.2 seems have (at least on my test
    environment) seems get bad fontlist (*VT100*fontList) which
    gives bad font for iso8859-1 -- therefore ISO-8859-1 characters
    do not work.

    ("xrdb -query" seems report resource with name "*fontList"
    -- that probably overrides "*VT100*fontList" which comes
    from /usr/lib/X11/app-defaults/KTerm )

    - Also note that initially kterm does NOT default to
    ISO-8859-1 -- therefore ISO-8859-1 works only when
    elm explicity switch to ISO-8859-1 (for example
    with 'elm -D ISO-8859-1')

    - When assembling message/partial MIME (RFC 2046)
    requires that all headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are copied from
    initial enclosing message to assembled message. It also
    requires that headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are ignored and
    dropped from enclosed message.

    For now we copy only Received: -headers. Dropping extra
    headers from enclosed message makes assembly more
    complicated (and dropping of Received: -headers
    from enclosed message do not make sense.)

    - mailer=sendmail; verify=yes works only when sendmail
    is installed as setuid root. Use mailer=submission instead.
    * Starting from sendmail 8.12 sendmail is normally
    installed as setgid smmsp and not as setuid root.
    - However error message is printed only if
    verify-local-address=yes is also set

    - IMAP connection is stalled some times. Reason is unknown.

    - From name option (-f) on fastmail is currently broken.

    Collector of these patches
    --------------------------

    Kari Hurtta <elm@elmme-mailer.org>
    Kari Hurtta <hurtta+elm@siilo.FMI.FI>

    --
    / Kari Hurtta

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Kari Hurtta@21:1/5 to All on Mon Jun 8 19:44:01 2020
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha52.0

    Before applying this patch catenate parts 1 - 7 first.
    Also it should be possible to apply parts 1 - 7
    individually.

    Undo Elm ME+ 2.5 PLalpha51a patch before applying
    this patch.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha51

    ====================================== ( part 0/7 ) =========
    Elm ME+ 2.5 PLalpha52

    Undo Elm ME+ 2.5 PLalpha51a patch before applying this patch.

    - Is available with
    <URL: http://www.elmme-mailer.org/elm-ME+2.5.PLalpha52.patch.gz >
    and <URL: http://www.elmme-mailer.org/elm-ME+2.5.alpha52.1064e7434a25434de195c340c86e037f.tar.gz >
    via http.

    - Is available with
    <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.PLalpha52.patch.gz >
    and <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.alpha52.1064e7434a25434de195c340c86e037f.tar.gz >
    via https.

    - Is available on ftp.funet.fi
    via anonymous ftp
    directory pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/

    files elm-ME+2.5.PLalpha52.patch.gz
    and elm-ME+2.5.alpha52.1064e7434a25434de195c340c86e037f.tar.gz

    or is available with
    <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha52.patch.gz >
    and <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.alpha52.1064e7434a25434de195c340c86e037f.tar.gz >
    via https.

    SUMMARY: This release collects patch Elm ME+ 2.5 PLalpha51a,
    adds generation of "Message-ID:" -header field,
    adds "Message-ID:", "Expires:", "Date:",
    "In-reply-to:", and "References:" -header fields
    to 'invoke e(d)itor' buffer on header editing screen
    and adds --messages={file} and --transaction={file}
    arguments to command line of elm. This release changes
    pager date and time display on pager title line and
    changes fastmail -command. This release adds TLS 1.1
    and 1.2 alternatives to libelmme-tls module. New elmrc
    options are "valid-msg-id-domains", "generate-message-id",
    "pager-time-display" and "address-lookup". Also
    added "default-tls-version" elmrc option to "tls:" section.
    Also some other changes and fixes are included.

    Changes on Elm ME+ 2.5 PLalpha52 compared with Elm ME+ 2.5 PLalpha51 --------------------------------------------------------------------

    Undo Elm ME+ 2.5 PLalpha51a patch before applying this patch.

    SUMMARY: This release collects patch Elm ME+ 2.5 PLalpha51a,
    adds generation of "Message-ID:" -header field,
    adds "Message-ID:", "Expires:", "Date:",
    "In-reply-to:", and "References:" -header fields
    to 'invoke e(d)itor' buffer on header editing screen
    and adds --messages={file} and --transaction={file}
    arguments to command line of elm. This release changes
    pager date and time display on pager title line and
    changes fastmail -command. This release adds TLS 1.1
    and 1.2 alternatives to libelmme-tls module. New elmrc
    options are "valid-msg-id-domains", "generate-message-id",
    "pager-time-display" and "address-lookup". Also
    added "default-tls-version" elmrc option to "tls:" section.
    Also some other changes and fixes are included.

    - Changed Va_start() / va_end() usage on gen_browser()
    > This fixes crash on f)ilename command on
    Elm 2.5 style file browser:
    SIGNAL PANIC in signals.c:144:segv_signal
    >>>

    Segment Violation signal!


    Call stack: 7FBC6A31301E 4F108B 7FBC69AAACB0 7FBC69AFCDFA 7FBC6A30C337
    continues: 44D2EE 4502A0 47372E 46470A 490DE5
    continues: 4925FE 466D3A 7FBC69A95F45 41F1A9
    backtrace:
    /usr/local/lib/libelmme-base.so.1.1.51(panic+0x1de)[0x7fbc6a31301e]
    elm(segv_signal+0x80)[0x4f108b]
    /lib/x86_64-linux-gnu/libc.so.6(+0x36cb0)[0x7fbc69aaacb0]
    /lib/x86_64-linux-gnu/libc.so.6(strlen+0x2a)[0x7fbc69afcdfa]
    /usr/local/lib/libelmme-base.so.1.1.51(elm_smessage+0x1025)[0x7fbc6a30c337]
    elm[0x44d2ee]
    elm(gen_browser+0x73b)[0x4502a0]
    elm(save+0x834)[0x47372e]
    elm(mailbox_command+0x1cae)[0x46470a]
    elm[0x490de5]
    elm(main_messages_menu+0x165)[0x4925fe]
    elm(main+0xf13)[0x466d3a]
    /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf5)[0x7fbc69a95f45]
    elm[0x41f1a9]
    Press a <enter> to abort or <enter> to exit:
    Crash occurs on x86_64 (amd64) architecture on Linux.
    Crash does not occur on i386 architecture on Linux.
    - Changed Va_start() / va_end() usage on folder_browser()

    - Added
    struct message_id * message_id;
    struct digest_proc * message_digest;
    struct expanded_date * date;
    to struct mailing_headers on hdrs/addrlib.h
    - Added write_msgid_header(), write_date_header()
    to lib/addr/write_hdr.c and hdrs/addrlib.h

    NOTE: A header fields Date: and Message-ID: are generated
    before "Mail Preview Screen" entered. Therefore Date:
    header field does not reflect mail sending time. A header
    fields Date: and Message-ID: are always same on
    "Mail Preview Screen", on sent mail and on saved copy.

    - Changed static struct header_info header_types[]
    on lib/addr/headers.c so that Message-ID: is also
    allowed on .elm/elmheaders (although that is not very
    useful) or on 'invoke e(d)itor' buffer on
    header editing screen.

    - Added
    Message-ID:
    to edit buffer used by 'invoke e(d)itor' on
    header editing screen. This is supported on
    static struct header_info header_types[]
    on lib/addr/headers.c.

    - Added is_whitelisted_msgid_domain() to
    to lib/addr/outheaders.h and to hdrs/addrlib.h
    - Added elmrc option "valid-msg-id-domains" to
    lib/addr/init.c
    - Added elmrc option "generate-message-id" to
    lib/mailer/init.c

    - Elm ME+ generates message-id header field
    when sending mail. This is controller by
    new elmrc option "generate-message-id".
    Message-id domain part is checked from
    DNS when
    use-mailer-library = smtp resolv
    is used. Id domain part of message-id
    header field is listed on new elmrc option
    "valid-msg-id-domains", then domain part is
    accepted without DNS check.

    See also chapter "Message-ID generation"

    - Configure now asks fall back domain name for
    message-id. msg-id.elmme-mailer.org is suggested.

    - Added check_domain_name() to shared_libs/resolv/resolv.c

    - Added "RSA Data Security, Inc. MD5 Message-Digest
    Algorithm" from
    RFC 1321: The MD5 Message-Digest Algorithm
    and modified that to work on 64-bit machine. Test
    suite on original code produces wrong hashes.

    - Possible fix to RC_fill_enum_values() on
    shared_libs/resolv/resolv.c
    - Possible fix to verify_mail_domain2() on
    shared_libs/resolv/resolv.c

    - Added macros DEBUG_CHECK_INIT() and DEBUG_CHECK()
    to hdrs/elmlib.h

    - Changed handling of valid-domains elmrc option.
    Even when some item on list starts with dot (.),
    name stated with dot (.) does not have accepted.
    When .domain is given on valid-domains elmrc option
    it marks {anything}.domain as valid domain, but
    {anything} can not be empty.

    - Moved message_id_domain() and message_id_left()
    from lib/addr/def_addr.h to hdrs/addrlib.h

    - Added free_digest_proc(), inc_digest_proc_refcount(),
    start_digest_proc(), feed_digest_proc(),
    len_digest_proc(), mode_digest_proc(),
    end_digest_proc(), result_digest_proc()
    digest_proc_equal(), malloc_digest_proc(),
    digest_type()
    to hdrs/elmlib.h and lib/digest_wrapper.c

    - Exported name_ok() from lib/service_list.c
    as host_name_ok().

    - Changed mail() on src/mailmsg2.c

    - Added digest_feed_string() to hdrs/elmlib.h and
    lib/string.c
    - Added cs_digest_feed_from_string() to hdrs/cs_imp.h
    - Added digest_feed_str(), digest_feed_references(),
    digest_feed_message_id(), digest_feed_addrs(),
    digest_feed_expires_hdr()
    to hdrs/addrlib.h and lib/addr/digest.c

    - Added query_s_mailer_info() to hdrs/mailerlib.h
    and lib/mailer/mailer.c
    - Added mailer_info_s_query_hook() to hdrs/mailer_imp.h
    - Added Configure test for getsockname()

    - Added set_address_from_gen_helper2() to hdrs/connection_imp.h
    and lib/remote_mbx.c
    - Added local socket address (result of
    getsockaname()) to struct remote_account
    - local address (result of getsockaname())
    is now included to transcript file
    (file given with -X option).
    - Submission mailer's check for MI_REMOTE_MAILER
    implementation for query_mailer_info() now
    also check that local and remote address
    of socket is same.

    - Added verify_library_prefix() to lib/shared.c and hdrs/shared_imp.h
    - Added shared_check_dname() and mailerdom_verify_lib_status()
    to lib/mailer/shared_mailer.c and hdrs/mailerlib.h

    - Added new_expanded_date(), free_expanded_date(),
    get_expanded_date_value(), get_expanded_date_cached_time(),
    get_expanded_date_source()
    to lib/addr/outdate.c and hdrs/addrlib.h
    - Added date_hdrval() to lib/addr/date.c and
    hdrs/addrlib.h
    - Added digest_feed_date_hdr() to lib/addr/digest.c
    and hdrs/addrlib.h
    - Added expanded_time_hdrval() to lib/addr/date.c
    and hdrs/addrlib.h

    - Changed add_expires_hdr()
    - Changed parsing of Expires: -header on .elm/elmheaders
    - Added
    Expires:
    to edit buffer used by 'invoke e(d)itor' on
    header editing screen. This is supported on
    static struct header_info header_types[]
    on lib/addr/headers.c.
    - Allow "x days" as value for Expires: -header
    on edit buffer.
    - Possible fix for expval_expires()

    - Added add_date_hdr() to lib/addr/outheaders.h
    - Changed static struct header_info header_types[]
    on lib/addr/headers.c so that Date: is also
    allowed on .elm/elmheaders (although that is not very
    useful).

    - Added
    Date:
    to edit buffer used by 'invoke e(d)itor' on
    header editing screen. This is supported on
    static struct header_info header_types[]
    on lib/addr/headers.c.
    - Fixed skipping of comments between headers
    on edit buffer used by 'invoke e(d)itor' on
    header editing screen.

    - Fix for parse_parts_date_time(), wday number was
    returned wrongly.

    - Avoid
    "Failed to leave folder: Try to quit again ? ([P]anic/y/n) n"
    when
    "Move read messages to "received" folder? (y/n)"
    is canceled with ctrl-C
    - Added to sync_mbox() return status sync_mbox_cancel (-4).

    - Changed sync_mbox() so that it does not
    call emergency_exit() when EOF is send from user input.
    - Added to sync_mbox() return status sync_mbox_EOF (-5).

    - Changed real_save() so that it does not
    call emergency_exit() when end_keep_folder()
    fails. Also real_save() does not close folder
    when end_keep_folder() fails.

    - Added --messages={file} argument to elm.
    This logs some messages (usually errors)
    shown.
    - Added open_messages_log(), close_messages_log()
    to hdrs/me.h and src/out_utils.c

    - Added --transaction={file} argument to elm.
    This is same than -X {file} option.
    - Added free_transaction_file() to hdrs/elmlib.h
    and lib/remote_mbx.c
    - free_transaction_file() is called from
    free_rc_options().

    - Changed some time() calls.

    - Check on can_open() that userid and groupid have set.

    - Set close-on-exec flag on set_transaction_file() and
    init_debug().

    - Avoid
    Failed to leave folder!
    and then
    Failed to leave folder: Try to quit again ? ([P]anic/y/n) n
    on closing/leaving folders
    when several folders are open and some of them
    are read only. If just read only folder was open
    that produced already
    Folder XXXXXX is read-only and unchanged.

    - Added "-X transcript/transaction file" parameter
    to fastmail. This is useful when mailer=submission
    is used. Same option is also on elm, newmail and frm
    (on these cases transcript/transaction file will
    include passwords). Currently mailer=submission
    does not support SMTP AUTH, so there is no passwords
    on transcript/transaction file on that case now.

    - Added Message-ID: -generation to fastmail.

    - Use DEFAULT_BATCH_SUBJECT also on fastmail.

    - Added write_common_mailing_headers() to
    lib/mailer/write_common.c and hdrs/mailerlib.h
    - Used that on elm's src/mailmsg2.c and
    on fastmail.
    Note: If nohdrencoding is set on elmrc, now
    also fastmail (as elm does) adds
    X-ELM-OSV: no-hdr-encoding=1
    to outgoing mails.

    - Moved add_parameter() from src/mime_encode.c
    to lib/mailer/mime_encode.c

    - Added feed_common_mailing_headers() to
    lib/mailer/feed_common.c and hdrs/mailerlib.h
    - Used that on elm's src/mailmsg2.c and
    on fastmail

    - Added -H option to fastmail. If set, only
    Return-Path: -header field is read from
    ~/.elm/elmheaders file and other header fields
    are ignored.

    - Added similar generation of From: and Sender:
    header fields to fastmail than it is on
    elm -command. Global elm.rc option "add-sender"
    is now used also on fastmail.

    - Added sndhelper_get_sender(),
    sndhelper_handle_sender() to
    lib/mailer/senderhelper.c and hdrs/mailerlib.h
    - Used that on elm's src/mailmsg2.c and
    on fastmail

    - Moved build_address_classify_domain(),
    build_address_classify_message(),
    build_address_cancel_mode(),
    verify_mail_domain_util() from
    hdrs/me.h and src/addr_util.c to
    lib/mailer/senderhelper.c and hdrs/mailerlib.h

    - Changed static struct header_info header_types[]
    on lib/addr/headers.c so that In-reply-to: and
    References: are also allowed on .elm/elmheaders
    (although that is not very useful) or on 'invoke
    e(d)itor' buffer on header editing screen.

    - Added In-reply-to: and References: to
    'invoke e(d)itor' buffer on header editing
    screen. This is supported on
    static struct header_info header_types[]
    on lib/addr/headers.c.

    - Moved print_edit_string(), add_addr_header(),
    add_string_header(), edit_headers_on_editor()
    from src/hdrconfg.h to src/edithdr.c

    - strftime() format specifier %r (The time in
    a.m. or p.m. notation) produces 12-hour clock
    without AM/PM notification on fi_FI.UTF-8
    locale (also %p produces empty result).
    > Changed default to 24-hour clock (without
    seconds).
    - Added elmrc option "pager-time-display".
    Option have values
    legacy (same than month-day-year-12h)
    default (same than month-day-year-HH-MM)
    month-day-year-12h month day, Year 12h (am/pm)
    strftime %b %d, %Y %r
    month-day-year-24h month day, Year 24h
    strftime %b %d, %Y %T
    month-day-year-HH-MM month day, Year HH:MH
    strftime %b %d, %Y %R
    preferred Local preferred format
    strftime %c
    day-month-year-12h day month year 12h (am/pm)
    strftime %d %b %Y %r
    day-month-year-24h day month year 24h
    strftime %d %b %Y %T
    day-month-year-HH-MM day month year HH:MM
    strftime %d %b %Y %R
    YYYY-MM-DD-HH-MM numeric YYYY-MM-DD HH:MM
    YYYY-MM-DD-HH-MM-SS numeric YYYY-MM-DD HH:MM:SS
    Sender's timezone is appended to time.
    This option controls how pager show message
    date and time on title line (top line) when "titles"
    elmrc option have value ON (default).
    - If Date: is unparsable, pager no longer show dummy
    date and time on title line.
    - If Date: is parsable, but year is too early or
    year is too late (time_t overflows on 32-bit
    systems), pager shows text "year " and year number
    on place of date and time on title line (top line).

    - Replaced elm_date_str() with elm_date_text().
    - elm_date_text() will report "year xxxx" if date value
    is unsupported or overflow, but year is available
    (from time_menu_year at struct header_rec)

    - Changed that setting add-in-reply-to-phrase does not
    use elm_date_str()'s or elm_date_text()'s strftime
    for phrase time used on in-reply-to reply header field. Result
    of that is locale dependent. Changed that this
    uses date: -header format on phrase (actually
    implemented via elm_date_text(), but not available as
    "pager-time-display" value).

    - Added give_name_from_sockaddr() to lib/service_list.c
    and hdrs/connection_imp.h
    - Added elmrc option "address-lookup".
    Possible values are:
    normal Currently same than
    "gethostbyaddr"
    gethostbyaddr Use getgostbyaddr()
    getnameinfo Use getnameinfo()

    This option specifies how translation from ip-address
    to hostname is done. Default value "normal" specifies
    that normal address -lookup API (that is gethostbyaddr())
    is done.
    Both gethostbyaddr() and getnameinfo() works
    also with IPv6 (on Linux). getnameinfo() is newer
    interface, but it can return only one name. gethostbyaddr()
    may return several names. Seems that getnameinfo()
    returns first name from /etc/hosts even
    when this is not best choice.

    This is currently only used when "generate-message-id"
    have {domainspec} value "default" and "mailer"
    is "submission" and that connection is not local.

    - Added give_SOCKADDR_ptr_as_string() to
    lib/service_list.c and hdrs/connection_imp.h

    - Do not ask
    Can I test if your mailer supports DSN options: -N -R -V?
    on Configure if selected mailer is "none".

    - Changed Configure (actually shared_libs/tls/config)
    so that it detects also on Ubuntu 18.4
    that OpenSSL is available on system directory.

    - OpenSSL seems not include RAND_egd_bytes() on Ubuntu 18.4.
    Now Configure (actually shared_libs/tls/config) tests
    that RAND_egd_bytes() can be linked.

    - libelmme-tls module only used SSLv23_client_method() and
    TLSv1_client_method(). Added Configure (actually shared_libs/tls/config)
    test that
    SSLv23_client_method()
    TLS_client_method()
    TLSv1_client_method()
    TLSv1_1_client_method()
    TLSv1_2_client_method()
    can be linked.
    - Changed prototype of create_TLS_stream()
    - Changed libelmme-tls module handle more protocol versions.
    - "tls:starttls-version" and "tls:tls-version" parameters
    of global elm.mailservices and user's ~/.elm/mail.services
    file now accepts new values:
    tls-1 TLS 1 protocol
    tls-1.1 TLS 1.1 protocol
    tls-1.2 TLS 1.2 protocol
    These "tls:starttls-version" and "tls:tls-version" parameters
    also accepts old values:
    none disables STLS or STARTTLS
    ssl SSL or TLS, semantic varies
    tls TLS, semantic varies (default)
    See details from shared_libs/tls/README.ME+ file.

    Default "tls" means that protocol TLS 1 is used or with
    OpenSSL 1.1 that protocol TLS 1 or newer is used. Value
    "ssl" probably means with OpenSSL 1.0 or older that
    SSL 2 client hello packet is used.

    NOTE: Configure (actually shared_libs/tls/config) disables
    by default
    TLSv1_client_method(),
    TLSv1_1_client_method(), and
    TLSv1_2_client_method()
    on Ubuntu 18.4 because them are deprecated. This assumes
    that compiler gives "is deprecated" message and user agrees
    disabling on Configure prompt.

    ( However SSLv23_client_method() seems not produce
    "is deprecated" message. )

    - Added "default-tls-version" elmrc option
    to "tls:" section. This option accepts values:
    ssl SSL or TLS, semantic varies
    tls TLS, semantic varies (default)
    tls-1 TLS 1 protocol
    tls-1.1 TLS 1.1 protocol
    tls-1.2 TLS 1.2 protocol
    This is used, if "tls:starttls-version" and
    "tls:tls-version" parameters does not exists on
    global elm.mailservices or user's ~/.elm/mail.services
    file for particular host and service.

    - Changed that Configure puts UU directory to build-directory when
    -O option is used and not source directory when checking
    that package is complete

    - Added $dummydomain to Configure. This is used if Configure
    defaults to placeholder domain. That is '.localdomain'.
    - Added matches_dummy_domain() to lib/mailer/senderhelper.c
    and hdrs/mailerlib.h. That returns ".localdomain" if domain
    ends .localdomain and Configure or setup_names() selected that
    for placeholder domain. This is used for avoiding DNS
    lookup.

    New elmrc option:
    address-lookup
    generate-message-id
    valid-msg-id-domains
    pager-time-display
    tls:default-tls-version

    New files:
    lib/addr/md5_global.h
    lib/addr/md5.h
    lib/addr/md5c.c
    lib/addr/md5_wrapper.c
    lib/digest_wrapper.c
    hdrs/digest_imp.h
    lib/mailer/message-id.c
    lib/addr/digest.c
    lib/addr/outdate.c
    lib/mailer/write_common.c
    lib/mailer/feed_common.c
    lib/mailer/senderhelper.c
    src/edithdr.c
    shared_libs/tls/tlsconf.h.SH

    Message-ID generation
    ---------------------

    elm.rc option option "generate-message-id" tells
    how message-id should be generated for outgoing
    mail. Elm ME+ does not generate Message-ID
    header field if "generate-message-id" have
    value "none" or if Elm ME+ can't select
    "good" domain name to domain part (right
    side from '@') of message-id.

    Value of "generate-message-id" optios is either

    none Message-ID: -header field is not generated

    or value have form

    {localspec}@{domainspec}; {parameter}={value}...

    or

    {localspec}@domain.name; {parameter}={value}...

    {localspec} values includes:

    none Message-ID: -header field is not generated
    md5 Use 16 octets md5 hash value from message
    content for generating local part of message-id.
    /dev/urandom Use 16 octets from /dev/urandom for
    generating local part of message-id.
    /proc/sys/kernel/random/uuid Use content from /proc/sys/kernel/random/uuid
    as local part of message-id.

    Local part of message-id is generated from 16 octets same way on both
    md5 and /dev/urandom cases. Result includes 2 or 4 "words" which are
    separated by '.' characters (on 64-bit architecture result includes
    2 "words" and 32-bit architecture result includes 4 shorter "words").

    {domainspec} values includes:

    default Try following as domain part of message id
    1) value of "hostfullname" elmrc option
    2) mailer specific value (name of local
    address of connected socket on "submission"
    mailer, if connection is remote)
    3) First value from "mailname" elmrc option
    hostfullname Try value of "hostfullname" elmrc option as
    domain part of message id
    maildomain Try first value from "mailname" elmrc option as
    domain part of message id

    'domain.name' is any dns name which is tried as domain part of message id. This
    must include at least one dot ('.'). Without dot ('.') it is interpreted as
    {domainspec} keyword.

    {parameter} values includes:

    fallback-domain Overrides possible compile time default
    domain for domain part of message id
    default-cache-timeout Default timeout for cached results
    of dns check for domain part of message id.
    May include unit: "s" for seconds, "m"
    for minutes, "h" for hours or "d" for days.
    Without unit gives default cache timeout on
    seconds.

    check-domain Value "none" indicates that dns check is not
    done and "valid-msg-id-domains" elmrc option
    must be used.

    check-domain Value "shared" indicates that shared routine
    (resolv -module) is used for dns check.

    min-domain-labels Minimun number of domain labels (0-9) separated
    by '.' characters required for dns check.
    Value zero (0) disables counting of labels
    and rfc 822 special characters and whitespace
    are not checked.
    Note that '\.' does not count as label separator.

    With elmrc option
    use-mailer-library = resolv
    possible {parameter} value includes:

    check-domain Value "resolv" indicates that shared routine
    from resolv -module is used for dns check.

    {value} may be quoted string for "fallback-domain" and "check-domain".

    A domain part of message-id either must be listed on
    "valid-msg-id-domains" elmrc option or resolv -module must check that
    given dns name exists. If a domain part of message-id is listed
    "special-use-domains-blacklist", dns check is not done and domain part
    is not accepted.

    Warnings
    --------

    - Not compiled with MMDF support defined, so probably it doesn't
    work (or even compile).

    - This has not been tested much so there can be bad bugs.

    Bug reports to: Kari E. Hurtta <elm@elmme-mailer.org>
    (was hurtta+elm@posti.FMI.FI)

    - Internationalized (ie. non-ASCII) domain names are not supported.

    - Support for multipart/signed and multipart/encrypted (specially:
    support for PGP/MIME) only in reading side. There is no support
    for attachments with multipart/encrypted.

    - HP's shoftkeys are no longer supported

    - DECNET addresses like host::user may be interpreted as phrase
    of group syntax or as route of source routed address.

    - Header editing screen now uses addresses in form phrase <address>,
    but because it does not require using of comma (,), multiword
    phrases must be entered in quotes.

    For example: "Kari Hurtta" <hurtta>

    - If address includes <> or comments (), they are not aliased
    expanded. So aliases must be entered as bare words.

    - Addresses given as arguments to elm command should be given
    as one address per argument. Giving of sevaral addresses per
    one argument causes that address is misparsed if header is
    edited on header editing screen.

    That is:

    Use: elm '"Kari Hurtta" <hurtta>' 'Admin <root>'

    Don't use: elm 'Kari Hurtta <hurtta>, Admin <root>'

    - p)rint command acts as P)rint text -command. So it
    is currently quite useless.
    p)rint command does that via readmsg -command. However
    P)rint text does actually same (without readmsg).

    - Some Linux libraries does not follow $LC_CTYPE when program is
    setgid. Net result is that your locale is always C. That is
    visible that $LC_CTYPE does not effect to locale printed by
    'elm -vvvvv':

    Locale (LC_CTYPE): C
    Display character-set: US-ASCII
    Sending character-set: US-ASCII

    - All refrences iso2022 maps are parsed and read to memory.
    This may cause quite big memory consumption specially because
    eastern (multibyte) sets tend to be lot of characters. That
    mapping information should be shared between processes to
    reduce memory consuption.

    - If display charset is produced by using mapping from locale
    to charset where charset definition is later invalidated
    ("removed") by setting explicit compatcharsets on user's
    .elm/elmrc, that may cause PANIC on elm's internal pager
    or other problems. Invalidation happens if display charset
    is on implicit compatcharsets list (because of charset
    definition), but does not have explicit compatcharsets list
    given by user.

    - Neither Unicode didirectional algorithm nor Right-Left scripts
    are supported.

    - In some situations two Status headers may be generated two
    Status headers -- one by IMAP deamon and one from APPENDed
    message.

    - When APPENDing message to IMAP folder (which is normal UNIX
    mailbox format) original "From " separator line can not be
    preserved -- specially it is not possible to pass envelope
    sender address.

    - For UTF-8 charset Elm only knows printable characters from
    Latin/1 range, if unicode database (see elmrc option "unidata")
    is not loaded.

    - For using of ISO2022 character sets it is required that mapping

    [continued in next message]

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Kari Hurtta@21:1/5 to All on Mon Jun 8 19:46:06 2020
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha52.2

    Before applying this patch catenate parts 1 - 7 first.
    Also it should be possible to apply parts 1 - 7
    individually.

    Undo Elm ME+ 2.5 PLalpha51a patch before applying
    this patch.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha51

    ====================================== ( part 2/7 ) =========
    Index: elmME+.2.5.alpha52-cvs/hdrs/shared_imp.h
    *** elmME+.2.5.alpha51/hdrs/shared_imp.h Sun Feb 4 21:36:28 2018
    --- elmME+.2.5.alpha52-cvs/hdrs/shared_imp.h Tue May 12 21:18:18 2020 ***************
    *** 1,7 ****
    ! /* $Id: shared_imp.h,v 2.11 2017/12/30 11:44:58 hurtta Exp $ */

    /******************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 2.11 $ $State: Exp $
    *
    * Author: Kari Hurtta <hurtta+elm@siilo.FMI.FI>
    * (was hurtta+elm@posti.FMI.FI, hurtta+elm@ozone.FMI.FI) --- 1,7 ----
    ! /* $Id: shared_imp.h,v 2.12 2020/05/12 18:18:18 hurtta Exp $ */

    /******************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 2.12 $ $State: Exp $
    *
    * Author: Kari Hurtta <hurtta+elm@siilo.FMI.FI>
    * (was hurtta+elm@posti.FMI.FI, hurtta+elm@ozone.FMI.FI) ***************
    *** 116,121 ****
    --- 116,131 ----
    struct dt_shared_info *var));
    extern int give_rnum P_((struct ImpInfo * I, struct dt_shared_info *var));

    + extern enum ver
  • From Kari Hurtta@21:1/5 to All on Mon Jun 8 19:45:13 2020
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha52.1

    Before applying this patch catenate parts 1 - 7 first.
    Also it should be possible to apply parts 1 - 7
    individually.

    Undo Elm ME+ 2.5 PLalpha51a patch before applying
    this patch.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha51

    ====================================== ( part 1/7 ) =========
    For applying thich patch use (on directory where Configure is)

    patch -p1 < {this-file}

    ------------------------------------------------------------------------
    Index: elmME+.2.5.alpha52-cvs/hdrs/patchlevel.h
    Prereq: 1610000000
    *** elmME+.2.5.alpha51/hdrs/patchlevel.h Sat Feb 8 14:34:18 2020
    --- elmME+.2.5.alpha52-cvs/hdrs/patchlevel.h Sat Jun 6 10:57:01 2020 ***************
    *** 1,12 ****
    ! #define PATCHLEVEL "alpha51"
    /* Used by Configure:
    ! SHAREDTAG: .1.1.51
    */
    ! #define LAST_REPORT_TIME 1610000000
    #define BUG_REPORT_ADDR "Kari Hurtta <elm@elmme-mailer.org>"
    ! #define VERS_DATE "Feb 2020" /* for elm -v option */
    #define WHAT_STRING \
    ! "@(#) Version ME+ 2.5, USENET supported version, released Feb 2020"

    /*
    * Local Variables:
    --- 1,12 ----
    ! #define PATCHLEVEL "alpha52"
    /* Used by Configure:
    ! SHAREDTAG: .1.1.52
    */
    ! #define LAST_REPORT_TIME 1620000000
    #define BUG_REPORT_ADDR "Kari Hurtta <elm@elmme-mailer.org>"
    ! #define VERS_DATE "Jun 2020" /* for elm -v option */
    #define WHAT_STRING \
    ! "@(#) Version ME+ 2.5, USENET supported version, released Jun 2020"

    /*
    * Local Variables:
    Index: elmME+.2.5.alpha52-cvs/README.ME+
    *** elmME+.2.5.alpha51/README.ME+ Sat Feb 8 14:34:18 2020
    --- elmME+.2.5.alpha52-cvs/README.ME
  • From Kari Hurtta@21:1/5 to All on Mon Jun 8 19:47:03 2020
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha52.3

    Before applying this patch catenate parts 1 - 7 first.
    Also it should be possible to apply parts 1 - 7
    individually.

    Undo Elm ME+ 2.5 PLalpha51a patch before applying
    this patch.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha51

    ====================================== ( part 3/7 ) =========
    Index: elmME+.2.5.alpha52-cvs/lib/cs_iso2022.c
    *** elmME+.2.5.alpha51/lib/cs_iso2022.c Sat May 21 10:02:23 2016
    --- elmME+.2.5.alpha52-cvs/lib/cs_iso2022.c Tue May 12 21:18:18 2020 ***************
    *** 1,7 ****
    ! static char rcsid[] = "@(#)$Id: cs_iso2022.c,v 2.9 2016/03/21 20:26:13 hurtta Exp $";

    /******************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 2.9 $ $State: Exp $
    *
    * Author: Kari Hurtta <hurtta+elm@siilo.FMI.FI>
    * (was hurtta+elm@posti.FMI.FI, hurtta+elm@ozone.FMI.FI) --- 1,7 ----
    ! static char rcsid[] = "@(#)$Id: cs_iso2022.c,v 2.10 2020/05/12 18:18:18 hurtta Exp $";

    /******************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 2.10 $ $State: Exp $
    *
    * Author: Kari Hurtta <hurtta+elm@siilo.FMI.FI>
    * (was hurtta+elm@posti.FMI.FI, hurtta+elm@ozone.FMI.FI) ***************
    *** 4376,4381 ****
    --- 4376,4382 ----
    cs_estimate_clip_iso2022,
    cs_iso2022_info_set_iso2022,
  • From Kari Hurtta@21:1/5 to All on Mon Jun 8 19:48:59 2020
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha52.5

    Before applying this patch catenate parts 1 - 7 first.
    Also it should be possible to apply parts 1 - 7
    individually.

    Undo Elm ME+ 2.5 PLalpha51a patch before applying
    this patch.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha51

    ====================================== ( part 5/7 ) =========
    Index: elmME+.2.5.alpha52-cvs/lib/shared.c
    *** elmME+.2.5.alpha51/lib/shared.c Tue Dec 25 20:13:54 2018
    --- elmME+.2.5.alpha52-cvs/lib/shared.c Tue May 12 21:18:18 2020 ***************
    *** 1,4 ****
    ! static char rcsid[] = "@(#)$Id: shared.c,v 2.23 2018/12/21 11:21:42 hurtta Exp $";

    /******************************************************************************
    *
    --- 1,4 ----
    ! static char rcsid[] = "@(#)$Id: shared.c,v 2.24 2020/05/12 18:18:18 hurtta Exp $";

    /******************************************************************************
    *
    ***************
    *** 654,659 ****
    --- 654,767 ----
    libraries_loaded = 1;
    }

    + enum verlib_status verify_library_prefix(prefix,var,read_flags)
    + const char *prefix;
    + struct dt_shared_info *var;
    + int read_flags /* READ_FLAG_IGNORE_MISSING */;
    + {
    + enum verlib_status ret = verlib_not_loaded;
    + int i;
    + int found = 0;
    +
    +
    + DPRINT(Debug,9,(&Debug,
    + "verify_library_prefix: Checking [var %p] for prefix %s ...\n",
    + var,prefix));
    +
    + for (i = 0; i < var->shared_list_len; i++) {
    +
  • From Kari Hurtta@21:1/5 to All on Mon Jun 8 19:51:10 2020
    Archive-name: elmME+2.5/PLalpha52.4

    Before applying this patch catenate parts 1 - 7 first.
    Also it should be possible to apply parts 1 - 7
    individually.

    Undo Elm ME+ 2.5 PLalpha51a patch before applying
    this patch.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha51

    ====================================== ( part 4/7 ) =========
    Index: elmME+.2.5.alpha52-cvs/lib/mailer/mime_encode.c
    *** elmME+.2.5.alpha51/lib/mailer/mime_encode.c Wed Dec 10 22:19:12 2014
    --- elmME+.2.5.alpha52-cvs/lib/mailer/mime_encode.c Thu May 21 05:58:29 2020
    ***************
    *** 1,13 ****
    ! static char rcsid[] = "@(#)$Id: mime_encode.c,v 2.2 2014/11/15 11:00:24 hurtta Exp $";

    /******************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 2.2 $ $State: Exp $
    *
    * Modified by: Kari Hurtta <hurtta+elm@siilo.FMI.FI>
    * or Kari Hurtta <elm@elmme-mailer.org>
    *
    * Moved base64_encode(), line_quoted_printable_encode() and
    ! * quoted_printable_encode() from src/mime_encode.c
    *
    * Initially written by: Michael Elkins <elkins@aero.org>, 1995
    *****************************************************************************/
    --- 1,13 ----
    ! static char rcsid[] = "@(#)$Id: mime_encode.c,v 2.3 2020/05/21 02:58:29 hurtta Exp $";

    /******************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 2.3 $ $State: Exp $
    *
  • From Kari Hurtta@21:1/5 to All on Mon Jun 8 19:53:03 2020
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha52.7

    Before applying this patch catenate parts 1 - 7 first.
    Also it should be possible to apply parts 1 - 7
    individually.

    Undo Elm ME+ 2.5 PLalpha51a patch before applying
    this patch.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha51

    ====================================== ( part 7/7 ) =========
    Index: elmME+.2.5.alpha52-cvs/src/messages/Makefile.SH
    *** elmME+.2.5.alpha51/src/messages/Makefile.SH Tue Dec 25 20:13:54 2018
    --- elmME+.2.5.alpha52-cvs/src/messages/Makefile.SH Thu May 21 05:58:29 2020
    ***************
    *** 33,39 ****
    cat >Makefile <<!GROK!THIS!
    #!$make
    #
    ! # $Id: Makefile.SH,v 2.10 2018/08/01 09:36:26 hurtta Exp $
    #
    # Makefile for the ELM (ME+) mail program.
    #
    --- 33,39 ----
    cat >Makefile <<!GROK!THIS!
    #!$make
    #
    ! # $Id: Makefile.SH,v 2.11 2020/05/21 02:58:29 hurtta Exp $
    #
    # Makefile for the ELM (ME+) mail program.
    #
    ***************
    *** 97,103 ****

    def_messages.h: $(IHDR)/elm_defs.h $(IHDR)/me.h \
    $(INCLDIR)/mailerlib.h $(INCLDIR)/mboxlib.h \
    ! $(INCLDIR)/mboxlib.h $(INCLDIR)/schedule_time.h
    cmp $(SRC)/$@ $@ 2>/dev/null || $(CP) $(SRC)/$@ $@
    $(CHMOD) u+w $@
    $(TOUCH) $@
    --- 97,103 ----

    def_messages.h: $(IHDR)/elm_defs.h $(IHDR)/me.h \
    $(INCLDIR)/mailerlib.h $(INCLDIR)/mboxlib.h \
    ! $(INCLDIR)/mboxlib.h $(INCLDIR)/schedule_time.h
    cmp $(SRC)/$@ $@ 2>/dev/null || $(CP) $(SRC)/$@ $@
    $(CHMOD) u+w $@
    $(TOUCH) $@
    In
  • From Kari Hurtta@21:1/5 to All on Mon Jun 8 19:52:22 2020
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha52.6

    Before applying this patch catenate parts 1 - 7 first.
    Also it should be possible to apply parts 1 - 7
    individually.

    Undo Elm ME+ 2.5 PLalpha51a patch before applying
    this patch.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha51

    ====================================== ( part 6/7 ) =========
    Index: elmME+.2.5.alpha52-cvs/shared_libs/tls/tlsconf.h.SH
    *** /tmp/1554-very-long-file-name/NULL-1554-comes-in-here--XXXXXXXXX Sat Jun 6 13:58:09 2020
    --- elmME+.2.5.alpha52-cvs/shared_libs/tls/tlsconf.h.SH Sun May 31 14:57:36 2020
    ***************
    *** 0 ****
    --- 1,68 ----
    + case $CONFIG in
    + '')
    + if test ! -f config.sh; then
    + ln ../config.sh . || \
    + ln ../../config.sh . || \
    + ln ../../../config.sh . || \
    + (echo "Can't find config.sh."; exit 1)
    + fi
    + . ./config.sh
    +
    + ;;
    + esac
    +
    + case "$subdir" in
    + '')
    + case "$0" in
    + */*) cd `expr X$0 : 'X\(.*\)/'` ;;
    + esac
    +
    + ;;
    + *)
    +
    + ;;
    + esac
    +
    +
    + echo "Extracting shared_libs/tls/tlsconf.h (with variable substitutions)"
    +
    + sed <<!GROK!THIS! >tlsconf.h -e 's!^#undef!/\*#undef!' -e 's!/\*\(.*\)/\*!/\*\1!'
    + /* Config file for resolver routines
    + *
    + * $Id: tlsconf.h.SH,v 2.1 2020/05/31 11:57:36 hurtta Exp $
    + */
    +
    + /* TLS_HAVE_EGD:
    + May use RAND_egd_bytes()
    + */
    + #$tls_have_egd TLS_HAVE_EGD /**/
    +
    + /* TLS_HAVE_SSLv23_METHOD:
    + May use SSLv23_client_method()
    + */
    + #$tls_have_SSLv23 TLS_HAVE_SSLv23_METHO
  • From Kari Hurtta@21:1/5 to Kari Hurtta on Tue Jun 9 19:19:59 2020
    XPost: alt.sources

    Kari Hurtta <hurtta@kasvihuone.keh.iki.fi> writes:

    Archive-name: elmME+2.5/PLalpha52.0

    Before applying this patch catenate parts 1 - 7 first.
    Also it should be possible to apply parts 1 - 7
    individually.

    Undo Elm ME+ 2.5 PLalpha51a patch before applying
    this patch.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha51

    ====================================== ( part 0/7 ) =========
    Elm ME+ 2.5 PLalpha52

    Undo Elm ME+ 2.5 PLalpha51a patch before applying this patch.

    - Is available with
    <URL: http://www.elmme-mailer.org/elm-ME+2.5.PLalpha52.patch.gz >
    and <URL: http://www.elmme-mailer.org/elm-ME+2.5.alpha52.1064e7434a25434de195c340c86e037f.tar.gz >
    via http.

    - Is available with
    <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.PLalpha52.patch.gz >
    and <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.alpha52.1064e7434a25434de195c340c86e037f.tar.gz >
    via https.

    - Is available on ftp.funet.fi
    via anonymous ftp
    directory pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/

    files elm-ME+2.5.PLalpha52.patch.gz
    and elm-ME+2.5.alpha52.1064e7434a25434de195c340c86e037f.tar.gz

    or is available with
    <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha52.patch.gz >
    and <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.alpha52.1064e7434a25434de195c340c86e037f.tar.gz >
    via https.

    Should be:

    or is available with
    <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha52.patch.gz >
    and <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.alpha52.1064e7434a25434de195c340c86e037f.tar.gz >
    via https.

    SUMMARY: This release collects patch Elm ME+ 2.5 PLalpha51a,
    adds generation of "Message-ID:" -header field,
    adds "Message-ID:", "Expires:", "Date:",
    "In-reply-to:", and "References:" -header fields
    to 'invoke e(d)itor' buffer on header editing screen
    and adds --messages={file} and --transaction={file}
    arguments to command line of elm. This release changes
    pager date and time display on pager title line and
    changes fastmail -command. This release adds TLS 1.1
    and 1.2 alternatives to libelmme-tls module. New elmrc
    options are "valid-msg-id-domains", "generate-message-id",
    "pager-time-display" and "address-lookup". Also
    added "default-tls-version" elmrc option to "tls:" section.
    Also some other changes and fixes are included.

    / Kari Hurtta

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Kari Hurtta@21:1/5 to All on Wed Jun 10 19:02:00 2020
    Experimental RPM spec file for ELM ME+ 2.5 PLalpha52
    exists on <URL: http://www.elmme-mailer.org/rpm/elm-ME+2.5.html >
    directory.

    Files are following

    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha52-1.spec
    RPM spec file
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha52-1.spec.elm-key-2018.sig
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha52-1.spec.sig

    ** Notes

    - elm-ME+2.5.alpha52-1.mdk7.1.src.rpm is signed internally with GPG
    key elm.key.2018.asc (44FC796B 2018-12-01).

    * Compiled on Linux Mandrake release 7.2
    (Linux 2.2, glibc 2.1, Sendmail 8.13)

    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha52-1.mdk7.2.i686.rpm
    Package elm binary RPM build on Linux Mandrake release 7.2
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha52-1.mdk7.2.i686.rpm.sig
    - http://www.elmme-mailer.org/rpm/elm-mod-ME+2.5.alpha52-1.mdk7.2.i686.rpm
    Package elm-mod binary RPM build on Linux Mandrake release 7.2
    - http://www.elmme-mailer.org/rpm/elm-mod-ME+2.5.alpha52-1.mdk7.2.i686.rpm.sig
    - http://www.elmme-mailer.org/rpm/elm-tls-ME+2.5.alpha52-1.mdk7.2.i686.rpm
    Package elm-tls binary RPM build on Linux Mandrake release 7.2
    - http://www.elmme-mailer.org/rpm/elm-tls-ME+2.5.alpha52-1.mdk7.2.i686.rpm.sig

    ** Notes

    - elm-ME+2.5.alpha52-1.mdk7.2.i686.rpm and
    elm-*-ME+2.5.alpha52-1.mdk7.2.i686.rpm are signed internally with
    GPG key elm.key.2018.asc (44FC796B 2018-12-01).
    - elm-ME+2.5.alpha52-1.mdk7.2.i686.rpm is compiled agaist Sendmail
    8.13 (not from Mandrake distribution).
    - elm-tls-ME+2.5.alpha51-1.mdk7.2.i686.rpm do not load/work on
    Mandrake 7.2, because openssl library misses ASN1_STRING_to_UTF8
    function.

    * Configuration

    Following files (if exists) are rewritten by elmconfwriter on
    installation:

    - /usr/local/lib/elm.rc
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.hashmarks

    Spec file compiles elm for binary distribution, so you must edit
    /usr/local/lib/elm.rc before using Elm ME+ 2.5. Following variables may
    need to be modified on elm.rc:

    - mailer
    - hostdomain (this is usually needed)
    - hostfullname
    - hostname (usually this is not needed)
    - mailname (default values is generated from other values)
    name-resolution (controls default values of hostdomain,
    hostfullname, hostname, mailname)

    For re-generation of following file, old information (if exists) is
    used:

    - /usr/local/lib/elm.rc

    WARNING: Check after installation that libraries are enabled. Global
    elm.rc values are:

    use-library =
    use-base-library = iconv
    use-config-library = resolv
    use-connect-library = tls resolv
    use-mailer-library = smtp resolv

    Note that libelmme-resolv.so does not compile on all distributions. In
    that case omit resolv from elm.rc.

    After editing global elm.rc run /usr/local/lib/elmrc-write -GI for
    fixing possible errors.

    On installation following existing files are merged with new values:

    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.hashmarks

    Old values from /usr/local/lib/aliases.text are converted to /usr/local/lib/elm.aliases and /usr/local/lib/aliases.text is renamed to /usr/local/lib/aliases.text.OLD.

    On installation new values without merging are written to following
    files:

    - /usr/local/lib/elm.aliases.NEW
    - /usr/local/lib/elm.mailinglists.NEW
    - /usr/local/lib/elm.mailservices.NEW
    - /usr/local/lib/elm.mimecharsets.NEW
    - /usr/local/lib/elm.mimetypes.NEW
    - /usr/local/lib/elm.terminalinfo.NEW
    - /usr/local/lib/elm.iso2022sets.NEW
    - /usr/local/lib/elm.hashmarks.NEW

    Package elm-mod includes libelmme-iconv.so and libelmme-smtp.so. If
    package elm-mod includes libelmme-resolv.so, this is noted. And package
    elm-tls includes libelmme-tls.so.

    Installation loses mailer = submission setting from global /usr/local/lib/elm.rc, because when elm package rewrites elm.rc,
    submission mailer is not available. It becomes from elm-mod package.

    However failed values of /usr/local/lib/elm.rc are saved to /usr/local/lib/elm.rc.old-values file during installation.

    Global setting mailer = submission is restored from /usr/local/lib/elm.rc.old-values file, when package elm-mod is
    installed.

    Also following directories are used:

    - /usr/local/lib/elm.map.txt/ (global setting map-text-dir =
    {lib}/elm.map.txt)
    - /usr/local/lib/elm.map.bin/ (global setting map-bin-dir =
    {lib}/elm.map.bin)
    - /usr/local/lib/elm.user.map/ (global setting user-map-dir =
    {lib}/elm.user.map)

    Hashmark EXAMPLE uses file /usr/local/lib/elm.user.map/elm.usermap.

    SUMMARY: This release collects patch Elm ME+ 2.5 PLalpha51a,
    adds generation of "Message-ID:" -header field,
    adds "Message-ID:", "Expires:", "Date:",
    "In-reply-to:", and "References:" -header fields
    to 'invoke e(d)itor' buffer on header editing screen
    and adds --messages={file} and --transaction={file}
    arguments to command line of elm. This release changes
    pager date and time display on pager title line and
    changes fastmail -command. This release adds TLS 1.1
    and 1.2 alternatives to libelmme-tls module. New elmrc
    options are "valid-msg-id-domains", "generate-message-id",
    "pager-time-display" and "address-lookup". Also
    added "default-tls-version" elmrc option to "tls:" section.
    Also some other changes and fixes are included.

    Elm ME+ 2.5 PLalpha52 changelog

    Changes on Elm ME+ 2.5 PLalpha52 compared with Elm ME+ 2.5 PLalpha51 --------------------------------------------------------------------

    Undo Elm ME+ 2.5 PLalpha51a patch before applying this patch.

    SUMMARY: This release collects patch Elm ME+ 2.5 PLalpha51a,
    adds generation of "Message-ID:" -header field,
    adds "Message-ID:", "Expires:", "Date:",
    "In-reply-to:", and "References:" -header fields
    to 'invoke e(d)itor' buffer on header editing screen
    and adds --messages={file} and --transaction={file}
    arguments to command line of elm. This release changes
    pager date and time display on pager title line and
    changes fastmail -command. This release adds TLS 1.1
    and 1.2 alternatives to libelmme-tls module. New elmrc
    options are "valid-msg-id-domains", "generate-message-id",
    "pager-time-display" and "address-lookup". Also
    added "default-tls-version" elmrc option to "tls:" section.
    Also some other changes and fixes are included.

    - Changed Va_start() / va_end() usage on gen_browser()
    > This fixes crash on f)ilename command on
    Elm 2.5 style file browser:
    SIGNAL PANIC in signals.c:144:segv_signal
    >>>

    Segment Violation signal!


    Call stack: 7FBC6A31301E 4F108B 7FBC69AAACB0 7FBC69AFCDFA 7FBC6A30C337
    continues: 44D2EE 4502A0 47372E 46470A 490DE5
    continues: 4925FE 466D3A 7FBC69A95F45 41F1A9
    backtrace:
    /usr/local/lib/libelmme-base.so.1.1.51(panic+0x1de)[0x7fbc6a31301e]
    elm(segv_signal+0x80)[0x4f108b]
    /lib/x86_64-linux-gnu/libc.so.6(+0x36cb0)[0x7fbc69aaacb0]
    /lib/x86_64-linux-gnu/libc.so.6(strlen+0x2a)[0x7fbc69afcdfa]
    /usr/local/lib/libelmme-base.so.1.1.51(elm_smessage+0x1025)[0x7fbc6a30c337]
    elm[0x44d2ee]
    elm(gen_browser+0x73b)[0x4502a0]
    elm(save+0x834)[0x47372e]
    elm(mailbox_command+0x1cae)[0x46470a]
    elm[0x490de5]
    elm(main_messages_menu+0x165)[0x4925fe]
    elm(main+0xf13)[0x466d3a]
    /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf5)[0x7fbc69a95f45]
    elm[0x41f1a9]
    Press a <enter> to abort or <enter> to exit:
    Crash occurs on x86_64 (amd64) architecture on Linux.
    Crash does not occur on i386 architecture on Linux.
    - Changed Va_start() / va_end() usage on folder_browser()

    - Added
    struct message_id * message_id;
    struct digest_proc * message_digest;
    struct expanded_date * date;
    to struct mailing_headers on hdrs/addrlib.h
    - Added write_msgid_header(), write_date_header()
    to lib/addr/write_hdr.c and hdrs/addrlib.h

    NOTE: A header fields Date: and Message-ID: are generated
    before "Mail Preview Screen" entered. Therefore Date:
    header field does not reflect mail sending time. A header
    fields Date: and Message-ID: are always same on
    "Mail Preview Screen", on sent mail and on saved copy.

    - Changed static struct header_info header_types[]
    on lib/addr/headers.c so that Message-ID: is also
    allowed on .elm/elmheaders (although that is not very
    useful) or on 'invoke e(d)itor' buffer on
    header editing screen.

    - Added
    Message-ID:
    to edit buffer used by 'invoke e(d)itor' on
    header editing screen. This is supported on
    static struct header_info header_types[]
    on lib/addr/headers.c.

    - Added is_whitelisted_msgid_domain() to
    to lib/addr/outheaders.h and to hdrs/addrlib.h
    - Added elmrc option "valid-msg-id-domains" to
    lib/addr/init.c
    - Added elmrc option "generate-message-id" to
    lib/mailer/init.c

    - Elm ME+ generates message-id header field
    when sending mail. This is controller by
    new elmrc option "generate-message-id".
    Message-id domain part is checked from
    DNS when
    use-mailer-library = smtp resolv
    is used. Id domain part of message-id
    header field is listed on new elmrc option
    "valid-msg-id-domains", then domain part is
    accepted without DNS check.

    See also chapter "Message-ID generation"

    - Configure now asks fall back domain name for
    message-id. msg-id.elmme-mailer.org is suggested.

    - Added check_domain_name() to shared_libs/resolv/resolv.c

    - Added "RSA Data Security, Inc. MD5 Message-Digest
    Algorithm" from
    RFC 1321: The MD5 Message-Digest Algorithm
    and modified that to work on 64-bit machine. Test
    suite on original code produces wrong hashes.

    - Possible fix to RC_fill_enum_values() on
    shared_libs/resolv/resolv.c
    - Possible fix to verify_mail_domain2() on
    shared_libs/resolv/resolv.c

    - Added macros DEBUG_CHECK_INIT() and DEBUG_CHECK()
    to hdrs/elmlib.h

    - Changed handling of valid-domains elmrc option.
    Even when some item on list starts with dot (.),
    name stated with dot (.) does not have accepted.
    When .domain is given on valid-domains elmrc option
    it marks {anything}.domain as valid domain, but
    {anything} can not be empty.

    - Moved message_id_domain() and message_id_left()
    from lib/addr/def_addr.h to hdrs/addrlib.h

    - Added free_digest_proc(), inc_digest_proc_refcount(),
    start_digest_proc(), feed_digest_proc(),
    len_digest_proc(), mode_digest_proc(),
    end_digest_proc(), result_digest_proc()
    digest_proc_equal(), malloc_digest_proc(),
    digest_type()
    to hdrs/elmlib.h and lib/digest_wrapper.c

    - Exported name_ok() from lib/service_list.c
    as host_name_ok().

    - Changed mail() on src/mailmsg2.c

    - Added digest_feed_string() to hdrs/elmlib.h and
    lib/string.c
    - Added cs_digest_feed_from_string() to hdrs/cs_imp.h
    - Added digest_feed_str(), digest_feed_references(),
    digest_feed_message_id(), digest_feed_addrs(),
    digest_feed_expires_hdr()
    to hdrs/addrlib.h and lib/addr/digest.c

    - Added query_s_mailer_info() to hdrs/mailerlib.h
    and lib/mailer/mailer.c
    - Added mailer_info_s_query_hook() to hdrs/mailer_imp.h
    - Added Configure test for getsockname()

    - Added set_address_from_gen_helper2() to hdrs/connection_imp.h
    and lib/remote_mbx.c
    - Added local socket address (result of
    getsockaname()) to struct remote_account
    - local address (result of getsockaname())
    is now included to transcript file
    (file given with -X option).
    - Submission mailer's check for MI_REMOTE_MAILER
    implementation for query_mailer_info() now
    also check that local and remote address
    of socket is same.

    - Added verify_library_prefix() to lib/shared.c and hdrs/shared_imp.h
    - Added shared_check_dname() and mailerdom_verify_lib_status()
    to lib/mailer/shared_mailer.c and hdrs/mailerlib.h

    - Added new_expanded_date(), free_expanded_date(),
    get_expanded_date_value(), get_expanded_date_cached_time(),
    get_expanded_date_source()
    to lib/addr/outdate.c and hdrs/addrlib.h
    - Added date_hdrval() to lib/addr/date.c and
    hdrs/addrlib.h
    - Added digest_feed_date_hdr() to lib/addr/digest.c
    and hdrs/addrlib.h
    - Added expanded_time_hdrval() to lib/addr/date.c
    and hdrs/addrlib.h

    - Changed add_expires_hdr()
    - Changed parsing of Expires: -header on .elm/elmheaders
    - Added
    Expires:
    to edit buffer used by 'invoke e(d)itor' on
    header editing screen. This is supported on
    static struct header_info header_types[]
    on lib/addr/headers.c.
    - Allow "x days" as value for Expires: -header
    on edit buffer.
    - Possible fix for expval_expires()

    - Added add_date_hdr() to lib/addr/outheaders.h
    - Changed static struct header_info header_types[]
    on lib/addr/headers.c so that Date: is also
    allowed on .elm/elmheaders (although that is not very
    useful).

    - Added
    Date:
    to edit buffer used by 'invoke e(d)itor' on
    header editing screen. This is supported on
    static struct header_info header_types[]
    on lib/addr/headers.c.
    - Fixed skipping of comments between headers
    on edit buffer used by 'invoke e(d)itor' on
    header editing screen.

    - Fix for parse_parts_date_time(), wday number was
    returned wrongly.

    - Avoid
    "Failed to leave folder: Try to quit again ? ([P]anic/y/n) n"
    when
    "Move read messages to "received" folder? (y/n)"
    is canceled with ctrl-C
    - Added to sync_mbox() return status sync_mbox_cancel (-4).

    - Changed sync_mbox() so that it does not
    call emergency_exit() when EOF is send from user input.
    - Added to sync_mbox() return status sync_mbox_EOF (-5).

    - Changed real_save() so that it does not
    call emergency_exit() when end_keep_folder()
    fails. Also real_save() does not close folder
    when end_keep_folder() fails.

    - Added --messages={file} argument to elm.
    This logs some messages (usually errors)
    shown.
    - Added open_messages_log(), close_messages_log()
    to hdrs/me.h and src/out_utils.c

    - Added --transaction={file} argument to elm.
    This is same than -X {file} option.
    - Added free_transaction_file() to hdrs/elmlib.h
    and lib/remote_mbx.c
    - free_transaction_file() is called from
    free_rc_options().

    - Changed some time() calls.

    - Check on can_open() that userid and groupid have set.

    - Set close-on-exec flag on set_transaction_file() and
    init_debug().

    - Avoid
    Failed to leave folder!
    and then
    Failed to leave folder: Try to quit again ? ([P]anic/y/n) n
    on closing/leaving folders
    when several folders are open and some of them
    are read only. If just read only folder was open
    that produced already
    Folder XXXXXX is read-only and unchanged.

    - Added "-X transcript/transaction file" parameter
    to fastmail. This is useful when mailer=submission
    is used. Same option is also on elm, newmail and frm
    (on these cases transcript/transaction file will
    include passwords). Currently mailer=submission
    does not support SMTP AUTH, so there is no passwords
    on transcript/transaction file on that case now.

    - Added Message-ID: -generation to fastmail.

    - Use DEFAULT_BATCH_SUBJECT also on fastmail.

    - Added write_common_mailing_headers() to
    lib/mailer/write_common.c and hdrs/mailerlib.h
    - Used that on elm's src/mailmsg2.c and
    on fastmail.
    Note: If nohdrencoding is set on elmrc, now
    also fastmail (as elm does) adds
    X-ELM-OSV: no-hdr-encoding=1
    to outgoing mails.

    - Moved add_parameter() from src/mime_encode.c
    to lib/mailer/mime_encode.c

    - Added feed_common_mailing_headers() to
    lib/mailer/feed_common.c and hdrs/mailerlib.h
    - Used that on elm's src/mailmsg2.c and
    on fastmail

    - Added -H option to fastmail. If set, only
    Return-Path: -header field is read from
    ~/.elm/elmheaders file and other header fields
    are ignored.

    - Added similar generation of From: and Sender:
    header fields to fastmail than it is on
    elm -command. Global elm.rc option "add-sender"
    is now used also on fastmail.

    - Added sndhelper_get_sender(),
    sndhelper_handle_sender() to
    lib/mailer/senderhelper.c and hdrs/mailerlib.h
    - Used that on elm's src/mailmsg2.c and
    on fastmail

    - Moved build_address_classify_domain(),
    build_address_classify_message(),
    build_address_cancel_mode(),
    verify_mail_domain_util() from
    hdrs/me.h and src/addr_util.c to
    lib/mailer/senderhelper.c and hdrs/mailerlib.h

    - Changed static struct header_info header_types[]
    on lib/addr/headers.c so that In-reply-to: and
    References: are also allowed on .elm/elmheaders
    (although that is not very useful) or on 'invoke
    e(d)itor' buffer on header editing screen.

    - Added In-reply-to: and References: to
    'invoke e(d)itor' buffer on header editing
    screen. This is supported on
    static struct header_info header_types[]
    on lib/addr/headers.c.

    - Moved print_edit_string(), add_addr_header(),
    add_string_header(), edit_headers_on_editor()
    from src/hdrconfg.h to src/edithdr.c

    - strftime() format specifier %r (The time in
    a.m. or p.m. notation) produces 12-hour clock
    without AM/PM notification on fi_FI.UTF-8
    locale (also %p produces empty result).
    > Changed default to 24-hour clock (without
    seconds).
    - Added elmrc option "pager-time-display".
    Option have values
    legacy (same than month-day-year-12h)
    default (same than month-day-year-HH-MM)
    month-day-year-12h month day, Year 12h (am/pm)
    strftime %b %d, %Y %r
    month-day-year-24h month day, Year 24h
    strftime %b %d, %Y %T
    month-day-year-HH-MM month day, Year HH:MH
    strftime %b %d, %Y %R
    preferred Local preferred format
    strftime %c
    day-month-year-12h day month year 12h (am/pm)
    strftime %d %b %Y %r
    day-month-year-24h day month year 24h
    strftime %d %b %Y %T
    day-month-year-HH-MM day month year HH:MM
    strftime %d %b %Y %R
    YYYY-MM-DD-HH-MM numeric YYYY-MM-DD HH:MM
    YYYY-MM-DD-HH-MM-SS numeric YYYY-MM-DD HH:MM:SS
    Sender's timezone is appended to time.
    This option controls how pager show message
    date and time on title line (top line) when "titles"
    elmrc option have value ON (default).
    - If Date: is unparsable, pager no longer show dummy
    date and time on title line.
    - If Date: is parsable, but year is too early or
    year is too late (time_t overflows on 32-bit
    systems), pager shows text "year " and year number
    on place of date and time on title line (top line).

    - Replaced elm_date_str() with elm_date_text().
    - elm_date_text() will report "year xxxx" if date value
    is unsupported or overflow, but year is available
    (from time_menu_year at struct header_rec)

    - Changed that setting add-in-reply-to-phrase does not
    use elm_date_str()'s or elm_date_text()'s strftime
    for phrase time used on in-reply-to reply header field. Result
    of that is locale dependent. Changed that this
    uses date: -header format on phrase (actually
    implemented via elm_date_text(), but not available as
    "pager-time-display" value).

    - Added give_name_from_sockaddr() to lib/service_list.c
    and hdrs/connection_imp.h
    - Added elmrc option "address-lookup".
    Possible values are:
    normal Currently same than
    "gethostbyaddr"
    gethostbyaddr Use getgostbyaddr()
    getnameinfo Use getnameinfo()

    This option specifies how translation from ip-address
    to hostname is done. Default value "normal" specifies
    that normal address -lookup API (that is gethostbyaddr())
    is done.
    Both gethostbyaddr() and getnameinfo() works
    also with IPv6 (on Linux). getnameinfo() is newer
    interface, but it can return only one name. gethostbyaddr()
    may return several names. Seems that getnameinfo()
    returns first name from /etc/hosts even
    when this is not best choice.

    This is currently only used when "generate-message-id"
    have {domainspec} value "default" and "mailer"
    is "submission" and that connection is not local.

    - Added give_SOCKADDR_ptr_as_string() to
    lib/service_list.c and hdrs/connection_imp.h

    - Do not ask
    Can I test if your mailer supports DSN options: -N -R -V?
    on Configure if selected mailer is "none".

    - Changed Configure (actually shared_libs/tls/config)
    so that it detects also on Ubuntu 18.4
    that OpenSSL is available on system directory.

    - OpenSSL seems not include RAND_egd_bytes() on Ubuntu 18.4.
    Now Configure (actually shared_libs/tls/config) tests
    that RAND_egd_bytes() can be linked.

    - libelmme-tls module only used SSLv23_client_method() and
    TLSv1_client_method(). Added Configure (actually shared_libs/tls/config)
    test that
    SSLv23_client_method()
    TLS_client_method()
    TLSv1_client_method()
    TLSv1_1_client_method()
    TLSv1_2_client_method()
    can be linked.
    - Changed prototype of create_TLS_stream()
    - Changed libelmme-tls module handle more protocol versions.
    - "tls:starttls-version" and "tls:tls-version" parameters
    of global elm.mailservices and user's ~/.elm/mail.services
    file now accepts new values:
    tls-1 TLS 1 protocol
    tls-1.1 TLS 1.1 protocol
    tls-1.2 TLS 1.2 protocol
    These "tls:starttls-version" and "tls:tls-version" parameters
    also accepts old values:
    none disables STLS or STARTTLS
    ssl SSL or TLS, semantic varies
    tls TLS, semantic varies (default)
    See details from shared_libs/tls/README.ME+ file.

    Default "tls" means that protocol TLS 1 is used or with
    OpenSSL 1.1 that protocol TLS 1 or newer is used. Value
    "ssl" probably means with OpenSSL 1.0 or older that
    SSL 2 client hello packet is used.

    NOTE: Configure (actually shared_libs/tls/config) disables
    by default
    TLSv1_client_method(),
    TLSv1_1_client_method(), and
    TLSv1_2_client_method()
    on Ubuntu 18.4 because them are deprecated. This assumes
    that compiler gives "is deprecated" message and user agrees
    disabling on Configure prompt.

    ( However SSLv23_client_method() seems not produce
    "is deprecated" message. )

    - Added "default-tls-version" elmrc option
    to "tls:" section. This option accepts values:
    ssl SSL or TLS, semantic varies
    tls TLS, semantic varies (default)
    tls-1 TLS 1 protocol
    tls-1.1 TLS 1.1 protocol
    tls-1.2 TLS 1.2 protocol
    This is used, if "tls:starttls-version" and
    "tls:tls-version" parameters does not exists on
    global elm.mailservices or user's ~/.elm/mail.services
    file for particular host and service.

    - Changed that Configure puts UU directory to build-directory when
    -O option is used and not source directory when checking
    that package is complete

    - Added $dummydomain to Configure. This is used if Configure
    defaults to placeholder domain. That is '.localdomain'.
    - Added matches_dummy_domain() to lib/mailer/senderhelper.c
    and hdrs/mailerlib.h. That returns ".localdomain" if domain
    ends .localdomain and Configure or setup_names() selected that
    for placeholder domain. This is used for avoiding DNS
    lookup.

    New elmrc option:
    address-lookup
    generate-message-id
    valid-msg-id-domains
    pager-time-display
    tls:default-tls-version

    New files:
    lib/addr/md5_global.h
    lib/addr/md5.h
    lib/addr/md5c.c
    lib/addr/md5_wrapper.c
    lib/digest_wrapper.c
    hdrs/digest_imp.h
    lib/mailer/message-id.c
    lib/addr/digest.c
    lib/addr/outdate.c
    lib/mailer/write_common.c
    lib/mailer/feed_common.c
    lib/mailer/senderhelper.c
    src/edithdr.c
    shared_libs/tls/tlsconf.h.SH

    Message-ID generation
    ---------------------

    elm.rc option option "generate-message-id" tells
    how message-id should be generated for outgoing
    mail. Elm ME+ does not generate Message-ID
    header field if "generate-message-id" have
    value "none" or if Elm ME+ can't select
    "good" domain name to domain part (right
    side from '@') of message-id.

    Value of "generate-message-id" optios is either

    none Message-ID: -header field is not generated

    or value have form

    {localspec}@{domainspec}; {parameter}={value}...

    or

    {localspec}@domain.name; {parameter}={value}...

    {localspec} values includes:

    none Message-ID: -header field is not generated
    md5 Use 16 octets md5 hash value from message
    content for generating local part of message-id.
    /dev/urandom Use 16 octets from /dev/urandom for
    generating local part of message-id.
    /proc/sys/kernel/random/uuid Use content from /proc/sys/kernel/random/uuid
    as local part of message-id.

    Local part of message-id is generated from 16 octets same way on both
    md5 and /dev/urandom cases. Result includes 2 or 4 "words" which are
    separated by '.' characters (on 64-bit architecture result includes
    2 "words" and 32-bit architecture result includes 4 shorter "words").

    {domainspec} values includes:

    default Try following as domain part of message id
    1) value of "hostfullname" elmrc option
    2) mailer specific value (name of local
    address of connected socket on "submission"
    mailer, if connection is remote)
    3) First value from "mailname" elmrc option
    hostfullname Try value of "hostfullname" elmrc option as
    domain part of message id
    maildomain Try first value from "mailname" elmrc option as
    domain part of message id

    'domain.name' is any dns name which is tried as domain part of message id. This
    must include at least one dot ('.'). Without dot ('.') it is interpreted as
    {domainspec} keyword.

    {parameter} values includes:

    fallback-domain Overrides possible compile time default
    domain for domain part of message id
    default-cache-timeout Default timeout for cached results
    of dns check for domain part of message id.
    May include unit: "s" for seconds, "m"
    for minutes, "h" for hours or "d" for days.
    Without unit gives default cache timeout on
    seconds.

    check-domain Value "none" indicates that dns check is not
    done and "valid-msg-id-domains" elmrc option
    must be used.

    check-domain Value "shared" indicates that shared routine
    (resolv -module) is used for dns check.

    min-domain-labels Minimun number of domain labels (0-9) separated
    by '.' characters required for dns check.
    Value zero (0) disables counting of labels
    and rfc 822 special characters and whitespace
    are not checked.
    Note that '\.' does not count as label separator.

    With elmrc option
    use-mailer-library = resolv
    possible {parameter} value includes:

    check-domain Value "resolv" indicates that shared routine
    from resolv -module is used for dns check.

    {value} may be quoted string for "fallback-domain" and "check-domain".

    A domain part of message-id either must be listed on
    "valid-msg-id-domains" elmrc option or resolv -module must check that
    given dns name exists. If a domain part of message-id is listed
    "special-use-domains-blacklist", dns check is not done and domain part
    is not accepted.

    Warnings
    --------

    - Not compiled with MMDF support defined, so probably it doesn't
    work (or even compile).


    [continued in next message]

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Kari Hurtta@21:1/5 to All on Fri Jun 12 18:55:52 2020
    Experimental DEB generator script for Elm ME+ 2.5 PLalpha52
    exists on <URL: http://www.elmme-mailer.org/deb/elm-ME+2.5.html >
    directory.

    Files are following

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha52-1.gen_deb
    DEB generator script
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha52-1.gen_deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha52-1.gen_deb.sig



    A command

    elm-ME+2.5.alpha52-1.gen_deb {packager}

    generates package elmme with version 1.1.52-1.{distribution}.

    A command

    elm-ME+2.5.alpha52-1.gen_deb --nonew {packager}

    generates package elm with version ME+2.5.alpha52-1.{distribution}.

    Both commands produce package with filename elm-ME+2.5.alpha52-1.{distribution}.{arch}.deb.

    Module libelmme-resolv.so is included for all distributions below, but libelmme-resolv.so does not implement interruptible DNS queries on all distributions.

    == Old package names, i386

    Package elm with version ME+2.5.alpha52-1.{distribution} and
    architecture i386.

    * Compiled on Debian GNU/Linux 3.1
    (Linux 2.4, glibc 2.3, Exim 3.36)

    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha52-1.Debian3.1.i386.deb
    Package elm binary DEB build on Debian GNU/Linux 3.1
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha52-1.Debian3.1.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha52-1.Debian3.1.i386.deb.sig

    Module libelmme-resolv.so does not implement interruptible DNS queries
    on Debian GNU/Linux 3.1.

    * Compiled on Ubuntu 6.06.2 LTS
    (Linux 2.6, glibc 2.3, Sendmail 8.13)

    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha52-1.Ubuntu6.06.i386.deb
    Package elm binary DEB build on Ubuntu 6.06.2 LTS
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha52-1.Ubuntu6.06.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha52-1.Ubuntu6.06.i386.deb.sig

    * Compiled on Ubuntu 10.04.4 LTS
    (Linux 2.6, glibc 2.11, Sendmail 8.14)

    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha52-1.Ubuntu10.04.i386.deb
    Package elm binary DEB build on Ubuntu 10.04.4 LTS
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha52-1.Ubuntu10.04.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha52-1.Ubuntu10.04.i386.deb.sig

    == New package names, i386

    Package elmme with version 1.1.52-1.{distribution} and architecture
    i386.

    * Compiled on Ubuntu 10.04.4 LTS
    (Linux 2.6, glibc 2.11, Sendmail 8.14)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha52-1.Ubuntu10.04.i386.deb
    Package elmme binary DEB build on Ubuntu 10.04.4 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha52-1.Ubuntu10.04.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha52-1.Ubuntu10.04.i386.deb.sig

    * Compiled on Ubuntu 14.04.6 LTS
    (Linux 4.4, glibc 2.19, no MTA)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha52-1.Ubuntu14.04.i386.deb
    Package elmme binary DEB build on Ubuntu 14.04.6 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha52-1.Ubuntu14.04.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha52-1.Ubuntu14.04.i386.deb.sig

    == New package names, amd64 (x86_64)

    Package elmme with version 1.1.52-1.{distribution} and architecture
    amd64 (also known as x86_64).

    * Compiled on Ubuntu 16.04.6 LTS
    (Linux 4.4, glibc 2.23, Sendmail 8.15)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha52-1.Ubuntu16.04.amd64.deb
    Package elmme binary DEB build on Ubuntu 16.04.6 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha52-1.Ubuntu16.04.amd64.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha52-1.Ubuntu16.04.amd64.deb.sig

    * Compiled on Ubuntu 18.04.4 LTS
    (Linux 5.3, glibc 2.27, no MTA)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha52-1.Ubuntu18.04.amd64.deb
    Package elmme binary DEB build on Ubuntu 18.04.4 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha52-1.Ubuntu18.04.amd64.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha52-1.Ubuntu18.04.amd64.deb.sig

    == Signatures

    {file}.sig PGP signature (old key pubkey.asc, EA5A2379 1996-04-23)
    {file}.elm-key-2018.sig GPG signature (key elm.key.2018.asc, 44FC796B 2018-12-01, expires: 2028-11-28)

    == Configuration

    Following files (if exists) are rewritten by elmconfwriter on
    installation:

    - /usr/local/lib/elm.rc
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.hashmarks

    Deb generator script compiles elm for binary distribution, so you must
    edit /usr/local/lib/elm.rc before using Elm ME+ 2.5. Following variables
    may need to be modified on elm.rc:

    - mailer
    - hostdomain (this is usually needed)
    - hostfullname
    - hostname (usually this is not needed)
    - mailname (default values is generated from other values)
    - name-resolution (controls default values of hostdomain, hostfullname, hostname, mailname)

    By default first value for mailname is read from /etc/mailname file.

    For re-generation of following file, old information (if exists) is
    used:

    - /usr/local/lib/elm.rc

    WARNING: Check after installation that libraries are enabled. Global
    elm.rc values are:

    use-library =
    use-base-library = iconv
    use-config-library = resolv
    use-connect-library = tls resolv
    use-mailer-library = smtp resolv

    After editing global elm.rc run /usr/local/lib/elmrc-write -GI for
    fixing possible errors.

    On installation following existing files are merged with new values:

    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.hashmarks

    Old values from /usr/local/lib/aliases.text are converted to /usr/local/lib/elm.aliases and /usr/local/lib/aliases.text is renamed to /usr/local/lib/aliases.text.OLD.

    On installation new values without merging are written to following
    files:

    - /usr/local/lib/elm.aliases.NEW
    - /usr/local/lib/elm.mailinglists.NEW
    - /usr/local/lib/elm.mailservices.NEW
    - /usr/local/lib/elm.mimecharsets.NEW
    - /usr/local/lib/elm.mimetypes.NEW
    - /usr/local/lib/elm.terminalinfo.NEW
    - /usr/local/lib/elm.iso2022sets.NEW
    - /usr/local/lib/elm.hashmarks.NEW

    Also following directories are used:

    - /usr/local/lib/elm.map.txt/ (global setting map-text-dir =
    {lib}/elm.map.txt)
    - /usr/local/lib/elm.map.bin/ (global setting map-bin-dir =
    {lib}/elm.map.
    - /usr/local/lib/elm.user.map/ (global setting user-map-dir =
    {lib}/elm.user.map)

    Hashmark EXAMPLE uses file /usr/local/lib/elm.user.map/elm.usermap.

    A command

    elm-{version}-{release}.gen_deb {packager}

    generates package elmme with version {library-version}-{release}.{distribution}. Note that a resulted
    filename of package is still elm-{version}-{release}.{arch}.deb. This
    version number is same than on files /usr/local/lib/libelmme-{module}.so.{library-version}. A filename of
    package is related to used source archive name, which is elm-{version}-{release}.tar.gz.

    A command

    elm-{version}-{release}.gen_deb --nonew {packager}

    generates package elm with version {version}-{release}.{distribution}.
    Also on this case a resulted filename of package is elm-{version}-{release}.{arch}.deb.

    SUMMARY: This release collects patch Elm ME+ 2.5 PLalpha51a,
    adds generation of "Message-ID:" -header field,
    adds "Message-ID:", "Expires:", "Date:",
    "In-reply-to:", and "References:" -header fields
    to 'invoke e(d)itor' buffer on header editing screen
    and adds --messages={file} and --transaction={file}
    arguments to command line of elm. This release changes
    pager date and time display on pager title line and
    changes fastmail -command. This release adds TLS 1.1
    and 1.2 alternatives to libelmme-tls module. New elmrc
    options are "valid-msg-id-domains", "generate-message-id",
    "pager-time-display" and "address-lookup". Also
    added "default-tls-version" elmrc option to "tls:" section.
    Also some other changes and fixes are included.

    Elm ME+ 2.5 PLalpha52 changelog

    Changes on Elm ME+ 2.5 PLalpha52 compared with Elm ME+ 2.5 PLalpha51 --------------------------------------------------------------------

    Undo Elm ME+ 2.5 PLalpha51a patch before applying this patch.

    SUMMARY: This release collects patch Elm ME+ 2.5 PLalpha51a,
    adds generation of "Message-ID:" -header field,
    adds "Message-ID:", "Expires:", "Date:",
    "In-reply-to:", and "References:" -header fields
    to 'invoke e(d)itor' buffer on header editing screen
    and adds --messages={file} and --transaction={file}
    arguments to command line of elm. This release changes
    pager date and time display on pager title line and
    changes fastmail -command. This release adds TLS 1.1
    and 1.2 alternatives to libelmme-tls module. New elmrc
    options are "valid-msg-id-domains", "generate-message-id",
    "pager-time-display" and "address-lookup". Also
    added "default-tls-version" elmrc option to "tls:" section.
    Also some other changes and fixes are included.

    - Changed Va_start() / va_end() usage on gen_browser()
    > This fixes crash on f)ilename command on
    Elm 2.5 style file browser:
    SIGNAL PANIC in signals.c:144:segv_signal
    >>>

    Segment Violation signal!


    Call stack: 7FBC6A31301E 4F108B 7FBC69AAACB0 7FBC69AFCDFA 7FBC6A30C337
    continues: 44D2EE 4502A0 47372E 46470A 490DE5
    continues: 4925FE 466D3A 7FBC69A95F45 41F1A9
    backtrace:
    /usr/local/lib/libelmme-base.so.1.1.51(panic+0x1de)[0x7fbc6a31301e]
    elm(segv_signal+0x80)[0x4f108b]
    /lib/x86_64-linux-gnu/libc.so.6(+0x36cb0)[0x7fbc69aaacb0]
    /lib/x86_64-linux-gnu/libc.so.6(strlen+0x2a)[0x7fbc69afcdfa]
    /usr/local/lib/libelmme-base.so.1.1.51(elm_smessage+0x1025)[0x7fbc6a30c337]
    elm[0x44d2ee]
    elm(gen_browser+0x73b)[0x4502a0]
    elm(save+0x834)[0x47372e]
    elm(mailbox_command+0x1cae)[0x46470a]
    elm[0x490de5]
    elm(main_messages_menu+0x165)[0x4925fe]
    elm(main+0xf13)[0x466d3a]
    /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf5)[0x7fbc69a95f45]
    elm[0x41f1a9]
    Press a <enter> to abort or <enter> to exit:
    Crash occurs on x86_64 (amd64) architecture on Linux.
    Crash does not occur on i386 architecture on Linux.
    - Changed Va_start() / va_end() usage on folder_browser()

    - Added
    struct message_id * message_id;
    struct digest_proc * message_digest;
    struct expanded_date * date;
    to struct mailing_headers on hdrs/addrlib.h
    - Added write_msgid_header(), write_date_header()
    to lib/addr/write_hdr.c and hdrs/addrlib.h

    NOTE: A header fields Date: and Message-ID: are generated
    before "Mail Preview Screen" entered. Therefore Date:
    header field does not reflect mail sending time. A header
    fields Date: and Message-ID: are always same on
    "Mail Preview Screen", on sent mail and on saved copy.

    - Changed static struct header_info header_types[]
    on lib/addr/headers.c so that Message-ID: is also
    allowed on .elm/elmheaders (although that is not very
    useful) or on 'invoke e(d)itor' buffer on
    header editing screen.

    - Added
    Message-ID:
    to edit buffer used by 'invoke e(d)itor' on
    header editing screen. This is supported on
    static struct header_info header_types[]
    on lib/addr/headers.c.

    - Added is_whitelisted_msgid_domain() to
    to lib/addr/outheaders.h and to hdrs/addrlib.h
    - Added elmrc option "valid-msg-id-domains" to
    lib/addr/init.c
    - Added elmrc option "generate-message-id" to
    lib/mailer/init.c

    - Elm ME+ generates message-id header field
    when sending mail. This is controller by
    new elmrc option "generate-message-id".
    Message-id domain part is checked from
    DNS when
    use-mailer-library = smtp resolv
    is used. Id domain part of message-id
    header field is listed on new elmrc option
    "valid-msg-id-domains", then domain part is
    accepted without DNS check.

    See also chapter "Message-ID generation"

    - Configure now asks fall back domain name for
    message-id. msg-id.elmme-mailer.org is suggested.

    - Added check_domain_name() to shared_libs/resolv/resolv.c

    - Added "RSA Data Security, Inc. MD5 Message-Digest
    Algorithm" from
    RFC 1321: The MD5 Message-Digest Algorithm
    and modified that to work on 64-bit machine. Test
    suite on original code produces wrong hashes.

    - Possible fix to RC_fill_enum_values() on
    shared_libs/resolv/resolv.c
    - Possible fix to verify_mail_domain2() on
    shared_libs/resolv/resolv.c

    - Added macros DEBUG_CHECK_INIT() and DEBUG_CHECK()
    to hdrs/elmlib.h

    - Changed handling of valid-domains elmrc option.
    Even when some item on list starts with dot (.),
    name stated with dot (.) does not have accepted.
    When .domain is given on valid-domains elmrc option
    it marks {anything}.domain as valid domain, but
    {anything} can not be empty.

    - Moved message_id_domain() and message_id_left()
    from lib/addr/def_addr.h to hdrs/addrlib.h

    - Added free_digest_proc(), inc_digest_proc_refcount(),
    start_digest_proc(), feed_digest_proc(),
    len_digest_proc(), mode_digest_proc(),
    end_digest_proc(), result_digest_proc()
    digest_proc_equal(), malloc_digest_proc(),
    digest_type()
    to hdrs/elmlib.h and lib/digest_wrapper.c

    - Exported name_ok() from lib/service_list.c
    as host_name_ok().

    - Changed mail() on src/mailmsg2.c

    - Added digest_feed_string() to hdrs/elmlib.h and
    lib/string.c
    - Added cs_digest_feed_from_string() to hdrs/cs_imp.h
    - Added digest_feed_str(), digest_feed_references(),
    digest_feed_message_id(), digest_feed_addrs(),
    digest_feed_expires_hdr()
    to hdrs/addrlib.h and lib/addr/digest.c

    - Added query_s_mailer_info() to hdrs/mailerlib.h
    and lib/mailer/mailer.c
    - Added mailer_info_s_query_hook() to hdrs/mailer_imp.h
    - Added Configure test for getsockname()

    - Added set_address_from_gen_helper2() to hdrs/connection_imp.h
    and lib/remote_mbx.c
    - Added local socket address (result of
    getsockaname()) to struct remote_account
    - local address (result of getsockaname())
    is now included to transcript file
    (file given with -X option).
    - Submission mailer's check for MI_REMOTE_MAILER
    implementation for query_mailer_info() now
    also check that local and remote address
    of socket is same.

    - Added verify_library_prefix() to lib/shared.c and hdrs/shared_imp.h
    - Added shared_check_dname() and mailerdom_verify_lib_status()
    to lib/mailer/shared_mailer.c and hdrs/mailerlib.h

    - Added new_expanded_date(), free_expanded_date(),
    get_expanded_date_value(), get_expanded_date_cached_time(),
    get_expanded_date_source()
    to lib/addr/outdate.c and hdrs/addrlib.h
    - Added date_hdrval() to lib/addr/date.c and
    hdrs/addrlib.h
    - Added digest_feed_date_hdr() to lib/addr/digest.c
    and hdrs/addrlib.h
    - Added expanded_time_hdrval() to lib/addr/date.c
    and hdrs/addrlib.h

    - Changed add_expires_hdr()
    - Changed parsing of Expires: -header on .elm/elmheaders
    - Added
    Expires:
    to edit buffer used by 'invoke e(d)itor' on
    header editing screen. This is supported on
    static struct header_info header_types[]
    on lib/addr/headers.c.
    - Allow "x days" as value for Expires: -header
    on edit buffer.
    - Possible fix for expval_expires()

    - Added add_date_hdr() to lib/addr/outheaders.h
    - Changed static struct header_info header_types[]
    on lib/addr/headers.c so that Date: is also
    allowed on .elm/elmheaders (although that is not very
    useful).

    - Added
    Date:
    to edit buffer used by 'invoke e(d)itor' on
    header editing screen. This is supported on
    static struct header_info header_types[]
    on lib/addr/headers.c.
    - Fixed skipping of comments between headers
    on edit buffer used by 'invoke e(d)itor' on
    header editing screen.

    - Fix for parse_parts_date_time(), wday number was
    returned wrongly.

    - Avoid
    "Failed to leave folder: Try to quit again ? ([P]anic/y/n) n"
    when
    "Move read messages to "received" folder? (y/n)"
    is canceled with ctrl-C
    - Added to sync_mbox() return status sync_mbox_cancel (-4).

    - Changed sync_mbox() so that it does not
    call emergency_exit() when EOF is send from user input.
    - Added to sync_mbox() return status sync_mbox_EOF (-5).

    - Changed real_save() so that it does not
    call emergency_exit() when end_keep_folder()
    fails. Also real_save() does not close folder
    when end_keep_folder() fails.

    - Added --messages={file} argument to elm.
    This logs some messages (usually errors)
    shown.
    - Added open_messages_log(), close_messages_log()
    to hdrs/me.h and src/out_utils.c

    - Added --transaction={file} argument to elm.
    This is same than -X {file} option.
    - Added free_transaction_file() to hdrs/elmlib.h
    and lib/remote_mbx.c
    - free_transaction_file() is called from
    free_rc_options().

    - Changed some time() calls.

    - Check on can_open() that userid and groupid have set.

    - Set close-on-exec flag on set_transaction_file() and
    init_debug().

    - Avoid
    Failed to leave folder!
    and then
    Failed to leave folder: Try to quit again ? ([P]anic/y/n) n
    on closing/leaving folders
    when several folders are open and some of them
    are read only. If just read only folder was open
    that produced already
    Folder XXXXXX is read-only and unchanged.

    - Added "-X transcript/transaction file" parameter
    to fastmail. This is useful when mailer=submission
    is used. Same option is also on elm, newmail and frm
    (on these cases transcript/transaction file will
    include passwords). Currently mailer=submission
    does not support SMTP AUTH, so there is no passwords
    on transcript/transaction file on that case now.

    - Added Message-ID: -generation to fastmail.

    - Use DEFAULT_BATCH_SUBJECT also on fastmail.

    - Added write_common_mailing_headers() to
    lib/mailer/write_common.c and hdrs/mailerlib.h
    - Used that on elm's src/mailmsg2.c and
    on fastmail.
    Note: If nohdrencoding is set on elmrc, now
    also fastmail (as elm does) adds
    X-ELM-OSV: no-hdr-encoding=1
    to outgoing mails.

    - Moved add_parameter() from src/mime_encode.c
    to lib/mailer/mime_encode.c

    - Added feed_common_mailing_headers() to
    lib/mailer/feed_common.c and hdrs/mailerlib.h
    - Used that on elm's src/mailmsg2.c and
    on fastmail

    - Added -H option to fastmail. If set, only
    Return-Path: -header field is read from
    ~/.elm/elmheaders file and other header fields
    are ignored.

    - Added similar generation of From: and Sender:
    header fields to fastmail than it is on
    elm -command. Global elm.rc option "add-sender"
    is now used also on fastmail.

    - Added sndhelper_get_sender(),
    sndhelper_handle_sender() to
    lib/mailer/senderhelper.c and hdrs/mailerlib.h
    - Used that on elm's src/mailmsg2.c and
    on fastmail

    - Moved build_address_classify_domain(),
    build_address_classify_message(),
    build_address_cancel_mode(),
    verify_mail_domain_util() from
    hdrs/me.h and src/addr_util.c to
    lib/mailer/senderhelper.c and hdrs/mailerlib.h

    - Changed static struct header_info header_types[]
    on lib/addr/headers.c so that In-reply-to: and
    References: are also allowed on .elm/elmheaders
    (although that is not very useful) or on 'invoke
    e(d)itor' buffer on header editing screen.

    - Added In-reply-to: and References: to
    'invoke e(d)itor' buffer on header editing
    screen. This is supported on
    static struct header_info header_types[]
    on lib/addr/headers.c.

    - Moved print_edit_string(), add_addr_header(),
    add_string_header(), edit_headers_on_editor()
    from src/hdrconfg.h to src/edithdr.c

    - strftime() format specifier %r (The time in
    a.m. or p.m. notation) produces 12-hour clock
    without AM/PM notification on fi_FI.UTF-8
    locale (also %p produces empty result).
    > Changed default to 24-hour clock (without
    seconds).
    - Added elmrc option "pager-time-display".
    Option have values
    legacy (same than month-day-year-12h)
    default (same than month-day-year-HH-MM)
    month-day-year-12h month day, Year 12h (am/pm)
    strftime %b %d, %Y %r
    month-day-year-24h month day, Year 24h
    strftime %b %d, %Y %T
    month-day-year-HH-MM month day, Year HH:MH
    strftime %b %d, %Y %R
    preferred Local preferred format
    strftime %c
    day-month-year-12h day month year 12h (am/pm)
    strftime %d %b %Y %r
    day-month-year-24h day month year 24h
    strftime %d %b %Y %T
    day-month-year-HH-MM day month year HH:MM
    strftime %d %b %Y %R
    YYYY-MM-DD-HH-MM numeric YYYY-MM-DD HH:MM
    YYYY-MM-DD-HH-MM-SS numeric YYYY-MM-DD HH:MM:SS
    Sender's timezone is appended to time.
    This option controls how pager show message
    date and time on title line (top line) when "titles"
    elmrc option have value ON (default).
    - If Date: is unparsable, pager no longer show dummy
    date and time on title line.
    - If Date: is parsable, but year is too early or
    year is too late (time_t overflows on 32-bit
    systems), pager shows text "year " and year number
    on place of date and time on title line (top line).

    - Replaced elm_date_str() with elm_date_text().
    - elm_date_text() will report "year xxxx" if date value
    is unsupported or overflow, but year is available
    (from time_menu_year at struct header_rec)

    - Changed that setting add-in-reply-to-phrase does not
    use elm_date_str()'s or elm_date_text()'s strftime
    for phrase time used on in-reply-to reply header field. Result
    of that is locale dependent. Changed that this
    uses date: -header format on phrase (actually
    implemented via elm_date_text(), but not available as
    "pager-time-display" value).

    - Added give_name_from_sockaddr() to lib/service_list.c
    and hdrs/connection_imp.h
    - Added elmrc option "address-lookup".
    Possible values are:
    normal Currently same than
    "gethostbyaddr"
    gethostbyaddr Use getgostbyaddr()
    getnameinfo Use getnameinfo()

    This option specifies how translation from ip-address
    to hostname is done. Default value "normal" specifies
    that normal address -lookup API (that is gethostbyaddr())
    is done.
    Both gethostbyaddr() and getnameinfo() works
    also with IPv6 (on Linux). getnameinfo() is newer
    interface, but it can return only one name. gethostbyaddr()
    may return several names. Seems that getnameinfo()
    returns first name from /etc/hosts even
    when this is not best choice.

    This is currently only used when "generate-message-id"
    have {domainspec} value "default" and "mailer"
    is "submission" and that connection is not local.

    - Added give_SOCKADDR_ptr_as_string() to
    lib/service_list.c and hdrs/connection_imp.h

    - Do not ask
    Can I test if your mailer supports DSN options: -N -R -V?
    on Configure if selected mailer is "none".

    - Changed Configure (actually shared_libs/tls/config)
    so that it detects also on Ubuntu 18.4
    that OpenSSL is available on system directory.

    - OpenSSL seems not include RAND_egd_bytes() on Ubuntu 18.4.
    Now Configure (actually shared_libs/tls/config) tests
    that RAND_egd_bytes() can be linked.

    - libelmme-tls module only used SSLv23_client_method() and
    TLSv1_client_method(). Added Configure (actually shared_libs/tls/config)
    test that
    SSLv23_client_method()
    TLS_client_method()
    TLSv1_client_method()
    TLSv1_1_client_method()
    TLSv1_2_client_method()
    can be linked.
    - Changed prototype of create_TLS_stream()
    - Changed libelmme-tls module handle more protocol versions.
    - "tls:starttls-version" and "tls:tls-version" parameters
    of global elm.mailservices and user's ~/.elm/mail.services
    file now accepts new values:
    tls-1 TLS 1 protocol
    tls-1.1 TLS 1.1 protocol
    tls-1.2 TLS 1.2 protocol
    These "tls:starttls-version" and "tls:tls-version" parameters
    also accepts old values:
    none disables STLS or STARTTLS
    ssl SSL or TLS, semantic varies
    tls TLS, semantic varies (default)
    See details from shared_libs/tls/README.ME+ file.

    Default "tls" means that protocol TLS 1 is used or with
    OpenSSL 1.1 that protocol TLS 1 or newer is used. Value
    "ssl" probably means with OpenSSL 1.0 or older that
    SSL 2 client hello packet is used.

    NOTE: Configure (actually shared_libs/tls/config) disables
    by default
    TLSv1_client_method(),
    TLSv1_1_client_method(), and
    TLSv1_2_client_method()
    on Ubuntu 18.4 because them are deprecated. This assumes
    that compiler gives "is deprecated" message and user agrees
    disabling on Configure prompt.

    ( However SSLv23_client_method() seems not produce
    "is deprecated" message. )

    - Added "default-tls-version" elmrc option
    to "tls:" section. This option accepts values:
    ssl SSL or TLS, semantic varies
    tls TLS, semantic varies (default)
    tls-1 TLS 1 protocol
    tls-1.1 TLS 1.1 protocol
    tls-1.2 TLS 1.2 protocol
    This is used, if "tls:starttls-version" and
    "tls:tls-version" parameters does not exists on
    global elm.mailservices or user's ~/.elm/mail.services
    file for particular host and service.

    - Changed that Configure puts UU directory to build-directory when
    -O option is used and not source directory when checking
    that package is complete

    - Added $dummydomain to Configure. This is used if Configure
    defaults to placeholder domain. That is '.localdomain'.
    - Added matches_dummy_domain() to lib/mailer/senderhelper.c
    and hdrs/mailerlib.h. That returns ".localdomain" if domain
    ends .localdomain and Configure or setup_names() selected that
    for placeholder domain. This is used for avoiding DNS
    lookup.

    New elmrc option:
    address-lookup
    generate-message-id
    valid-msg-id-domains
    pager-time-display
    tls:default-tls-version

    New files:
    lib/addr/md5_global.h
    lib/addr/md5.h
    lib/addr/md5c.c
    lib/addr/md5_wrapper.c
    lib/digest_wrapper.c
    hdrs/digest_imp.h
    lib/mailer/message-id.c
    lib/addr/digest.c
    lib/addr/outdate.c
    lib/mailer/write_common.c
    lib/mailer/feed_common.c
    lib/mailer/senderhelper.c
    src/edithdr.c
    shared_libs/tls/tlsconf.h.SH

    Message-ID generation
    ---------------------

    elm.rc option option "generate-message-id" tells
    how message-id should be generated for outgoing
    mail. Elm ME+ does not generate Message-ID
    header field if "generate-message-id" have
    value "none" or if Elm ME+ can't select
    "good" domain name to domain part (right
    side from '@') of message-id.

    Value of "generate-message-id" optios is either

    none Message-ID: -header field is not generated

    or value have form

    {localspec}@{domainspec}; {parameter}={value}...

    or

    {localspec}@domain.name; {parameter}={value}...

    {localspec} values includes:

    none Message-ID: -header field is not generated
    md5 Use 16 octets md5 hash value from message
    content for generating local part of message-id.
    /dev/urandom Use 16 octets from /dev/urandom for
    generating local part of message-id.
    /proc/sys/kernel/random/uuid Use content from /proc/sys/kernel/random/uuid
    as local part of message-id.

    Local part of message-id is generated from 16 octets same way on both
    md5 and /dev/urandom cases. Result includes 2 or 4 "words" which are
    separated by '.' characters (on 64-bit architecture result includes
    2 "words" and 32-bit architecture result includes 4 shorter "words").

    {domainspec} values includes:

    default Try following as domain part of message id
    1) value of "hostfullname" elmrc option
    2) mailer specific value (name of local
    address of connected socket on "submission"
    mailer, if connection is remote)
    3) First value from "mailname" elmrc option
    hostfullname Try value of "hostfullname" elmrc option as
    domain part of message id
    maildomain Try first value from "mailname" elmrc option as

    [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 Dec 10 20:39:21 2020
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha53.0

    Before applying this patch catenate parts 1 - 2 first.
    Also it should be possible to apply parts 1 - 2
    individually.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha52

    ====================================== ( part 0/2 ) =========
    Elm ME+ 2.5 PLalpha53

    - Is available with
    <URL: http://www.elmme-mailer.org/elm-ME+2.5.PLalpha53.patch.gz >
    and <URL: http://www.elmme-mailer.org/elm-ME+2.5.alpha53.6dd727263e86c29505c192e95239377c.tar.gz >
    via http.

    - Is available with
    <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.PLalpha53.patch.gz >
    and <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.alpha53.6dd727263e86c29505c192e95239377c.tar.gz >
    via https.

    - Is available on ftp.funet.fi
    via anonymous ftp
    directory pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/

    files elm-ME+2.5.PLalpha53.patch.gz
    and elm-ME+2.5.alpha53.6dd727263e86c29505c192e95239377c.tar.gz

    or is available with
    <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha53.patch.gz >
    and <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.alpha53.6dd727263e86c29505c192e95239377c.tar.gz >
    with browser

    or is available with
    <URL: https://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha53.patch.gz >
    and <URL: https://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.alpha53.6dd727263e86c29505c192e95239377c.tar.gz >
    via https.

    SUMMARY: This release fixes some parsing on address
    prompts and other bugs. This release changes
    multipart/related handling and mailcap
    programs prompt. This release adds X-Mailer:
    to ~/.elm/elmheaders file and header editing
    screen. Also elmconfwriter command includes
    -b<backup-suffix> option. New elmrc
    options are "program-identification" and
    "pagerelated". Also some other changes
    are included.

    Changes on Elm ME+ 2.5 PLalpha53 compared with Elm ME+ 2.5 PLalpha52 --------------------------------------------------------------------

    SUMMARY: This release fixes some parsing on address
    prompts and other bugs. This release changes
    multipart/related handling and mailcap
    programs prompt. This release adds X-Mailer:
    to ~/.elm/elmheaders file and header editing
    screen. Also elmconfwriter command includes
    -b<backup-suffix> option. New elmrc
    options are "program-identification" and
    "pagerelated". Also some other changes
    are included.

    - Added Configure test for __int128 type.

    - If __int128 is available, use that on generation of
    left side (local part) of message id. That is used
    when {localspec} on "generate-message-id" option
    is either "md5" or "/dev/urandom". When __int128
    used these options produce left part without
    dot ('.'). That means there is 1 dot ('.') separated
    "word" on local part ( left side ) of message id.
    Otherwise when unsigned long is 64 bits, there
    is 2 dot ('.') separated "word" on local part
    ( left side ) of message id. And if unsigned long
    is 32 bits, there is 4 dot ('.') separated "word"
    on local part ( left side ) of message id.

    - Address prompts accepts space as address separation
    but also accepts form
    phrase <address>
    Fixed bug where extra space after <address> caused
    that to be interpreted as two addresses 'phrase'
    and '<address>'. That is on
    update_expanded_from_edit_buffer().

    - Prompt mailcap programs when metamail is required, but
    not available. Causes that for unsupported
    multipart/related have mailcap used on text/html part. Note
    that this does not work correctly, because related parts are
    not available.

    - Report unsupported multipart and other types on mailcap
    programs prompt if it caused that metamail was required.
    * Note that setting elmrc option "pagemultipart" causes these
    unknown multipart types are not considered unsupported.
    Handling of "multipart/related" is controlled by
    elmrc option "pagerelated".

    - Moved NOTPLAIN_* macros from hdrs/elm_defs.h
    to hdrs/addrlib.h

    - Added -b<backup-suffix> option to elmconfwriter. Elmconfwriter
    checks first that there is no files in form
    <config file><backup-suffix> exists when -b<backup-suffix> option
    is used.
    - Command elmconfwriter -lb<backup-suffix>
    can be used to make backup of config files.
    - Option -b<backup-suffix> without -l option (list
    config files) causes that config
    file <config file> is preserved as
    <config file><backup-suffix> when file <config file> rewritten.

    - Added change_file_utime() to lib/mbox/utime_util.c
    - Changed newmail to use change_file_utime()
    - Changed fbrowser_selection_is_mbox(), mbx_move_temp_file()
    to use change_file_utime()

    - Changed prototype of elm_chown
    - Added variable CHOWN_neg1 (constant)

    - Tried fix usr1_signal() and usr2_signal() so that they
    do not hang (looping).

    - Allowed
    X-Mailer:
    header field on ~/.elm/elmheaders file and on
    'invoke e(d)itor' buffer on header editing screen.
    Note however that ~/.elm/elmheaders file is used both on
    elm and fastmail -commands.
    This overrides default value of X-Mailer: header field.
    If empty field is given, X-Mailer: header field is not
    added when mail is sent.
    - Added struct string *xmailer to struct mailing_headers
    - Added
    X-Mailer:
    header field to edit buffer used by 'invoke e(d)itor' on
    header editing screen. This is added to screen
    only if there is value on X-Mailer: header field.
    This is supported on static struct header_info
    header_types[] on lib/addr/headers.c.

    - Added elmrc option "program-identification".
    Option includes list of keywords:
    none None of values are selected
    X-Mailer Add X-Mailer: header field
    version Add version information to header
    field
    User-Agent Add User-Agent header field
    The "program-identification" elm.rc option
    accepts two forms:
    - Absolute form where used options are listed
    - Additive form where changes from compile
    time default are listed:
    +X-Mailer -X-Mailer
    +version -version
    +User-Agent -User-Agent
    These two forms can not be mixed.
    - Note that also message-id domain, when
    it is msg-id.elmme-mailer.org, identifies program.
    Also X-ELM-OSV: header field, if generated,
    identifies program.
    - Added generation of
    User-Agent: elmme/{libversion} ({X-Mailer})
    header field. This requires that on
    "program-identification" mentions this header field.
    This header fields can not given
    on ~/.elm/elmheaders file or on 'invoke e(d)itor'
    buffer on header editing screen.
    - Added char * encoded_user_agent to struct mailing_headers
    - Added sndhelper_update_user_agent() to lib/mailer/senderhelper.c
    and hdrs/mailerlib.h
    - Added "User-Agent" to static struct header_info header_types[]
    on lib/addr/headers.c

    - Fixed getsockname() test on Configure

    - Added elmrc option "pagerelated". This control handling
    of multipart/related messages. Option have values
    no May use metamail, if available.
    yes Try page first (or start) part,
    single-part Try page single part
    Default value is "single-part".
    NOTE: multipart/related is not supported, and related parts are not
    "passed" to first (or start) part.
    - Note that multipart/related is used normally with text/html as
    first part. That is not supported, and also not work when mailcap
    is used for text/html.
    > This is also known as MHTML.
    - When multipart/related have only single part (that is start part),
    using multipart/related is superfluous. In that case multipart/related
    is not required, and can be replaced with that single part.

    RFC 2387: The MIME Multipart/Related Content-type

    Also boolean ON, OFF, TRUE, FALSE, YES and NO values are allowed
    on elmrc option "pagerelated".

    - Added struct message_id * content_id
    to struct mimeinfo

    - Changed prototype of parse_mime_headers1(), mime_parser_parse(),
    mpar_parse(), mime_read_header()
    - Changed prototype of mpar_parse()

    - Fixed set_out_state_line_mode() so that NULL range parameter
    does not reset current range.

    - Added "DKIM-Signature:" to default weedlist.

    - Fixed incorrect calls of change_helper_3()
    on terminal_switch_to() which caused memory corruption.

    - Added
    unsigned busy:1;
    to struct domain_info on lib/mailer/message-id.c

    - Fixed case where check_msg_domain0() was called with domain
    name (pointer), which was same than dompart field
    on struct domain_info;

    New elmrc options:
    program-identification
    pagerelated

    New file:
    lib/mbox/utime_util.c

    Warnings
    --------

    - Not compiled with MMDF support defined, so probably it doesn't
    work (or even compile).

    - This has not been tested much so there can be bad bugs.

    Bug reports to: Kari E. Hurtta <elm@elmme-mailer.org>
    (was hurtta+elm@posti.FMI.FI)

    - Internationalized (ie. non-ASCII) domain names are not supported.

    - Support for multipart/signed and multipart/encrypted (specially:
    support for PGP/MIME) only in reading side. There is no support
    for attachments with multipart/encrypted.

    - HP's shoftkeys are no longer supported

    - DECNET addresses like host::user may be interpreted as phrase
    of group syntax or as route of source routed address.

    - Header editing screen now uses addresses in form phrase <address>,
    but because it does not require using of comma (,), multiword
    phrases must be entered in quotes.

    For example: "Kari Hurtta" <hurtta>

    - If address includes <> or comments (), they are not aliased
    expanded. So aliases must be entered as bare words.

    - Addresses given as arguments to elm command should be given
    as one address per argument. Giving of sevaral addresses per
    one argument causes that address is misparsed if header is
    edited on header editing screen.

    That is:

    Use: elm '"Kari Hurtta" <hurtta>' 'Admin <root>'

    Don't use: elm 'Kari Hurtta <hurtta>, Admin <root>'

    - p)rint command acts as P)rint text -command. So it
    is currently quite useless.
    p)rint command does that via readmsg -command. However
    P)rint text does actually same (without readmsg).

    - Some Linux libraries does not follow $LC_CTYPE when program is
    setgid. Net result is that your locale is always C. That is
    visible that $LC_CTYPE does not effect to locale printed by
    'elm -vvvvv':

    Locale (LC_CTYPE): C
    Display character-set: US-ASCII
    Sending character-set: US-ASCII

    - All refrences iso2022 maps are parsed and read to memory.
    This may cause quite big memory consumption specially because
    eastern (multibyte) sets tend to be lot of characters. That
    mapping information should be shared between processes to
    reduce memory consuption.

    - If display charset is produced by using mapping from locale
    to charset where charset definition is later invalidated
    ("removed") by setting explicit compatcharsets on user's
    .elm/elmrc, that may cause PANIC on elm's internal pager
    or other problems. Invalidation happens if display charset
    is on implicit compatcharsets list (because of charset
    definition), but does not have explicit compatcharsets list
    given by user.

    - Neither Unicode didirectional algorithm nor Right-Left scripts
    are supported.

    - In some situations two Status headers may be generated two
    Status headers -- one by IMAP deamon and one from APPENDed
    message.

    - When APPENDing message to IMAP folder (which is normal UNIX
    mailbox format) original "From " separator line can not be
    preserved -- specially it is not possible to pass envelope
    sender address.

    - For UTF-8 charset Elm only knows printable characters from
    Latin/1 range, if unicode database (see elmrc option "unidata")
    is not loaded.

    - For using of ISO2022 character sets it is required that mapping
    them to unicode is know -- otherwise Elm ME+ does not know which
    characters are printable.

    - UTF-16 surrogate pairs (D800-DFFF) are not supported on UTF-7
    charset.

    - Mixing of names using IMAP naming convention
    (imap-naming-convention = yes)
    and names using imap-charset does not work very well...

    - " Regarding my message (8 Aug 2000) regarding 'newmail' on
    AIX 4.3.3 in an 'aixterm' window and the 'aixterm' did not
    close, indeed the problem was NOT related to 'newmail' but an
    AIX bug.

    IBM has release a patch, and the 'aixterm' in AIX 4.3.3 must
    be update with fileset X11.apps.aixterm.4.3.3.26 (PTF
    U473920) is solved to problem."
    From: Noam G. Nudelman <noam@mail.biu.ac.il>

    - File /usr/share/locale/fi/charset gives charset name utf-8 on
    Linux Mandrake 7.2. This causes that Configure generates
    mapping
    fi utf-8
    to elm.mimecharsets. However that seems to have
    incorrect mapping. You may want change this to
    fi ISO-8859-1

    ( however nl_langinfo(CODESET) gives charset ISO-8859-15
    but look following entry. )

    - Locale 'fi' seems to have charset ISO-8859-15 according
    of nl_langinfo(CODESET) on Mandrake Linux 7.2 (and probaly
    others with same glibc version). However for example gnome
    terminal uses font
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-1
    and not
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-15

    Also KDE's konsole program seems use iso8859-1 character set
    although locale is 'fi' which should have ISO-8859-15 according
    of nl_langinfo (selecting "unicode" from menu seems fix that.)

    Because of mismatch more correct locale is fi_FI.88591, which gives
    ISO-8859-1 character set according of nl_langinfo(CODESET).

    ( Locale seems come from /etc/sysconfig/i18n or $HOME/.i18n )

    > To enable handling of ISO-8859-1 and ISO-8859-15 character sets
    on linux console, read comments from doc/terminal.info file.

    - Mandrake Linux 7.2 seems set LD_PRELOAD to load
    /usr/lib/libxalflaunch.so.0. That (xalf-0.4-2mdk) causes that
    elm to crash on startup (actually before main() is reached.)

    - kterm on Mandrake Linux 7.2 seems have (at least on my test
    environment) seems get bad fontlist (*VT100*fontList) which
    gives bad font for iso8859-1 -- therefore ISO-8859-1 characters
    do not work.

    ("xrdb -query" seems report resource with name "*fontList"
    -- that probably overrides "*VT100*fontList" which comes
    from /usr/lib/X11/app-defaults/KTerm )

    - Also note that initially kterm does NOT default to
    ISO-8859-1 -- therefore ISO-8859-1 works only when
    elm explicity switch to ISO-8859-1 (for example
    with 'elm -D ISO-8859-1')

    - When assembling message/partial MIME (RFC 2046)
    requires that all headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are copied from
    initial enclosing message to assembled message. It also
    requires that headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are ignored and
    dropped from enclosed message.

    For now we copy only Received: -headers. Dropping extra
    headers from enclosed message makes assembly more
    complicated (and dropping of Received: -headers
    from enclosed message do not make sense.)

    - mailer=sendmail; verify=yes works only when sendmail
    is installed as setuid root. Use mailer=submission instead.
    * Starting from sendmail 8.12 sendmail is normally
    installed as setgid smmsp and not as setuid root.
    - However error message is printed only if
    verify-local-address=yes is also set

    - IMAP connection is stalled some times. Reason is unknown.

    - From name option (-f) on fastmail is currently broken.

    Collector of these patches
    --------------------------

    Kari Hurtta <elm@elmme-mailer.org>
    Kari Hurtta <hurtta+elm@siilo.FMI.FI>

    diffstat:

    Configure | 96 +++!!
    MANIFEST | 1
    README.ME+ | 187 ++++++++++!
    config.h.SH | 8
    doc/elmconfwriter.1 | 16
    doc/elmrc-info | 241 +++++---!!!!!!
    doc/elmrc.samp | 376 +++++++!!!!!!!!!!!!!!!
    hdrs/addrlib.h | 47 +!
    hdrs/elm_defs.h | 12
    hdrs/elmlib.h | 33 +!
    hdrs/hdr_imp.h | 10
    hdrs/mailerlib.h | 11
    hdrs/mboxlib.h | 13
    hdrs/me.h | 8
    hdrs/melib.h | 20 !
    hdrs/mpar_imp.h | 7
    hdrs/patchlevel.h | 10
    hdrs/s_elm.h | 7
    hdrs/s_me.h | 10
    hdrs/save_opts.h | 6
    hdrs/sysdefs.SH | 5
    lib/addr/headers.c | 9
    lib/addr/outheaders.c | 25 +
    lib/debug.c | 6
    lib/file_util.c | 130 !!!!!!!
    lib/mailer/feed_common.c | 17 !
    lib/mailer/message-id.c | 145 ++!!!!!!
    lib/mailer/outheaders.c | 13
    lib/mailer/senderhelper.c | 70 ++++
    lib/mailer/write_common.c | 17 !
    lib/mbox/Makefile.SH | 7
    lib/mbox/imap.c | 7
    lib/mbox/localmbx.c | 82 !!!!
    lib/mbox/pop.c | 7
    lib/mbox/utime_util.c | 96 +++++
    lib/misc/terminal.c | 8
    lib/read_rc.c | 45 ++
    lib/remote_mbx.c | 6
    lib/state_out.c | 26 -
    melib/def_melib.h | 23 !
    melib/mailcap.c | 46 --
    melib/mime_decode.c | 599 ++++++++++++++++++++++++---!!!!!!!
    melib/mime_parse.c | 74 ++!!
    melib/mime_selector.c | 180 +++++++++!
    melib/mpar_leaf.c | 15
    melib/mpar_multipart.c | 21 !
    melib/mpar_rfc822.c | 20 !
    melib/mparser.c | 27 !
    melib/parse_helper.c | 13
    melib/pgp_decode.c | 29 !
    nls/C/C/C/s_elm.m | 17 !
    nls/C/C/C/s_me.m | 20 +
    shared_libs/tls/tls.c | 6
    src/addr_util.c | 18
    src/attach_menu.c | 24 !
    src/edithdr.c | 24 !
    src/editmsg.c | 6
    src/mailmsg2.c | 39 +
    src/messages/header_alloc.c | 6
    src/messages/messages.c | 13
    src/messages/partial.c | 7
    src/out_utils.c | 6
    src/save_opts.c | 6
    src/showmsg.c | 365 ++++++++++!!!!!!!!!!!
    src/signals.c | 57 !!!
    src/utils.c | 11
    utils/Makefile.SH | 6
    utils/elmconfwriter.c | 726 +++++++++++++++++++++++++---!!!!!!!!!!!!!!!
    utils/fastmail.c | 37 +
    utils/newmail.c | 51 !!
    70 files changed, 2178 insertions(+), 261 deletions(-), 1893 modifications(!)

    --
    / Kari Hurtta

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Kari Hurtta@21:1/5 to All on Thu Dec 10 20:40:09 2020
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha53.1

    Before applying this patch catenate parts 1 - 2 first.
    Also it should be possible to apply parts 1 - 2
    individually.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha52

    ====================================== ( part 1/2 ) =========
    For applying thich patch use (on directory where Configure is)

    patch -p1 < {this-file}

    ------------------------------------------------------------------------
    Index: elmME+.2.5.alpha53-cvs/hdrs/patchlevel.h
    Prereq: 1620000000
    *** elmME+.2.5.alpha52/hdrs/patchlevel.h Sat Jun 6 14:47:24 2020
    --- elmME+.2.5.alpha53-cvs/hdrs/patchlevel.h Mon Dec 7 19:48:13 2020 ***************
    *** 1,12 ****
    ! #define PATCHLEVEL "alpha52"
    /* Used by Configure:
    ! SHAREDTAG: .1.1.52
    */
    ! #define LAST_REPORT_TIME 1620000000
    #define BUG_REPORT_ADDR "Kari Hurtta <elm@elmme-mailer.org>"
    ! #define VERS_DATE "Jun 2020" /* for elm -v option */
    #define WHAT_STRING \
    ! "@(#) Version ME+ 2.5, USENET supported version, released Jun 2020"

    /*
    * Local Variables:
    --- 1,12 ----
    ! #define PATCHLEVEL "alpha53"
    /* Used by Configure:
    ! SHAREDTAG: .1.1.53
    */
    ! #define LAST_REPORT_TIME 1638000000
    #define BUG_REPORT_ADDR "Kari Hurtta <elm@elmme-mailer.org>"
    ! #define VERS_DATE "Dec 2020" /* for elm -v option */
    #define WHAT_STRING \
    ! "@(#) Version ME+ 2.5, USENET supported version, released Dec 2020"

    /*
    * Local Variables:
    Index: elmME+.2.5.alpha53-cvs/README.ME+
    *** elmME+.2.5.alpha52/README.ME+ Sat Jun 6 14:47:24 2020
    --- elmME+.2.5.alpha53-cvs/README.ME
  • From Kari Hurtta@21:1/5 to All on Thu Dec 10 20:41:25 2020
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha53.2

    Before applying this patch catenate parts 1 - 2 first.
    Also it should be possible to apply parts 1 - 2
    individually.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha52

    ====================================== ( part 2/2 ) =========
    Index: elmME+.2.5.alpha53-cvs/melib/mime_parse.c
    *** elmME+.2.5.alpha52/melib/mime_parse.c Sun Feb 4 21:36:29 2018
    --- elmME+.2.5.alpha53-cvs/melib/mime_parse.c Wed Dec 2 09:16:30 2020 ***************
    *** 1,7 ****
    ! static char rcsid[] = "@(#)$Id: mime_parse.c,v 2.19 2017/11/18 16:49:26 hurtta Exp $";

    /******************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 2.19 $ $State: Exp $
    *
    * Modified by: Kari Hurtta <hurtta+elm@siilo.FMI.FI>
    * (was hurtta+elm@posti.FMI.FI, hurtta+elm@ozone.FMI.FI)
    --- 1,7 ----
    ! static char rcsid[] = "@(#)$Id: mime_parse.c,v 2.21 2020/12/02 07:16:30 hurtta Exp $";

    /******************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 2.21 $ $State: Exp $
    *
    * Modified by: Kari Hurtta <hurtta+elm@siilo.FMI.FI>
    * (was hurtta+elm@posti.FMI.FI, hurtta+elm@ozone.FMI.FI)
    ***************
    *** 78,83 ****
    --- 78,86 ----

    if (mt->dispname)
    free_string(& (mt->dispname));
    +
    + i
  • From Kari Hurtta@21:1/5 to All on Sat Dec 12 09:48:13 2020
    Experimental RPM spec file for ELM ME+ 2.5 PLalpha53
    exists on <URL: http://www.elmme-mailer.org/rpm/elm-ME+2.5.html >
    directory.

    Files are following

    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha53-1.spec
    RPM spec file
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha53-1.spec.elm-key-2018.sig
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha53-1.spec.sig
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha53-1.mdk7.2.src.rpm
    Source rpm
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha53-1.mdk7.2.src.rpm.sig

    ** Notes

    - elm-ME+2.5.alpha53-1.mdk7.1.src.rpm is signed internally with GPG
    key elm.key.2018.asc (44FC796B 2018-12-01).

    * Compiled on Linux Mandrake release 7.2
    (Linux 2.2, glibc 2.1, Sendmail 8.13)

    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha53-1.mdk7.2.i686.rpm
    Package elm binary RPM build on Linux Mandrake release 7.2
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha53-1.mdk7.2.i686.rpm.sig
    - http://www.elmme-mailer.org/rpm/elm-mod-ME+2.5.alpha53-1.mdk7.2.i686.rpm
    Package elm-mod binary RPM build on Linux Mandrake release 7.2
    - http://www.elmme-mailer.org/rpm/elm-mod-ME+2.5.alpha53-1.mdk7.2.i686.rpm.sig
    - http://www.elmme-mailer.org/rpm/elm-tls-ME+2.5.alpha53-1.mdk7.2.i686.rpm
    Package elm-tls binary RPM build on Linux Mandrake release 7.2
    - http://www.elmme-mailer.org/rpm/elm-tls-ME+2.5.alpha53-1.mdk7.2.i686.rpm.sig

    ** Notes

    - elm-ME+2.5.alpha53-1.mdk7.2.i686.rpm and
    elm-*-ME+2.5.alpha53-1.mdk7.2.i686.rpm are signed internally with
    GPG key elm.key.2018.asc (44FC796B 2018-12-01).
    - elm-ME+2.5.alpha53-1.mdk7.2.i686.rpm is compiled agaist Sendmail
    8.13 (not from Mandrake distribution).
    - elm-tls-ME+2.5.alpha53-1.mdk7.2.i686.rpm do not load/work on
    Mandrake 7.2, because openssl library misses ASN1_STRING_to_UTF8
    function.

    * Configuration

    Following files (if exists) are rewritten by elmconfwriter on
    installation:

    - /usr/local/lib/elm.rc
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.hashmarks

    Spec file compiles elm for binary distribution, so you must edit
    /usr/local/lib/elm.rc before using Elm ME+ 2.5. Following variables may
    need to be modified on elm.rc:

    - mailer
    - hostdomain (this is usually needed)
    - hostfullname
    - hostname (usually this is not needed)
    - mailname (default values is generated from other values)
    name-resolution (controls default values of hostdomain,
    hostfullname, hostname, mailname)

    For re-generation of following file, old information (if exists) is
    used:

    - /usr/local/lib/elm.rc

    WARNING: Check after installation that libraries are enabled. Global
    elm.rc values are:

    use-library =
    use-base-library = iconv
    use-config-library = resolv
    use-connect-library = tls resolv
    use-mailer-library = smtp resolv

    Note that libelmme-resolv.so does not compile on all distributions. In
    that case omit resolv from elm.rc.

    After editing global elm.rc run /usr/local/lib/elmrc-write -GI for
    fixing possible errors.

    On installation following existing files are merged with new values:

    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.hashmarks

    Old values from /usr/local/lib/aliases.text are converted to /usr/local/lib/elm.aliases and /usr/local/lib/aliases.text is renamed to /usr/local/lib/aliases.text.OLD.

    On installation new values without merging are written to following
    files:

    - /usr/local/lib/elm.aliases.NEW
    - /usr/local/lib/elm.mailinglists.NEW
    - /usr/local/lib/elm.mailservices.NEW
    - /usr/local/lib/elm.mimecharsets.NEW
    - /usr/local/lib/elm.mimetypes.NEW
    - /usr/local/lib/elm.terminalinfo.NEW
    - /usr/local/lib/elm.iso2022sets.NEW
    - /usr/local/lib/elm.hashmarks.NEW

    Package elm-mod includes libelmme-iconv.so and libelmme-smtp.so. If
    package elm-mod includes libelmme-resolv.so, this is noted. And package
    elm-tls includes libelmme-tls.so.

    Installation loses mailer = submission setting from global /usr/local/lib/elm.rc, because when elm package rewrites elm.rc,
    submission mailer is not available. It becomes from elm-mod package.

    However failed values of /usr/local/lib/elm.rc are saved to /usr/local/lib/elm.rc.old-values file during installation.

    Global setting mailer = submission is restored from /usr/local/lib/elm.rc.old-values file, when package elm-mod is
    installed.

    Also following directories are used:

    - /usr/local/lib/elm.map.txt/ (global setting map-text-dir =
    {lib}/elm.map.txt)
    - /usr/local/lib/elm.map.bin/ (global setting map-bin-dir =
    {lib}/elm.map.bin)
    - /usr/local/lib/elm.user.map/ (global setting user-map-dir =
    {lib}/elm.user.map)

    Hashmark EXAMPLE uses file /usr/local/lib/elm.user.map/elm.usermap.

    SUMMARY: This release fixes some parsing on address
    prompts and other bugs. This release changes
    multipart/related handling and mailcap
    programs prompt. This release adds X-Mailer:
    to ~/.elm/elmheaders file and header editing
    screen. Also elmconfwriter command includes
    -b<backup-suffix> option. New elmrc
    options are "program-identification" and
    "pagerelated". Also some other changes
    are included.

    Elm ME+ 2.5 PLalpha53 changelog

    Changes on Elm ME+ 2.5 PLalpha53 compared with Elm ME+ 2.5 PLalpha52 --------------------------------------------------------------------

    SUMMARY: This release fixes some parsing on address
    prompts and other bugs. This release changes
    multipart/related handling and mailcap
    programs prompt. This release adds X-Mailer:
    to ~/.elm/elmheaders file and header editing
    screen. Also elmconfwriter command includes
    -b<backup-suffix> option. New elmrc
    options are "program-identification" and
    "pagerelated". Also some other changes
    are included.

    - Added Configure test for __int128 type.

    - If __int128 is available, use that on generation of
    left side (local part) of message id. That is used
    when {localspec} on "generate-message-id" option
    is either "md5" or "/dev/urandom". When __int128
    used these options produce left part without
    dot ('.'). That means there is 1 dot ('.') separated
    "word" on local part ( left side ) of message id.
    Otherwise when unsigned long is 64 bits, there
    is 2 dot ('.') separated "word" on local part
    ( left side ) of message id. And if unsigned long
    is 32 bits, there is 4 dot ('.') separated "word"
    on local part ( left side ) of message id.

    - Address prompts accepts space as address separation
    but also accepts form
    phrase <address>
    Fixed bug where extra space after <address> caused
    that to be interpreted as two addresses 'phrase'
    and '<address>'. That is on
    update_expanded_from_edit_buffer().

    - Prompt mailcap programs when metamail is required, but
    not available. Causes that for unsupported
    multipart/related have mailcap used on text/html part. Note
    that this does not work correctly, because related parts are
    not available.

    - Report unsupported multipart and other types on mailcap
    programs prompt if it caused that metamail was required.
    * Note that setting elmrc option "pagemultipart" causes these
    unknown multipart types are not considered unsupported.
    Handling of "multipart/related" is controlled by
    elmrc option "pagerelated".

    - Moved NOTPLAIN_* macros from hdrs/elm_defs.h
    to hdrs/addrlib.h

    - Added -b<backup-suffix> option to elmconfwriter. Elmconfwriter
    checks first that there is no files in form
    <config file><backup-suffix> exists when -b<backup-suffix> option
    is used.
    - Command elmconfwriter -lb<backup-suffix>
    can be used to make backup of config files.
    - Option -b<backup-suffix> without -l option (list
    config files) causes that config
    file <config file> is preserved as
    <config file><backup-suffix> when file <config file> rewritten.

    - Added change_file_utime() to lib/mbox/utime_util.c
    - Changed newmail to use change_file_utime()
    - Changed fbrowser_selection_is_mbox(), mbx_move_temp_file()
    to use change_file_utime()

    - Changed prototype of elm_chown
    - Added variable CHOWN_neg1 (constant)

    - Tried fix usr1_signal() and usr2_signal() so that they
    do not hang (looping).

    - Allowed
    X-Mailer:
    header field on ~/.elm/elmheaders file and on
    'invoke e(d)itor' buffer on header editing screen.
    Note however that ~/.elm/elmheaders file is used both on
    elm and fastmail -commands.
    This overrides default value of X-Mailer: header field.
    If empty field is given, X-Mailer: header field is not
    added when mail is sent.
    - Added struct string *xmailer to struct mailing_headers
    - Added
    X-Mailer:
    header field to edit buffer used by 'invoke e(d)itor' on
    header editing screen. This is added to screen
    only if there is value on X-Mailer: header field.
    This is supported on static struct header_info
    header_types[] on lib/addr/headers.c.

    - Added elmrc option "program-identification".
    Option includes list of keywords:
    none None of values are selected
    X-Mailer Add X-Mailer: header field
    version Add version information to header
    field
    User-Agent Add User-Agent header field
    The "program-identification" elm.rc option
    accepts two forms:
    - Absolute form where used options are listed
    - Additive form where changes from compile
    time default are listed:
    +X-Mailer -X-Mailer
    +version -version
    +User-Agent -User-Agent
    These two forms can not be mixed.
    - Note that also message-id domain, when
    it is msg-id.elmme-mailer.org, identifies program.
    Also X-ELM-OSV: header field, if generated,
    identifies program.
    - Added generation of
    User-Agent: elmme/{libversion} ({X-Mailer})
    header field. This requires that on
    "program-identification" mentions this header field.
    This header fields can not given
    on ~/.elm/elmheaders file or on 'invoke e(d)itor'
    buffer on header editing screen.
    - Added char * encoded_user_agent to struct mailing_headers
    - Added sndhelper_update_user_agent() to lib/mailer/senderhelper.c
    and hdrs/mailerlib.h
    - Added "User-Agent" to static struct header_info header_types[]
    on lib/addr/headers.c

    - Fixed getsockname() test on Configure

    - Added elmrc option "pagerelated". This control handling
    of multipart/related messages. Option have values
    no May use metamail, if available.
    yes Try page first (or start) part,
    single-part Try page single part
    Default value is "single-part".
    NOTE: multipart/related is not supported, and related parts are not
    "passed" to first (or start) part.
    - Note that multipart/related is used normally with text/html as
    first part. That is not supported, and also not work when mailcap
    is used for text/html.
    > This is also known as MHTML.
    - When multipart/related have only single part (that is start part),
    using multipart/related is superfluous. In that case multipart/related
    is not required, and can be replaced with that single part.

    RFC 2387: The MIME Multipart/Related Content-type

    Also boolean ON, OFF, TRUE, FALSE, YES and NO values are allowed
    on elmrc option "pagerelated".

    - Added struct message_id * content_id
    to struct mimeinfo

    - Changed prototype of parse_mime_headers1(), mime_parser_parse(),
    mpar_parse(), mime_read_header()
    - Changed prototype of mpar_parse()

    - Fixed set_out_state_line_mode() so that NULL range parameter
    does not reset current range.

    - Added "DKIM-Signature:" to default weedlist.

    - Fixed incorrect calls of change_helper_3()
    on terminal_switch_to() which caused memory corruption.

    - Added
    unsigned busy:1;
    to struct domain_info on lib/mailer/message-id.c

    - Fixed case where check_msg_domain0() was called with domain
    name (pointer), which was same than dompart field
    on struct domain_info;

    New elmrc options:
    program-identification
    pagerelated

    New file:
    lib/mbox/utime_util.c

    Warnings
    --------

    - Not compiled with MMDF support defined, so probably it doesn't
    work (or even compile).

    - This has not been tested much so there can be bad bugs.

    Bug reports to: Kari E. Hurtta <elm@elmme-mailer.org>
    (was hurtta+elm@posti.FMI.FI)

    - Internationalized (ie. non-ASCII) domain names are not supported.

    - Support for multipart/signed and multipart/encrypted (specially:
    support for PGP/MIME) only in reading side. There is no support
    for attachments with multipart/encrypted.

    - HP's shoftkeys are no longer supported

    - DECNET addresses like host::user may be interpreted as phrase
    of group syntax or as route of source routed address.

    - Header editing screen now uses addresses in form phrase <address>,
    but because it does not require using of comma (,), multiword
    phrases must be entered in quotes.

    For example: "Kari Hurtta" <hurtta>

    - If address includes <> or comments (), they are not aliased
    expanded. So aliases must be entered as bare words.

    - Addresses given as arguments to elm command should be given
    as one address per argument. Giving of sevaral addresses per
    one argument causes that address is misparsed if header is
    edited on header editing screen.

    That is:

    Use: elm '"Kari Hurtta" <hurtta>' 'Admin <root>'

    Don't use: elm 'Kari Hurtta <hurtta>, Admin <root>'

    - p)rint command acts as P)rint text -command. So it
    is currently quite useless.
    p)rint command does that via readmsg -command. However
    P)rint text does actually same (without readmsg).

    - Some Linux libraries does not follow $LC_CTYPE when program is
    setgid. Net result is that your locale is always C. That is
    visible that $LC_CTYPE does not effect to locale printed by
    'elm -vvvvv':

    Locale (LC_CTYPE): C
    Display character-set: US-ASCII
    Sending character-set: US-ASCII

    - All refrences iso2022 maps are parsed and read to memory.
    This may cause quite big memory consumption specially because
    eastern (multibyte) sets tend to be lot of characters. That
    mapping information should be shared between processes to
    reduce memory consuption.

    - If display charset is produced by using mapping from locale
    to charset where charset definition is later invalidated
    ("removed") by setting explicit compatcharsets on user's
    .elm/elmrc, that may cause PANIC on elm's internal pager
    or other problems. Invalidation happens if display charset
    is on implicit compatcharsets list (because of charset
    definition), but does not have explicit compatcharsets list
    given by user.

    - Neither Unicode didirectional algorithm nor Right-Left scripts
    are supported.

    - In some situations two Status headers may be generated two
    Status headers -- one by IMAP deamon and one from APPENDed
    message.

    - When APPENDing message to IMAP folder (which is normal UNIX
    mailbox format) original "From " separator line can not be
    preserved -- specially it is not possible to pass envelope
    sender address.

    - For UTF-8 charset Elm only knows printable characters from
    Latin/1 range, if unicode database (see elmrc option "unidata")
    is not loaded.

    - For using of ISO2022 character sets it is required that mapping
    them to unicode is know -- otherwise Elm ME+ does not know which
    characters are printable.

    - UTF-16 surrogate pairs (D800-DFFF) are not supported on UTF-7
    charset.

    - Mixing of names using IMAP naming convention
    (imap-naming-convention = yes)
    and names using imap-charset does not work very well...

    - " Regarding my message (8 Aug 2000) regarding 'newmail' on
    AIX 4.3.3 in an 'aixterm' window and the 'aixterm' did not
    close, indeed the problem was NOT related to 'newmail' but an
    AIX bug.

    IBM has release a patch, and the 'aixterm' in AIX 4.3.3 must
    be update with fileset X11.apps.aixterm.4.3.3.26 (PTF
    U473920) is solved to problem."
    From: Noam G. Nudelman <noam@mail.biu.ac.il>

    - File /usr/share/locale/fi/charset gives charset name utf-8 on
    Linux Mandrake 7.2. This causes that Configure generates
    mapping
    fi utf-8
    to elm.mimecharsets. However that seems to have
    incorrect mapping. You may want change this to
    fi ISO-8859-1

    ( however nl_langinfo(CODESET) gives charset ISO-8859-15
    but look following entry. )

    - Locale 'fi' seems to have charset ISO-8859-15 according
    of nl_langinfo(CODESET) on Mandrake Linux 7.2 (and probaly
    others with same glibc version). However for example gnome
    terminal uses font
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-1
    and not
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-15

    Also KDE's konsole program seems use iso8859-1 character set
    although locale is 'fi' which should have ISO-8859-15 according
    of nl_langinfo (selecting "unicode" from menu seems fix that.)

    Because of mismatch more correct locale is fi_FI.88591, which gives
    ISO-8859-1 character set according of nl_langinfo(CODESET).

    ( Locale seems come from /etc/sysconfig/i18n or $HOME/.i18n )

    > To enable handling of ISO-8859-1 and ISO-8859-15 character sets
    on linux console, read comments from doc/terminal.info file.

    - Mandrake Linux 7.2 seems set LD_PRELOAD to load
    /usr/lib/libxalflaunch.so.0. That (xalf-0.4-2mdk) causes that
    elm to crash on startup (actually before main() is reached.)

    - kterm on Mandrake Linux 7.2 seems have (at least on my test
    environment) seems get bad fontlist (*VT100*fontList) which
    gives bad font for iso8859-1 -- therefore ISO-8859-1 characters
    do not work.

    ("xrdb -query" seems report resource with name "*fontList"
    -- that probably overrides "*VT100*fontList" which comes
    from /usr/lib/X11/app-defaults/KTerm )

    - Also note that initially kterm does NOT default to
    ISO-8859-1 -- therefore ISO-8859-1 works only when
    elm explicity switch to ISO-8859-1 (for example
    with 'elm -D ISO-8859-1')

    - When assembling message/partial MIME (RFC 2046)
    requires that all headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are copied from
    initial enclosing message to assembled message. It also
    requires that headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are ignored and
    dropped from enclosed message.

    For now we copy only Received: -headers. Dropping extra
    headers from enclosed message makes assembly more
    complicated (and dropping of Received: -headers
    from enclosed message do not make sense.)

    - mailer=sendmail; verify=yes works only when sendmail
    is installed as setuid root. Use mailer=submission instead.
    * Starting from sendmail 8.12 sendmail is normally
    installed as setgid smmsp and not as setuid root.
    - However error message is printed only if
    verify-local-address=yes is also set

    - IMAP connection is stalled some times. Reason is unknown.

    - From name option (-f) on fastmail is currently broken.

    Collector of these patches
    --------------------------

    Kari Hurtta <elm@elmme-mailer.org>
    Kari Hurtta <hurtta+elm@siilo.FMI.FI>

    --
    / Kari Hurtta

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Kari Hurtta@21:1/5 to All on Sun Dec 13 08:08:54 2020
    Experimental DEB generator script for Elm ME+ 2.5 PLalpha53
    exists on <URL: http://www.elmme-mailer.org/deb/elm-ME+2.5.html >
    directory.

    Files are following

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha53-1.gen_deb
    DEB generator script
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha53-1.gen_deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha53-1.gen_deb.sig

    A command

    elm-ME+2.5.alpha52-1.gen_deb {packager}

    generates package elmme with version 1.1.52-1.{distribution}.

    A command

    elm-ME+2.5.alpha52-1.gen_deb --nonew {packager}

    generates package elm with version ME+2.5.alpha52-1.{distribution}.

    Both commands produce package with filename elm-ME+2.5.alpha52-1.{distribution}.{arch}.deb.

    Module libelmme-resolv.so is included for all distributions
    below. Debian GNU/Linux 3.1 is not included now and libelmme-resolv.so implements interruptible DNS queries on other distributions.

    == Old package names, i386

    Package elm with version ME+2.5.alpha53-1.{distribution} and
    architecture i386.

    * Compiled on Ubuntu 6.06.2 LTS
    (Linux 2.6, glibc 2.3, Sendmail 8.13)

    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha53-1.Ubuntu6.06.i386.deb
    Package elm binary DEB build on Ubuntu 6.06.2 LTS
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha53-1.Ubuntu6.06.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha53-1.Ubuntu6.06.i386.deb.sig

    * Compiled on Ubuntu 10.04.4 LTS
    (Linux 2.6, glibc 2.11, Sendmail 8.14)

    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha53-1.Ubuntu10.04.i386.deb
    Package elm binary DEB build on Ubuntu 10.04.4 LTS
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha53-1.Ubuntu10.04.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha53-1.Ubuntu10.04.i386.deb.sig

    == New package names, i386

    Package elmme with version 1.1.53-1.{distribution} and architecture
    i386.

    * Compiled on Ubuntu 10.04.4 LTS
    (Linux 2.6, glibc 2.11, Sendmail 8.14)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha53-1.Ubuntu10.04.i386.deb
    Package elmme binary DEB build on Ubuntu 10.04.4 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha53-1.Ubuntu10.04.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha53-1.Ubuntu10.04.i386.deb.sig

    * Compiled on Ubuntu 14.04.6 LTS
    (Linux 4.4, glibc 2.19, no MTA)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha53-1.Ubuntu14.04.i386.deb
    Package elmme binary DEB build on Ubuntu 14.04.6 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha53-1.Ubuntu14.04.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha53-1.Ubuntu14.04.i386.deb.sig

    == New package names, amd64 (x86_64)

    Package elmme with version 1.1.53-1.{distribution} and architecture
    amd64 (also known as x86_64).

    * Compiled on Ubuntu 16.04.7 LTS
    (Linux 4.4, glibc 2.23, Sendmail 8.15)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha53-1.Ubuntu16.04.amd64.deb
    Package elmme binary DEB build on Ubuntu 16.04.7 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha53-1.Ubuntu16.04.amd64.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha53-1.Ubuntu16.04.amd64.deb.sig

    * Compiled on Ubuntu 18.04.5 LTS
    (Linux 5.4, glibc 2.27, no MTA)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha53-1.Ubuntu18.04.amd64.deb
    Package elmme binary DEB build on Ubuntu 18.04.5 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha53-1.Ubuntu18.04.amd64.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha53-1.Ubuntu18.04.amd64.deb.sig

    == Signatures

    {file}.sig PGP signature (old key pubkey.asc, EA5A2379 1996-04-23)
    {file}.elm-key-2018.sig GPG signature (key elm.key.2018.asc, 44FC796B 2018-12-01, expires: 2028-11-28)

    == Configuration

    Following files (if exists) are rewritten by elmconfwriter on
    installation:

    - /usr/local/lib/elm.rc
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.hashmarks

    Deb generator script compiles elm for binary distribution, so you must
    edit /usr/local/lib/elm.rc before using Elm ME+ 2.5. Following variables
    may need to be modified on elm.rc:

    - mailer
    - hostdomain (this is usually needed)
    - hostfullname
    - hostname (usually this is not needed)
    - mailname (default values is generated from other values)
    - name-resolution (controls default values of hostdomain, hostfullname, hostname, mailname)

    By default first value for mailname is read from /etc/mailname file.

    For re-generation of following file, old information (if exists) is
    used:

    - /usr/local/lib/elm.rc

    WARNING: Check after installation that libraries are enabled. Global
    elm.rc values are:

    use-library =
    use-base-library = iconv
    use-config-library = resolv
    use-connect-library = tls resolv
    use-mailer-library = smtp resolv

    After editing global elm.rc run /usr/local/lib/elmrc-write -GI for fixing possible errors.

    On installation following existing files are merged with new values:

    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.hashmarks

    Old values from /usr/local/lib/aliases.text are converted to /usr/local/lib/elm.aliases and /usr/local/lib/aliases.text is renamed to /usr/local/lib/aliases.text.OLD.

    On installation new values without merging are written to following
    files:

    - /usr/local/lib/elm.aliases.NEW
    - /usr/local/lib/elm.mailinglists.NEW
    - /usr/local/lib/elm.mailservices.NEW
    - /usr/local/lib/elm.mimecharsets.NEW
    - /usr/local/lib/elm.mimetypes.NEW
    - /usr/local/lib/elm.terminalinfo.NEW
    - /usr/local/lib/elm.iso2022sets.NEW
    - /usr/local/lib/elm.hashmarks.NEW

    Also following directories are used:

    - /usr/local/lib/elm.map.txt/ (global setting map-text-dir = {lib}/elm.map.txt)
    - /usr/local/lib/elm.map.bin/ (global setting map-bin-dir = {lib}/elm.map.bin)
    - /usr/local/lib/elm.user.map/ (global setting user-map-dir = {lib}/elm.user.map)

    Hashmark EXAMPLE uses file /usr/local/lib/elm.user.map/elm.usermap.

    SUMMARY: This release fixes some parsing on address
    prompts and other bugs. This release changes
    multipart/related handling and mailcap
    programs prompt. This release adds X-Mailer:
    to ~/.elm/elmheaders file and header editing
    screen. Also elmconfwriter command includes
    -b<backup-suffix> option. New elmrc
    options are "program-identification" and
    "pagerelated". Also some other changes
    are included.

    Elm ME+ 2.5 PLalpha53 changelog

    Changes on Elm ME+ 2.5 PLalpha53 compared with Elm ME+ 2.5 PLalpha52 --------------------------------------------------------------------

    SUMMARY: This release fixes some parsing on address
    prompts and other bugs. This release changes
    multipart/related handling and mailcap
    programs prompt. This release adds X-Mailer:
    to ~/.elm/elmheaders file and header editing
    screen. Also elmconfwriter command includes
    -b<backup-suffix> option. New elmrc
    options are "program-identification" and
    "pagerelated". Also some other changes
    are included.

    - Added Configure test for __int128 type.

    - If __int128 is available, use that on generation of
    left side (local part) of message id. That is used
    when {localspec} on "generate-message-id" option
    is either "md5" or "/dev/urandom". When __int128
    used these options produce left part without
    dot ('.'). That means there is 1 dot ('.') separated
    "word" on local part ( left side ) of message id.
    Otherwise when unsigned long is 64 bits, there
    is 2 dot ('.') separated "word" on local part
    ( left side ) of message id. And if unsigned long
    is 32 bits, there is 4 dot ('.') separated "word"
    on local part ( left side ) of message id.

    - Address prompts accepts space as address separation
    but also accepts form
    phrase <address>
    Fixed bug where extra space after <address> caused
    that to be interpreted as two addresses 'phrase'
    and '<address>'. That is on
    update_expanded_from_edit_buffer().

    - Prompt mailcap programs when metamail is required, but
    not available. Causes that for unsupported
    multipart/related have mailcap used on text/html part. Note
    that this does not work correctly, because related parts are
    not available.

    - Report unsupported multipart and other types on mailcap
    programs prompt if it caused that metamail was required.
    * Note that setting elmrc option "pagemultipart" causes these
    unknown multipart types are not considered unsupported.
    Handling of "multipart/related" is controlled by
    elmrc option "pagerelated".

    - Moved NOTPLAIN_* macros from hdrs/elm_defs.h
    to hdrs/addrlib.h

    - Added -b<backup-suffix> option to elmconfwriter. Elmconfwriter
    checks first that there is no files in form
    <config file><backup-suffix> exists when -b<backup-suffix> option
    is used.
    - Command elmconfwriter -lb<backup-suffix>
    can be used to make backup of config files.
    - Option -b<backup-suffix> without -l option (list
    config files) causes that config
    file <config file> is preserved as
    <config file><backup-suffix> when file <config file> rewritten.

    - Added change_file_utime() to lib/mbox/utime_util.c
    - Changed newmail to use change_file_utime()
    - Changed fbrowser_selection_is_mbox(), mbx_move_temp_file()
    to use change_file_utime()

    - Changed prototype of elm_chown
    - Added variable CHOWN_neg1 (constant)

    - Tried fix usr1_signal() and usr2_signal() so that they
    do not hang (looping).

    - Allowed
    X-Mailer:
    header field on ~/.elm/elmheaders file and on
    'invoke e(d)itor' buffer on header editing screen.
    Note however that ~/.elm/elmheaders file is used both on
    elm and fastmail -commands.
    This overrides default value of X-Mailer: header field.
    If empty field is given, X-Mailer: header field is not
    added when mail is sent.
    - Added struct string *xmailer to struct mailing_headers
    - Added
    X-Mailer:
    header field to edit buffer used by 'invoke e(d)itor' on
    header editing screen. This is added to screen
    only if there is value on X-Mailer: header field.
    This is supported on static struct header_info
    header_types[] on lib/addr/headers.c.

    - Added elmrc option "program-identification".
    Option includes list of keywords:
    none None of values are selected
    X-Mailer Add X-Mailer: header field
    version Add version information to header
    field
    User-Agent Add User-Agent header field
    The "program-identification" elm.rc option
    accepts two forms:
    - Absolute form where used options are listed
    - Additive form where changes from compile
    time default are listed:
    +X-Mailer -X-Mailer
    +version -version
    +User-Agent -User-Agent
    These two forms can not be mixed.
    - Note that also message-id domain, when
    it is msg-id.elmme-mailer.org, identifies program.
    Also X-ELM-OSV: header field, if generated,
    identifies program.
    - Added generation of
    User-Agent: elmme/{libversion} ({X-Mailer})
    header field. This requires that on
    "program-identification" mentions this header field.
    This header fields can not given
    on ~/.elm/elmheaders file or on 'invoke e(d)itor'
    buffer on header editing screen.
    - Added char * encoded_user_agent to struct mailing_headers
    - Added sndhelper_update_user_agent() to lib/mailer/senderhelper.c
    and hdrs/mailerlib.h
    - Added "User-Agent" to static struct header_info header_types[]
    on lib/addr/headers.c

    - Fixed getsockname() test on Configure

    - Added elmrc option "pagerelated". This control handling
    of multipart/related messages. Option have values
    no May use metamail, if available.
    yes Try page first (or start) part,
    single-part Try page single part
    Default value is "single-part".
    NOTE: multipart/related is not supported, and related parts are not
    "passed" to first (or start) part.
    - Note that multipart/related is used normally with text/html as
    first part. That is not supported, and also not work when mailcap
    is used for text/html.
    > This is also known as MHTML.
    - When multipart/related have only single part (that is start part),
    using multipart/related is superfluous. In that case multipart/related
    is not required, and can be replaced with that single part.

    RFC 2387: The MIME Multipart/Related Content-type

    Also boolean ON, OFF, TRUE, FALSE, YES and NO values are allowed
    on elmrc option "pagerelated".

    - Added struct message_id * content_id
    to struct mimeinfo

    - Changed prototype of parse_mime_headers1(), mime_parser_parse(),
    mpar_parse(), mime_read_header()
    - Changed prototype of mpar_parse()

    - Fixed set_out_state_line_mode() so that NULL range parameter
    does not reset current range.

    - Added "DKIM-Signature:" to default weedlist.

    - Fixed incorrect calls of change_helper_3()
    on terminal_switch_to() which caused memory corruption.

    - Added
    unsigned busy:1;
    to struct domain_info on lib/mailer/message-id.c

    - Fixed case where check_msg_domain0() was called with domain
    name (pointer), which was same than dompart field
    on struct domain_info;

    New elmrc options:
    program-identification
    pagerelated

    New file:
    lib/mbox/utime_util.c

    Warnings
    --------

    - Not compiled with MMDF support defined, so probably it doesn't
    work (or even compile).

    - This has not been tested much so there can be bad bugs.

    Bug reports to: Kari E. Hurtta <elm@elmme-mailer.org>
    (was hurtta+elm@posti.FMI.FI)

    - Internationalized (ie. non-ASCII) domain names are not supported.

    - Support for multipart/signed and multipart/encrypted (specially:
    support for PGP/MIME) only in reading side. There is no support
    for attachments with multipart/encrypted.

    - HP's shoftkeys are no longer supported

    - DECNET addresses like host::user may be interpreted as phrase
    of group syntax or as route of source routed address.

    - Header editing screen now uses addresses in form phrase <address>,
    but because it does not require using of comma (,), multiword
    phrases must be entered in quotes.

    For example: "Kari Hurtta" <hurtta>

    - If address includes <> or comments (), they are not aliased
    expanded. So aliases must be entered as bare words.

    - Addresses given as arguments to elm command should be given
    as one address per argument. Giving of sevaral addresses per
    one argument causes that address is misparsed if header is
    edited on header editing screen.

    That is:

    Use: elm '"Kari Hurtta" <hurtta>' 'Admin <root>'

    Don't use: elm 'Kari Hurtta <hurtta>, Admin <root>'

    - p)rint command acts as P)rint text -command. So it
    is currently quite useless.
    p)rint command does that via readmsg -command. However
    P)rint text does actually same (without readmsg).

    - Some Linux libraries does not follow $LC_CTYPE when program is
    setgid. Net result is that your locale is always C. That is
    visible that $LC_CTYPE does not effect to locale printed by
    'elm -vvvvv':

    Locale (LC_CTYPE): C
    Display character-set: US-ASCII
    Sending character-set: US-ASCII

    - All refrences iso2022 maps are parsed and read to memory.
    This may cause quite big memory consumption specially because
    eastern (multibyte) sets tend to be lot of characters. That
    mapping information should be shared between processes to
    reduce memory consuption.

    - If display charset is produced by using mapping from locale
    to charset where charset definition is later invalidated
    ("removed") by setting explicit compatcharsets on user's
    .elm/elmrc, that may cause PANIC on elm's internal pager
    or other problems. Invalidation happens if display charset
    is on implicit compatcharsets list (because of charset
    definition), but does not have explicit compatcharsets list
    given by user.

    - Neither Unicode didirectional algorithm nor Right-Left scripts
    are supported.

    - In some situations two Status headers may be generated two
    Status headers -- one by IMAP deamon and one from APPENDed
    message.

    - When APPENDing message to IMAP folder (which is normal UNIX
    mailbox format) original "From " separator line can not be
    preserved -- specially it is not possible to pass envelope
    sender address.

    - For UTF-8 charset Elm only knows printable characters from
    Latin/1 range, if unicode database (see elmrc option "unidata")
    is not loaded.

    - For using of ISO2022 character sets it is required that mapping
    them to unicode is know -- otherwise Elm ME+ does not know which
    characters are printable.

    - UTF-16 surrogate pairs (D800-DFFF) are not supported on UTF-7
    charset.

    - Mixing of names using IMAP naming convention
    (imap-naming-convention = yes)
    and names using imap-charset does not work very well...

    - " Regarding my message (8 Aug 2000) regarding 'newmail' on
    AIX 4.3.3 in an 'aixterm' window and the 'aixterm' did not
    close, indeed the problem was NOT related to 'newmail' but an
    AIX bug.

    IBM has release a patch, and the 'aixterm' in AIX 4.3.3 must
    be update with fileset X11.apps.aixterm.4.3.3.26 (PTF
    U473920) is solved to problem."
    From: Noam G. Nudelman <noam@mail.biu.ac.il>

    - File /usr/share/locale/fi/charset gives charset name utf-8 on
    Linux Mandrake 7.2. This causes that Configure generates
    mapping
    fi utf-8
    to elm.mimecharsets. However that seems to have
    incorrect mapping. You may want change this to
    fi ISO-8859-1

    ( however nl_langinfo(CODESET) gives charset ISO-8859-15
    but look following entry. )

    - Locale 'fi' seems to have charset ISO-8859-15 according
    of nl_langinfo(CODESET) on Mandrake Linux 7.2 (and probaly
    others with same glibc version). However for example gnome
    terminal uses font
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-1
    and not
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-15

    Also KDE's konsole program seems use iso8859-1 character set
    although locale is 'fi' which should have ISO-8859-15 according
    of nl_langinfo (selecting "unicode" from menu seems fix that.)

    Because of mismatch more correct locale is fi_FI.88591, which gives
    ISO-8859-1 character set according of nl_langinfo(CODESET).

    ( Locale seems come from /etc/sysconfig/i18n or $HOME/.i18n )

    > To enable handling of ISO-8859-1 and ISO-8859-15 character sets
    on linux console, read comments from doc/terminal.info file.

    - Mandrake Linux 7.2 seems set LD_PRELOAD to load
    /usr/lib/libxalflaunch.so.0. That (xalf-0.4-2mdk) causes that
    elm to crash on startup (actually before main() is reached.)

    - kterm on Mandrake Linux 7.2 seems have (at least on my test
    environment) seems get bad fontlist (*VT100*fontList) which
    gives bad font for iso8859-1 -- therefore ISO-8859-1 characters
    do not work.

    ("xrdb -query" seems report resource with name "*fontList"
    -- that probably overrides "*VT100*fontList" which comes
    from /usr/lib/X11/app-defaults/KTerm )

    - Also note that initially kterm does NOT default to
    ISO-8859-1 -- therefore ISO-8859-1 works only when
    elm explicity switch to ISO-8859-1 (for example
    with 'elm -D ISO-8859-1')

    - When assembling message/partial MIME (RFC 2046)
    requires that all headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are copied from
    initial enclosing message to assembled message. It also
    requires that headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are ignored and
    dropped from enclosed message.

    For now we copy only Received: -headers. Dropping extra
    headers from enclosed message makes assembly more
    complicated (and dropping of Received: -headers
    from enclosed message do not make sense.)

    - mailer=sendmail; verify=yes works only when sendmail
    is installed as setuid root. Use mailer=submission instead.
    * Starting from sendmail 8.12 sendmail is normally
    installed as setgid smmsp and not as setuid root.
    - However error message is printed only if
    verify-local-address=yes is also set

    - IMAP connection is stalled some times. Reason is unknown.

    - From name option (-f) on fastmail is currently broken.

    Collector of these patches
    --------------------------

    Kari Hurtta <elm@elmme-mailer.org>
    Kari Hurtta <hurtta+elm@siilo.FMI.FI>

    --
    / Kari Hurtta

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Kari Hurtta@21:1/5 to All on Sun Dec 13 09:45:57 2020
    Experimental DEB generator script for Elm ME+ 2.5 PLalpha53
    exists on <URL: http://www.elmme-mailer.org/deb/elm-ME+2.5.html >
    directory.

    Files are following

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha53-1.gen_deb
    DEB generator script
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha53-1.gen_deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha53-1.gen_deb.sig

    A command

    elm-ME+2.5.alpha53-1.gen_deb {packager}

    generates package elmme with version 1.1.53-1.{distribution}.

    A command

    elm-ME+2.5.alpha53-1.gen_deb --nonew {packager}

    generates package elm with version ME+2.5.alpha53-1.{distribution}.

    Both commands produce package with filename elm-ME+2.5.alpha53-1.{distribution}.{arch}.deb.

    Module libelmme-resolv.so is included for all distributions
    below. Debian GNU/Linux 3.1 is not included now and libelmme-resolv.so implements interruptible DNS queries on other distributions.

    == Old package names, i386

    Package elm with version ME+2.5.alpha53-1.{distribution} and
    architecture i386.

    * Compiled on Ubuntu 6.06.2 LTS
    (Linux 2.6, glibc 2.3, Sendmail 8.13)

    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha53-1.Ubuntu6.06.i386.deb
    Package elm binary DEB build on Ubuntu 6.06.2 LTS
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha53-1.Ubuntu6.06.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha53-1.Ubuntu6.06.i386.deb.sig

    * Compiled on Ubuntu 10.04.4 LTS
    (Linux 2.6, glibc 2.11, Sendmail 8.14)

    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha53-1.Ubuntu10.04.i386.deb
    Package elm binary DEB build on Ubuntu 10.04.4 LTS
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha53-1.Ubuntu10.04.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha53-1.Ubuntu10.04.i386.deb.sig

    == New package names, i386

    Package elmme with version 1.1.53-1.{distribution} and architecture
    i386.

    * Compiled on Ubuntu 10.04.4 LTS
    (Linux 2.6, glibc 2.11, Sendmail 8.14)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha53-1.Ubuntu10.04.i386.deb
    Package elmme binary DEB build on Ubuntu 10.04.4 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha53-1.Ubuntu10.04.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha53-1.Ubuntu10.04.i386.deb.sig

    * Compiled on Ubuntu 14.04.6 LTS
    (Linux 4.4, glibc 2.19, no MTA)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha53-1.Ubuntu14.04.i386.deb
    Package elmme binary DEB build on Ubuntu 14.04.6 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha53-1.Ubuntu14.04.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha53-1.Ubuntu14.04.i386.deb.sig

    == New package names, amd64 (x86_64)

    Package elmme with version 1.1.53-1.{distribution} and architecture
    amd64 (also known as x86_64).

    * Compiled on Ubuntu 16.04.7 LTS
    (Linux 4.4, glibc 2.23, Sendmail 8.15)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha53-1.Ubuntu16.04.amd64.deb
    Package elmme binary DEB build on Ubuntu 16.04.7 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha53-1.Ubuntu16.04.amd64.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha53-1.Ubuntu16.04.amd64.deb.sig

    * Compiled on Ubuntu 18.04.5 LTS
    (Linux 5.4, glibc 2.27, no MTA)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha53-1.Ubuntu18.04.amd64.deb
    Package elmme binary DEB build on Ubuntu 18.04.5 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha53-1.Ubuntu18.04.amd64.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha53-1.Ubuntu18.04.amd64.deb.sig

    == Signatures

    {file}.sig PGP signature (old key pubkey.asc, EA5A2379 1996-04-23)
    {file}.elm-key-2018.sig GPG signature (key elm.key.2018.asc, 44FC796B 2018-12-01, expires: 2028-11-28)

    == Configuration

    Following files (if exists) are rewritten by elmconfwriter on
    installation:

    - /usr/local/lib/elm.rc
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.hashmarks

    Deb generator script compiles elm for binary distribution, so you must
    edit /usr/local/lib/elm.rc before using Elm ME+ 2.5. Following variables
    may need to be modified on elm.rc:

    - mailer
    - hostdomain (this is usually needed)
    - hostfullname
    - hostname (usually this is not needed)
    - mailname (default values is generated from other values)
    - name-resolution (controls default values of hostdomain, hostfullname, hostname, mailname)

    By default first value for mailname is read from /etc/mailname file.

    For re-generation of following file, old information (if exists) is
    used:

    - /usr/local/lib/elm.rc

    WARNING: Check after installation that libraries are enabled. Global
    elm.rc values are:

    use-library =
    use-base-library = iconv
    use-config-library = resolv
    use-connect-library = tls resolv
    use-mailer-library = smtp resolv

    After editing global elm.rc run /usr/local/lib/elmrc-write -GI for fixing possible errors.

    On installation following existing files are merged with new values:

    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.hashmarks

    Old values from /usr/local/lib/aliases.text are converted to /usr/local/lib/elm.aliases and /usr/local/lib/aliases.text is renamed to /usr/local/lib/aliases.text.OLD.

    On installation new values without merging are written to following
    files:

    - /usr/local/lib/elm.aliases.NEW
    - /usr/local/lib/elm.mailinglists.NEW
    - /usr/local/lib/elm.mailservices.NEW
    - /usr/local/lib/elm.mimecharsets.NEW
    - /usr/local/lib/elm.mimetypes.NEW
    - /usr/local/lib/elm.terminalinfo.NEW
    - /usr/local/lib/elm.iso2022sets.NEW
    - /usr/local/lib/elm.hashmarks.NEW

    Also following directories are used:

    - /usr/local/lib/elm.map.txt/ (global setting map-text-dir = {lib}/elm.map.txt)
    - /usr/local/lib/elm.map.bin/ (global setting map-bin-dir = {lib}/elm.map.bin)
    - /usr/local/lib/elm.user.map/ (global setting user-map-dir = {lib}/elm.user.map)

    Hashmark EXAMPLE uses file /usr/local/lib/elm.user.map/elm.usermap.

    SUMMARY: This release fixes some parsing on address
    prompts and other bugs. This release changes
    multipart/related handling and mailcap
    programs prompt. This release adds X-Mailer:
    to ~/.elm/elmheaders file and header editing
    screen. Also elmconfwriter command includes
    -b<backup-suffix> option. New elmrc
    options are "program-identification" and
    "pagerelated". Also some other changes
    are included.

    Elm ME+ 2.5 PLalpha53 changelog

    Changes on Elm ME+ 2.5 PLalpha53 compared with Elm ME+ 2.5 PLalpha52 --------------------------------------------------------------------

    SUMMARY: This release fixes some parsing on address
    prompts and other bugs. This release changes
    multipart/related handling and mailcap
    programs prompt. This release adds X-Mailer:
    to ~/.elm/elmheaders file and header editing
    screen. Also elmconfwriter command includes
    -b<backup-suffix> option. New elmrc
    options are "program-identification" and
    "pagerelated". Also some other changes
    are included.

    - Added Configure test for __int128 type.

    - If __int128 is available, use that on generation of
    left side (local part) of message id. That is used
    when {localspec} on "generate-message-id" option
    is either "md5" or "/dev/urandom". When __int128
    used these options produce left part without
    dot ('.'). That means there is 1 dot ('.') separated
    "word" on local part ( left side ) of message id.
    Otherwise when unsigned long is 64 bits, there
    is 2 dot ('.') separated "word" on local part
    ( left side ) of message id. And if unsigned long
    is 32 bits, there is 4 dot ('.') separated "word"
    on local part ( left side ) of message id.

    - Address prompts accepts space as address separation
    but also accepts form
    phrase <address>
    Fixed bug where extra space after <address> caused
    that to be interpreted as two addresses 'phrase'
    and '<address>'. That is on
    update_expanded_from_edit_buffer().

    - Prompt mailcap programs when metamail is required, but
    not available. Causes that for unsupported
    multipart/related have mailcap used on text/html part. Note
    that this does not work correctly, because related parts are
    not available.

    - Report unsupported multipart and other types on mailcap
    programs prompt if it caused that metamail was required.
    * Note that setting elmrc option "pagemultipart" causes these
    unknown multipart types are not considered unsupported.
    Handling of "multipart/related" is controlled by
    elmrc option "pagerelated".

    - Moved NOTPLAIN_* macros from hdrs/elm_defs.h
    to hdrs/addrlib.h

    - Added -b<backup-suffix> option to elmconfwriter. Elmconfwriter
    checks first that there is no files in form
    <config file><backup-suffix> exists when -b<backup-suffix> option
    is used.
    - Command elmconfwriter -lb<backup-suffix>
    can be used to make backup of config files.
    - Option -b<backup-suffix> without -l option (list
    config files) causes that config
    file <config file> is preserved as
    <config file><backup-suffix> when file <config file> rewritten.

    - Added change_file_utime() to lib/mbox/utime_util.c
    - Changed newmail to use change_file_utime()
    - Changed fbrowser_selection_is_mbox(), mbx_move_temp_file()
    to use change_file_utime()

    - Changed prototype of elm_chown
    - Added variable CHOWN_neg1 (constant)

    - Tried fix usr1_signal() and usr2_signal() so that they
    do not hang (looping).

    - Allowed
    X-Mailer:
    header field on ~/.elm/elmheaders file and on
    'invoke e(d)itor' buffer on header editing screen.
    Note however that ~/.elm/elmheaders file is used both on
    elm and fastmail -commands.
    This overrides default value of X-Mailer: header field.
    If empty field is given, X-Mailer: header field is not
    added when mail is sent.
    - Added struct string *xmailer to struct mailing_headers
    - Added
    X-Mailer:
    header field to edit buffer used by 'invoke e(d)itor' on
    header editing screen. This is added to screen
    only if there is value on X-Mailer: header field.
    This is supported on static struct header_info
    header_types[] on lib/addr/headers.c.

    - Added elmrc option "program-identification".
    Option includes list of keywords:
    none None of values are selected
    X-Mailer Add X-Mailer: header field
    version Add version information to header
    field
    User-Agent Add User-Agent header field
    The "program-identification" elm.rc option
    accepts two forms:
    - Absolute form where used options are listed
    - Additive form where changes from compile
    time default are listed:
    +X-Mailer -X-Mailer
    +version -version
    +User-Agent -User-Agent
    These two forms can not be mixed.
    - Note that also message-id domain, when
    it is msg-id.elmme-mailer.org, identifies program.
    Also X-ELM-OSV: header field, if generated,
    identifies program.
    - Added generation of
    User-Agent: elmme/{libversion} ({X-Mailer})
    header field. This requires that on
    "program-identification" mentions this header field.
    This header fields can not given
    on ~/.elm/elmheaders file or on 'invoke e(d)itor'
    buffer on header editing screen.
    - Added char * encoded_user_agent to struct mailing_headers
    - Added sndhelper_update_user_agent() to lib/mailer/senderhelper.c
    and hdrs/mailerlib.h
    - Added "User-Agent" to static struct header_info header_types[]
    on lib/addr/headers.c

    - Fixed getsockname() test on Configure

    - Added elmrc option "pagerelated". This control handling
    of multipart/related messages. Option have values
    no May use metamail, if available.
    yes Try page first (or start) part,
    single-part Try page single part
    Default value is "single-part".
    NOTE: multipart/related is not supported, and related parts are not
    "passed" to first (or start) part.
    - Note that multipart/related is used normally with text/html as
    first part. That is not supported, and also not work when mailcap
    is used for text/html.
    > This is also known as MHTML.
    - When multipart/related have only single part (that is start part),
    using multipart/related is superfluous. In that case multipart/related
    is not required, and can be replaced with that single part.

    RFC 2387: The MIME Multipart/Related Content-type

    Also boolean ON, OFF, TRUE, FALSE, YES and NO values are allowed
    on elmrc option "pagerelated".

    - Added struct message_id * content_id
    to struct mimeinfo

    - Changed prototype of parse_mime_headers1(), mime_parser_parse(),
    mpar_parse(), mime_read_header()
    - Changed prototype of mpar_parse()

    - Fixed set_out_state_line_mode() so that NULL range parameter
    does not reset current range.

    - Added "DKIM-Signature:" to default weedlist.

    - Fixed incorrect calls of change_helper_3()
    on terminal_switch_to() which caused memory corruption.

    - Added
    unsigned busy:1;
    to struct domain_info on lib/mailer/message-id.c

    - Fixed case where check_msg_domain0() was called with domain
    name (pointer), which was same than dompart field
    on struct domain_info;

    New elmrc options:
    program-identification
    pagerelated

    New file:
    lib/mbox/utime_util.c

    Warnings
    --------

    - Not compiled with MMDF support defined, so probably it doesn't
    work (or even compile).

    - This has not been tested much so there can be bad bugs.

    Bug reports to: Kari E. Hurtta <elm@elmme-mailer.org>
    (was hurtta+elm@posti.FMI.FI)

    - Internationalized (ie. non-ASCII) domain names are not supported.

    - Support for multipart/signed and multipart/encrypted (specially:
    support for PGP/MIME) only in reading side. There is no support
    for attachments with multipart/encrypted.

    - HP's shoftkeys are no longer supported

    - DECNET addresses like host::user may be interpreted as phrase
    of group syntax or as route of source routed address.

    - Header editing screen now uses addresses in form phrase <address>,
    but because it does not require using of comma (,), multiword
    phrases must be entered in quotes.

    For example: "Kari Hurtta" <hurtta>

    - If address includes <> or comments (), they are not aliased
    expanded. So aliases must be entered as bare words.

    - Addresses given as arguments to elm command should be given
    as one address per argument. Giving of sevaral addresses per
    one argument causes that address is misparsed if header is
    edited on header editing screen.

    That is:

    Use: elm '"Kari Hurtta" <hurtta>' 'Admin <root>'

    Don't use: elm 'Kari Hurtta <hurtta>, Admin <root>'

    - p)rint command acts as P)rint text -command. So it
    is currently quite useless.
    p)rint command does that via readmsg -command. However
    P)rint text does actually same (without readmsg).

    - Some Linux libraries does not follow $LC_CTYPE when program is
    setgid. Net result is that your locale is always C. That is
    visible that $LC_CTYPE does not effect to locale printed by
    'elm -vvvvv':

    Locale (LC_CTYPE): C
    Display character-set: US-ASCII
    Sending character-set: US-ASCII

    - All refrences iso2022 maps are parsed and read to memory.
    This may cause quite big memory consumption specially because
    eastern (multibyte) sets tend to be lot of characters. That
    mapping information should be shared between processes to
    reduce memory consuption.

    - If display charset is produced by using mapping from locale
    to charset where charset definition is later invalidated
    ("removed") by setting explicit compatcharsets on user's
    .elm/elmrc, that may cause PANIC on elm's internal pager
    or other problems. Invalidation happens if display charset
    is on implicit compatcharsets list (because of charset
    definition), but does not have explicit compatcharsets list
    given by user.

    - Neither Unicode didirectional algorithm nor Right-Left scripts
    are supported.

    - In some situations two Status headers may be generated two
    Status headers -- one by IMAP deamon and one from APPENDed
    message.

    - When APPENDing message to IMAP folder (which is normal UNIX
    mailbox format) original "From " separator line can not be
    preserved -- specially it is not possible to pass envelope
    sender address.

    - For UTF-8 charset Elm only knows printable characters from
    Latin/1 range, if unicode database (see elmrc option "unidata")
    is not loaded.

    - For using of ISO2022 character sets it is required that mapping
    them to unicode is know -- otherwise Elm ME+ does not know which
    characters are printable.

    - UTF-16 surrogate pairs (D800-DFFF) are not supported on UTF-7
    charset.

    - Mixing of names using IMAP naming convention
    (imap-naming-convention = yes)
    and names using imap-charset does not work very well...

    - " Regarding my message (8 Aug 2000) regarding 'newmail' on
    AIX 4.3.3 in an 'aixterm' window and the 'aixterm' did not
    close, indeed the problem was NOT related to 'newmail' but an
    AIX bug.

    IBM has release a patch, and the 'aixterm' in AIX 4.3.3 must
    be update with fileset X11.apps.aixterm.4.3.3.26 (PTF
    U473920) is solved to problem."
    From: Noam G. Nudelman <noam@mail.biu.ac.il>

    - File /usr/share/locale/fi/charset gives charset name utf-8 on
    Linux Mandrake 7.2. This causes that Configure generates
    mapping
    fi utf-8
    to elm.mimecharsets. However that seems to have
    incorrect mapping. You may want change this to
    fi ISO-8859-1

    ( however nl_langinfo(CODESET) gives charset ISO-8859-15
    but look following entry. )

    - Locale 'fi' seems to have charset ISO-8859-15 according
    of nl_langinfo(CODESET) on Mandrake Linux 7.2 (and probaly
    others with same glibc version). However for example gnome
    terminal uses font
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-1
    and not
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-15

    Also KDE's konsole program seems use iso8859-1 character set
    although locale is 'fi' which should have ISO-8859-15 according
    of nl_langinfo (selecting "unicode" from menu seems fix that.)

    Because of mismatch more correct locale is fi_FI.88591, which gives
    ISO-8859-1 character set according of nl_langinfo(CODESET).

    ( Locale seems come from /etc/sysconfig/i18n or $HOME/.i18n )

    > To enable handling of ISO-8859-1 and ISO-8859-15 character sets
    on linux console, read comments from doc/terminal.info file.

    - Mandrake Linux 7.2 seems set LD_PRELOAD to load
    /usr/lib/libxalflaunch.so.0. That (xalf-0.4-2mdk) causes that
    elm to crash on startup (actually before main() is reached.)

    - kterm on Mandrake Linux 7.2 seems have (at least on my test
    environment) seems get bad fontlist (*VT100*fontList) which
    gives bad font for iso8859-1 -- therefore ISO-8859-1 characters
    do not work.

    ("xrdb -query" seems report resource with name "*fontList"
    -- that probably overrides "*VT100*fontList" which comes
    from /usr/lib/X11/app-defaults/KTerm )

    - Also note that initially kterm does NOT default to
    ISO-8859-1 -- therefore ISO-8859-1 works only when
    elm explicity switch to ISO-8859-1 (for example
    with 'elm -D ISO-8859-1')

    - When assembling message/partial MIME (RFC 2046)
    requires that all headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are copied from
    initial enclosing message to assembled message. It also
    requires that headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are ignored and
    dropped from enclosed message.

    For now we copy only Received: -headers. Dropping extra
    headers from enclosed message makes assembly more
    complicated (and dropping of Received: -headers
    from enclosed message do not make sense.)

    - mailer=sendmail; verify=yes works only when sendmail
    is installed as setuid root. Use mailer=submission instead.
    * Starting from sendmail 8.12 sendmail is normally
    installed as setgid smmsp and not as setuid root.
    - However error message is printed only if
    verify-local-address=yes is also set

    - IMAP connection is stalled some times. Reason is unknown.

    - From name option (-f) on fastmail is currently broken.

    Collector of these patches
    --------------------------

    Kari Hurtta <elm@elmme-mailer.org>
    Kari Hurtta <hurtta+elm@siilo.FMI.FI>

    --
    / Kari Hurtta

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Kari Hurtta@21:1/5 to All on Sat May 1 19:21:37 2021
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha54.0

    This thread is now 25 years old. Starting from 14 Jan 1996.

    Before applying this patch catenate parts 1 - 2 first.
    Also it should be possible to apply parts 1 - 2
    individually.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha53

    ====================================== ( part 0/2 ) =========
    Elm ME+ 2.5 PLalpha54

    - Is available with
    <URL: http://www.elmme-mailer.org/elm-ME+2.5/src/elm-ME+2.5.alpha54.cf1c00051619f47ae5a59ecdf3609156.tar.gz >
    and <URL: http://www.elmme-mailer.org/elm-ME+2.5/src/elm-ME+2.5.PLalpha54.patch.gz >
    via http.

    - Is available with
    <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.alpha54.cf1c00051619f47ae5a59ecdf3609156.tar.gz >
    and <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.PLalpha54.patch.gz >
    via https.

    - Is available on ftp.funet.fi
    via anonymous ftp
    directory pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/

    files elm-ME+2.5.alpha54.cf1c00051619f47ae5a59ecdf3609156.tar.gz
    and elm-ME+2.5.PLalpha54.patch.gz

    or is available with
    <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.alpha54.cf1c00051619f47ae5a59ecdf3609156.tar.gz >
    and <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha54.patch.gz >
    with browser

    or is available with
    <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.alpha54.cf1c00051619f47ae5a59ecdf3609156.tar.gz >
    and <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha54.patch.gz >
    via https.

    SUMMARY: This release fixes type=iconv option
    on .elm/mime.charsets and some other bugs.
    This release changes size display on
    mail listing. This release changes handling
    some bogus 8-bit mail with elmrc options
    "use-char-set-header-field-hack" and
    "use-content-type-charset-for-8bit-subject-hack".
    If getifaddrs() is available, resolv
    module clears name lookup cache when
    interfaces addresses change (with
    elmrc option "interface-change"
    on "resolv:" section). Also some other
    changes are included.

    Changes on Elm ME+ 2.5 PLalpha54 compared with Elm ME+ 2.5 PLalpha53 --------------------------------------------------------------------

    SUMMARY: This release fixes type=iconv option
    on .elm/mime.charsets and some other bugs.
    This release changes size display on
    mail listing. This release changes handling
    some bogus 8-bit mail with elmrc options
    "use-char-set-header-field-hack" and
    "use-content-type-charset-for-8bit-subject-hack".
    If getifaddrs() is available, resolv
    module clears name lookup cache when
    interfaces addresses change (with
    elmrc option "interface-change"
    on "resolv:" section). Also some other
    changes are included.

    - Changed sysconf(_SC_SAVED_IDS) call on user_init()
    at lib/read_rc.c

    - Show filename from Content-Disposition header field
    on "MIME structure Menu", if other data is not available.

    - Changed builtin++ pager prompt on end. Specially
    on case where attachments / mime parts are viewed.
    - Also changed metapager prompt on case where attachments /
    mime parts are viewed.
    - Changed metapager return value (when external pager is used).

    - Show size mail on (kilo/mega)bytes on mail listing if
    number of lines is not available, because mail
    on IMAP mailbox was skipped. Number of lines are shown
    inside of (), number of bytes are shows with [].
    - Also use prefixes "k" (kilo) and "M" (mega).
    - Added struct string *size_lines_s to struct header_rec
    - Added make_size_lines() to src/menu_common/message_screen.c
    - Added give_message_menu_size() to src/messages/messages.c
    and hdrs/me.h
    - Added mt_give_message_menu_size() to src/messages/def_messages.h
    - Added mt_give_message_menu_size * mt_give_message_msize_it
    to struct mailbox_type
    - Added folder_give_message_msize() to lib/mbox/mbox.c
    and hdrs/mboxlib.h
    - Added mbx_give_message_msize_folder() to hdrs/mbx_imp.h
    - Added mbx_give_message_msize_default() to lib/mbox/mbox_generic.c
    and lib/mbox/def_mbox.h

    - Certain sender sends mail with header fields
    MIME-Version: 1.0
    Content-Type: text/plain
    Char-Set: iso-8859-1
    where subject and message body includes
    8-bit (iso-8859-1) data. That Char-Set header field
    is non-standard. Added elmrc option
    "use-char-set-header-field-hack", which enables
    processing this (bogus) header field. This
    "Char-Set:" handled only on mail's header block
    (non on MIME header's of body part).
    - Added header_trim_whitespace_helper() to hdrs/mboxlib.h
    and lib/mbox/headers.c
    - Added default_body_charset to struct header_rec
    - Changed prototype of mime_decode(), pgp_decode(), pgp_SG_decoder(),
    pgp_EC_decoder(), null_EC_decoder(), null_SG_decoder(),
    partial_decode()
    - Changed prototype of encrypted_decoder(), signed_decoder(),
    CT_decoder()

    - Certain sender sends mail where subject 8-bit (iso-8859-1)
    with headers
    Subject: <8-bit iso-8859-1 text>
    MIME-Version: 1.0
    Content-Type: text/plain; charset=iso-8859-1
    Sending raw 8-bit (iso-8859-1) text on subject header
    field is non-standard. Added elmrc option
    "use-content-type-charset-for-8bit-subject-hack" which
    enables processing Subject: header field with using
    Content-Type header field.
    - Added unsigned int header_charset_set :1;
    to struct header_rec
    - Changed prototype of state_write_headers()

    - Added is_cancel_installed() to lib/cancel.c
    - Changed block_signals() to take account
    possible cancel_data and installed SIGINT
    handler for that.

    - Removed menu_header_status_update() from
    'v' (View parts of message) on mailbox_command()
    - Removed menu_header_status_update() from
    'V' (View parts of message) on mailbox_command()

    * If getifaddrs() is available:
    - Clear name lookup cache of libelmme-resolv.so module
    when interfaces addresses change if "interface-change"
    (on "resolv:" section) have value "clear-cache"
    (default).
    - If address is marked as interface_loopback,
    then address is not added to "mailname".
    - elmrc aoption "query-address-type" (on resolv:
    -section) value "default" also ignores
    addresses which are marked as interface_loopback
    when determining if query A (IPv4) or AAAA (IPv6)
    records need to be queried.
    - Added interface_up to struct interface_addr
    - Added interface_loopback to struct interface_addr
    - Added notify_if_change_f() to shared_libs/include/shared.h
    - Added notify_if_change_p to struct sl_connect_data
    - Added shared_notify_if_change to hdrs/connection_imp.h
    and lib/shared_connect.c

    - Added possible fix to cs_find_pattern_from_unknown()
    - Added possible fix to cs_add_streambyte_to_s_iconv()
    - Added possible fix to cs_soft_reset_s_iconv()
    - Added possible fix to cs_streamclip_from_iconv()
    - Added missing ...->cs_check_length_it() call to
    string_to_long()
    - Added ...->cs_check_length_it() calls to
    cat_strings_internal()

    - Fixed broken type=iconv option on .elm/mime.charsets
    (that was not implemented)
    - Added CS_charset_type_f() to shared_libs/include/shared.h
    - Changed cs_first_type to cs_charset_type on
    struct sl_base_data

    - Fixed compress_unicode() on case where zero length words
    was passed to it.

    New elmrc options:
    use-char-set-header-field-hack
    use-content-type-charset-for-8bit-subject-hack
    resolv:interface-change


    diffstat:

    README.ME+ | 139 ++++++++++++
    doc/elm.1 | 2
    doc/elmalias.1 | 2
    doc/elmaliases-write.1 | 2
    doc/elmbindata.1 | 2
    doc/elmcharset.1 | 2
    doc/elmconfwriter.1 | 2
    doc/elmhashmarks.1 | 2
    doc/elmiso2022sets.1 | 2
    doc/elmlibregister.1 | 2
    doc/elmmailinglists.1 | 2
    doc/elmmailservices.1 | 2
    doc/elmmimetypes.1 | 2
    doc/elmrc-info | 380 +++++-!!!!!!!!!!!!!!!!!!!!!!!!!!!
    doc/elmrc-write.1 | 2
    doc/elmregister.1 | 2
    doc/elmstringconvert.1 | 2
    doc/elmterminal.1 | 2
    doc/elmunidata.1 | 2
    doc/fastmail.1 | 2
    doc/frm.1 | 2
    doc/newalias.1 | 2
    doc/newmail.1 | 2
    doc/readmsg.1 | 2
    hdrs/addrlib.h | 11 !
    hdrs/connection_imp.h | 12
    hdrs/elm_defs.h | 6
    hdrs/elmlib.h | 13 !
    hdrs/mboxlib.h | 22 +!
    hdrs/mbx_imp.h | 9
    hdrs/me.h | 27 +!
    hdrs/melib.h | 23 !!
    hdrs/patchlevel.h | 10
    hdrs/readmsg.h | 4
    hdrs/s_elm.h | 2
    hdrs/save_opts.h | 6
    lib/addr/write_hdr.c | 31 !!
    lib/cancel.c | 19 +
    lib/cs_unknown.c | 11 !
    lib/mbox/def_mbox.h | 10
    lib/mbox/headers.c | 242 ++++++++++!!!!!!!!!!!
    lib/mbox/imap.c | 61 ++++!
    lib/mbox/localmbx.c | 13 !
    lib/mbox/mbox.c | 74 ++++++
    lib/mbox/mbox_generic.c | 19 +
    lib/mbox/pop.c | 31 ++
    lib/mparse.c | 8
    lib/read_rc.c | 53 +!!!
    lib/remote_mbx.c | 119 +++++++!!!
    lib/shared_base.c | 56 ++!!!
    lib/shared_connect.c | 62 ++++!
    lib/string.c | 26 +!
    lib/unicode.c | 6
    melib/def_melib.h | 27 !!
    melib/mime_decode.c | 277 +!!!!!!!!!!!!!!!!!!!!!!!!
    melib/mime_selector.c | 13 !
    melib/parse_util.c | 31 !!
    melib/partial.c | 7
    melib/pgp_decode.c | 34 !!!
    nls/C/C/C/s_elm.m | 8
    shared_libs/iconv/iconv.c | 228 +++++!!!!!!!!!!!!!!!!
    shared_libs/include/shared.h | 9
    shared_libs/resolv/elmrc-resolv-info | 11 !
    shared_libs/resolv/resolv.c | 228 ++++++++++++++++++-
    src/alias.c | 5
    src/args.c | 8
    src/attach_menu.c | 84 !!!!!!!
    src/builtin++.c | 39 !!!
    src/canceled.c | 5
    src/digest.c | 5
    src/duplicate_removal.c | 5
    src/elm.c | 14 !
    src/file_util.c | 37 !!!
    src/fileio.c | 12 !
    src/leavembox.c | 38 !!!
    src/list/visit_mailbox.c | 5
    src/mailbox.c | 6
    src/menu_common/message_screen.c | 165 ++++++++!!!!!!!
    src/messages/canceled_mail.c | 55 ++++!
    src/messages/def_messages.h | 8
    src/messages/digest.c | 24 +
    src/messages/duplicate.c | 91 +++++++!
    src/messages/header_alloc.c | 237 !!!!!!!!!!!!!!!!!!!!!
    src/messages/mailfile.c | 117 +++++++!!!
    src/messages/messages.c | 74 ++!!!!
    src/messages/partial.c | 41 +++
    src/messages/storage.c | 52 ++++
    src/messages/thread_messages.c | 26 +!
    src/metapager.c | 90 -!!!!!
    src/partial.c | 5
    src/screen/curses.c | 72 +!!!!!
    src/view_folder.c | 5
    src/view_one_thread.c | 5
    utils/readmsg/readmsg.c | 56 ++++!
    94 files changed, 1616 insertions(+), 37 deletions(-), 2155 modifications(!)

    --
    / Kari Hurtta

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Kari Hurtta@21:1/5 to All on Sat May 1 19:22:35 2021
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha54.1

    Before applying this patch catenate parts 1 - 2 first.
    Also it should be possible to apply parts 1 - 2
    individually.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha53

    ====================================== ( part 1/2 ) =========
    For applying thich patch use (on directory where Configure is)

    patch -p1 < {this-file}

    ------------------------------------------------------------------------
    Index: elmME+.2.5.alpha54-cvs/hdrs/patchlevel.h
    Prereq: 1638000000
    *** elmME+.2.5.alpha53/hdrs/patchlevel.h Mon Dec 7 20:29:21 2020
    --- elmME+.2.5.alpha54-cvs/hdrs/patchlevel.h Tue Apr 20 19:54:07 2021 ***************
    *** 1,12 ****
    ! #define PATCHLEVEL "alpha53"
    /* Used by Configure:
    ! SHAREDTAG: .1.1.53
    */
    ! #define LAST_REPORT_TIME 1638000000
    #define BUG_REPORT_ADDR "Kari Hurtta <elm@elmme-mailer.org>"
    ! #define VERS_DATE "Dec 2020" /* for elm -v option */
    #define WHAT_STRING \
    ! "@(#) Version ME+ 2.5, USENET supported version, released Dec 2020"

    /*
    * Local Variables:
    --- 1,12 ----
    ! #define PATCHLEVEL "alpha54"
    /* Used by Configure:
    ! SHAREDTAG: .1.1.54
    */
    ! #define LAST_REPORT_TIME 1650000000
    #define BUG_REPORT_ADDR "Kari Hurtta <elm@elmme-mailer.org>"
    ! #define VERS_DATE "May 2021" /* for elm -v option */
    #define WHAT_STRING \
    ! "@(#) Version ME+ 2.5, USENET supported version, released May 2021"

    /*
    * Local Variables:
    Index: elmME+.2.5.alpha54-cvs/README.ME+
    *** elmME+.2.5.alpha53/README.ME+ Mon Dec 7 20:29:21 2020
    --- elmME+.2.5.alpha54-cvs/README.ME
  • From Kari Hurtta@21:1/5 to All on Sat May 1 19:23:25 2021
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha54.2

    Before applying this patch catenate parts 1 - 2 first.
    Also it should be possible to apply parts 1 - 2
    individually.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha53

    ====================================== ( part 2/2 ) =========
    Index: elmME+.2.5.alpha54-cvs/melib/parse_util.c
    *** elmME+.2.5.alpha53/melib/parse_util.c Sun Feb 4 21:36:29 2018
    --- elmME+.2.5.alpha54-cvs/melib/parse_util.c Sun Jan 17 20:53:16 2021 ***************
    *** 1,8 ****
    ! static char rcsid[] = "@(#)$Id: parse_util.c,v 2.17 2017/11/18 16:49:26 hurtta Exp $";


    /******************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 2.17 $ $State: Exp $
    *
    * Author: Kari Hurtta <hurtta+elm@siilo.FMI.FI>
    * (was hurtta+elm@posti.FMI.FI, hurtta+elm@ozone.FMI.FI) --- 1,8 ----
    ! static char rcsid[] = "@(#)$Id: parse_util.c,v 2.18 2021/01/17 18:53:16 hurtta Exp $";


    /******************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 2.18 $ $State: Exp $
    *
    * Author: Kari Hurtta <hurtta+elm@siilo.FMI.FI>
    * (was hurtta+elm@posti.FMI.FI, hurtta+elm@ozone.FMI.FI) ***************
    *** 252,258 ****
    const struct decode_opts *decode_opt;
    header_list_ptr next;
    int dem
  • From Kari Hurtta@21:1/5 to All on Sun May 2 14:06:29 2021
    Experimental RPM spec file for ELM ME+ 2.5 PLalpha54
    exists on <URL: http://www.elmme-mailer.org/rpm/elm-ME+2.5.html >
    directory.

    Files are following

    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha54-1.spec
    RPM spec file
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha54-1.spec.elm-key-2018.sig
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha54-1.spec.sig
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha54-1.mdk7.2.src.rpm
    Source rpm
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha54-1.mdk7.2.src.rpm.sig

    ** Notes

    - elm-ME+2.5.alpha54-1.mdk7.1.src.rpm is signed internally with GPG
    key elm.key.2018.asc (44FC796B 2018-12-01).

    * Compiled on Linux Mandrake release 7.2
    (Linux 2.2, glibc 2.1, Sendmail 8.13)

    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha54-1.mdk7.2.i686.rpm
    Package elm binary RPM build on Linux Mandrake release 7.2
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha54-1.mdk7.2.i686.rpm.sig
    - http://www.elmme-mailer.org/rpm/elm-mod-ME+2.5.alpha54-1.mdk7.2.i686.rpm
    Package elm-mod binary RPM build on Linux Mandrake release 7.2
    - http://www.elmme-mailer.org/rpm/elm-tls-ME+2.5.alpha54-1.mdk7.2.i686.rpm
    Package elm-tls binary RPM build on Linux Mandrake release 7.2
    - http://www.elmme-mailer.org/rpm/elm-tls-ME+2.5.alpha54-1.mdk7.2.i686.rpm.sig

    ** Notes

    - elm-ME+2.5.alpha54-1.mdk7.2.i686.rpm and
    elm-*-ME+2.5.alpha54-1.mdk7.2.i686.rpm are signed internally with
    GPG key elm.key.2018.asc (44FC796B 2018-12-01).
    - elm-ME+2.5.alpha54-1.mdk7.2.i686.rpm is compiled agaist Sendmail
    8.13 (not from Mandrake distribution).
    - elm-tls-ME+2.5.alpha54-1.mdk7.2.i686.rpm do not load/work on
    Mandrake 7.2, because openssl library misses ASN1_STRING_to_UTF8
    function.

    * Signatures

    {file}.sig PGP signature (old key pubkey.asc, EA5A2379 1996-04-23)
    {file}.elm-key-2018.sig GPG signature (key elm.key.2018.asc, 44FC796B 2018-12-01, expires: 2028-11-28)

    * Configuration

    Following files (if exists) are rewritten by elmconfwriter on
    installation:

    - /usr/local/lib/elm.rc
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.hashmarks

    Spec file compiles elm for binary distribution, so you must edit
    /usr/local/lib/elm.rc before using Elm ME+ 2.5. Following variables may
    need to be modified on elm.rc:

    - mailer
    - hostdomain (this is usually needed)
    - hostfullname
    - hostname (usually this is not needed)
    - mailname (default values is generated from other values)
    name-resolution (controls default values of hostdomain,
    hostfullname, hostname, mailname)


    For re-generation of following file, old information (if exists) is
    used:

    - /usr/local/lib/elm.rc

    WARNING: Check after installation that libraries are enabled. Global
    elm.rc values are:

    use-library =
    use-base-library = iconv
    use-config-library = resolv
    use-connect-library = tls resolv
    use-mailer-library = smtp resolv

    Note that libelmme-resolv.so does not compile on all distributions. In
    that case omit resolv from elm.rc.

    After editing global elm.rc run /usr/local/lib/elmrc-write -GI for
    fixing possible errors.

    On installation following existing files are merged with new values:

    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.hashmarks

    Old values from /usr/local/lib/aliases.text are converted to /usr/local/lib/elm.aliases and /usr/local/lib/aliases.text is renamed to /usr/local/lib/aliases.text.OLD.

    On installation new values without merging are written to following
    files:

    - /usr/local/lib/elm.aliases.NEW
    - /usr/local/lib/elm.mailinglists.NEW
    - /usr/local/lib/elm.mailservices.NEW
    - /usr/local/lib/elm.mimecharsets.NEW
    - /usr/local/lib/elm.mimetypes.NEW
    - /usr/local/lib/elm.terminalinfo.NEW
    - /usr/local/lib/elm.iso2022sets.NEW
    - /usr/local/lib/elm.hashmarks.NEW

    Package elm-mod includes libelmme-iconv.so and libelmme-smtp.so. (If
    package elm-mod includes libelmme-resolv.so, this is noted). And package elm-tls includes libelmme-tls.so.

    Installation loses mailer = submission setting from global /usr/local/lib/elm.rc, because when elm package rewrites elm.rc,
    submission mailer is not available. It becomes from elm-mod package.

    However failed values of /usr/local/lib/elm.rc are saved to /usr/local/lib/elm.rc.old-values file during installation.

    Global setting mailer = submission is restored from /usr/local/lib/elm.rc.old-values file, when package elm-mod is
    installed.

    Also following directories are used:

    - /usr/local/lib/elm.map.txt/ (global setting map-text-dir =
    {lib}/elm.map.txt)
    - /usr/local/lib/elm.map.bin/ (global setting map-bin-dir =
    {lib}/elm.map.bin)
    - /usr/local/lib/elm.user.map/ (global setting user-map-dir =
    {lib}/elm.user.map)

    Hashmark EXAMPLE uses file /usr/local/lib/elm.user.map/elm.usermap.

    SUMMARY: This release fixes type=iconv option
    on .elm/mime.charsets and some other bugs.
    This release changes size display on
    mail listing. This release changes handling
    some bogus 8-bit mail with elmrc options
    "use-char-set-header-field-hack" and
    "use-content-type-charset-for-8bit-subject-hack".
    If getifaddrs() is available, resolv module
    clears name lookup cache when interfaces addresses
    change (with elmrc option "interface-change"
    on "resolv:" section). Also some other changes are
    included.

    Elm ME+ 2.5 PLalpha54 changelog

    Changes on Elm ME+ 2.5 PLalpha54 compared with Elm ME+ 2.5 PLalpha53 --------------------------------------------------------------------

    SUMMARY: This release fixes type=iconv option
    on .elm/mime.charsets and some other bugs.
    This release changes size display on
    mail listing. This release changes handling
    some bogus 8-bit mail with elmrc options
    "use-char-set-header-field-hack" and
    "use-content-type-charset-for-8bit-subject-hack".
    If getifaddrs() is available, resolv
    module clears name lookup cache when
    interfaces addresses change (with
    elmrc option "interface-change"
    on "resolv:" section). Also some other
    changes are included.

    - Changed sysconf(_SC_SAVED_IDS) call on user_init()
    at lib/read_rc.c

    - Show filename from Content-Disposition header field
    on "MIME structure Menu", if other data is not available.

    - Changed builtin++ pager prompt on end. Specially
    on case where attachments / mime parts are viewed.
    - Also changed metapager prompt on case where attachments /
    mime parts are viewed.
    - Changed metapager return value (when external pager is used).

    - Show size mail on (kilo/mega)bytes on mail listing if
    number of lines is not available, because mail
    on IMAP mailbox was skipped. Number of lines are shown
    inside of (), number of bytes are shows with [].
    - Also use prefixes "k" (kilo) and "M" (mega).
    - Added struct string *size_lines_s to struct header_rec
    - Added make_size_lines() to src/menu_common/message_screen.c
    - Added give_message_menu_size() to src/messages/messages.c
    and hdrs/me.h
    - Added mt_give_message_menu_size() to src/messages/def_messages.h
    - Added mt_give_message_menu_size * mt_give_message_msize_it
    to struct mailbox_type
    - Added folder_give_message_msize() to lib/mbox/mbox.c
    and hdrs/mboxlib.h
    - Added mbx_give_message_msize_folder() to hdrs/mbx_imp.h
    - Added mbx_give_message_msize_default() to lib/mbox/mbox_generic.c
    and lib/mbox/def_mbox.h

    - Certain sender sends mail with header fields
    MIME-Version: 1.0
    Content-Type: text/plain
    Char-Set: iso-8859-1
    where subject and message body includes
    8-bit (iso-8859-1) data. That Char-Set header field
    is non-standard. Added elmrc option
    "use-char-set-header-field-hack", which enables
    processing this (bogus) header field. This
    "Char-Set:" handled only on mail's header block
    (non on MIME header's of body part).
    - Added header_trim_whitespace_helper() to hdrs/mboxlib.h
    and lib/mbox/headers.c
    - Added default_body_charset to struct header_rec
    - Changed prototype of mime_decode(), pgp_decode(), pgp_SG_decoder(),
    pgp_EC_decoder(), null_EC_decoder(), null_SG_decoder(),
    partial_decode()
    - Changed prototype of encrypted_decoder(), signed_decoder(),
    CT_decoder()

    - Certain sender sends mail where subject 8-bit (iso-8859-1)
    with headers
    Subject: <8-bit iso-8859-1 text>
    MIME-Version: 1.0
    Content-Type: text/plain; charset=iso-8859-1
    Sending raw 8-bit (iso-8859-1) text on subject header
    field is non-standard. Added elmrc option
    "use-content-type-charset-for-8bit-subject-hack" which
    enables processing Subject: header field with using
    Content-Type header field.
    - Added unsigned int header_charset_set :1;
    to struct header_rec
    - Changed prototype of state_write_headers()

    - Added is_cancel_installed() to lib/cancel.c
    - Changed block_signals() to take account
    possible cancel_data and installed SIGINT
    handler for that.

    - Removed menu_header_status_update() from
    'v' (View parts of message) on mailbox_command()
    - Removed menu_header_status_update() from
    'V' (View parts of message) on mailbox_command()

    * If getifaddrs() is available:
    - Clear name lookup cache of libelmme-resolv.so module
    when interfaces addresses change if "interface-change"
    (on "resolv:" section) have value "clear-cache"
    (default).
    - If address is marked as interface_loopback,
    then address is not added to "mailname".
    - elmrc aoption "query-address-type" (on resolv:
    -section) value "default" also ignores
    addresses which are marked as interface_loopback
    when determining if query A (IPv4) or AAAA (IPv6)
    records need to be queried.
    - Added interface_up to struct interface_addr
    - Added interface_loopback to struct interface_addr
    - Added notify_if_change_f() to shared_libs/include/shared.h
    - Added notify_if_change_p to struct sl_connect_data
    - Added shared_notify_if_change to hdrs/connection_imp.h
    and lib/shared_connect.c

    - Added possible fix to cs_find_pattern_from_unknown()
    - Added possible fix to cs_add_streambyte_to_s_iconv()
    - Added possible fix to cs_soft_reset_s_iconv()
    - Added possible fix to cs_streamclip_from_iconv()
    - Added missing ...->cs_check_length_it() call to
    string_to_long()
    - Added ...->cs_check_length_it() calls to
    cat_strings_internal()

    - Fixed broken type=iconv option on .elm/mime.charsets
    (that was not implemented)
    - Added CS_charset_type_f() to shared_libs/include/shared.h
    - Changed cs_first_type to cs_charset_type on
    struct sl_base_data

    - Fixed compress_unicode() on case where zero length words
    was passed to it.

    New elmrc options:
    use-char-set-header-field-hack
    use-content-type-charset-for-8bit-subject-hack
    resolv:interface-change

    Warnings
    --------

    - Not compiled with MMDF support defined, so probably it doesn't
    work (or even compile).

    - This has not been tested much so there can be bad bugs.

    Bug reports to: Kari E. Hurtta <elm@elmme-mailer.org>
    (was hurtta+elm@posti.FMI.FI)

    - Internationalized (ie. non-ASCII) domain names are not supported.

    - Support for multipart/signed and multipart/encrypted (specially:
    support for PGP/MIME) only in reading side. There is no support
    for attachments with multipart/encrypted.

    - HP's shoftkeys are no longer supported

    - DECNET addresses like host::user may be interpreted as phrase
    of group syntax or as route of source routed address.

    - Header editing screen now uses addresses in form phrase <address>,
    but because it does not require using of comma (,), multiword
    phrases must be entered in quotes.

    For example: "Kari Hurtta" <hurtta>

    - If address includes <> or comments (), they are not aliased
    expanded. So aliases must be entered as bare words.

    - Addresses given as arguments to elm command should be given
    as one address per argument. Giving of sevaral addresses per
    one argument causes that address is misparsed if header is
    edited on header editing screen.

    That is:

    Use: elm '"Kari Hurtta" <hurtta>' 'Admin <root>'

    Don't use: elm 'Kari Hurtta <hurtta>, Admin <root>'

    - p)rint command acts as P)rint text -command. So it
    is currently quite useless.
    p)rint command does that via readmsg -command. However
    P)rint text does actually same (without readmsg).

    - Some Linux libraries does not follow $LC_CTYPE when program is
    setgid. Net result is that your locale is always C. That is
    visible that $LC_CTYPE does not effect to locale printed by
    'elm -vvvvv':

    Locale (LC_CTYPE): C
    Display character-set: US-ASCII
    Sending character-set: US-ASCII

    - All refrences iso2022 maps are parsed and read to memory.
    This may cause quite big memory consumption specially because
    eastern (multibyte) sets tend to be lot of characters. That
    mapping information should be shared between processes to
    reduce memory consuption.

    - If display charset is produced by using mapping from locale
    to charset where charset definition is later invalidated
    ("removed") by setting explicit compatcharsets on user's
    .elm/elmrc, that may cause PANIC on elm's internal pager
    or other problems. Invalidation happens if display charset
    is on implicit compatcharsets list (because of charset
    definition), but does not have explicit compatcharsets list
    given by user.

    - Neither Unicode didirectional algorithm nor Right-Left scripts
    are supported.

    - In some situations two Status headers may be generated two
    Status headers -- one by IMAP deamon and one from APPENDed
    message.

    - When APPENDing message to IMAP folder (which is normal UNIX
    mailbox format) original "From " separator line can not be
    preserved -- specially it is not possible to pass envelope
    sender address.

    - For UTF-8 charset Elm only knows printable characters from
    Latin/1 range, if unicode database (see elmrc option "unidata")
    is not loaded.

    - For using of ISO2022 character sets it is required that mapping
    them to unicode is know -- otherwise Elm ME+ does not know which
    characters are printable.

    - UTF-16 surrogate pairs (D800-DFFF) are not supported on UTF-7
    charset.

    - Mixing of names using IMAP naming convention
    (imap-naming-convention = yes)
    and names using imap-charset does not work very well...

    - " Regarding my message (8 Aug 2000) regarding 'newmail' on
    AIX 4.3.3 in an 'aixterm' window and the 'aixterm' did not
    close, indeed the problem was NOT related to 'newmail' but an
    AIX bug.

    IBM has release a patch, and the 'aixterm' in AIX 4.3.3 must
    be update with fileset X11.apps.aixterm.4.3.3.26 (PTF
    U473920) is solved to problem."
    From: Noam G. Nudelman <noam@mail.biu.ac.il>

    - File /usr/share/locale/fi/charset gives charset name utf-8 on
    Linux Mandrake 7.2. This causes that Configure generates
    mapping
    fi utf-8
    to elm.mimecharsets. However that seems to have
    incorrect mapping. You may want change this to
    fi ISO-8859-1

    ( however nl_langinfo(CODESET) gives charset ISO-8859-15
    but look following entry. )

    - Locale 'fi' seems to have charset ISO-8859-15 according
    of nl_langinfo(CODESET) on Mandrake Linux 7.2 (and probaly
    others with same glibc version). However for example gnome
    terminal uses font
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-1
    and not
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-15

    Also KDE's konsole program seems use iso8859-1 character set
    although locale is 'fi' which should have ISO-8859-15 according
    of nl_langinfo (selecting "unicode" from menu seems fix that.)

    Because of mismatch more correct locale is fi_FI.88591, which gives
    ISO-8859-1 character set according of nl_langinfo(CODESET).

    ( Locale seems come from /etc/sysconfig/i18n or $HOME/.i18n )

    > To enable handling of ISO-8859-1 and ISO-8859-15 character sets
    on linux console, read comments from doc/terminal.info file.

    - Mandrake Linux 7.2 seems set LD_PRELOAD to load
    /usr/lib/libxalflaunch.so.0. That (xalf-0.4-2mdk) causes that
    elm to crash on startup (actually before main() is reached.)

    - kterm on Mandrake Linux 7.2 seems have (at least on my test
    environment) seems get bad fontlist (*VT100*fontList) which
    gives bad font for iso8859-1 -- therefore ISO-8859-1 characters
    do not work.

    ("xrdb -query" seems report resource with name "*fontList"
    -- that probably overrides "*VT100*fontList" which comes
    from /usr/lib/X11/app-defaults/KTerm )

    - Also note that initially kterm does NOT default to
    ISO-8859-1 -- therefore ISO-8859-1 works only when
    elm explicity switch to ISO-8859-1 (for example
    with 'elm -D ISO-8859-1')

    - When assembling message/partial MIME (RFC 2046)
    requires that all headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are copied from
    initial enclosing message to assembled message. It also
    requires that headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are ignored and
    dropped from enclosed message.

    For now we copy only Received: -headers. Dropping extra
    headers from enclosed message makes assembly more
    complicated (and dropping of Received: -headers
    from enclosed message do not make sense.)

    - mailer=sendmail; verify=yes works only when sendmail
    is installed as setuid root. Use mailer=submission instead.
    * Starting from sendmail 8.12 sendmail is normally
    installed as setgid smmsp and not as setuid root.
    - However error message is printed only if
    verify-local-address=yes is also set

    - IMAP connection is stalled some times. Reason is unknown.

    - From name option (-f) on fastmail is currently broken.

    Collector of these patches
    --------------------------

    Kari Hurtta <elm@elmme-mailer.org>
    Kari Hurtta <hurtta+elm@siilo.FMI.FI>

    --
    / Kari Hurtta

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Kari Hurtta@21:1/5 to All on Sun May 2 14:31:44 2021
    Experimental RPM spec file for ELM ME+ 2.5 PLalpha54
    exists on <URL: http://www.elmme-mailer.org/rpm/elm-ME+2.5.html >
    directory.

    Files are following

    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha54-1.spec
    RPM spec file
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha54-1.spec.elm-key-2018.sig
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha54-1.spec.sig
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha54-1.mdk7.2.src.rpm
    Source rpm
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha54-1.mdk7.2.src.rpm.sig

    ** Notes

    - elm-ME+2.5.alpha54-1.mdk7.1.src.rpm is signed internally with GPG
    key elm.key.2018.asc (44FC796B 2018-12-01).

    * Compiled on Linux Mandrake release 7.2
    (Linux 2.2, glibc 2.1, Sendmail 8.13)

    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha54-1.mdk7.2.i686.rpm
    Package elm binary RPM build on Linux Mandrake release 7.2
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha54-1.mdk7.2.i686.rpm.sig
    - http://www.elmme-mailer.org/rpm/elm-mod-ME+2.5.alpha54-1.mdk7.2.i686.rpm
    Package elm-mod binary RPM build on Linux Mandrake release 7.2
    - http://www.elmme-mailer.org/rpm/elm-tls-ME+2.5.alpha54-1.mdk7.2.i686.rpm
    Package elm-tls binary RPM build on Linux Mandrake release 7.2
    - http://www.elmme-mailer.org/rpm/elm-tls-ME+2.5.alpha54-1.mdk7.2.i686.rpm.sig

    ** Notes

    - elm-ME+2.5.alpha54-1.mdk7.2.i686.rpm and
    elm-*-ME+2.5.alpha54-1.mdk7.2.i686.rpm are signed internally with
    GPG key elm.key.2018.asc (44FC796B 2018-12-01).
    - elm-ME+2.5.alpha54-1.mdk7.2.i686.rpm is compiled agaist Sendmail
    8.13 (not from Mandrake distribution).
    - elm-tls-ME+2.5.alpha54-1.mdk7.2.i686.rpm do not load/work on
    Mandrake 7.2, because openssl library misses ASN1_STRING_to_UTF8
    function.

    * Signatures

    {file}.sig PGP signature (old key pubkey.asc, EA5A2379 1996-04-23)
    {file}.elm-key-2018.sig GPG signature (key elm.key.2018.asc, 44FC796B 2018-12-01, expires: 2028-11-28)

    * Configuration

    Following files (if exists) are rewritten by elmconfwriter on
    installation:

    - /usr/local/lib/elm.rc
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.hashmarks

    Spec file compiles elm for binary distribution, so you must edit
    /usr/local/lib/elm.rc before using Elm ME+ 2.5. Following variables may
    need to be modified on elm.rc:

    - mailer
    - hostdomain (this is usually needed)
    - hostfullname
    - hostname (usually this is not needed)
    - mailname (default values is generated from other values)
    name-resolution (controls default values of hostdomain,
    hostfullname, hostname, mailname)


    For re-generation of following file, old information (if exists) is
    used:

    - /usr/local/lib/elm.rc

    WARNING: Check after installation that libraries are enabled. Global
    elm.rc values are:

    use-library =
    use-base-library = iconv
    use-config-library = resolv
    use-connect-library = tls resolv
    use-mailer-library = smtp resolv

    Note that libelmme-resolv.so does not compile on all distributions. In
    that case omit resolv from elm.rc.

    After editing global elm.rc run /usr/local/lib/elmrc-write -GI for
    fixing possible errors.

    On installation following existing files are merged with new values:

    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.hashmarks

    Old values from /usr/local/lib/aliases.text are converted to /usr/local/lib/elm.aliases and /usr/local/lib/aliases.text is renamed to /usr/local/lib/aliases.text.OLD.

    On installation new values without merging are written to following
    files:

    - /usr/local/lib/elm.aliases.NEW
    - /usr/local/lib/elm.mailinglists.NEW
    - /usr/local/lib/elm.mailservices.NEW
    - /usr/local/lib/elm.mimecharsets.NEW
    - /usr/local/lib/elm.mimetypes.NEW
    - /usr/local/lib/elm.terminalinfo.NEW
    - /usr/local/lib/elm.iso2022sets.NEW
    - /usr/local/lib/elm.hashmarks.NEW

    Package elm-mod includes libelmme-iconv.so and libelmme-smtp.so. (If
    package elm-mod includes libelmme-resolv.so, this is noted). And package elm-tls includes libelmme-tls.so.

    Installation loses mailer = submission setting from global /usr/local/lib/elm.rc, because when elm package rewrites elm.rc,
    submission mailer is not available. It becomes from elm-mod package.

    However failed values of /usr/local/lib/elm.rc are saved to /usr/local/lib/elm.rc.old-values file during installation.

    Global setting mailer = submission is restored from /usr/local/lib/elm.rc.old-values file, when package elm-mod is
    installed.

    Also following directories are used:

    - /usr/local/lib/elm.map.txt/ (global setting map-text-dir =
    {lib}/elm.map.txt)
    - /usr/local/lib/elm.map.bin/ (global setting map-bin-dir =
    {lib}/elm.map.bin)
    - /usr/local/lib/elm.user.map/ (global setting user-map-dir =
    {lib}/elm.user.map)

    Hashmark EXAMPLE uses file /usr/local/lib/elm.user.map/elm.usermap.

    SUMMARY: This release fixes type=iconv option
    on .elm/mime.charsets and some other bugs.
    This release changes size display on
    mail listing. This release changes handling
    some bogus 8-bit mail with elmrc options
    "use-char-set-header-field-hack" and
    "use-content-type-charset-for-8bit-subject-hack".
    If getifaddrs() is available, resolv module
    clears name lookup cache when interfaces addresses
    change (with elmrc option "interface-change"
    on "resolv:" section). Also some other changes are
    included.

    Elm ME+ 2.5 PLalpha54 changelog

    Changes on Elm ME+ 2.5 PLalpha54 compared with Elm ME+ 2.5 PLalpha53 --------------------------------------------------------------------

    SUMMARY: This release fixes type=iconv option
    on .elm/mime.charsets and some other bugs.
    This release changes size display on
    mail listing. This release changes handling
    some bogus 8-bit mail with elmrc options
    "use-char-set-header-field-hack" and
    "use-content-type-charset-for-8bit-subject-hack".
    If getifaddrs() is available, resolv
    module clears name lookup cache when
    interfaces addresses change (with
    elmrc option "interface-change"
    on "resolv:" section). Also some other
    changes are included.

    - Changed sysconf(_SC_SAVED_IDS) call on user_init()
    at lib/read_rc.c

    - Show filename from Content-Disposition header field
    on "MIME structure Menu", if other data is not available.

    - Changed builtin++ pager prompt on end. Specially
    on case where attachments / mime parts are viewed.
    - Also changed metapager prompt on case where attachments /
    mime parts are viewed.
    - Changed metapager return value (when external pager is used).

    - Show size mail on (kilo/mega)bytes on mail listing if
    number of lines is not available, because mail
    on IMAP mailbox was skipped. Number of lines are shown
    inside of (), number of bytes are shows with [].
    - Also use prefixes "k" (kilo) and "M" (mega).
    - Added struct string *size_lines_s to struct header_rec
    - Added make_size_lines() to src/menu_common/message_screen.c
    - Added give_message_menu_size() to src/messages/messages.c
    and hdrs/me.h
    - Added mt_give_message_menu_size() to src/messages/def_messages.h
    - Added mt_give_message_menu_size * mt_give_message_msize_it
    to struct mailbox_type
    - Added folder_give_message_msize() to lib/mbox/mbox.c
    and hdrs/mboxlib.h
    - Added mbx_give_message_msize_folder() to hdrs/mbx_imp.h
    - Added mbx_give_message_msize_default() to lib/mbox/mbox_generic.c
    and lib/mbox/def_mbox.h

    - Certain sender sends mail with header fields
    MIME-Version: 1.0
    Content-Type: text/plain
    Char-Set: iso-8859-1
    where subject and message body includes
    8-bit (iso-8859-1) data. That Char-Set header field
    is non-standard. Added elmrc option
    "use-char-set-header-field-hack", which enables
    processing this (bogus) header field. This
    "Char-Set:" handled only on mail's header block
    (non on MIME header's of body part).
    - Added header_trim_whitespace_helper() to hdrs/mboxlib.h
    and lib/mbox/headers.c
    - Added default_body_charset to struct header_rec
    - Changed prototype of mime_decode(), pgp_decode(), pgp_SG_decoder(),
    pgp_EC_decoder(), null_EC_decoder(), null_SG_decoder(),
    partial_decode()
    - Changed prototype of encrypted_decoder(), signed_decoder(),
    CT_decoder()

    - Certain sender sends mail where subject 8-bit (iso-8859-1)
    with headers
    Subject: <8-bit iso-8859-1 text>
    MIME-Version: 1.0
    Content-Type: text/plain; charset=iso-8859-1
    Sending raw 8-bit (iso-8859-1) text on subject header
    field is non-standard. Added elmrc option
    "use-content-type-charset-for-8bit-subject-hack" which
    enables processing Subject: header field with using
    Content-Type header field.
    - Added unsigned int header_charset_set :1;
    to struct header_rec
    - Changed prototype of state_write_headers()

    - Added is_cancel_installed() to lib/cancel.c
    - Changed block_signals() to take account
    possible cancel_data and installed SIGINT
    handler for that.

    - Removed menu_header_status_update() from
    'v' (View parts of message) on mailbox_command()
    - Removed menu_header_status_update() from
    'V' (View parts of message) on mailbox_command()

    * If getifaddrs() is available:
    - Clear name lookup cache of libelmme-resolv.so module
    when interfaces addresses change if "interface-change"
    (on "resolv:" section) have value "clear-cache"
    (default).
    - If address is marked as interface_loopback,
    then address is not added to "mailname".
    - elmrc aoption "query-address-type" (on resolv:
    -section) value "default" also ignores
    addresses which are marked as interface_loopback
    when determining if query A (IPv4) or AAAA (IPv6)
    records need to be queried.
    - Added interface_up to struct interface_addr
    - Added interface_loopback to struct interface_addr
    - Added notify_if_change_f() to shared_libs/include/shared.h
    - Added notify_if_change_p to struct sl_connect_data
    - Added shared_notify_if_change to hdrs/connection_imp.h
    and lib/shared_connect.c

    - Added possible fix to cs_find_pattern_from_unknown()
    - Added possible fix to cs_add_streambyte_to_s_iconv()
    - Added possible fix to cs_soft_reset_s_iconv()
    - Added possible fix to cs_streamclip_from_iconv()
    - Added missing ...->cs_check_length_it() call to
    string_to_long()
    - Added ...->cs_check_length_it() calls to
    cat_strings_internal()

    - Fixed broken type=iconv option on .elm/mime.charsets
    (that was not implemented)
    - Added CS_charset_type_f() to shared_libs/include/shared.h
    - Changed cs_first_type to cs_charset_type on
    struct sl_base_data

    - Fixed compress_unicode() on case where zero length words
    was passed to it.

    New elmrc options:
    use-char-set-header-field-hack
    use-content-type-charset-for-8bit-subject-hack
    resolv:interface-change

    Warnings
    --------

    - Not compiled with MMDF support defined, so probably it doesn't
    work (or even compile).

    - This has not been tested much so there can be bad bugs.

    Bug reports to: Kari E. Hurtta <elm@elmme-mailer.org>
    (was hurtta+elm@posti.FMI.FI)

    - Internationalized (ie. non-ASCII) domain names are not supported.

    - Support for multipart/signed and multipart/encrypted (specially:
    support for PGP/MIME) only in reading side. There is no support
    for attachments with multipart/encrypted.

    - HP's shoftkeys are no longer supported

    - DECNET addresses like host::user may be interpreted as phrase
    of group syntax or as route of source routed address.

    - Header editing screen now uses addresses in form phrase <address>,
    but because it does not require using of comma (,), multiword
    phrases must be entered in quotes.

    For example: "Kari Hurtta" <hurtta>

    - If address includes <> or comments (), they are not aliased
    expanded. So aliases must be entered as bare words.

    - Addresses given as arguments to elm command should be given
    as one address per argument. Giving of sevaral addresses per
    one argument causes that address is misparsed if header is
    edited on header editing screen.

    That is:

    Use: elm '"Kari Hurtta" <hurtta>' 'Admin <root>'

    Don't use: elm 'Kari Hurtta <hurtta>, Admin <root>'

    - p)rint command acts as P)rint text -command. So it
    is currently quite useless.
    p)rint command does that via readmsg -command. However
    P)rint text does actually same (without readmsg).

    - Some Linux libraries does not follow $LC_CTYPE when program is
    setgid. Net result is that your locale is always C. That is
    visible that $LC_CTYPE does not effect to locale printed by
    'elm -vvvvv':

    Locale (LC_CTYPE): C
    Display character-set: US-ASCII
    Sending character-set: US-ASCII

    - All refrences iso2022 maps are parsed and read to memory.
    This may cause quite big memory consumption specially because
    eastern (multibyte) sets tend to be lot of characters. That
    mapping information should be shared between processes to
    reduce memory consuption.

    - If display charset is produced by using mapping from locale
    to charset where charset definition is later invalidated
    ("removed") by setting explicit compatcharsets on user's
    .elm/elmrc, that may cause PANIC on elm's internal pager
    or other problems. Invalidation happens if display charset
    is on implicit compatcharsets list (because of charset
    definition), but does not have explicit compatcharsets list
    given by user.

    - Neither Unicode didirectional algorithm nor Right-Left scripts
    are supported.

    - In some situations two Status headers may be generated two
    Status headers -- one by IMAP deamon and one from APPENDed
    message.

    - When APPENDing message to IMAP folder (which is normal UNIX
    mailbox format) original "From " separator line can not be
    preserved -- specially it is not possible to pass envelope
    sender address.

    - For UTF-8 charset Elm only knows printable characters from
    Latin/1 range, if unicode database (see elmrc option "unidata")
    is not loaded.

    - For using of ISO2022 character sets it is required that mapping
    them to unicode is know -- otherwise Elm ME+ does not know which
    characters are printable.

    - UTF-16 surrogate pairs (D800-DFFF) are not supported on UTF-7
    charset.

    - Mixing of names using IMAP naming convention
    (imap-naming-convention = yes)
    and names using imap-charset does not work very well...

    - " Regarding my message (8 Aug 2000) regarding 'newmail' on
    AIX 4.3.3 in an 'aixterm' window and the 'aixterm' did not
    close, indeed the problem was NOT related to 'newmail' but an
    AIX bug.

    IBM has release a patch, and the 'aixterm' in AIX 4.3.3 must
    be update with fileset X11.apps.aixterm.4.3.3.26 (PTF
    U473920) is solved to problem."
    From: Noam G. Nudelman <noam@mail.biu.ac.il>

    - File /usr/share/locale/fi/charset gives charset name utf-8 on
    Linux Mandrake 7.2. This causes that Configure generates
    mapping
    fi utf-8
    to elm.mimecharsets. However that seems to have
    incorrect mapping. You may want change this to
    fi ISO-8859-1

    ( however nl_langinfo(CODESET) gives charset ISO-8859-15
    but look following entry. )

    - Locale 'fi' seems to have charset ISO-8859-15 according
    of nl_langinfo(CODESET) on Mandrake Linux 7.2 (and probaly
    others with same glibc version). However for example gnome
    terminal uses font
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-1
    and not
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-15

    Also KDE's konsole program seems use iso8859-1 character set
    although locale is 'fi' which should have ISO-8859-15 according
    of nl_langinfo (selecting "unicode" from menu seems fix that.)

    Because of mismatch more correct locale is fi_FI.88591, which gives
    ISO-8859-1 character set according of nl_langinfo(CODESET).

    ( Locale seems come from /etc/sysconfig/i18n or $HOME/.i18n )

    > To enable handling of ISO-8859-1 and ISO-8859-15 character sets
    on linux console, read comments from doc/terminal.info file.

    - Mandrake Linux 7.2 seems set LD_PRELOAD to load
    /usr/lib/libxalflaunch.so.0. That (xalf-0.4-2mdk) causes that
    elm to crash on startup (actually before main() is reached.)

    - kterm on Mandrake Linux 7.2 seems have (at least on my test
    environment) seems get bad fontlist (*VT100*fontList) which
    gives bad font for iso8859-1 -- therefore ISO-8859-1 characters
    do not work.

    ("xrdb -query" seems report resource with name "*fontList"
    -- that probably overrides "*VT100*fontList" which comes
    from /usr/lib/X11/app-defaults/KTerm )

    - Also note that initially kterm does NOT default to
    ISO-8859-1 -- therefore ISO-8859-1 works only when
    elm explicity switch to ISO-8859-1 (for example
    with 'elm -D ISO-8859-1')

    - When assembling message/partial MIME (RFC 2046)
    requires that all headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are copied from
    initial enclosing message to assembled message. It also
    requires that headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are ignored and
    dropped from enclosed message.

    For now we copy only Received: -headers. Dropping extra
    headers from enclosed message makes assembly more
    complicated (and dropping of Received: -headers
    from enclosed message do not make sense.)

    - mailer=sendmail; verify=yes works only when sendmail
    is installed as setuid root. Use mailer=submission instead.
    * Starting from sendmail 8.12 sendmail is normally
    installed as setgid smmsp and not as setuid root.
    - However error message is printed only if
    verify-local-address=yes is also set

    - IMAP connection is stalled some times. Reason is unknown.

    - From name option (-f) on fastmail is currently broken.

    Collector of these patches
    --------------------------

    Kari Hurtta <elm@elmme-mailer.org>
    Kari Hurtta <hurtta+elm@siilo.FMI.FI>

    --
    / Kari Hurtta

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Kari Hurtta@21:1/5 to All on Sat May 8 23:24:45 2021
    [ Because connection to Usenet news (nntp) server news.kolumbus.fi
    is timed out since 2021-05-04, this announcement is delayed. I try
    now post this via Google Groups instead. This annoucement
    is posted to "ELM ME+ announce" <elmme-announce@posti.fmi.fi>
    at 2021-05-04. ]

    Experimental DEB generator script for Elm ME+ 2.5 PLalpha54 exists on <URL: http://www.elmme-mailer.org/deb/elm-ME+2.5.html > directory.

    Files are following

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha54-1.gen_deb
    DEB generator script
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha54-1.gen_deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha54-1.gen_deb.sig

    A command

    elm-ME+2.5.alpha54-1.gen_deb {packager}

    generates package elmme with version 1.1.52-1.{distribution}.

    A command

    elm-ME+2.5.alpha54-1.gen_deb --nonew {packager}

    generates package elm with version ME+2.5.alpha54-1.{distribution}.

    Both commands produce package with filename elm-ME+2.5.alpha54-1.{distribution}.{arch}.deb.

    Module libelmme-resolv.so is included for all distributions below.

    == Old package names, i386

    Package elm with version ME+2.5.alpha54-1.{distribution} and architecture i386.

    * Compiled on Ubuntu 6.06.2 LTS
    (Linux 2.6, glibc 2.3, Sendmail 8.13)

    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha54-1.Ubuntu6.06.i386.deb
    Package elm binary DEB build on Ubuntu 6.06.2 LTS
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha54-1.Ubuntu6.06.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha54-1.Ubuntu6.06.i386.deb.sig

    * Compiled on Ubuntu 10.04.4 LTS
    (Linux 2.6, glibc 2.11, Sendmail 8.14)

    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha54-1.Ubuntu10.04.i386.deb
    Package elm binary DEB build on Ubuntu 10.04.4 LTS
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha54-1.Ubuntu10.04.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha54-1.Ubuntu10.04.i386.deb.sig

    == New package names, i386

    Package elmme with version 1.1.54-1.{distribution} and architecture i386.

    * Compiled on Ubuntu 10.04.4 LTS
    (Linux 2.6, glibc 2.11, Sendmail 8.14)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha54-1.Ubuntu10.04.i386.deb
    Package elmme binary DEB build on Ubuntu 10.04.4 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha54-1.Ubuntu10.04.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha54-1.Ubuntu10.04.i386.deb.sig

    * Compiled on Ubuntu 14.04.6 LTS
    (Linux 4.4, glibc 2.19, no MTA)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha54-1.Ubuntu14.04.i386.deb
    Package elmme binary DEB build on Ubuntu 14.04.6 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha54-1.Ubuntu14.04.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha54-1.Ubuntu14.04.i386.deb.sig

    == New package names, amd64 (x86_64)

    Package elmme with version 1.1.54-1.{distribution} and architecture amd64 (also known as x86_64).

    * Compiled on Ubuntu 16.04.7 LTS
    (Linux 4.4, glibc 2.23, Sendmail 8.15)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha54-1.Ubuntu16.04.amd64.deb
    Package elmme binary DEB build on Ubuntu 16.04.7 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha54-1.Ubuntu16.04.amd64.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha54-1.Ubuntu16.04.amd64.deb.sig

    * Compiled on Ubuntu 18.04.5 LTS
    (Linux 5.4, glibc 2.27, no MTA)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha54-1.Ubuntu18.04.amd64.deb
    Package elmme binary DEB build on Ubuntu 18.04.5 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha54-1.Ubuntu18.04.amd64.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha54-1.Ubuntu18.04.amd64.deb.sig

    == Signatures

    {file}.sig PGP signature (old key pubkey.asc, EA5A2379 1996-04-23)
    {file}.elm-key-2018.sig GPG signature (key elm.key.2018.asc, 44FC796B 2018-12-01, expires: 2028-11-28)

    == Configuration

    Following files (if exists) are rewritten by elmconfwriter on
    installation:

    - /usr/local/lib/elm.rc
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.hashmarks

    Deb generator script compiles elm for binary distribution, so you must
    edit /usr/local/lib/elm.rc before using Elm ME+ 2.5. Following variables
    may need to be modified on elm.rc:

    - mailer
    - hostdomain (this is usually needed)
    - hostfullname
    - hostname (usually this is not needed)
    - mailname (default values is generated from other values)
    - name-resolution (controls default values of hostdomain, hostfullname, hostname, mailname)

    By default first value for mailname is read from /etc/mailname file.

    For re-generation of following file, old information (if exists) is
    used:

    - /usr/local/lib/elm.rc

    WARNING: Check after installation that libraries are enabled. Global
    elm.rc values are:

    use-library =
    use-base-library = iconv
    use-config-library = resolv
    use-connect-library = tls resolv
    use-mailer-library = smtp resolv

    After editing global elm.rc run /usr/local/lib/elmrc-write -GI for fixing possible errors.

    On installation following existing files are merged with new values:

    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.hashmarks

    Old values from /usr/local/lib/aliases.text are converted to /usr/local/lib/elm.aliases and /usr/local/lib/aliases.text is renamed to /usr/local/lib/aliases.text.OLD.

    On installation new values without merging are written to following
    files:

    - /usr/local/lib/elm.aliases.NEW
    - /usr/local/lib/elm.mailinglists.NEW
    - /usr/local/lib/elm.mailservices.NEW
    - /usr/local/lib/elm.mimecharsets.NEW
    - /usr/local/lib/elm.mimetypes.NEW
    - /usr/local/lib/elm.terminalinfo.NEW
    - /usr/local/lib/elm.iso2022sets.NEW
    - /usr/local/lib/elm.hashmarks.NEW

    Also following directories are used:

    - /usr/local/lib/elm.map.txt/ (global setting map-text-dir = {lib}/elm.map.txt)
    - /usr/local/lib/elm.map.bin/ (global setting map-bin-dir = {lib}/elm.map.bin)
    - /usr/local/lib/elm.user.map/ (global setting user-map-dir = {lib}/elm.user.map)

    Hashmark EXAMPLE uses file /usr/local/lib/elm.user.map/elm.usermap.

    SUMMARY: This release fixes type=iconv option
    on .elm/mime.charsets and some other bugs.
    This release changes size display on
    mail listing. This release changes handling
    some bogus 8-bit mail with elmrc options
    "use-char-set-header-field-hack" and
    "use-content-type-charset-for-8bit-subject-hack".
    If getifaddrs() is available, resolv
    module clears name lookup cache when
    interfaces addresses change (with
    elmrc option "interface-change"
    on "resolv:" section). Also some other
    changes are included.

    Elm ME+ 2.5 PLalpha54 changelog

    Changes on Elm ME+ 2.5 PLalpha54 compared with Elm ME+ 2.5 PLalpha53 --------------------------------------------------------------------

    SUMMARY: This release fixes type=iconv option
    on .elm/mime.charsets and some other bugs.
    This release changes size display on
    mail listing. This release changes handling
    some bogus 8-bit mail with elmrc options
    "use-char-set-header-field-hack" and
    "use-content-type-charset-for-8bit-subject-hack".
    If getifaddrs() is available, resolv
    module clears name lookup cache when
    interfaces addresses change (with
    elmrc option "interface-change"
    on "resolv:" section). Also some other
    changes are included.

    - Changed sysconf(_SC_SAVED_IDS) call on user_init()
    at lib/read_rc.c

    - Show filename from Content-Disposition header field
    on "MIME structure Menu", if other data is not available.

    - Changed builtin++ pager prompt on end. Specially
    on case where attachments / mime parts are viewed.
    - Also changed metapager prompt on case where attachments /
    mime parts are viewed.
    - Changed metapager return value (when external pager is used).

    - Show size mail on (kilo/mega)bytes on mail listing if
    number of lines is not available, because mail
    on IMAP mailbox was skipped. Number of lines are shown
    inside of (), number of bytes are shows with [].
    - Also use prefixes "k" (kilo) and "M" (mega).
    - Added struct string *size_lines_s to struct header_rec
    - Added make_size_lines() to src/menu_common/message_screen.c
    - Added give_message_menu_size() to src/messages/messages.c
    and hdrs/me.h
    - Added mt_give_message_menu_size() to src/messages/def_messages.h
    - Added mt_give_message_menu_size * mt_give_message_msize_it
    to struct mailbox_type
    - Added folder_give_message_msize() to lib/mbox/mbox.c
    and hdrs/mboxlib.h
    - Added mbx_give_message_msize_folder() to hdrs/mbx_imp.h
    - Added mbx_give_message_msize_default() to lib/mbox/mbox_generic.c
    and lib/mbox/def_mbox.h

    - Certain sender sends mail with header fields
    MIME-Version: 1.0
    Content-Type: text/plain
    Char-Set: iso-8859-1
    where subject and message body includes
    8-bit (iso-8859-1) data. That Char-Set header field
    is non-standard. Added elmrc option
    "use-char-set-header-field-hack", which enables
    processing this (bogus) header field. This
    "Char-Set:" handled only on mail's header block
    (non on MIME header's of body part).
    - Added header_trim_whitespace_helper() to hdrs/mboxlib.h
    and lib/mbox/headers.c
    - Added default_body_charset to struct header_rec
    - Changed prototype of mime_decode(), pgp_decode(), pgp_SG_decoder(),
    pgp_EC_decoder(), null_EC_decoder(), null_SG_decoder(),
    partial_decode()
    - Changed prototype of encrypted_decoder(), signed_decoder(),
    CT_decoder()

    - Certain sender sends mail where subject 8-bit (iso-8859-1)
    with headers
    Subject: <8-bit iso-8859-1 text>
    MIME-Version: 1.0
    Content-Type: text/plain; charset=iso-8859-1
    Sending raw 8-bit (iso-8859-1) text on subject header
    field is non-standard. Added elmrc option
    "use-content-type-charset-for-8bit-subject-hack" which
    enables processing Subject: header field with using
    Content-Type header field.
    - Added unsigned int header_charset_set :1;
    to struct header_rec
    - Changed prototype of state_write_headers()

    - Added is_cancel_installed() to lib/cancel.c
    - Changed block_signals() to take account
    possible cancel_data and installed SIGINT
    handler for that.

    - Removed menu_header_status_update() from
    'v' (View parts of message) on mailbox_command()
    - Removed menu_header_status_update() from
    'V' (View parts of message) on mailbox_command()

    * If getifaddrs() is available:
    - Clear name lookup cache of libelmme-resolv.so module
    when interfaces addresses change if "interface-change"
    (on "resolv:" section) have value "clear-cache"
    (default).
    - If address is marked as interface_loopback,
    then address is not added to "mailname".
    - elmrc aoption "query-address-type" (on resolv:
    -section) value "default" also ignores
    addresses which are marked as interface_loopback
    when determining if query A (IPv4) or AAAA (IPv6)
    records need to be queried.
    - Added interface_up to struct interface_addr
    - Added interface_loopback to struct interface_addr
    - Added notify_if_change_f() to shared_libs/include/shared.h
    - Added notify_if_change_p to struct sl_connect_data
    - Added shared_notify_if_change to hdrs/connection_imp.h
    and lib/shared_connect.c

    - Added possible fix to cs_find_pattern_from_unknown()
    - Added possible fix to cs_add_streambyte_to_s_iconv()
    - Added possible fix to cs_soft_reset_s_iconv()
    - Added possible fix to cs_streamclip_from_iconv()
    - Added missing ...->cs_check_length_it() call to
    string_to_long()
    - Added ...->cs_check_length_it() calls to
    cat_strings_internal()

    - Fixed broken type=iconv option on .elm/mime.charsets
    (that was not implemented)
    - Added CS_charset_type_f() to shared_libs/include/shared.h
    - Changed cs_first_type to cs_charset_type on
    struct sl_base_data

    - Fixed compress_unicode() on case where zero length words
    was passed to it.

    New elmrc options:
    use-char-set-header-field-hack
    use-content-type-charset-for-8bit-subject-hack
    resolv:interface-change

    Collector of these patches
    --------------------------

    Kari Hurtta <elm@elmme-mailer.org>
    Kari Hurtta <hurtta+elm@siilo.FMI.FI>

    --
    / Kari Hurtta

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Kari Hurtta@21:1/5 to All on Thu Jul 1 07:50:17 2021
    [ Because Usenet news (nntp) server news.kolumbus.fi is closed
    since 2021-05-04 I post this announcement only (not sources)
    via Google Groups instead. ]

    Elm ME+ 2.5 PLalpha55

    - Is available with
    <URL: http://www.elmme-mailer.org/elm-ME+2.5/src/elm-ME+2.5.alpha55.f22395394f7dc04adf3ed6fcaa7555fc.tar.gz >
    and <URL: http://www.elmme-mailer.org/elm-ME+2.5/src/elm-ME+2.5.PLalpha55.patch.gz >
    via http.

    - Is available with
    <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.alpha55.f22395394f7dc04adf3ed6fcaa7555fc.tar.gz >
    and <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.PLalpha55.patch.gz >
    via https.

    - Is available on ftp.funet.fi
    via anonymous ftp
    directory pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/
    files elm-ME+2.5.alpha55.f22395394f7dc04adf3ed6fcaa7555fc.tar.gz
    and elm-ME+2.5.PLalpha55.patch.gz

    or is available with
    <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.alpha55.f22395394f7dc04adf3ed6fcaa7555fc.tar.gz >
    and <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha55.patch.gz >
    with browser

    or is available with
    <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.alpha55.f22395394f7dc04adf3ed6fcaa7555fc.tar.gz >
    and <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5//elm-ME+2.5.PLalpha55.patch.gz >
    via https.

    Is NOT available on alt.sources, comp.mail.elm because Usenet news (nntp) server
    news.kolumbus.fi (*) is closed since 2021-05-04.

    (*) That is apparently also uutiset.elisa.fi and news.saunalahti.fi.
    See: https://elisa.fi/asiakastiedotteet/tiedote/?id=63663313593635

    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".

    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)
    by 0x5325CBB: read_folder_headers (headers.c:404)
    by 0x52BF1EA: copy_envelope_folder (mbox.c:1842)
    by 0x4C286F: read_headers (newmbox.c:1842)
    by 0x4BF44A: newmbox_1 (newmbox.c:722)
    by 0x48AF47: initialize_mailbox (init.c:1095)
    by 0x498E4E: main_messages_menu (mailbox.c:951)
    by 0x46A5BC: main (elm.c:1677)

    - Fixed valgrind reported memory leak:
    64 (24 direct, 40 indirect) bytes in 1 blocks are definitely lost in loss record 2,519 of 3,420
    at 0x4C2DB8F: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
    by 0x5CD25D1: safe_zero_alloc (safemalloc.c:85)
    by 0x5D22F8D: malloc_string (string.c:85)
    by 0x5D26664: dup_string (string.c:1095)
    by 0x425B64: build_address_l (addr_util.c:1881)
    by 0x499F53: get_to (mailmsg1.c:400)
    by 0x49A363: send_msg_middle2 (mailmsg1.c:530)
    by 0x49AEE2: send_msg_middle (mailmsg1.c:793)
    by 0x49B091: send_msg_l (mailmsg1.c:838)
    by 0x4671CE: mailbox_command (elm.c:503)
    by 0x497612: main_messages_loop (mailbox.c:315)
    by 0x498EB2: main_messages_menu (mailbox.c:964)
    by 0x46A5BC: main (elm.c:1677)

    - Adding closing socket loop to free_non_blocking_qm()

    - Removed extra inc_resolv_query_item_re[f]count(ret)
    from query_one_name()
    ( Renamed inc_resolv_query_item_recount() to inc_resolv_query_item_refcount(). )
    - Fixed valgrind reported memory leak:
    2,502 (144 direct, 2,358 indirect) bytes in 1 blocks are definitely lost in loss record 291 of 302
    at 0x4C2DB8F: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
    by 0x5CD25D1: safe_zero_alloc (safemalloc.c:85)
    by 0x7A2BD79: new_resolv_query_item (query.c:918)
    by 0x7A37C6E: query_one_name (query.c:3929)
    by 0x7A3CE23: lookup_resolv_cache_nonblocked (query.c:5327)
    by 0x7A2138A: call_lookup_resolv_cache (resolv.c:3852)
    by 0x7A1F5C2: fill_query_resolv_cache (resolv.c:3080)
    by 0x7A1FE1A: query_resolv_cache (resolv.c:3310)
    by 0x7A2870B: check_domain_name (resolv.c:5614)
    by 0x55B9A5A: process_one_check_domname (shared_mailer.c:629)
    by 0x55B9D73: shared_check_dname (shared_mailer.c:699)
    by 0x55C589B: check_msg_domain0 (message-id.c:2981)
    by 0x55C628F: check_msg_domain (message-id.c:3109)
    by 0x55CB71D: update_message_id (message-id.c:4236)
    by 0x4A7E62: mail (mailmsg2.c:3625)
    by 0x49ACE4: send_msg_middle2 (mailmsg1.c:737)
    by 0x49AEE5: send_msg_middle (mailmsg1.c:793)
    by 0x49B1C6: send_msg_argv (mailmsg1.c:883)
    by 0x46A2FF: main (elm.c:1623)

    - Removed extra inc_resolv_process_refcount(prx[prx_count])
    from select_resolv_process()
    - Fixed valgrind reported memory leak:
    2,232 (32 direct, 2,200 indirect) bytes in 1 blocks are definitely lost in loss record 239 of 249
    at 0x4C2DB8F: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
    by 0x5CD25D1: safe_zero_alloc (safemalloc.c:85)
    by 0x7A2C728: new_resolv_process (query.c:1214)
    by 0x7A338E3: give_resolv_process (query.c:2925)
    by 0x7A373E8: select_resolv_process (query.c:3780)
    by 0x7A384CB: query_one_name (query.c:4072)
    by 0x7A3C5D3: lookup_resolv_cache_nonblocked (query.c:5199)
    by 0x7A2138A: call_lookup_resolv_cache (resolv.c:3852)
    by 0x7A1F5C2: fill_query_resolv_cache (resolv.c:3080)
    by 0x7A1FE1A: query_resolv_cache (resolv.c:3310)
    by 0x7A22184: verify_mail_domain2 (resolv.c:4117)
    by 0x55B8E28: process_one_verify_domain (shared_mailer.c:415)
    by 0x55B8F81: shared_verify_domain (shared_mailer.c:458)
    by 0x55D021E: verify_mail_domain_util (senderhelper.c:718)
    by 0x422337: build_address_verify_domain (addr_util.c:796)
    by 0x423C2D: build_address_l (addr_util.c:1342)
    by 0x41FEE5: argv_to_expanded (addr_util.c:150)
    by 0x49B17F: send_msg_argv (mailmsg1.c:881)
    by 0x46A2FF: main (elm.c:1623)

    - Added free_mail_quotaroot(&quotaroot); call to ref_mqr_imap()
    - Fixed valgrind reported memory leak:
    191 (56 direct, 135 indirect) bytes in 1 blocks are definitely lost in loss record 1,418 of 1,573
    at 0x4C2DB8F: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
    by 0x5CD15D1: safe_zero_alloc (safemalloc.c:85)
    by 0x5366227: malloc_mail_quotaroot (quota.c:464)
    by 0x536AC97: ref_mqr_imap (imap_quota.c:1117)
    by 0x536BCEC: parse_imap_quota (imap_quota.c:1407)
    by 0x533EA38: parse_response (con_imap.c:2030)
    by 0x5340B2F: imap_read_stream (con_imap.c:2527)
    by 0x5D1BCF3: call_user_read_callback (streamsched.c:427)
    by 0x5D1C3DE: call_read_callback (streamsched.c:531)
    by 0x5D1E8E6: after_action (streamsched.c:1183)
    by 0x5D1C5C6: read_engine (streamsched.c:596)
    by 0x5CE8D40: real_wait_select (schedule.c:1991)
    by 0x5CEC04C: real_wait (schedule.c:2509)
    by 0x5CEDC24: wait_for_something (schedule.c:2838)
    by 0x5CF0444: wait_for_any_action_settime_c (schedule.c:3359)
    by 0x5D1F23C: WaitStreamFor_c (streamsched.c:1343)
    by 0x5341F59: imap_wait_c (con_imap.c:2883)
    by 0x5342BE1: imap_command_ok_c (con_imap.c:3101)
    by 0x536D044: mbx_give_imap_quotar_list (imap_quota.c:1726)
    by 0x52C96B8: give_folder_quotaroot_l (mbox.c:4346)

    New elmrc option:
    dsnmail

    New file:
    lib/sortlist.c

    Warnings
    --------

    - Not compiled with MMDF support defined, so probably it doesn't
    work (or even compile).

    - This has not been tested much so there can be bad bugs.

    Bug reports to: Kari E. Hurtta <elm@elmme-mailer.org>
    (was hurtta+elm@posti.FMI.FI)

    - Internationalized (ie. non-ASCII) domain names are not supported.

    - Support for multipart/signed and multipart/encrypted (specially:
    support for PGP/MIME) only in reading side. There is no support
    for attachments with multipart/encrypted.

    - HP's shoftkeys are no longer supported

    - DECNET addresses like host::user may be interpreted as phrase
    of group syntax or as route of source routed address.

    - Header editing screen now uses addresses in form phrase <address>,
    but because it does not require using of comma (,), multiword
    phrases must be entered in quotes.

    For example: "Kari Hurtta" <hurtta>

    - If address includes <> or comments (), they are not aliased
    expanded. So aliases must be entered as bare words.

    - Addresses given as arguments to elm command should be given
    as one address per argument. Giving of sevaral addresses per
    one argument causes that address is misparsed if header is
    edited on header editing screen.

    That is:

    Use: elm '"Kari Hurtta" <hurtta>' 'Admin <root>'

    Don't use: elm 'Kari Hurtta <hurtta>, Admin <root>'

    - p)rint command acts as P)rint text -command. So it
    is currently quite useless.
    p)rint command does that via readmsg -command. However
    P)rint text does actually same (without readmsg).

    - Some Linux libraries does not follow $LC_CTYPE when program is
    setgid. Net result is that your locale is always C. That is
    visible that $LC_CTYPE does not effect to locale printed by
    'elm -vvvvv':

    Locale (LC_CTYPE): C
    Display character-set: US-ASCII
    Sending character-set: US-ASCII

    - All refrences iso2022 maps are parsed and read to memory.
    This may cause quite big memory consumption specially because
    eastern (multibyte) sets tend to be lot of characters. That
    mapping information should be shared between processes to
    reduce memory consuption.

    - If display charset is produced by using mapping from locale
    to charset where charset definition is later invalidated
    ("removed") by setting explicit compatcharsets on user's
    .elm/elmrc, that may cause PANIC on elm's internal pager
    or other problems. Invalidation happens if display charset
    is on implicit compatcharsets list (because of charset
    definition), but does not have explicit compatcharsets list
    given by user.

    - Neither Unicode didirectional algorithm nor Right-Left scripts
    are supported.

    - In some situations two Status headers may be generated two
    Status headers -- one by IMAP deamon and one from APPENDed
    message.

    - When APPENDing message to IMAP folder (which is normal UNIX
    mailbox format) original "From " separator line can not be
    preserved -- specially it is not possible to pass envelope
    sender address.

    - For UTF-8 charset Elm only knows printable characters from
    Latin/1 range, if unicode database (see elmrc option "unidata")
    is not loaded.

    - For using of ISO2022 character sets it is required that mapping
    them to unicode is know -- otherwise Elm ME+ does not know which
    characters are printable.

    - UTF-16 surrogate pairs (D800-DFFF) are not supported on UTF-7
    charset.

    - Mixing of names using IMAP naming convention
    (imap-naming-convention = yes)
    and names using imap-charset does not work very well...

    - " Regarding my message (8 Aug 2000) regarding 'newmail' on
    AIX 4.3.3 in an 'aixterm' window and the 'aixterm' did not
    close, indeed the problem was NOT related to 'newmail' but an
    AIX bug.

    IBM has release a patch, and the 'aixterm' in AIX 4.3.3 must
    be update with fileset X11.apps.aixterm.4.3.3.26 (PTF
    U473920) is solved to problem."
    From: Noam G. Nudelman

    - File /usr/share/locale/fi/charset gives charset name utf-8 on
    Linux Mandrake 7.2. This causes that Configure generates
    mapping
    fi utf-8
    to elm.mimecharsets. However that seems to have
    incorrect mapping. You may want change this to
    fi ISO-8859-1

    ( however nl_langinfo(CODESET) gives charset ISO-8859-15
    but look following entry. )

    - Locale 'fi' seems to have charset ISO-8859-15 according
    of nl_langinfo(CODESET) on Mandrake Linux 7.2 (and probaly
    others with same glibc version). However for example gnome
    terminal uses font
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-1
    and not
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-15

    Also KDE's konsole program seems use iso8859-1 character set
    although locale is 'fi' which should have ISO-8859-15 according
    of nl_langinfo (selecting "unicode" from menu seems fix that.)

    Because of mismatch more correct locale is fi_FI.88591, which gives
    ISO-8859-1 character set according of nl_langinfo(CODESET).

    ( Locale seems come from /etc/sysconfig/i18n or $HOME/.i18n )

    > To enable handling of ISO-8859-1 and ISO-8859-15 character sets
    on linux console, read comments from doc/terminal.info file.

    - Mandrake Linux 7.2 seems set LD_PRELOAD to load
    /usr/lib/libxalflaunch.so.0. That (xalf-0.4-2mdk) causes that
    elm to crash on startup (actually before main() is reached.)

    - kterm on Mandrake Linux 7.2 seems have (at least on my test
    environment) seems get bad fontlist (*VT100*fontList) which
    gives bad font for iso8859-1 -- therefore ISO-8859-1 characters
    do not work.

    ("xrdb -query" seems report resource with name "*fontList"
    -- that probably overrides "*VT100*fontList" which comes
    from /usr/lib/X11/app-defaults/KTerm )

    - Also note that initially kterm does NOT default to
    ISO-8859-1 -- therefore ISO-8859-1 works only when
    elm explicity switch to ISO-8859-1 (for example
    with 'elm -D ISO-8859-1')

    - When assembling message/partial MIME (RFC 2046)
    requires that all headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are copied from
    initial enclosing message to assembled message. It also
    requires that headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are ignored and
    dropped from enclosed message.

    For now we copy only Received: -headers. Dropping extra
    headers from enclosed message makes assembly more
    complicated (and dropping of Received: -headers
    from enclosed message do not make sense.)

    - mailer=sendmail; verify=yes works only when sendmail
    is installed as setuid root. Use mailer=submission instead.
    * Starting from sendmail 8.12 sendmail is normally
    installed as setgid smmsp and not as setuid root.
    - However error message is printed only if
    verify-local-address=yes is also set

    - IMAP connection is stalled some times. Reason is unknown.

    - From name option (-f) on fastmail is currently broken.

    Collector of these patches
    --------------------------

    Kari Hurtta <elm@elmme-mailer.org>
    Kari Hurtta <hurtta+elm@siilo.FMI.FI>

    diffstat:

    Configure | 4
    MANIFEST | 1
    README.ME+ | 398 +++++++!
    doc/elmrc-info | 377 +--!!!

    [continued in next message]

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Kari Hurtta@21:1/5 to All on Fri Jul 2 06:14:48 2021
    Experimental RPM spec file for ELM ME+ 2.5 PLalpha55
    exists on <URL: http://www.elmme-mailer.org/rpm/elm-ME+2.5.html >
    directory.

    Files are following

    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha55-1.spec
    RPM spec file
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha55-1.spec.elm-key-2018.sig
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha55-1.spec.sig

    ** Notes

    - elm-ME+2.5.alpha55-1.mdk7.1.src.rpm is signed internally with GPG
    key elm.key.2018.asc (44FC796B 2018-12-01).

    * Compiled on Linux Mandrake release 7.2
    (Linux 2.2, glibc 2.1, Sendmail 8.13)

    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha55-1.mdk7.2.i686.rpm
    Package elm binary RPM build on Linux Mandrake release 7.2
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha55-1.mdk7.2.i686.rpm.sig
    - http://www.elmme-mailer.org/rpm/elm-mod-ME+2.5.alpha55-1.mdk7.2.i686.rpm
    Package elm-mod binary RPM build on Linux Mandrake release 7.2
    - http://www.elmme-mailer.org/rpm/elm-tls-ME+2.5.alpha55-1.mdk7.2.i686.rpm
    Package elm-tls binary RPM build on Linux Mandrake release 7.2
    - http://www.elmme-mailer.org/rpm/elm-tls-ME+2.5.alpha55-1.mdk7.2.i686.rpm.sig

    ** Notes

    - elm-ME+2.5.alpha55-1.mdk7.2.i686.rpm and
    elm-*-ME+2.5.alpha55-1.mdk7.2.i686.rpm are signed internally with
    GPG key elm.key.2018.asc (44FC796B 2018-12-01).
    - elm-ME+2.5.alpha55-1.mdk7.2.i686.rpm is compiled agaist Sendmail
    8.13 (not from Mandrake distribution).
    - elm-tls-ME+2.5.alpha55-1.mdk7.2.i686.rpm do not load/work on
    Mandrake 7.2, because openssl library misses ASN1_STRING_to_UTF8
    function.

    * Signatures

    {file}.sig PGP signature (old key pubkey.asc, EA5A2379 1996-04-23)
    {file}.elm-key-2018.sig GPG signature (key elm.key.2018.asc, 44FC796B 2018-12-01, expires: 2028-11-28)

    * Configuration

    Following files (if exists) are rewritten by elmconfwriter on
    installation:

    - /usr/local/lib/elm.rc
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.hashmarks

    Spec file compiles elm for binary distribution, so you must edit
    /usr/local/lib/elm.rc before using Elm ME+ 2.5. Following variables may
    need to be modified on elm.rc:

    - mailer
    - hostdomain (this is usually needed)
    - hostfullname
    - hostname (usually this is not needed)
    - mailname (default values is generated from other values)
    name-resolution (controls default values of hostdomain,
    hostfullname, hostname, mailname)


    For re-generation of following file, old information (if exists) is
    used:

    - /usr/local/lib/elm.rc

    WARNING: Check after installation that libraries are enabled. Global
    elm.rc values are:

    use-library =
    use-base-library = iconv
    use-config-library = resolv
    use-connect-library = tls resolv
    use-mailer-library = smtp resolv

    Note that libelmme-resolv.so does not compile on all distributions. In
    that case omit resolv from elm.rc.

    After editing global elm.rc run /usr/local/lib/elmrc-write -GI for
    fixing possible errors.

    On installation following existing files are merged with new values:

    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.hashmarks

    Old values from /usr/local/lib/aliases.text are converted to /usr/local/lib/elm.aliases and /usr/local/lib/aliases.text is renamed to /usr/local/lib/aliases.text.OLD.

    On installation new values without merging are written to following
    files:

    - /usr/local/lib/elm.aliases.NEW
    - /usr/local/lib/elm.mailinglists.NEW
    - /usr/local/lib/elm.mailservices.NEW
    - /usr/local/lib/elm.mimecharsets.NEW
    - /usr/local/lib/elm.mimetypes.NEW
    - /usr/local/lib/elm.terminalinfo.NEW
    - /usr/local/lib/elm.iso2022sets.NEW
    - /usr/local/lib/elm.hashmarks.NEW

    Package elm-mod includes libelmme-iconv.so and libelmme-smtp.so. (If
    package elm-mod includes libelmme-resolv.so, this is noted). And package elm-tls includes libelmme-tls.so.

    Installation loses mailer = submission setting from global /usr/local/lib/elm.rc, because when elm package rewrites elm.rc,
    submission mailer is not available. It becomes from elm-mod package.

    However failed values of /usr/local/lib/elm.rc are saved to /usr/local/lib/elm.rc.old-values file during installation.

    Global setting mailer = submission is restored from /usr/local/lib/elm.rc.old-values file, when package elm-mod is
    installed.

    Also following directories are used:

    - /usr/local/lib/elm.map.txt/ (global setting map-text-dir =
    {lib}/elm.map.txt)
    - /usr/local/lib/elm.map.bin/ (global setting map-bin-dir =
    {lib}/elm.map.bin)
    - /usr/local/lib/elm.user.map/ (global setting user-map-dir =
    {lib}/elm.user.map)

    Hashmark EXAMPLE uses file /usr/local/lib/elm.user.map/elm.usermap.

    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".

    Elm ME+ 2.5 PLalpha55 changelog

    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)
    by 0x5325CBB: read_folder_headers (headers.c:404)
    by 0x52BF1EA: copy_envelope_folder (mbox.c:1842)
    by 0x4C286F: read_headers (newmbox.c:1842)
    by 0x4BF44A: newmbox_1 (newmbox.c:722)
    by 0x48AF47: initialize_mailbox (init.c:1095)
    by 0x498E4E: main_messages_menu (mailbox.c:951)
    by 0x46A5BC: main (elm.c:1677)

    - Fixed valgrind reported memory leak:
    64 (24 direct, 40 indirect) bytes in 1 blocks are definitely lost in loss record 2,519 of 3,420
    at 0x4C2DB8F: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
    by 0x5CD25D1: safe_zero_alloc (safemalloc.c:85)
    by 0x5D22F8D: malloc_string (string.c:85)
    by 0x5D26664: dup_string (string.c:1095)
    by 0x425B64: build_address_l (addr_util.c:1881)
    by 0x499F53: get_to (mailmsg1.c:400)
    by 0x49A363: send_msg_middle2 (mailmsg1.c:530)
    by 0x49AEE2: send_msg_middle (mailmsg1.c:793)
    by 0x49B091: send_msg_l (mailmsg1.c:838)
    by 0x4671CE: mailbox_command (elm.c:503)
    by 0x497612: main_messages_loop (mailbox.c:315)
    by 0x498EB2: main_messages_menu (mailbox.c:964)
    by 0x46A5BC: main (elm.c:1677)

    - Adding closing socket loop to free_non_blocking_qm()

    - Removed extra inc_resolv_query_item_re[f]count(ret)
    from query_one_name()
    ( Renamed inc_resolv_query_item_recount() to inc_resolv_query_item_refcount(). )
    - Fixed valgrind reported memory leak:
    2,502 (144 direct, 2,358 indirect) bytes in 1 blocks are definitely lost in loss record 291 of 302
    at 0x4C2DB8F: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
    by 0x5CD25D1: safe_zero_alloc (safemalloc.c:85)
    by 0x7A2BD79: new_resolv_query_item (query.c:918)
    by 0x7A37C6E: query_one_name (query.c:3929)
    by 0x7A3CE23: lookup_resolv_cache_nonblocked (query.c:5327)
    by 0x7A2138A: call_lookup_resolv_cache (resolv.c:3852)
    by 0x7A1F5C2: fill_query_resolv_cache (resolv.c:3080)
    by 0x7A1FE1A: query_resolv_cache (resolv.c:3310)
    by 0x7A2870B: check_domain_name (resolv.c:5614)
    by 0x55B9A5A: process_one_check_domname (shared_mailer.c:629)
    by 0x55B9D73: shared_check_dname (shared_mailer.c:699)
    by 0x55C589B: check_msg_domain0 (message-id.c:2981)
    by 0x55C628F: check_msg_domain (message-id.c:3109)
    by 0x55CB71D: update_message_id (message-id.c:4236)
    by 0x4A7E62: mail (mailmsg2.c:3625)
    by 0x49ACE4: send_msg_middle2 (mailmsg1.c:737)
    by 0x49AEE5: send_msg_middle (mailmsg1.c:793)
    by 0x49B1C6: send_msg_argv (mailmsg1.c:883)
    by 0x46A2FF: main (elm.c:1623)

    - Removed extra inc_resolv_process_refcount(prx[prx_count])
    from select_resolv_process()
    - Fixed valgrind reported memory leak:
    2,232 (32 direct, 2,200 indirect) bytes in 1 blocks are definitely lost in loss record 239 of 249
    at 0x4C2DB8F: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
    by 0x5CD25D1: safe_zero_alloc (safemalloc.c:85)
    by 0x7A2C728: new_resolv_process (query.c:1214)
    by 0x7A338E3: give_resolv_process (query.c:2925)
    by 0x7A373E8: select_resolv_process (query.c:3780)
    by 0x7A384CB: query_one_name (query.c:4072)
    by 0x7A3C5D3: lookup_resolv_cache_nonblocked (query.c:5199)
    by 0x7A2138A: call_lookup_resolv_cache (resolv.c:3852)
    by 0x7A1F5C2: fill_query_resolv_cache (resolv.c:3080)
    by 0x7A1FE1A: query_resolv_cache (resolv.c:3310)
    by 0x7A22184: verify_mail_domain2 (resolv.c:4117)
    by 0x55B8E28: process_one_verify_domain (shared_mailer.c:415)
    by 0x55B8F81: shared_verify_domain (shared_mailer.c:458)
    by 0x55D021E: verify_mail_domain_util (senderhelper.c:718)
    by 0x422337: build_address_verify_domain (addr_util.c:796)
    by 0x423C2D: build_address_l (addr_util.c:1342)
    by 0x41FEE5: argv_to_expanded (addr_util.c:150)
    by 0x49B17F: send_msg_argv (mailmsg1.c:881)
    by 0x46A2FF: main (elm.c:1623)

    - Added free_mail_quotaroot(&quotaroot); call to ref_mqr_imap()
    - Fixed valgrind reported memory leak:
    191 (56 direct, 135 indirect) bytes in 1 blocks are definitely lost in loss record 1,418 of 1,573
    at 0x4C2DB8F: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
    by 0x5CD15D1: safe_zero_alloc (safemalloc.c:85)
    by 0x5366227: malloc_mail_quotaroot (quota.c:464)
    by 0x536AC97: ref_mqr_imap (imap_quota.c:1117)
    by 0x536BCEC: parse_imap_quota (imap_quota.c:1407)
    by 0x533EA38: parse_response (con_imap.c:2030)
    by 0x5340B2F: imap_read_stream (con_imap.c:2527)
    by 0x5D1BCF3: call_user_read_callback (streamsched.c:427)
    by 0x5D1C3DE: call_read_callback (streamsched.c:531)
    by 0x5D1E8E6: after_action (streamsched.c:1183)
    by 0x5D1C5C6: read_engine (streamsched.c:596)
    by 0x5CE8D40: real_wait_select (schedule.c:1991)
    by 0x5CEC04C: real_wait (schedule.c:2509)
    by 0x5CEDC24: wait_for_something (schedule.c:2838)
    by 0x5CF0444: wait_for_any_action_settime_c (schedule.c:3359)
    by 0x5D1F23C: WaitStreamFor_c (streamsched.c:1343)
    by 0x5341F59: imap_wait_c (con_imap.c:2883)
    by 0x5342BE1: imap_command_ok_c (con_imap.c:3101)
    by 0x536D044: mbx_give_imap_quotar_list (imap_quota.c:1726)
    by 0x52C96B8: give_folder_quotaroot_l (mbox.c:4346)

    New elmrc option:
    dsnmail

    New file:
    lib/sortlist.c

    Warnings
    --------

    - Not compiled with MMDF support defined, so probably it doesn't
    work (or even compile).

    - This has not been tested much so there can be bad bugs.

    Bug reports to: Kari E. Hurtta <elm@elmme-mailer.org>
    (was hurtta+elm@posti.FMI.FI)

    - Internationalized (ie. non-ASCII) domain names are not supported.

    - Support for multipart/signed and multipart/encrypted (specially:
    support for PGP/MIME) only in reading side. There is no support
    for attachments with multipart/encrypted.

    - HP's shoftkeys are no longer supported

    - DECNET addresses like host::user may be interpreted as phrase
    of group syntax or as route of source routed address.

    - Header editing screen now uses addresses in form phrase <address>,
    but because it does not require using of comma (,), multiword
    phrases must be entered in quotes.

    For example: "Kari Hurtta" <hurtta>

    - If address includes <> or comments (), they are not aliased
    expanded. So aliases must be entered as bare words.

    - Addresses given as arguments to elm command should be given
    as one address per argument. Giving of sevaral addresses per
    one argument causes that address is misparsed if header is
    edited on header editing screen.

    That is:

    Use: elm '"Kari Hurtta" <hurtta>' 'Admin <root>'

    Don't use: elm 'Kari Hurtta <hurtta>, Admin <root>'

    - p)rint command acts as P)rint text -command. So it
    is currently quite useless.
    p)rint command does that via readmsg -command. However
    P)rint text does actually same (without readmsg).

    - Some Linux libraries does not follow $LC_CTYPE when program is
    setgid. Net result is that your locale is always C. That is
    visible that $LC_CTYPE does not effect to locale printed by
    'elm -vvvvv':

    Locale (LC_CTYPE): C
    Display character-set: US-ASCII
    Sending character-set: US-ASCII

    - All refrences iso2022 maps are parsed and read to memory.
    This may cause quite big memory consumption specially because
    eastern (multibyte) sets tend to be lot of characters. That
    mapping information should be shared between processes to
    reduce memory consuption.

    - If display charset is produced by using mapping from locale
    to charset where charset definition is later invalidated
    ("removed") by setting explicit compatcharsets on user's
    .elm/elmrc, that may cause PANIC on elm's internal pager
    or other problems. Invalidation happens if display charset
    is on implicit compatcharsets list (because of charset
    definition), but does not have explicit compatcharsets list
    given by user.

    - Neither Unicode didirectional algorithm nor Right-Left scripts
    are supported.

    - In some situations two Status headers may be generated two
    Status headers -- one by IMAP deamon and one from APPENDed
    message.

    - When APPENDing message to IMAP folder (which is normal UNIX
    mailbox format) original "From " separator line can not be
    preserved -- specially it is not possible to pass envelope
    sender address.

    - For UTF-8 charset Elm only knows printable characters from
    Latin/1 range, if unicode database (see elmrc option "unidata")
    is not loaded.

    - For using of ISO2022 character sets it is required that mapping
    them to unicode is know -- otherwise Elm ME+ does not know which
    characters are printable.

    - UTF-16 surrogate pairs (D800-DFFF) are not supported on UTF-7
    charset.

    - Mixing of names using IMAP naming convention
    (imap-naming-convention = yes)
    and names using imap-charset does not work very well...

    - " Regarding my message (8 Aug 2000) regarding 'newmail' on
    AIX 4.3.3 in an 'aixterm' window and the 'aixterm' did not
    close, indeed the problem was NOT related to 'newmail' but an
    AIX bug.

    IBM has release a patch, and the 'aixterm' in AIX 4.3.3 must
    be update with fileset X11.apps.aixterm.4.3.3.26 (PTF
    U473920) is solved to problem."
    From: Noam G. Nudelman

    - File /usr/share/locale/fi/charset gives charset name utf-8 on
    Linux Mandrake 7.2. This causes that Configure generates
    mapping
    fi utf-8
    to elm.mimecharsets. However that seems to have
    incorrect mapping. You may want change this to
    fi ISO-8859-1


    [continued in next message]

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Kari Hurtta@21:1/5 to All on Sat Jul 3 05:30:12 2021
    Experimental DEB generator script for Elm ME+ 2.5 PLalpha55 exists on
    <URL: http://www.elmme-mailer.org/deb/elm-ME+2.5.html > directory.

    Files are following

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha55-2.gen_deb
    DEB generator script
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha55-2.gen_deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha55-2.gen_deb.sig

    A command

    elm-ME+2.5.alpha55-2.gen_deb {packager}

    generates package elmme with version 1.1.55-2.{distribution}.

    A command

    elm-ME+2.5.alpha55-2.gen_deb --nonew {packager}

    generates package elm with version ME+2.5.alpha55-2.{distribution}.

    Both commands produce package with filename elm-ME+2.5.alpha55-2.{distribution}.{arch}.deb.

    Module libelmme-resolv.so is included for all distributions.

    == Old package names, i386

    Package elm with version ME+2.5.alpha55-2.{distribution} and
    architecture i386.

    * Compiled on Ubuntu 6.06.2 LTS
    (Linux 2.6, glibc 2.3, Sendmail 8.13)

    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha55-2.Ubuntu6.06.i386.deb
    Package elm binary DEB build on Ubuntu 6.06.2 LTS
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha55-2.Ubuntu6.06.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha55-2.Ubuntu6.06.i386.deb.sig

    * Compiled on Ubuntu 10.04.4 LTS
    (Linux 2.6, glibc 2.11, Sendmail 8.14)

    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha55-2.Ubuntu10.04.i386.deb
    Package elm binary DEB build on Ubuntu 10.04.4 LTS
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha55-2.Ubuntu10.04.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha55-2.Ubuntu10.04.i386.deb.sig

    == New package names, i386

    Package elmme with version 1.1.55-2.{distribution} and architecture
    i386.

    * Compiled on Ubuntu 10.04.4 LTS
    (Linux 2.6, glibc 2.11, Sendmail 8.14)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha55-2.Ubuntu10.04.i386.deb
    Package elmme binary DEB build on Ubuntu 10.04.4 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha55-2.Ubuntu10.04.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha55-2.Ubuntu10.04.i386.deb.sig

    * Compiled on Ubuntu 14.04.6 LTS
    (Linux 4.4, glibc 2.19, no MTA)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha55-2.Ubuntu14.04.i386.deb
    Package elmme binary DEB build on Ubuntu 14.04.6 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha55-2.Ubuntu14.04.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha55-2.Ubuntu14.04.i386.deb.sig

    == New package names, amd64 (x86_64)

    Package elmme with version 1.1.55-2.{distribution} and architecture
    amd64 (also known as x86_64).

    * Compiled on Ubuntu 16.04.7 LTS
    (Linux 4.4, glibc 2.23, Sendmail 8.15)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha55-2.Ubuntu16.04.amd64.deb
    Package elmme binary DEB build on Ubuntu 16.04.7 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha55-2.Ubuntu16.04.amd64.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha55-2.Ubuntu16.04.amd64.deb.sig

    * Compiled on Ubuntu 18.04.5 LTS
    (Linux 5.4, glibc 2.27, no MTA)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha55-2.Ubuntu18.04.amd64.deb
    Package elmme binary DEB build on Ubuntu 18.04.5 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha55-2.Ubuntu18.04.amd64.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha55-2.Ubuntu18.04.amd64.deb.sig

    == Signatures

    {file}.sig PGP signature (old key pubkey.asc, EA5A2379 1996-04-23)
    {file}.elm-key-2018.sig GPG signature (key elm.key.2018.asc, 44FC796B 2018-12-01, expires: 2028-11-28)

    == Configuration

    Following files (if exists) are rewritten by elmconfwriter on
    installation:

    - /usr/local/lib/elm.rc
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.hashmarks

    Deb generator script compiles elm for binary distribution, so you must
    edit /usr/local/lib/elm.rc before using Elm ME+ 2.5. Following variables
    may need to be modified on elm.rc:

    - mailer
    - hostdomain (this is usually needed)
    - hostfullname
    - hostname (usually this is not needed)
    - mailname (default values is generated from other values)
    - name-resolution (controls default values of hostdomain, hostfullname, hostname, mailname)

    By default first value for mailname is read from /etc/mailname file.

    For re-generation of following file, old information (if exists) is
    used:

    - /usr/local/lib/elm.rc

    WARNING: Check after installation that libraries are enabled. Global
    elm.rc values are:

    use-library =
    use-base-library = iconv
    use-config-library = resolv
    use-connect-library = tls resolv
    use-mailer-library = smtp resolv

    After editing global elm.rc run /usr/local/lib/elmrc-write -GI for fixing possible errors.

    On installation following existing files are merged with new values:

    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.hashmarks

    Old values from /usr/local/lib/aliases.text are converted to /usr/local/lib/elm.aliases and /usr/local/lib/aliases.text is renamed to /usr/local/lib/aliases.text.OLD.

    On installation new values without merging are written to following
    files:

    - /usr/local/lib/elm.aliases.NEW
    - /usr/local/lib/elm.mailinglists.NEW
    - /usr/local/lib/elm.mailservices.NEW
    - /usr/local/lib/elm.mimecharsets.NEW
    - /usr/local/lib/elm.mimetypes.NEW
    - /usr/local/lib/elm.terminalinfo.NEW
    - /usr/local/lib/elm.iso2022sets.NEW
    - /usr/local/lib/elm.hashmarks.NEW

    Also following directories are used:

    - /usr/local/lib/elm.map.txt/ (global setting map-text-dir = {lib}/elm.map.txt)
    - /usr/local/lib/elm.map.bin/ (global setting map-bin-dir = {lib}/elm.map.bin)
    - /usr/local/lib/elm.user.map/ (global setting user-map-dir = {lib}/elm.user.map)

    Hashmark EXAMPLE uses file /usr/local/lib/elm.user.map/elm.usermap.

    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".

    Elm ME+ 2.5 PLalpha55 changelog

    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)
    by 0x5325CBB: read_folder_headers (headers.c:404)
    by 0x52BF1EA: copy_envelope_folder (mbox.c:1842)
    by 0x4C286F: read_headers (newmbox.c:1842)
    by 0x4BF44A: newmbox_1 (newmbox.c:722)
    by 0x48AF47: initialize_mailbox (init.c:1095)
    by 0x498E4E: main_messages_menu (mailbox.c:951)
    by 0x46A5BC: main (elm.c:1677)

    - Fixed valgrind reported memory leak:
    64 (24 direct, 40 indirect) bytes in 1 blocks are definitely lost in loss record 2,519 of 3,420
    at 0x4C2DB8F: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
    by 0x5CD25D1: safe_zero_alloc (safemalloc.c:85)
    by 0x5D22F8D: malloc_string (string.c:85)
    by 0x5D26664: dup_string (string.c:1095)
    by 0x425B64: build_address_l (addr_util.c:1881)
    by 0x499F53: get_to (mailmsg1.c:400)
    by 0x49A363: send_msg_middle2 (mailmsg1.c:530)
    by 0x49AEE2: send_msg_middle (mailmsg1.c:793)
    by 0x49B091: send_msg_l (mailmsg1.c:838)
    by 0x4671CE: mailbox_command (elm.c:503)
    by 0x497612: main_messages_loop (mailbox.c:315)
    by 0x498EB2: main_messages_menu (mailbox.c:964)
    by 0x46A5BC: main (elm.c:1677)

    - Adding closing socket loop to free_non_blocking_qm()

    - Removed extra inc_resolv_query_item_re[f]count(ret)
    from query_one_name()
    ( Renamed inc_resolv_query_item_recount() to inc_resolv_query_item_refcount(). )
    - Fixed valgrind reported memory leak:
    2,502 (144 direct, 2,358 indirect) bytes in 1 blocks are definitely lost in loss record 291 of 302
    at 0x4C2DB8F: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
    by 0x5CD25D1: safe_zero_alloc (safemalloc.c:85)
    by 0x7A2BD79: new_resolv_query_item (query.c:918)
    by 0x7A37C6E: query_one_name (query.c:3929)
    by 0x7A3CE23: lookup_resolv_cache_nonblocked (query.c:5327)
    by 0x7A2138A: call_lookup_resolv_cache (resolv.c:3852)
    by 0x7A1F5C2: fill_query_resolv_cache (resolv.c:3080)
    by 0x7A1FE1A: query_resolv_cache (resolv.c:3310)
    by 0x7A2870B: check_domain_name (resolv.c:5614)
    by 0x55B9A5A: process_one_check_domname (shared_mailer.c:629)
    by 0x55B9D73: shared_check_dname (shared_mailer.c:699)
    by 0x55C589B: check_msg_domain0 (message-id.c:2981)
    by 0x55C628F: check_msg_domain (message-id.c:3109)
    by 0x55CB71D: update_message_id (message-id.c:4236)
    by 0x4A7E62: mail (mailmsg2.c:3625)
    by 0x49ACE4: send_msg_middle2 (mailmsg1.c:737)
    by 0x49AEE5: send_msg_middle (mailmsg1.c:793)
    by 0x49B1C6: send_msg_argv (mailmsg1.c:883)
    by 0x46A2FF: main (elm.c:1623)

    - Removed extra inc_resolv_process_refcount(prx[prx_count])
    from select_resolv_process()
    - Fixed valgrind reported memory leak:
    2,232 (32 direct, 2,200 indirect) bytes in 1 blocks are definitely lost in loss record 239 of 249
    at 0x4C2DB8F: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
    by 0x5CD25D1: safe_zero_alloc (safemalloc.c:85)
    by 0x7A2C728: new_resolv_process (query.c:1214)
    by 0x7A338E3: give_resolv_process (query.c:2925)
    by 0x7A373E8: select_resolv_process (query.c:3780)
    by 0x7A384CB: query_one_name (query.c:4072)
    by 0x7A3C5D3: lookup_resolv_cache_nonblocked (query.c:5199)
    by 0x7A2138A: call_lookup_resolv_cache (resolv.c:3852)
    by 0x7A1F5C2: fill_query_resolv_cache (resolv.c:3080)
    by 0x7A1FE1A: query_resolv_cache (resolv.c:3310)
    by 0x7A22184: verify_mail_domain2 (resolv.c:4117)
    by 0x55B8E28: process_one_verify_domain (shared_mailer.c:415)
    by 0x55B8F81: shared_verify_domain (shared_mailer.c:458)
    by 0x55D021E: verify_mail_domain_util (senderhelper.c:718)
    by 0x422337: build_address_verify_domain (addr_util.c:796)
    by 0x423C2D: build_address_l (addr_util.c:1342)
    by 0x41FEE5: argv_to_expanded (addr_util.c:150)
    by 0x49B17F: send_msg_argv (mailmsg1.c:881)
    by 0x46A2FF: main (elm.c:1623)

    - Added free_mail_quotaroot(&quotaroot); call to ref_mqr_imap()
    - Fixed valgrind reported memory leak:
    191 (56 direct, 135 indirect) bytes in 1 blocks are definitely lost in loss record 1,418 of 1,573
    at 0x4C2DB8F: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
    by 0x5CD15D1: safe_zero_alloc (safemalloc.c:85)
    by 0x5366227: malloc_mail_quotaroot (quota.c:464)
    by 0x536AC97: ref_mqr_imap (imap_quota.c:1117)
    by 0x536BCEC: parse_imap_quota (imap_quota.c:1407)
    by 0x533EA38: parse_response (con_imap.c:2030)
    by 0x5340B2F: imap_read_stream (con_imap.c:2527)
    by 0x5D1BCF3: call_user_read_callback (streamsched.c:427)
    by 0x5D1C3DE: call_read_callback (streamsched.c:531)
    by 0x5D1E8E6: after_action (streamsched.c:1183)
    by 0x5D1C5C6: read_engine (streamsched.c:596)
    by 0x5CE8D40: real_wait_select (schedule.c:1991)
    by 0x5CEC04C: real_wait (schedule.c:2509)
    by 0x5CEDC24: wait_for_something (schedule.c:2838)
    by 0x5CF0444: wait_for_any_action_settime_c (schedule.c:3359)
    by 0x5D1F23C: WaitStreamFor_c (streamsched.c:1343)
    by 0x5341F59: imap_wait_c (con_imap.c:2883)
    by 0x5342BE1: imap_command_ok_c (con_imap.c:3101)
    by 0x536D044: mbx_give_imap_quotar_list (imap_quota.c:1726)
    by 0x52C96B8: give_folder_quotaroot_l (mbox.c:4346)

    New elmrc option:
    dsnmail

    New file:
    lib/sortlist.c

    Warnings
    --------

    - Not compiled with MMDF support defined, so probably it doesn't
    work (or even compile).

    - This has not been tested much so there can be bad bugs.

    Bug reports to: Kari E. Hurtta <elm@elmme-mailer.org>
    (was hurtta+elm@posti.FMI.FI)

    - Internationalized (ie. non-ASCII) domain names are not supported.

    - Support for multipart/signed and multipart/encrypted (specially:
    support for PGP/MIME) only in reading side. There is no support
    for attachments with multipart/encrypted.

    - HP's shoftkeys are no longer supported

    - DECNET addresses like host::user may be interpreted as phrase
    of group syntax or as route of source routed address.

    - Header editing screen now uses addresses in form phrase <address>,
    but because it does not require using of comma (,), multiword
    phrases must be entered in quotes.

    For example: "Kari Hurtta" <hurtta>

    - If address includes <> or comments (), they are not aliased
    expanded. So aliases must be entered as bare words.

    - Addresses given as arguments to elm command should be given
    as one address per argument. Giving of sevaral addresses per
    one argument causes that address is misparsed if header is
    edited on header editing screen.

    That is:

    Use: elm '"Kari Hurtta" <hurtta>' 'Admin <root>'

    Don't use: elm 'Kari Hurtta <hurtta>, Admin <root>'

    - p)rint command acts as P)rint text -command. So it
    is currently quite useless.
    p)rint command does that via readmsg -command. However
    P)rint text does actually same (without readmsg).

    - Some Linux libraries does not follow $LC_CTYPE when program is
    setgid. Net result is that your locale is always C. That is
    visible that $LC_CTYPE does not effect to locale printed by
    'elm -vvvvv':

    Locale (LC_CTYPE): C
    Display character-set: US-ASCII
    Sending character-set: US-ASCII

    - All refrences iso2022 maps are parsed and read to memory.
    This may cause quite big memory consumption specially because
    eastern (multibyte) sets tend to be lot of characters. That
    mapping information should be shared between processes to
    reduce memory consuption.

    - If display charset is produced by using mapping from locale
    to charset where charset definition is later invalidated
    ("removed") by setting explicit compatcharsets on user's
    .elm/elmrc, that may cause PANIC on elm's internal pager
    or other problems. Invalidation happens if display charset
    is on implicit compatcharsets list (because of charset
    definition), but does not have explicit compatcharsets list
    given by user.

    - Neither Unicode didirectional algorithm nor Right-Left scripts
    are supported.

    - In some situations two Status headers may be generated two
    Status headers -- one by IMAP deamon and one from APPENDed
    message.

    - When APPENDing message to IMAP folder (which is normal UNIX
    mailbox format) original "From " separator line can not be
    preserved -- specially it is not possible to pass envelope
    sender address.

    - For UTF-8 charset Elm only knows printable characters from
    Latin/1 range, if unicode database (see elmrc option "unidata")
    is not loaded.


    [continued in next message]

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Kari Hurtta@21:1/5 to All on Fri Sep 3 22:58:46 2021
    [ Because Usenet news (nntp) server news.kolumbus.fi is closed
    since 2021-05-04 I post this announcement only (not sources)
    via Google Groups instead. ]

    Elm ME+ 2.5 PLalpha56

    - Is available with
    <URL: http://www.elmme-mailer.org/elm-ME+2.5/src/elm-ME+2.5.alpha56.9d9fc6e979ee2ab0947d541922ba68ec.tar.gz >
    and <URL: http://www.elmme-mailer.org/elm-ME+2.5/src/elm-ME+2.5.PLalpha56.patch.gz >
    via http.

    - Is available with
    <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.alpha56.9d9fc6e979ee2ab0947d541922ba68ec.tar.gz >
    and <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.PLalpha56.patch.gz >
    via https.

    - Is available on ftp.funet.fi
    via anonymous ftp
    directory pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/
    files elm-ME+2.5.alpha56.9d9fc6e979ee2ab0947d541922ba68ec.tar.gz
    and elm-ME+2.5.PLalpha56.patch.gz.sig

    or is available with
    <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.alpha56.9d9fc6e979ee2ab0947d541922ba68ec.tar.gz >
    and <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha56.patch.gz.sig >
    with browser

    or is available with
    <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.alpha56.9d9fc6e979ee2ab0947d541922ba68ec.tar.gz >
    and <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha56.patch.gz >
    via https.

    Is NOT available on alt.sources, comp.mail.elm because Usenet news (nntp) server news.kolumbus.fi (*) is closed since 2021-05-04.

    (*) That is apparently also uutiset.elisa.fi and news.saunalahti.fi.
    See: https://elisa.fi/asiakastiedotteet/tiedote/?id=63663313593635

    SUMMARY: 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.


    Changes on Elm ME+ 2.5 PLalpha56 compared with Elm ME+ 2.5 PLalpha55 --------------------------------------------------------------------

    SUMMARY: 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 /media/hurtta/seagate-1/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

    Warnings
    --------

    - Not compiled with MMDF support defined, so probably it doesn't
    work (or even compile).

    - This has not been tested much so there can be bad bugs.

    Bug reports to: Kari E. Hurtta <elm@elmme-mailer.org>
    (was hurtta+elm@posti.FMI.FI)

    - Internationalized (ie. non-ASCII) domain names are not supported.

    - Support for multipart/signed and multipart/encrypted (specially:
    support for PGP/MIME) only in reading side. There is no support
    for attachments with multipart/encrypted.

    - HP's shoftkeys are no longer supported

    - DECNET addresses like host::user may be interpreted as phrase
    of group syntax or as route of source routed address.

    - Header editing screen now uses addresses in form phrase <address>,
    but because it does not require using of comma (,), multiword
    phrases must be entered in quotes.

    For example: "Kari Hurtta" <hurtta>

    - If address includes <> or comments (), they are not aliased
    expanded. So aliases must be entered as bare words.

    - Addresses given as arguments to elm command should be given
    as one address per argument. Giving of sevaral addresses per
    one argument causes that address is misparsed if header is
    edited on header editing screen.

    That is:

    Use: elm '"Kari Hurtta" <hurtta>' 'Admin <root>'

    Don't use: elm 'Kari Hurtta <hurtta>, Admin <root>'

    - p)rint command acts as P)rint text -command. So it
    is currently quite useless.
    p)rint command does that via readmsg -command. However
    P)rint text does actually same (without readmsg).

    - Some Linux libraries does not follow $LC_CTYPE when program is
    setgid. Net result is that your locale is always C. That is
    visible that $LC_CTYPE does not effect to locale printed by
    'elm -vvvvv':

    Locale (LC_CTYPE): C
    Display character-set: US-ASCII
    Sending character-set: US-ASCII

    - All refrences iso2022 maps are parsed and read to memory.
    This may cause quite big memory consumption specially because
    eastern (multibyte) sets tend to be lot of characters. That
    mapping information should be shared between processes to
    reduce memory consuption.

    - If display charset is produced by using mapping from locale
    to charset where charset definition is later invalidated
    ("removed") by setting explicit compatcharsets on user's
    .elm/elmrc, that may cause PANIC on elm's internal pager
    or other problems. Invalidation happens if display charset
    is on implicit compatcharsets list (because of charset
    definition), but does not have explicit compatcharsets list
    given by user.

    - Neither Unicode didirectional algorithm nor Right-Left scripts
    are supported.

    - In some situations two Status headers may be generated two
    Status headers -- one by IMAP deamon and one from APPENDed
    message.

    - When APPENDing message to IMAP folder (which is normal UNIX
    mailbox format) original "From " separator line can not be
    preserved -- specially it is not possible to pass envelope
    sender address.

    - For UTF-8 charset Elm only knows printable characters from
    Latin/1 range, if unicode database (see elmrc option "unidata")
    is not loaded.

    - For using of ISO2022 character sets it is required that mapping
    them to unicode is know -- otherwise Elm ME+ does not know which
    characters are printable.

    - UTF-16 surrogate pairs (D800-DFFF) are not supported on UTF-7
    charset.

    - Mixing of names using IMAP naming convention
    (imap-naming-convention = yes)
    and names using imap-charset does not work very well...

    - " Regarding my message (8 Aug 2000) regarding 'newmail' on
    AIX 4.3.3 in an 'aixterm' window and the 'aixterm' did not
    close, indeed the problem was NOT related to 'newmail' but an
    AIX bug.

    IBM has release a patch, and the 'aixterm' in AIX 4.3.3 must
    be update with fileset X11.apps.aixterm.4.3.3.26 (PTF
    U473920) is solved to problem."
    From: Noam G. Nudelman

    - File /usr/share/locale/fi/charset gives charset name utf-8 on
    Linux Mandrake 7.2. This causes that Configure generates
    mapping
    fi utf-8
    to elm.mimecharsets. However that seems to have
    incorrect mapping. You may want change this to
    fi ISO-8859-1

    ( however nl_langinfo(CODESET) gives charset ISO-8859-15
    but look following entry. )

    - Locale 'fi' seems to have charset ISO-8859-15 according
    of nl_langinfo(CODESET) on Mandrake Linux 7.2 (and probaly
    others with same glibc version). However for example gnome
    terminal uses font
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-1
    and not
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-15

    Also KDE's konsole program seems use iso8859-1 character set
    although locale is 'fi' which should have ISO-8859-15 according
    of nl_langinfo (selecting "unicode" from menu seems fix that.)

    Because of mismatch more correct locale is fi_FI.88591, which gives
    ISO-8859-1 character set according of nl_langinfo(CODESET).

    ( Locale seems come from /etc/sysconfig/i18n or $HOME/.i18n )

    > To enable handling of ISO-8859-1 and ISO-8859-15 character sets
    on linux console, read comments from doc/terminal.info file.

    - Mandrake Linux 7.2 seems set LD_PRELOAD to load
    /usr/lib/libxalflaunch.so.0. That (xalf-0.4-2mdk) causes that
    elm to crash on startup (actually before main() is reached.)

    - kterm on Mandrake Linux 7.2 seems have (at least on my test
    environment) seems get bad fontlist (*VT100*fontList) which
    gives bad font for iso8859-1 -- therefore ISO-8859-1 characters
    do not work.

    ("xrdb -query" seems report resource with name "*fontList"
    -- that probably overrides "*VT100*fontList" which comes
    from /usr/lib/X11/app-defaults/KTerm )

    - Also note that initially kterm does NOT default to
    ISO-8859-1 -- therefore ISO-8859-1 works only when
    elm explicity switch to ISO-8859-1 (for example
    with 'elm -D ISO-8859-1')

    - When assembling message/partial MIME (RFC 2046)
    requires that all headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are copied from
    initial enclosing message to assembled message. It also
    requires that headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are ignored and
    dropped from enclosed message.

    For now we copy only Received: -headers. Dropping extra
    headers from enclosed message makes assembly more
    complicated (and dropping of Received: -headers
    from enclosed message do not make sense.)

    - mailer=sendmail; verify=yes works only when sendmail
    is installed as setuid root. Use mailer=submission instead.
    * Starting from sendmail 8.12 sendmail is normally
    installed as setgid smmsp and not as setuid root.
    - However error message is printed only if
    verify-local-address=yes is also set

    - IMAP connection is stalled some times. Reason is unknown.

    - From name option (-f) on fastmail is currently broken.

    Collector of these patches
    --------------------------

    Kari Hurtta <elm@elmme-mailer.org>
    Kari Hurtta <hurtta+elm@siilo.FMI.FI>


    diffstat:

    MANIFEST | 3
    README.ME+ | 478 ++++!!!!
    doc/elm.1 | 13
    doc/elmconfwriter.1 | 2
    doc/elmrc-info | 533 ++++---
    doc/elmrc.samp | 534 ++++---
    hdrs/addrlib.h | 9
    hdrs/aliaslib.h | 81
    hdrs/conf_writer_imp.h | 12
    hdrs/cs_imp.h | 46
    hdrs/defs_major.h | 5
    hdrs/elm_defs.h | 64 !
    hdrs/elmlib.h | 75 !
    hdrs/filelock.h | 28
    hdrs/mboxlib.h | 22
    hdrs/me.h | 22
    hdrs/misclib.h | 38
    hdrs/patchlevel.h | 10
    hdrs/s_aliases.h | 12
    hdrs/s_elm.h | 1
    hdrs/s_elmrc.h | 1
    hdrs/s_me.h | 21
    hdrs/save_opts.h | 9
    lib/MAGIC | 3
    lib/Makefile.SH | 4
    lib/addr/address.c | 26
    lib/addr/getaddr.c | 20
    lib/addr/parsestring.c | 19
    lib/addr/write_hdr.c | 44
    lib/alias/Makefile.SH | 11
    lib/alias/address_alias.c | 34
    lib/alias/aliases.c | 2376 ++++++++++---!!!!!!!!!!!!!!!!!!!!!!!!!!!
    lib/alias/aliasexpand.c | 12
    lib/alias/def_alias.h | 7
    lib/alias/init.c | 99
    lib/conf_writer.c | 20
    lib/cs_binary.c | 86 +
    lib/cs_iso2022.c | 8
    lib/cs_unknown.c | 5
    lib/cs_utf.c | 79 +
    lib/delay_unlink.c | 50
    lib/mailer/mailer.c | 10
    lib/mailer/message-id.c | 25
    lib/mbox/Makefile.SH | 11
    lib/mbox/init.c | 20
    lib/mbox/localmbx.c | 307 -!!!
    lib/mbox/mbox.c | 6
    lib/mbox/pop.c | 15
    lib/misc/Makefile.SH | 5
    lib/misc/conf_writer.c | 1024 +++++++++!!!!!!!!
    lib/misc/def_misc.h | 6
    lib/misc/filelock.c | 654 +++++++++++
    lib/misc/init.c | 75 !
    lib/rc_handle.c | 9
    lib/read_rc.c | 66 -
    lib/safeopen.c | 157 !!
    lib/sb_file.c | 10
    lib/sortlist.c | 27
    lib/string.c | 181 +++
    lib/string_sort.c | 377 ++++++
    melib/mime_decode.c | 6
    melib/pgp_decode.c | 8
    melib/state_decode.c | 9
    nls/C/C/C/s_aliases.m | 24
    nls/C/C/C/s_elm.m | 6
    nls/C/C/C/s_elmrc.m | 2
    nls/C/C/C/s_me.m | 42
    shared_libs/iconv/iconv.c | 66 +
    shared_libs/resolv/resolv.c | 7
    shared_libs/smtp/smtp.c | 7
    src/a_screen.c | 11
    src/alias.c | 45
    src/alias_display.c | 23
    src/alias_info.c | 37
    src/aliases/aliases.c | 112 +
    src/aliases/aliases_map.c | 721 ++++++++++!
    src/aliases/def_aliases.h | 17
    src/args.c | 22
    src/attach_menu.c | 12
    src/block/fileblock.c | 10
    src/edithdr.c | 6
    src/editmsg.c | 6
    src/hdrconfg.c | 56
    src/init.c | 70 !
    src/mailmsg2.c | 18
    src/messages/partial.c | 7
    src/messages/thread.c | 387 +!!!!!
    src/messages/thread_messages.c | 22
    src/metapager.c | 6
    src/mime.c | 10
    src/opt_generic.c | 6
    src/pgp.c | 6
    src/remail.c | 8
    src/save_opts.c | 123 !!
    src/savecopy.c | 6
    src/showmsg.c | 17
    src/snd_preview.c | 9
    src/sort.c | 48
    src/syscall.c | 8
    src/thread.c | 182 +!
    utils/elmaliases-write.c | 32
    utils/elmconfwriter.c | 25
    utils/fastmail.c | 16
    utils/newalias.c | 24
    104 files changed, 4898 insertions(+), 671 deletions(-), 4623 modifications(!)

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Kari Hurtta@21:1/5 to All on Sat Sep 4 22:05:30 2021
    Experimental RPM spec file for ELM ME+ 2.5 PLalpha56
    exists on <URL: http://www.elmme-mailer.org/rpm/elm-ME+2.5.html >
    directory.

    Files are following

    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha56-1.spec
    RPM spec file
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha56-1.spec.elm-key-2018.sig
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha56-1.spec.sig

    ** Notes

    - elm-ME+2.5.alpha56-1.mdk7.1.src.rpm is signed internally with GPG
    key elm.key.2018.asc (44FC796B 2018-12-01).

    * Compiled on Linux Mandrake release 7.2
    (Linux 2.2, glibc 2.1, Sendmail 8.13)

    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha56-1.mdk7.2.i686.rpm
    Package elm binary RPM build on Linux Mandrake release 7.2
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha56-1.mdk7.2.i686.rpm.sig
    - http://www.elmme-mailer.org/rpm/elm-mod-ME+2.5.alpha56-1.mdk7.2.i686.rpm
    Package elm-mod binary RPM build on Linux Mandrake release 7.2
    - http://www.elmme-mailer.org/rpm/elm-mod-ME+2.5.alpha56-1.mdk7.2.i686.rpm.sig
    - http://www.elmme-mailer.org/rpm/elm-tls-ME+2.5.alpha56-1.mdk7.2.i686.rpm
    Package elm-tls binary RPM build on Linux Mandrake release 7.2
    - http://www.elmme-mailer.org/rpm/elm-tls-ME+2.5.alpha56-1.mdk7.2.i686.rpm.sig

    ** Notes

    - elm-ME+2.5.alpha56-1.mdk7.2.i686.rpm and
    elm-*-ME+2.5.alpha56-1.mdk7.2.i686.rpm are signed internally with
    GPG key elm.key.2018.asc (44FC796B 2018-12-01).
    - elm-ME+2.5.alpha56-1.mdk7.2.i686.rpm is compiled agaist Sendmail
    8.13 (not from Mandrake distribution).
    - elm-tls-ME+2.5.alpha56-1.mdk7.2.i686.rpm do not load/work on
    Mandrake 7.2, because openssl library misses ASN1_STRING_to_UTF8
    function.

    * Signatures

    {file}.sig PGP signature (old key pubkey.asc, EA5A2379 1996-04-23)
    {file}.elm-key-2018.sig GPG signature (key elm.key.2018.asc, 44FC796B 2018-12-01, expires: 2028-11-28)

    * Configuration

    Following files (if exists) are rewritten by elmconfwriter on
    installation:

    - /usr/local/lib/elm.rc
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.hashmarks

    Spec file compiles elm for binary distribution, so you must edit
    /usr/local/lib/elm.rc before using Elm ME+ 2.5. Following variables may
    need to be modified on elm.rc:

    - mailer
    - hostdomain (this is usually needed)
    - hostfullname
    - hostname (usually this is not needed)
    - mailname (default values is generated from other values)
    name-resolution (controls default values of hostdomain,
    hostfullname, hostname, mailname)


    For re-generation of following file, old information (if exists) is
    used:

    - /usr/local/lib/elm.rc

    WARNING: Check after installation that libraries are enabled. Global
    elm.rc values are:

    use-library =
    use-base-library = iconv
    use-config-library = resolv
    use-connect-library = tls resolv
    use-mailer-library = smtp resolv

    Note that libelmme-resolv.so does not compile on all distributions. In
    that case omit resolv from elm.rc.

    After editing global elm.rc run /usr/local/lib/elmrc-write -GI for
    fixing possible errors.

    On installation following existing files are merged with new values:

    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.hashmarks

    Old values from /usr/local/lib/aliases.text are converted to /usr/local/lib/elm.aliases and /usr/local/lib/aliases.text is renamed to /usr/local/lib/aliases.text.OLD.

    On installation new values without merging are written to following
    files:

    - /usr/local/lib/elm.aliases.NEW
    - /usr/local/lib/elm.mailinglists.NEW
    - /usr/local/lib/elm.mailservices.NEW
    - /usr/local/lib/elm.mimecharsets.NEW
    - /usr/local/lib/elm.mimetypes.NEW
    - /usr/local/lib/elm.terminalinfo.NEW
    - /usr/local/lib/elm.iso2022sets.NEW
    - /usr/local/lib/elm.hashmarks.NEW

    Package elm-mod includes libelmme-iconv.so and libelmme-smtp.so. (If
    package elm-mod includes libelmme-resolv.so, this is noted). And package elm-tls includes libelmme-tls.so.

    Installation loses mailer = submission setting from global /usr/local/lib/elm.rc, because when elm package rewrites elm.rc,
    submission mailer is not available. It becomes from elm-mod package.

    However failed values of /usr/local/lib/elm.rc are saved to /usr/local/lib/elm.rc.old-values file during installation.

    Global setting mailer = submission is restored from /usr/local/lib/elm.rc.old-values file, when package elm-mod is
    installed.

    Also following directories are used:

    - /usr/local/lib/elm.map.txt/ (global setting map-text-dir =
    {lib}/elm.map.txt)
    - /usr/local/lib/elm.map.bin/ (global setting map-bin-dir =
    {lib}/elm.map.bin)
    - /usr/local/lib/elm.user.map/ (global setting user-map-dir =
    {lib}/elm.user.map)

    Hashmark EXAMPLE uses file /usr/local/lib/elm.user.map/elm.usermap.

    SUMMARY: 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.

    Elm ME+ 2.5 PLalpha56 changelog

    Changes on Elm ME+ 2.5 PLalpha56 compared with Elm ME+ 2.5 PLalpha55 --------------------------------------------------------------------

    SUMMARY: 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 /media/hurtta/seagate-1/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

    Warnings
    --------

    - Not compiled with MMDF support defined, so probably it doesn't
    work (or even compile).

    - This has not been tested much so there can be bad bugs.

    Bug reports to: Kari E. Hurtta <elm@elmme-mailer.org>
    (was hurtta+elm@posti.FMI.FI)

    - Internationalized (ie. non-ASCII) domain names are not supported.

    - Support for multipart/signed and multipart/encrypted (specially:
    support for PGP/MIME) only in reading side. There is no support
    for attachments with multipart/encrypted.

    - HP's shoftkeys are no longer supported

    - DECNET addresses like host::user may be interpreted as phrase
    of group syntax or as route of source routed address.

    - Header editing screen now uses addresses in form phrase <address>,
    but because it does not require using of comma (,), multiword
    phrases must be entered in quotes.

    For example: "Kari Hurtta" <hurtta>

    - If address includes <> or comments (), they are not aliased
    expanded. So aliases must be entered as bare words.

    - Addresses given as arguments to elm command should be given
    as one address per argument. Giving of sevaral addresses per
    one argument causes that address is misparsed if header is
    edited on header editing screen.

    That is:

    Use: elm '"Kari Hurtta" <hurtta>' 'Admin <root>'

    Don't use: elm 'Kari Hurtta <hurtta>, Admin <root>'

    - p)rint command acts as P)rint text -command. So it
    is currently quite useless.
    p)rint command does that via readmsg -command. However
    P)rint text does actually same (without readmsg).

    - Some Linux libraries does not follow $LC_CTYPE when program is
    setgid. Net result is that your locale is always C. That is
    visible that $LC_CTYPE does not effect to locale printed by
    'elm -vvvvv':

    Locale (LC_CTYPE): C
    Display character-set: US-ASCII
    Sending character-set: US-ASCII

    - All refrences iso2022 maps are parsed and read to memory.
    This may cause quite big memory consumption specially because
    eastern (multibyte) sets tend to be lot of characters. That
    mapping information should be shared between processes to
    reduce memory consuption.

    - If display charset is produced by using mapping from locale
    to charset where charset definition is later invalidated
    ("removed") by setting explicit compatcharsets on user's
    .elm/elmrc, that may cause PANIC on elm's internal pager
    or other problems. Invalidation happens if display charset
    is on implicit compatcharsets list (because of charset
    definition), but does not have explicit compatcharsets list
    given by user.

    - Neither Unicode didirectional algorithm nor Right-Left scripts
    are supported.

    - In some situations two Status headers may be generated two
    Status headers -- one by IMAP deamon and one from APPENDed
    message.

    - When APPENDing message to IMAP folder (which is normal UNIX
    mailbox format) original "From " separator line can not be
    preserved -- specially it is not possible to pass envelope
    sender address.

    - For UTF-8 charset Elm only knows printable characters from
    Latin/1 range, if unicode database (see elmrc option "unidata")
    is not loaded.

    - For using of ISO2022 character sets it is required that mapping
    them to unicode is know -- otherwise Elm ME+ does not know which
    characters are printable.

    - UTF-16 surrogate pairs (D800-DFFF) are not supported on UTF-7
    charset.

    - Mixing of names using IMAP naming convention
    (imap-naming-convention = yes)
    and names using imap-charset does not work very well...

    - " Regarding my message (8 Aug 2000) regarding 'newmail' on
    AIX 4.3.3 in an 'aixterm' window and the 'aixterm' did not
    close, indeed the problem was NOT related to 'newmail' but an
    AIX bug.

    IBM has release a patch, and the 'aixterm' in AIX 4.3.3 must
    be update with fileset X11.apps.aixterm.4.3.3.26 (PTF
    U473920) is solved to problem."
    From: Noam G. Nudelman

    - File /usr/share/locale/fi/charset gives charset name utf-8 on
    Linux Mandrake 7.2. This causes that Configure generates
    mapping
    fi utf-8
    to elm.mimecharsets. However that seems to have
    incorrect mapping. You may want change this to
    fi ISO-8859-1

    ( however nl_langinfo(CODESET) gives charset ISO-8859-15
    but look following entry. )

    - Locale 'fi' seems to have charset ISO-8859-15 according
    of nl_langinfo(CODESET) on Mandrake Linux 7.2 (and probaly
    others with same glibc version). However for example gnome
    terminal uses font
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-1
    and not
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-15

    Also KDE's konsole program seems use iso8859-1 character set
    although locale is 'fi' which should have ISO-8859-15 according
    of nl_langinfo (selecting "unicode" from menu seems fix that.)

    Because of mismatch more correct locale is fi_FI.88591, which gives
    ISO-8859-1 character set according of nl_langinfo(CODESET).

    ( Locale seems come from /etc/sysconfig/i18n or $HOME/.i18n )

    > To enable handling of ISO-8859-1 and ISO-8859-15 character sets
    on linux console, read comments from doc/terminal.info file.

    - Mandrake Linux 7.2 seems set LD_PRELOAD to load
    /usr/lib/libxalflaunch.so.0. That (xalf-0.4-2mdk) causes that
    elm to crash on startup (actually before main() is reached.)

    - kterm on Mandrake Linux 7.2 seems have (at least on my test
    environment) seems get bad fontlist (*VT100*fontList) which
    gives bad font for iso8859-1 -- therefore ISO-8859-1 characters
    do not work.

    ("xrdb -query" seems report resource with name "*fontList"
    -- that probably overrides "*VT100*fontList" which comes
    from /usr/lib/X11/app-defaults/KTerm )

    - Also note that initially kterm does NOT default to
    ISO-8859-1 -- therefore ISO-8859-1 works only when
    elm explicity switch to ISO-8859-1 (for example
    with 'elm -D ISO-8859-1')

    - When assembling message/partial MIME (RFC 2046)
    requires that all headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are copied from
    initial enclosing message to assembled message. It also
    requires that headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are ignored and
    dropped from enclosed message.

    For now we copy only Received: -headers. Dropping extra
    headers from enclosed message makes assembly more
    complicated (and dropping of Received: -headers
    from enclosed message do not make sense.)

    - mailer=sendmail; verify=yes works only when sendmail
    is installed as setuid root. Use mailer=submission instead.
    * Starting from sendmail 8.12 sendmail is normally
    installed as setgid smmsp and not as setuid root.
    - However error message is printed only if
    verify-local-address=yes is also set

    - IMAP connection is stalled some times. Reason is unknown.

    - From name option (-f) on fastmail is currently broken.

    Collector of these patches
    --------------------------

    Kari Hurtta <elm@elmme-mailer.org>
    Kari Hurtta <hurtta+elm@siilo.FMI.FI>

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Kari Hurtta@21:1/5 to All on Sun Sep 5 08:28:42 2021
    Experimental DEB generator script for Elm ME+ 2.5 PLalpha56 exists on
    <URL: http://www.elmme-mailer.org/deb/elm-ME+2.5.html > directory.

    Files are following

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha56-1.gen_deb
    DEB generator script
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha56-1.gen_deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha56-1.gen_deb.sig

    A command

    elm-ME+2.5.alpha56-1.gen_deb {packager}

    generates package elmme with version 1.1.56-1.{distribution}.

    A command

    elm-ME+2.5.alpha56-1.gen_deb --nonew {packager}

    generates package elm with version ME+2.5.alpha56-1.{distribution}.

    Both commands produce package with filename elm-ME+2.5.alpha56-1.{distribution}.{arch}.deb.

    Module libelmme-resolv.so is included for all distributions.

    == Old package names, i386

    Package elm with version ME+2.5.alpha56-1.{distribution} and
    architecture i386.

    * Compiled on Ubuntu 6.06.2 LTS
    (Linux 2.6, glibc 2.3, Sendmail 8.13)

    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha56-1.Ubuntu6.06.i386.deb
    Package elm binary DEB build on Ubuntu 6.06.2 LTS
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha56-1.Ubuntu6.06.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha56-1.Ubuntu6.06.i386.deb.sig

    * Compiled on Ubuntu 10.04.4 LTS
    (Linux 2.6, glibc 2.11, Sendmail 8.14)

    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha56-1.Ubuntu10.04.i386.deb
    Package elm binary DEB build on Ubuntu 10.04.4 LTS
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha56-1.Ubuntu10.04.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha56-1.Ubuntu10.04.i386.deb.sig

    == New package names, i386

    Package elmme with version 1.1.56-1.{distribution} and architecture
    i386.

    * Compiled on Ubuntu 10.04.4 LTS
    (Linux 2.6, glibc 2.11, Sendmail 8.14)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha56-1.Ubuntu10.04.i386.deb
    Package elmme binary DEB build on Ubuntu 10.04.4 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha56-1.Ubuntu10.04.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha56-1.Ubuntu10.04.i386.deb.sig

    * Compiled on Ubuntu 14.04.6 LTS
    (Linux 4.4, glibc 2.19, no MTA)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha56-1.Ubuntu14.04.i386.deb
    Package elmme binary DEB build on Ubuntu 14.04.6 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha56-1.Ubuntu14.04.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha56-1.Ubuntu14.04.i386.deb.sig

    == New package names, amd64 (x86_64)

    Package elmme with version 1.1.56-1.{distribution} and architecture
    amd64 (also known as x86_64).

    * Compiled on Ubuntu 16.04.7 LTS
    (Linux 4.4, glibc 2.23, Sendmail 8.15)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha56-1.Ubuntu16.04.amd64.deb
    Package elmme binary DEB build on Ubuntu 16.04.7 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha56-1.Ubuntu16.04.amd64.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha56-1.Ubuntu16.04.amd64.deb.sig

    * Compiled on Ubuntu 18.04.5 LTS
    (Linux 5.4, glibc 2.27, no MTA)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha56-1.Ubuntu18.04.amd64.deb
    Package elmme binary DEB build on Ubuntu 18.04.5 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha56-1.Ubuntu18.04.amd64.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha56-1.Ubuntu18.04.amd64.deb.sig

    == Signatures

    {file}.sig PGP signature (old key pubkey.asc, EA5A2379 1996-04-23)
    {file}.elm-key-2018.sig GPG signature (key elm.key.2018.asc, 44FC796B 2018-12-01, expires: 2028-11-28)

    == Configuration

    Following files (if exists) are rewritten by elmconfwriter on
    installation:

    - /usr/local/lib/elm.rc
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.hashmarks

    Deb generator script compiles elm for binary distribution, so you must
    edit /usr/local/lib/elm.rc before using Elm ME+ 2.5. Following variables
    may need to be modified on elm.rc:

    - mailer
    - hostdomain (this is usually needed)
    - hostfullname
    - hostname (usually this is not needed)
    - mailname (default values is generated from other values)
    - name-resolution (controls default values of hostdomain, hostfullname, hostname, mailname)

    By default first value for mailname is read from /etc/mailname file.

    For re-generation of following file, old information (if exists) is
    used:

    - /usr/local/lib/elm.rc

    WARNING: Check after installation that libraries are enabled. Global
    elm.rc values are:

    use-library =
    use-base-library = iconv
    use-config-library = resolv
    use-connect-library = tls resolv
    use-mailer-library = smtp resolv

    After editing global elm.rc run /usr/local/lib/elmrc-write -GI for fixing possible errors.

    On installation following existing files are merged with new values:

    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.hashmarks

    Old values from /usr/local/lib/aliases.text are converted to /usr/local/lib/elm.aliases and /usr/local/lib/aliases.text is renamed to /usr/local/lib/aliases.text.OLD.

    On installation new values without merging are written to following
    files:

    - /usr/local/lib/elm.aliases.NEW
    - /usr/local/lib/elm.mailinglists.NEW
    - /usr/local/lib/elm.mailservices.NEW
    - /usr/local/lib/elm.mimecharsets.NEW
    - /usr/local/lib/elm.mimetypes.NEW
    - /usr/local/lib/elm.terminalinfo.NEW
    - /usr/local/lib/elm.iso2022sets.NEW
    - /usr/local/lib/elm.hashmarks.NEW

    Also following directories are used:

    - /usr/local/lib/elm.map.txt/ (global setting map-text-dir = {lib}/elm.map.txt)
    - /usr/local/lib/elm.map.bin/ (global setting map-bin-dir = {lib}/elm.map.bin)
    - /usr/local/lib/elm.user.map/ (global setting user-map-dir = {lib}/elm.user.map)

    Hashmark EXAMPLE uses file /usr/local/lib/elm.user.map/elm.usermap.

    SUMMARY: 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.

    Elm ME+ 2.5 PLalpha56 changelog

    Changes on Elm ME+ 2.5 PLalpha56 compared with Elm ME+ 2.5 PLalpha55 --------------------------------------------------------------------

    SUMMARY: 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 /media/hurtta/seagate-1/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

    Warnings
    --------

    - Not compiled with MMDF support defined, so probably it doesn't
    work (or even compile).

    - This has not been tested much so there can be bad bugs.

    Bug reports to: Kari E. Hurtta <elm@elmme-mailer.org>
    (was hurtta+elm@posti.FMI.FI)

    - Internationalized (ie. non-ASCII) domain names are not supported.

    - Support for multipart/signed and multipart/encrypted (specially:
    support for PGP/MIME) only in reading side. There is no support
    for attachments with multipart/encrypted.

    - HP's shoftkeys are no longer supported

    - DECNET addresses like host::user may be interpreted as phrase
    of group syntax or as route of source routed address.

    - Header editing screen now uses addresses in form phrase <address>,
    but because it does not require using of comma (,), multiword
    phrases must be entered in quotes.

    For example: "Kari Hurtta" <hurtta>

    - If address includes <> or comments (), they are not aliased
    expanded. So aliases must be entered as bare words.

    - Addresses given as arguments to elm command should be given
    as one address per argument. Giving of sevaral addresses per
    one argument causes that address is misparsed if header is
    edited on header editing screen.

    That is:

    Use: elm '"Kari Hurtta" <hurtta>' 'Admin <root>'

    Don't use: elm 'Kari Hurtta <hurtta>, Admin <root>'

    - p)rint command acts as P)rint text -command. So it
    is currently quite useless.
    p)rint command does that via readmsg -command. However
    P)rint text does actually same (without readmsg).

    - Some Linux libraries does not follow $LC_CTYPE when program is
    setgid. Net result is that your locale is always C. That is
    visible that $LC_CTYPE does not effect to locale printed by
    'elm -vvvvv':

    Locale (LC_CTYPE): C
    Display character-set: US-ASCII
    Sending character-set: US-ASCII

    - All refrences iso2022 maps are parsed and read to memory.
    This may cause quite big memory consumption specially because
    eastern (multibyte) sets tend to be lot of characters. That
    mapping information should be shared between processes to
    reduce memory consuption.

    - If display charset is produced by using mapping from locale
    to charset where charset definition is later invalidated
    ("removed") by setting explicit compatcharsets on user's
    .elm/elmrc, that may cause PANIC on elm's internal pager
    or other problems. Invalidation happens if display charset
    is on implicit compatcharsets list (because of charset
    definition), but does not have explicit compatcharsets list
    given by user.

    - Neither Unicode didirectional algorithm nor Right-Left scripts
    are supported.

    - In some situations two Status headers may be generated two
    Status headers -- one by IMAP deamon and one from APPENDed
    message.

    - When APPENDing message to IMAP folder (which is normal UNIX
    mailbox format) original "From " separator line can not be
    preserved -- specially it is not possible to pass envelope
    sender address.

    - For UTF-8 charset Elm only knows printable characters from
    Latin/1 range, if unicode database (see elmrc option "unidata")
    is not loaded.

    - For using of ISO2022 character sets it is required that mapping
    them to unicode is know -- otherwise Elm ME+ does not know which
    characters are printable.

    - UTF-16 surrogate pairs (D800-DFFF) are not supported on UTF-7
    charset.

    - Mixing of names using IMAP naming convention
    (imap-naming-convention = yes)
    and names using imap-charset does not work very well...

    - " Regarding my message (8 Aug 2000) regarding 'newmail' on
    AIX 4.3.3 in an 'aixterm' window and the 'aixterm' did not
    close, indeed the problem was NOT related to 'newmail' but an
    AIX bug.

    IBM has release a patch, and the 'aixterm' in AIX 4.3.3 must
    be update with fileset X11.apps.aixterm.4.3.3.26 (PTF
    U473920) is solved to problem."
    From: Noam G. Nudelman

    - File /usr/share/locale/fi/charset gives charset name utf-8 on
    Linux Mandrake 7.2. This causes that Configure generates
    mapping
    fi utf-8
    to elm.mimecharsets. However that seems to have
    incorrect mapping. You may want change this to
    fi ISO-8859-1

    ( however nl_langinfo(CODESET) gives charset ISO-8859-15
    but look following entry. )

    - Locale 'fi' seems to have charset ISO-8859-15 according
    of nl_langinfo(CODESET) on Mandrake Linux 7.2 (and probaly
    others with same glibc version). However for example gnome
    terminal uses font
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-1
    and not
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-15

    Also KDE's konsole program seems use iso8859-1 character set
    although locale is 'fi' which should have ISO-8859-15 according
    of nl_langinfo (selecting "unicode" from menu seems fix that.)

    Because of mismatch more correct locale is fi_FI.88591, which gives
    ISO-8859-1 character set according of nl_langinfo(CODESET).

    ( Locale seems come from /etc/sysconfig/i18n or $HOME/.i18n )

    > To enable handling of ISO-8859-1 and ISO-8859-15 character sets
    on linux console, read comments from doc/terminal.info file.

    - Mandrake Linux 7.2 seems set LD_PRELOAD to load
    /usr/lib/libxalflaunch.so.0. That (xalf-0.4-2mdk) causes that
    elm to crash on startup (actually before main() is reached.)

    - kterm on Mandrake Linux 7.2 seems have (at least on my test
    environment) seems get bad fontlist (*VT100*fontList) which
    gives bad font for iso8859-1 -- therefore ISO-8859-1 characters
    do not work.

    ("xrdb -query" seems report resource with name "*fontList"
    -- that probably overrides "*VT100*fontList" which comes
    from /usr/lib/X11/app-defaults/KTerm )

    - Also note that initially kterm does NOT default to
    ISO-8859-1 -- therefore ISO-8859-1 works only when
    elm explicity switch to ISO-8859-1 (for example
    with 'elm -D ISO-8859-1')

    - When assembling message/partial MIME (RFC 2046)
    requires that all headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are copied from
    initial enclosing message to assembled message. It also
    requires that headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are ignored and
    dropped from enclosed message.

    For now we copy only Received: -headers. Dropping extra
    headers from enclosed message makes assembly more
    complicated (and dropping of Received: -headers
    from enclosed message do not make sense.)

    - mailer=sendmail; verify=yes works only when sendmail
    is installed as setuid root. Use mailer=submission instead.
    * Starting from sendmail 8.12 sendmail is normally
    installed as setgid smmsp and not as setuid root.
    - However error message is printed only if
    verify-local-address=yes is also set

    - IMAP connection is stalled some times. Reason is unknown.

    - From name option (-f) on fastmail is currently broken.

    Collector of these patches
    --------------------------

    Kari Hurtta <elm@elmme-mailer.org>
    Kari Hurtta <hurtta+elm@siilo.FMI.FI>

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Kari Hurtta@21:1/5 to All on Tue Dec 14 09:26:49 2021
    [ Because Usenet news (nntp) server news.kolumbus.fi is closed
    since 2021-05-04 I post this announcement only (not sources)
    via Google Groups instead. ]

    Elm ME+ 2.5 PLalpha57

    - Is available with
    <URL: http://www.elmme-mailer.org/elm-ME+2.5/src/elm-ME+2.5.alpha57.6ba5fc25501963df7e65c7a377739dd4.tar.gz >
    and <URL: http://www.elmme-mailer.org/elm-ME+2.5/src/elm-ME+2.5.PLalpha57.patch.gz >
    via http.

    - Is available with
    <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.alpha57.6ba5fc25501963df7e65c7a377739dd4.tar.gz >
    and <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.PLalpha57.patch.gz >
    via https.

    - Is available on ftp.funet.fi
    via anonymous ftp
    directory pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/
    files elm-ME+2.5.alpha57.6ba5fc25501963df7e65c7a377739dd4.tar.gz
    and elm-ME+2.5.PLalpha57.patch.gz


    or is available with
    <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.alpha57.6ba5fc25501963df7e65c7a377739dd4.tar.gz >
    and <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha57.patch.gz >
    with browser

    or is available with
    <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.alpha57.6ba5fc25501963df7e65c7a377739dd4.tar.gz >
    and <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha57.patch.gz >
    via https.

    Is NOT available on alt.sources, comp.mail.elm because Usenet news (nntp) server news.kolumbus.fi (*) is closed since 2021-05-04.

    (*) That is apparently also uutiset.elisa.fi and news.saunalahti.fi.
    See: https://elisa.fi/asiakastiedotteet/tiedote/?id=63663313593635

    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.


    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.


    Warnings
    --------

    - Not compiled with MMDF support defined, so probably it doesn't
    work (or even compile).

    - This has not been tested much so there can be bad bugs.

    Bug reports to: Kari E. Hurtta <elm@elmme-mailer.org>
    (was hurtta+elm@posti.FMI.FI)

    - Internationalized (ie. non-ASCII) domain names are not supported.

    - Support for multipart/signed and multipart/encrypted (specially:
    support for PGP/MIME) only in reading side. There is no support
    for attachments with multipart/encrypted.

    - HP's shoftkeys are no longer supported

    - DECNET addresses like host::user may be interpreted as phrase
    of group syntax or as route of source routed address.

    - Header editing screen now uses addresses in form phrase <address>,
    but because it does not require using of comma (,), multiword
    phrases must be entered in quotes.

    For example: "Kari Hurtta" <hurtta>

    - If address includes <> or comments (), they are not aliased
    expanded. So aliases must be entered as bare words.

    - Addresses given as arguments to elm command should be given
    as one address per argument. Giving of sevaral addresses per
    one argument causes that address is misparsed if header is
    edited on header editing screen.

    That is:

    Use: elm '"Kari Hurtta" <hurtta>' 'Admin <root>'

    Don't use: elm 'Kari Hurtta <hurtta>, Admin <root>'

    - p)rint command acts as P)rint text -command. So it
    is currently quite useless.
    p)rint command does that via readmsg -command. However
    P)rint text does actually same (without readmsg).

    - Some Linux libraries does not follow $LC_CTYPE when program is
    setgid. Net result is that your locale is always C. That is
    visible that $LC_CTYPE does not effect to locale printed by
    'elm -vvvvv':

    Locale (LC_CTYPE): C
    Display character-set: US-ASCII
    Sending character-set: US-ASCII

    - All refrences iso2022 maps are parsed and read to memory.
    This may cause quite big memory consumption specially because
    eastern (multibyte) sets tend to be lot of characters. That
    mapping information should be shared between processes to
    reduce memory consuption.

    - If display charset is produced by using mapping from locale
    to charset where charset definition is later invalidated
    ("removed") by setting explicit compatcharsets on user's
    .elm/elmrc, that may cause PANIC on elm's internal pager
    or other problems. Invalidation happens if display charset
    is on implicit compatcharsets list (because of charset
    definition), but does not have explicit compatcharsets list
    given by user.

    - Neither Unicode didirectional algorithm nor Right-Left scripts
    are supported.

    - In some situations two Status headers may be generated two
    Status headers -- one by IMAP deamon and one from APPENDed
    message.

    - When APPENDing message to IMAP folder (which is normal UNIX
    mailbox format) original "From " separator line can not be
    preserved -- specially it is not possible to pass envelope
    sender address.

    - For UTF-8 charset Elm only knows printable characters from
    Latin/1 range, if unicode database (see elmrc option "unidata")
    is not loaded.

    - For using of ISO2022 character sets it is required that mapping
    them to unicode is know -- otherwise Elm ME+ does not know which
    characters are printable.

    - UTF-16 surrogate pairs (D800-DFFF) are not supported on UTF-7
    charset.

    - Mixing of names using IMAP naming convention
    (imap-naming-convention = yes)
    and names using imap-charset does not work very well...

    - " Regarding my message (8 Aug 2000) regarding 'newmail' on
    AIX 4.3.3 in an 'aixterm' window and the 'aixterm' did not
    close, indeed the problem was NOT related to 'newmail' but an
    AIX bug.

    IBM has release a patch, and the 'aixterm' in AIX 4.3.3 must
    be update with fileset X11.apps.aixterm.4.3.3.26 (PTF
    U473920) is solved to problem."
    From: Noam G. Nudelman

    - File /usr/share/locale/fi/charset gives charset name utf-8 on
    Linux Mandrake 7.2. This causes that Configure generates
    mapping
    fi utf-8
    to elm.mimecharsets. However that seems to have
    incorrect mapping. You may want change this to
    fi ISO-8859-1

    ( however nl_langinfo(CODESET) gives charset ISO-8859-15
    but look following entry. )

    - Locale 'fi' seems to have charset ISO-8859-15 according
    of nl_langinfo(CODESET) on Mandrake Linux 7.2 (and probaly
    others with same glibc version). However for example gnome
    terminal uses font
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-1
    and not
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-15

    Also KDE's konsole program seems use iso8859-1 character set
    although locale is 'fi' which should have ISO-8859-15 according
    of nl_langinfo (selecting "unicode" from menu seems fix that.)

    Because of mismatch more correct locale is fi_FI.88591, which gives
    ISO-8859-1 character set according of nl_langinfo(CODESET).

    ( Locale seems come from /etc/sysconfig/i18n or $HOME/.i18n )

    > To enable handling of ISO-8859-1 and ISO-8859-15 character sets
    on linux console, read comments from doc/terminal.info file.

    - Mandrake Linux 7.2 seems set LD_PRELOAD to load
    /usr/lib/libxalflaunch.so.0. That (xalf-0.4-2mdk) causes that
    elm to crash on startup (actually before main() is reached.)

    - kterm on Mandrake Linux 7.2 seems have (at least on my test
    environment) seems get bad fontlist (*VT100*fontList) which
    gives bad font for iso8859-1 -- therefore ISO-8859-1 characters
    do not work.

    ("xrdb -query" seems report resource with name "*fontList"
    -- that probably overrides "*VT100*fontList" which comes
    from /usr/lib/X11/app-defaults/KTerm )

    - Also note that initially kterm does NOT default to
    ISO-8859-1 -- therefore ISO-8859-1 works only when
    elm explicity switch to ISO-8859-1 (for example
    with 'elm -D ISO-8859-1')

    - When assembling message/partial MIME (RFC 2046)
    requires that all headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are copied from
    initial enclosing message to assembled message. It also
    requires that headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are ignored and
    dropped from enclosed message.

    For now we copy only Received: -headers. Dropping extra
    headers from enclosed message makes assembly more
    complicated (and dropping of Received: -headers
    from enclosed message do not make sense.)

    - mailer=sendmail; verify=yes works only when sendmail
    is installed as setuid root. Use mailer=submission instead.
    * Starting from sendmail 8.12 sendmail is normally
    installed as setgid smmsp and not as setuid root.
    - However error message is printed only if
    verify-local-address=yes is also set

    - IMAP connection is stalled some times. Reason is unknown.

    - From name option (-f) on fastmail is currently broken.

    Collector of these patches
    --------------------------

    Kari Hurtta <elm@elmme-mailer.org>
    Kari Hurtta <hurtta+elm@siilo.FMI.FI>


    diffstat:

    README.ME+ | 39 +++!!
    hdrs/patchlevel.h | 10 !
    hdrs/s_elm.h | 2
    lib/addr/outdate.c | 8 !
    lib/addr/outexpires.c | 8 !
    lib/mbox/common_local.c | 10 !
    lib/mbox/localmbx.c | 360 ++++++++++++++++++++++++++++++++++++++++++!!!!!!
    lib/mbox/pop.c | 31 +!!!
    lib/mbox/realfrom.c | 39 ---!!
    lib/misc/mime_types.c | 28 !!!
    nls/C/C/C/s_elm.m | 5
    src/elm.c | 26 !!!
    src/fileio.c | 45 !!!!
    src/messages/mailfile.c | 5
    14 files changed, 377 insertions(+), 26 deletions(-), 213 modifications(!)

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Kari Hurtta@21:1/5 to All on Thu Dec 16 08:32:54 2021
    Experimental RPM spec file for ELM ME+ 2.5 PLalpha57
    exists on <URL: http://www.elmme-mailer.org/rpm/elm-ME+2.5.html >
    directory.

    Files are following

    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha57-1.spec
    RPM spec file
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha57-1.spec.elm-key-2018.sig
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha57-1.spec.sig
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha57-1.mdk7.2.src.rpm
    Source rpm
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha57-1.mdk7.2.src.rpm.sig

    Only binary packages for old Mandrake release 7.2 are available (Linux
    2.2, glibc 2.1, Sendmail 8.13).

    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha57-1.mdk7.2.i686.rpm
    Package elm binary RPM build on Linux Mandrake release 7.2
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha57-1.mdk7.2.i686.rpm.sig
    - http://www.elmme-mailer.org/rpm/elm-mod-ME+2.5.alpha57-1.mdk7.2.i686.rpm
    Package elm-mod binary RPM build on Linux Mandrake release 7.2
    - http://www.elmme-mailer.org/rpm/elm-mod-ME+2.5.alpha57-1.mdk7.2.i686.rpm.sig
    - http://www.elmme-mailer.org/rpm/elm-tls-ME+2.5.alpha57-1.mdk7.2.i686.rpm
    Package elm-tls binary RPM build on Linux Mandrake release 7.2
    - http://www.elmme-mailer.org/rpm/elm-tls-ME+2.5.alpha57-1.mdk7.2.i686.rpm.sig



    Source and binary packages are signed internally with GPG key
    elm.key.2018.asc (44FC796B 2018-12-01).

    This is is compiled agaist Sendmail 8.13 (not from Mandrake
    distribution).

    elm-tls package do not load/work on Mandrake 7.2, because openssl
    library misses ASN1_STRING_to_UTF8 function.

    * Signatures

    {file}.sig PGP signature (old key pubkey.asc, EA5A2379 1996-04-23)
    {file}.elm-key-2018.sig GPG signature (key elm.key.2018.asc, 44FC796B 2018-12-01, expires: 2028-11-28)

    * Configuration

    Following files (if exists) are rewritten by elmconfwriter on
    installation:

    - /usr/local/lib/elm.rc
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.hashmarks

    Spec file compiles elm for binary distribution, so you must edit
    /usr/local/lib/elm.rc before using Elm ME+ 2.5. Following variables may
    need to be modified on elm.rc:

    - mailer
    - hostdomain (this is usually needed)
    - hostfullname
    - hostname (usually this is not needed)
    - mailname (default values is generated from other values)
    name-resolution (controls default values of hostdomain,
    hostfullname, hostname, mailname)


    For re-generation of following file, old information (if exists) is
    used:

    - /usr/local/lib/elm.rc

    WARNING: Check after installation that libraries are enabled. Global
    elm.rc values are:

    use-library =
    use-base-library = iconv
    use-config-library = resolv
    use-connect-library = tls resolv
    use-mailer-library = smtp resolv

    Note that libelmme-resolv.so does not compile on all distributions. In
    that case omit resolv from elm.rc.

    After editing global elm.rc run /usr/local/lib/elmrc-write -GI for
    fixing possible errors.

    On installation following existing files are merged with new values:

    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.hashmarks

    Old values from /usr/local/lib/aliases.text are converted to /usr/local/lib/elm.aliases and /usr/local/lib/aliases.text is renamed to /usr/local/lib/aliases.text.OLD.

    On installation new values without merging are written to following
    files:

    - /usr/local/lib/elm.aliases.NEW
    - /usr/local/lib/elm.mailinglists.NEW
    - /usr/local/lib/elm.mailservices.NEW
    - /usr/local/lib/elm.mimecharsets.NEW
    - /usr/local/lib/elm.mimetypes.NEW
    - /usr/local/lib/elm.terminalinfo.NEW
    - /usr/local/lib/elm.iso2022sets.NEW
    - /usr/local/lib/elm.hashmarks.NEW

    Package elm-mod includes libelmme-iconv.so and libelmme-smtp.so. (If
    package elm-mod includes libelmme-resolv.so, this is noted). And package elm-tls includes libelmme-tls.so.

    Installation loses mailer = submission setting from global /usr/local/lib/elm.rc, because when elm package rewrites elm.rc,
    submission mailer is not available. It becomes from elm-mod package.

    However failed values of /usr/local/lib/elm.rc are saved to /usr/local/lib/elm.rc.old-values file during installation.

    Global setting mailer = submission is restored from /usr/local/lib/elm.rc.old-values file, when package elm-mod is
    installed.

    Also following directories are used:

    - /usr/local/lib/elm.map.txt/ (global setting map-text-dir =
    {lib}/elm.map.txt)
    - /usr/local/lib/elm.map.bin/ (global setting map-bin-dir =
    {lib}/elm.map.bin)
    - /usr/local/lib/elm.user.map/ (global setting user-map-dir =
    {lib}/elm.user.map)

    Hashmark EXAMPLE uses file /usr/local/lib/elm.user.map/elm.usermap.

    SUMMARY: 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.

    Elm ME+ 2.5 PLalpha57 changelog

    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.

    Warnings
    --------

    - Not compiled with MMDF support defined, so probably it doesn't
    work (or even compile).

    - This has not been tested much so there can be bad bugs.

    Bug reports to: Kari E. Hurtta <elm@elmme-mailer.org>
    (was hurtta+elm@posti.FMI.FI)

    - Internationalized (ie. non-ASCII) domain names are not supported.

    - Support for multipart/signed and multipart/encrypted (specially:
    support for PGP/MIME) only in reading side. There is no support
    for attachments with multipart/encrypted.

    - HP's shoftkeys are no longer supported

    - DECNET addresses like host::user may be interpreted as phrase
    of group syntax or as route of source routed address.

    - Header editing screen now uses addresses in form phrase <address>,
    but because it does not require using of comma (,), multiword
    phrases must be entered in quotes.

    For example: "Kari Hurtta" <hurtta>

    - If address includes <> or comments (), they are not aliased
    expanded. So aliases must be entered as bare words.

    - Addresses given as arguments to elm command should be given
    as one address per argument. Giving of sevaral addresses per
    one argument causes that address is misparsed if header is
    edited on header editing screen.

    That is:

    Use: elm '"Kari Hurtta" <hurtta>' 'Admin <root>'

    Don't use: elm 'Kari Hurtta <hurtta>, Admin <root>'

    - p)rint command acts as P)rint text -command. So it
    is currently quite useless.
    p)rint command does that via readmsg -command. However
    P)rint text does actually same (without readmsg).

    - Some Linux libraries does not follow $LC_CTYPE when program is
    setgid. Net result is that your locale is always C. That is
    visible that $LC_CTYPE does not effect to locale printed by
    'elm -vvvvv':

    Locale (LC_CTYPE): C
    Display character-set: US-ASCII
    Sending character-set: US-ASCII

    - All refrences iso2022 maps are parsed and read to memory.
    This may cause quite big memory consumption specially because
    eastern (multibyte) sets tend to be lot of characters. That
    mapping information should be shared between processes to
    reduce memory consuption.

    - If display charset is produced by using mapping from locale
    to charset where charset definition is later invalidated
    ("removed") by setting explicit compatcharsets on user's
    .elm/elmrc, that may cause PANIC on elm's internal pager
    or other problems. Invalidation happens if display charset
    is on implicit compatcharsets list (because of charset
    definition), but does not have explicit compatcharsets list
    given by user.

    - Neither Unicode didirectional algorithm nor Right-Left scripts
    are supported.

    - In some situations two Status headers may be generated two
    Status headers -- one by IMAP deamon and one from APPENDed
    message.

    - When APPENDing message to IMAP folder (which is normal UNIX
    mailbox format) original "From " separator line can not be
    preserved -- specially it is not possible to pass envelope
    sender address.

    - For UTF-8 charset Elm only knows printable characters from
    Latin/1 range, if unicode database (see elmrc option "unidata")
    is not loaded.

    - For using of ISO2022 character sets it is required that mapping
    them to unicode is know -- otherwise Elm ME+ does not know which
    characters are printable.

    - UTF-16 surrogate pairs (D800-DFFF) are not supported on UTF-7
    charset.

    - Mixing of names using IMAP naming convention
    (imap-naming-convention = yes)
    and names using imap-charset does not work very well...

    - " Regarding my message (8 Aug 2000) regarding 'newmail' on
    AIX 4.3.3 in an 'aixterm' window and the 'aixterm' did not
    close, indeed the problem was NOT related to 'newmail' but an
    AIX bug.

    IBM has release a patch, and the 'aixterm' in AIX 4.3.3 must
    be update with fileset X11.apps.aixterm.4.3.3.26 (PTF
    U473920) is solved to problem."
    From: Noam G. Nudelman

    - File /usr/share/locale/fi/charset gives charset name utf-8 on
    Linux Mandrake 7.2. This causes that Configure generates
    mapping
    fi utf-8
    to elm.mimecharsets. However that seems to have
    incorrect mapping. You may want change this to
    fi ISO-8859-1

    ( however nl_langinfo(CODESET) gives charset ISO-8859-15
    but look following entry. )

    - Locale 'fi' seems to have charset ISO-8859-15 according
    of nl_langinfo(CODESET) on Mandrake Linux 7.2 (and probaly
    others with same glibc version). However for example gnome
    terminal uses font
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-1
    and not
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-15

    Also KDE's konsole program seems use iso8859-1 character set
    although locale is 'fi' which should have ISO-8859-15 according
    of nl_langinfo (selecting "unicode" from menu seems fix that.)

    Because of mismatch more correct locale is fi_FI.88591, which gives
    ISO-8859-1 character set according of nl_langinfo(CODESET).

    ( Locale seems come from /etc/sysconfig/i18n or $HOME/.i18n )

    > To enable handling of ISO-8859-1 and ISO-8859-15 character sets
    on linux console, read comments from doc/terminal.info file.

    - Mandrake Linux 7.2 seems set LD_PRELOAD to load
    /usr/lib/libxalflaunch.so.0. That (xalf-0.4-2mdk) causes that
    elm to crash on startup (actually before main() is reached.)

    - kterm on Mandrake Linux 7.2 seems have (at least on my test
    environment) seems get bad fontlist (*VT100*fontList) which
    gives bad font for iso8859-1 -- therefore ISO-8859-1 characters
    do not work.

    ("xrdb -query" seems report resource with name "*fontList"
    -- that probably overrides "*VT100*fontList" which comes
    from /usr/lib/X11/app-defaults/KTerm )

    - Also note that initially kterm does NOT default to
    ISO-8859-1 -- therefore ISO-8859-1 works only when
    elm explicity switch to ISO-8859-1 (for example
    with 'elm -D ISO-8859-1')

    - When assembling message/partial MIME (RFC 2046)
    requires that all headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are copied from
    initial enclosing message to assembled message. It also
    requires that headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are ignored and
    dropped from enclosed message.

    For now we copy only Received: -headers. Dropping extra
    headers from enclosed message makes assembly more
    complicated (and dropping of Received: -headers
    from enclosed message do not make sense.)

    - mailer=sendmail; verify=yes works only when sendmail
    is installed as setuid root. Use mailer=submission instead.
    * Starting from sendmail 8.12 sendmail is normally
    installed as setgid smmsp and not as setuid root.
    - However error message is printed only if
    verify-local-address=yes is also set

    - IMAP connection is stalled some times. Reason is unknown.

    - From name option (-f) on fastmail is currently broken.

    Collector of these patches
    --------------------------

    Kari Hurtta <elm@elmme-mailer.org>
    Kari Hurtta <hurtta+elm@siilo.FMI.FI>

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Kari Hurtta@21:1/5 to Kari Hurtta on Mon Dec 20 03:51:06 2021
    On Thursday, December 16, 2021 at 6:32:55 PM UTC+2, Kari Hurtta wrote:
    Experimental RPM spec file for ELM ME+ 2.5 PLalpha57
    exists on <URL: http://www.elmme-mailer.org/rpm/elm-ME+2.5.html >
    directory.


    SUMMARY: 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.

    Correct summary is here:

    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.

    / Kari Hurtta

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Kari Hurtta@21:1/5 to All on Mon Dec 20 05:06:27 2021
    Experimental DEB generator script for Elm ME+ 2.5 PLalpha57 exists on
    <URL: http://www.elmme-mailer.org/deb/elm-ME+2.5.html > directory.

    Files are following

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha57-1.gen_deb
    DEB generator script
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha57-1.gen_deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha57-1.gen_deb.sig


    A command

    elm-ME+2.5.alpha57-1.gen_deb {packager}

    generates package elmme with version 1.1.57-1.{distribution}.

    A command

    elm-ME+2.5.alpha57-1.gen_deb --nonew {packager}

    generates package elm with version ME+2.5.alpha57-1.{distribution}.

    Both commands produce package with filename elm-ME+2.5.alpha56-1.{distribution}.{arch}.deb.

    Module libelmme-resolv.so is included for all distributions.

    == Old package names, i386

    Package elm with version ME+2.5.alpha57-1.{distribution} and
    architecture i386.

    * Compiled on Ubuntu 6.06.2 LTS
    (Linux 2.6, glibc 2.3, Sendmail 8.13)

    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha57-1.Ubuntu6.06.i386.deb
    Package elm binary DEB build on Ubuntu 6.06.2 LTS
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha57-1.Ubuntu6.06.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha57-1.Ubuntu6.06.i386.deb.sig

    * Compiled on Ubuntu 10.04.4 LTS
    (Linux 2.6, glibc 2.11, Sendmail 8.14)

    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha57-1.Ubuntu10.04.i386.deb
    Package elm binary DEB build on Ubuntu 10.04.4 LTS
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha57-1.Ubuntu10.04.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha57-1.Ubuntu10.04.i386.deb.sig

    == New package names, i386

    Package elmme with version 1.1.57-1.{distribution} and architecture
    i386.

    * Compiled on Ubuntu 10.04.4 LTS
    (Linux 2.6, glibc 2.11, Sendmail 8.14)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha57-1.Ubuntu10.04.i386.deb
    Package elmme binary DEB build on Ubuntu 10.04.4 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha57-1.Ubuntu10.04.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha57-1.Ubuntu10.04.i386.deb.sig

    * Compiled on Ubuntu 14.04.6 LTS
    (Linux 4.4, glibc 2.19, no MTA)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha57-1.Ubuntu14.04.i386.deb
    Package elmme binary DEB build on Ubuntu 14.04.6 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha57-1.Ubuntu14.04.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha57-1.Ubuntu14.04.i386.deb.sig

    == New package names, amd64 (x86_64)

    Package elmme with version 1.1.57-1.{distribution} and architecture
    amd64 (also known as x86_64).

    * Compiled on Ubuntu 16.04.7 LTS
    (Linux 4.4, glibc 2.23, Sendmail 8.15)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha57-1.Ubuntu16.04.amd64.deb
    Package elmme binary DEB build on Ubuntu 16.04.7 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha57-1.Ubuntu16.04.amd64.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha57-1.Ubuntu16.04.amd64.deb.sig

    * Compiled on Ubuntu 18.04.6 LTS
    (Linux 5.4, glibc 2.27, Postfix 3.3 (not configured))

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha57-1.Ubuntu18.04.amd64.deb
    Package elmme binary DEB build on Ubuntu 18.04.6 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha57-1.Ubuntu18.04.amd64.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha57-1.Ubuntu18.04.amd64.deb.sig

    == Signatures

    {file}.sig PGP signature (old key pubkey.asc, EA5A2379 1996-04-23)
    {file}.elm-key-2018.sig GPG signature (key elm.key.2018.asc, 44FC796B 2018-12-01, expires: 2028-11-28)

    == Configuration

    Following files (if exists) are rewritten by elmconfwriter on
    installation:

    - /usr/local/lib/elm.rc
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.hashmarks

    Deb generator script compiles elm for binary distribution, so you must
    edit /usr/local/lib/elm.rc before using Elm ME+ 2.5. Following variables
    may need to be modified on elm.rc:

    - mailer
    - hostdomain (this is usually needed)
    - hostfullname
    - hostname (usually this is not needed)
    - mailname (default values is generated from other values)
    - name-resolution (controls default values of hostdomain, hostfullname, hostname, mailname)

    By default first value for mailname is read from /etc/mailname file.

    For re-generation of following file, old information (if exists) is
    used:

    - /usr/local/lib/elm.rc

    WARNING: Check after installation that libraries are enabled. Global
    elm.rc values are:

    use-library =
    use-base-library = iconv
    use-config-library = resolv
    use-connect-library = tls resolv
    use-mailer-library = smtp resolv

    After editing global elm.rc run /usr/local/lib/elmrc-write -GI for fixing possible errors.

    On installation following existing files are merged with new values:

    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.hashmarks

    Old values from /usr/local/lib/aliases.text are converted to /usr/local/lib/elm.aliases and /usr/local/lib/aliases.text is renamed to /usr/local/lib/aliases.text.OLD.

    On installation new values without merging are written to following
    files:

    - /usr/local/lib/elm.aliases.NEW
    - /usr/local/lib/elm.mailinglists.NEW
    - /usr/local/lib/elm.mailservices.NEW
    - /usr/local/lib/elm.mimecharsets.NEW
    - /usr/local/lib/elm.mimetypes.NEW
    - /usr/local/lib/elm.terminalinfo.NEW
    - /usr/local/lib/elm.iso2022sets.NEW
    - /usr/local/lib/elm.hashmarks.NEW

    Also following directories are used:

    - /usr/local/lib/elm.map.txt/ (global setting map-text-dir = {lib}/elm.map.txt)
    - /usr/local/lib/elm.map.bin/ (global setting map-bin-dir = {lib}/elm.map.bin)
    - /usr/local/lib/elm.user.map/ (global setting user-map-dir = {lib}/elm.user.map)

    Hashmark EXAMPLE uses file /usr/local/lib/elm.user.map/elm.usermap.

    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.

    Elm ME+ 2.5 PLalpha57 changelog

    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.

    Warnings
    --------

    - Not compiled with MMDF support defined, so probably it doesn't
    work (or even compile).

    - This has not been tested much so there can be bad bugs.

    Bug reports to: Kari E. Hurtta <elm@elmme-mailer.org>
    (was hurtta+elm@posti.FMI.FI)

    - Internationalized (ie. non-ASCII) domain names are not supported.

    - Support for multipart/signed and multipart/encrypted (specially:
    support for PGP/MIME) only in reading side. There is no support
    for attachments with multipart/encrypted.

    - HP's shoftkeys are no longer supported

    - DECNET addresses like host::user may be interpreted as phrase
    of group syntax or as route of source routed address.

    - Header editing screen now uses addresses in form phrase <address>,
    but because it does not require using of comma (,), multiword
    phrases must be entered in quotes.

    For example: "Kari Hurtta" <hurtta>

    - If address includes <> or comments (), they are not aliased
    expanded. So aliases must be entered as bare words.

    - Addresses given as arguments to elm command should be given
    as one address per argument. Giving of sevaral addresses per
    one argument causes that address is misparsed if header is
    edited on header editing screen.

    That is:

    Use: elm '"Kari Hurtta" <hurtta>' 'Admin <root>'

    Don't use: elm 'Kari Hurtta <hurtta>, Admin <root>'

    - p)rint command acts as P)rint text -command. So it
    is currently quite useless.
    p)rint command does that via readmsg -command. However
    P)rint text does actually same (without readmsg).

    - Some Linux libraries does not follow $LC_CTYPE when program is
    setgid. Net result is that your locale is always C. That is
    visible that $LC_CTYPE does not effect to locale printed by
    'elm -vvvvv':

    Locale (LC_CTYPE): C
    Display character-set: US-ASCII
    Sending character-set: US-ASCII

    - All refrences iso2022 maps are parsed and read to memory.
    This may cause quite big memory consumption specially because
    eastern (multibyte) sets tend to be lot of characters. That
    mapping information should be shared between processes to
    reduce memory consuption.

    - If display charset is produced by using mapping from locale
    to charset where charset definition is later invalidated
    ("removed") by setting explicit compatcharsets on user's
    .elm/elmrc, that may cause PANIC on elm's internal pager
    or other problems. Invalidation happens if display charset
    is on implicit compatcharsets list (because of charset
    definition), but does not have explicit compatcharsets list
    given by user.

    - Neither Unicode didirectional algorithm nor Right-Left scripts
    are supported.

    - In some situations two Status headers may be generated two
    Status headers -- one by IMAP deamon and one from APPENDed
    message.

    - When APPENDing message to IMAP folder (which is normal UNIX
    mailbox format) original "From " separator line can not be
    preserved -- specially it is not possible to pass envelope
    sender address.

    - For UTF-8 charset Elm only knows printable characters from
    Latin/1 range, if unicode database (see elmrc option "unidata")
    is not loaded.

    - For using of ISO2022 character sets it is required that mapping
    them to unicode is know -- otherwise Elm ME+ does not know which
    characters are printable.

    - UTF-16 surrogate pairs (D800-DFFF) are not supported on UTF-7
    charset.

    - Mixing of names using IMAP naming convention
    (imap-naming-convention = yes)
    and names using imap-charset does not work very well...

    - " Regarding my message (8 Aug 2000) regarding 'newmail' on
    AIX 4.3.3 in an 'aixterm' window and the 'aixterm' did not
    close, indeed the problem was NOT related to 'newmail' but an
    AIX bug.

    IBM has release a patch, and the 'aixterm' in AIX 4.3.3 must
    be update with fileset X11.apps.aixterm.4.3.3.26 (PTF
    U473920) is solved to problem."
    From: Noam G. Nudelman

    - File /usr/share/locale/fi/charset gives charset name utf-8 on
    Linux Mandrake 7.2. This causes that Configure generates
    mapping
    fi utf-8
    to elm.mimecharsets. However that seems to have
    incorrect mapping. You may want change this to
    fi ISO-8859-1

    ( however nl_langinfo(CODESET) gives charset ISO-8859-15
    but look following entry. )

    - Locale 'fi' seems to have charset ISO-8859-15 according
    of nl_langinfo(CODESET) on Mandrake Linux 7.2 (and probaly
    others with same glibc version). However for example gnome
    terminal uses font
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-1
    and not
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-15

    Also KDE's konsole program seems use iso8859-1 character set
    although locale is 'fi' which should have ISO-8859-15 according
    of nl_langinfo (selecting "unicode" from menu seems fix that.)

    Because of mismatch more correct locale is fi_FI.88591, which gives
    ISO-8859-1 character set according of nl_langinfo(CODESET).

    ( Locale seems come from /etc/sysconfig/i18n or $HOME/.i18n )

    > To enable handling of ISO-8859-1 and ISO-8859-15 character sets
    on linux console, read comments from doc/terminal.info file.

    - Mandrake Linux 7.2 seems set LD_PRELOAD to load
    /usr/lib/libxalflaunch.so.0. That (xalf-0.4-2mdk) causes that
    elm to crash on startup (actually before main() is reached.)

    - kterm on Mandrake Linux 7.2 seems have (at least on my test
    environment) seems get bad fontlist (*VT100*fontList) which
    gives bad font for iso8859-1 -- therefore ISO-8859-1 characters
    do not work.

    ("xrdb -query" seems report resource with name "*fontList"
    -- that probably overrides "*VT100*fontList" which comes
    from /usr/lib/X11/app-defaults/KTerm )

    - Also note that initially kterm does NOT default to
    ISO-8859-1 -- therefore ISO-8859-1 works only when
    elm explicity switch to ISO-8859-1 (for example
    with 'elm -D ISO-8859-1')

    - When assembling message/partial MIME (RFC 2046)
    requires that all headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are copied from
    initial enclosing message to assembled message. It also
    requires that headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are ignored and
    dropped from enclosed message.

    For now we copy only Received: -headers. Dropping extra
    headers from enclosed message makes assembly more
    complicated (and dropping of Received: -headers
    from enclosed message do not make sense.)

    - mailer=sendmail; verify=yes works only when sendmail
    is installed as setuid root. Use mailer=submission instead.
    * Starting from sendmail 8.12 sendmail is normally
    installed as setgid smmsp and not as setuid root.
    - However error message is printed only if
    verify-local-address=yes is also set

    - IMAP connection is stalled some times. Reason is unknown.

    - From name option (-f) on fastmail is currently broken.

    Collector of these patches
    --------------------------

    Kari Hurtta <elm@elmme-mailer.org>
    Kari Hurtta <hurtta+elm@siilo.FMI.FI>

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Kari Hurtta@21:1/5 to All on Wed Jun 8 10:32:08 2022
    [ Because Usenet news (nntp) server news.kolumbus.fi is closed
    since 2021-05-04 I post this announcement only (not sources)
    via Google Groups instead. ]

    Elm ME+ 2.5 PLalpha58

    - Is available with
    <URL: http://www.elmme-mailer.org/elm-ME+2.5.alpha58.d673f00174ac6732724904eecbd5cb4e.tar.gz >
    and <URL: http://www.elmme-mailer.org/elm-ME+2.5.PLalpha58.patch.gz >
    via http.
    Signatures are
    <URL: http://www.elmme-mailer.org/elm-ME+2.5.alpha58.d673f00174ac6732724904eecbd5cb4e.tar.gz.elm-key-2018.sig >
    <URL: http://www.elmme-mailer.org/elm-ME+2.5.alpha58.d673f00174ac6732724904eecbd5cb4e.tar.gz.sig >
    and <URL: http://www.elmme-mailer.org/elm-ME+2.5.PLalpha58.patch.gz.elm-key-2018.sig >
    <URL: http://www.elmme-mailer.org/elm-ME+2.5.PLalpha58.patch.gz.sig >

    - Is available with
    <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.alpha58.d673f00174ac6732724904eecbd5cb4e.tar.gz >
    and <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.PLalpha58.patch.gz >
    via https.
    Signatures are
    <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.alpha58.d673f00174ac6732724904eecbd5cb4e.tar.gz.elm-key-2018.sig >
    <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.alpha58.d673f00174ac6732724904eecbd5cb4e.tar.gz.sig >
    and <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.PLalpha58.patch.gz.elm-key-2018.sig >
    <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.PLalpha58.patch.gz.sig >

    - Is available on ftp.funet.fi
    directory pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/
    files elm-ME+2.5.alpha58.d673f00174ac6732724904eecbd5cb4e.tar.gz
    and elm-ME+2.5.PLalpha58.patch.gz
    via anonymous ftp.
    Signatures are elm-ME+2.5.alpha58.d673f00174ac6732724904eecbd5cb4e.tar.gz.elm-key-2018.sig
    elm-ME+2.5.alpha58.d673f00174ac6732724904eecbd5cb4e.tar.gz.sig
    and elm-ME+2.5.PLalpha58.patch.gz.elm-key-2018.sig
    elm-ME+2.5.PLalpha58.patch.gz.sig

    Or is available with
    <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.alpha58.d673f00174ac6732724904eecbd5cb4e.tar.gz >
    and <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha58.patch.gz >
    with browser.
    Signatures are
    <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.alpha58.d673f00174ac6732724904eecbd5cb4e.tar.gz.elm-key-2018.sig >
    <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.alpha58.d673f00174ac6732724904eecbd5cb4e.tar.gz.sig >
    and <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha58.patch.gz.elm-key-2018.sig >
    <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha58.patch.gz.sig >

    Or is available with
    <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.alpha58.d673f00174ac6732724904eecbd5cb4e.tar.gz >
    and <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha58.patch.gz >
    via https.
    Signatures are
    <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.alpha58.d673f00174ac6732724904eecbd5cb4e.tar.gz.elm-key-2018.sig >
    <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.alpha58.d673f00174ac6732724904eecbd5cb4e.tar.gz.sig >
    and <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha58.patch.gz.elm-key-2018.sig >
    <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha58.patch.gz.sig >

    Is NOT available on alt.sources, comp.mail.elm because Usenet news (nntp) server news.kolumbus.fi (*) is closed since 2021-05-04.

    (*) That is apparently also uutiset.elisa.fi and news.saunalahti.fi.
    See: https://elisa.fi/asiakastiedotteet/tiedote/?id=63663313593635

    Signatures are with following keys

    {file}.sig PGP signature (old key pubkey.asc, EA5A2379 1996-04-23)
    {file}.elm-key-2018.sig GPG signature (key elm.key.2018.asc, 44FC796B 2018-12-01, expires: 2028-11-28)

    SUMMARY: This release adds "Implicit TLS" (RFC 8314)
    for imap, pop and submission protocols. This
    is controlled with new elmrc option "use-tls".
    This release uses openssl's X509_check_host().
    This release changes address prompts and fixes
    crash when folder browser login prompt from
    #hashmark is interrupted with Ctrl-C. Also
    some other changes are included and bugs fixed.


    Changes on Elm ME+ 2.5 PLalpha58 compared with Elm ME+ 2.5 PLalpha57 --------------------------------------------------------------------

    SUMMARY: This release adds "Implicit TLS" (RFC 8314)
    for imap, pop and submission protocols. This
    is controlled with new elmrc option "use-tls".
    This release uses openssl's X509_check_host().
    This release changes address prompts and fixes
    crash when folder browser login prompt from
    #hashmark is interrupted with Ctrl-C. Also
    some other changes are included and bugs fixed.

    RFC 8314: Use of TLS for Email Submission/Access

    - Added "Implicit TLS" (separate tcp port) for imap,
    pop, submission which is tried first before
    imap, pop, submission (and STARTTLS after that)
    is tried. Implicit TLS is available only
    when libelmme-tls module is loaded. This
    is controlled with new elm.rc opion "use-tls".

    - Added keyword "submissions" to to mail.services.
    RFC 8314 registers tcp port 465 for
    "Message Submission over TLS protocol".
    > Port 465 is also registered for
    "URL Rendesvous Directory for SSM"
    > Historically port 465 was registered for
    smtps, but this was revoked (smtp uses
    MX records, which do not specify port).

    - Added service_type_defport(), enumerate_service_type(),
    init_enum_service_type(), init_enum_service_list(),
    convert_service_entry()
    to lib/sercice_list.c and hdrs/connection_imp.h

    - Added elmrc option "use-tls".
    Option includes list of keywords:
    none None of values are selected
    implicit-tls Use "Implicit TLS" (separate tcp port)
    for imap, pop, submission which is tried
    first before imap, pop, submission
    (and STARTTLS after that) is tried.
    starttls libbelmme-tls module uses STARTTLS
    (IMAP, SMTP) or STLS (POP) if command
    is available. This is default.
    verify-tls-certificate connection must use tls
    and server certificate
    must have valid
    require-tls-peer-name connection must use tls
    and certificates's CN must
    match
    display-check-host display X509_check_host()
    matching when login

    The "use-tls" elm.rc option accepts two forms:
    - Absolute form where used options are listed
    - Additive form where changes from compile
    time default are listed:
    +implicit-tls -implicit-tls
    +starttls -starttls
    +verify-tls-certificate
    -verify-tls-certificate
    +require-tls-peer-name
    -require-tls-peer-name
    +display-check-host
    -display-check-host
    These two forms can not be mixed.

    - Allowed disabling automatic use of STARTTLS
    (IMAP, SMTP) or STLS (POP) commands by using of
    use-tls = none
    or use-tls = -starttls
    - Specifying tls:starttls-version on
    ~/.elm/mail.services or on global elm.mailservices
    overrides starttls disable given on use-tls setting.
    * About same can be done by removing
    use-connect-library = tls
    - Specifying require-tls-peer-name={name}
    on ~/.elm/mail.services or on global elm.mailservices
    can used to make 'require-tls-peer-name' on use-tls
    accept also other certificate's CN (or some
    cases other 'Subject Alternative Name' (SAN)) than given
    hostname.
    - 'require-tls-peer-name' checks certificate's CN
    when correct name is usually certificate's
    'Subject Alternative Name' (SAN) -
    with OpenSSL 1.0.2 or newer 'require-tls-peer-name'
    check also DNS:name from 'Subject Alternative Name' (SAN)
    if name is not IP-address.
    > If 'Subject Alternative Name' (SAN) check is
    not supported, it is usually not good idea to use
    'require-tls-peer-name' on use-tls setting

    - Specifying verify-tls-certificate=off
    on ~/.elm/mail.services or on global elm.mailservices
    overrides verify-tls-certificate given on use-tls setting.
    - Specifying use-tls-checks=no on ~/.elm/mail.services or on
    global elm.mailservices overrides 'verify-tls-certificate'
    and 'require-tls-peer-name' given on use-tls setting.

    - libbelmme-tls module changes default value of "use-tls"
    if use-config-library elmrc option lists tls.
    - Added RC_change_config() shared_libs/tls/tls.c

    - Added connect_remote_account_2()
    to lib/remote_mbx.c and hdrs/connection_imp.h
    - Added browser_passhm_open_ra2()
    to lib/mbox/hashmark_helper.c and hdrs/connection_imp.h
    - Added hashmark_passhm_open_ra2()
    to lib/mbox/hashmark.c and hdrs/hashmark.h
    - Added hashtype_passhm_open_ra2_f() to hdrs/hashmark_imp.h
    - Added hashtype_passhm_open_ra2_f * passhm_open_ra2;
    to struct hashtype_actions

    - Added 'Subject Alternative Name' (SAN) support
    to 'require-tls-peer-name' on global elm.mailservices
    and user's ~/.elm/mail.services file.
    - Added 'Subject Alternative Name' (SAN) support
    to 'require-tls-peer-name' flag on "use-tls" elm.rc
    option.
    - Added 'Subject Alternative Name' (SAN) support
    to "require-tls-peer-name" on global elm.hashmarks
    and user's ~/hash.marks file.
    > This 'Subject Alternative Name' (SAN) support requires
    OpenSSL 1.0.2 or newer, which includes X509_check_host()
    function.
    > This 'Subject Alternative Name' (SAN) support only
    checks "DNS:" -names with X509_check_host() and does not
    check "IP:" -names with X509_check_ip().

    - Added Configure (actually shared_libs/tls/config) test
    for X509_check_host()

    - 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 IMAP show

    IMAP login to <host> (verified, host matches) as <user> ...
    or IMAP login to <host> as <user> (verified, host matches <name>) ...

    instead of

    IMAP login to <host> (verified) as <user> ...
    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 files:
    src/addr_prompt.c

    Mail services config
    --------------------

    Files libdir/elm.mailservices and ~/.elm/mail.services
    specify data for remote services. Lines on these files
    are following kind:

    @charset = character-set
    name imap parameters
    name pop parameters
    name submission parameters
    name submissions parameters
    name smtp parameters
    name * parameters
    name imaps parameters
    name pops parameters
    name smtps parameters

    where name is canonical name for host; 'imap' specify that
    IMAP protocol should be used for mailbox access, 'pop' specify
    that POP protocol should be used for mailbox access and '*'
    can be used to specify parameters without specifying type of
    mailbox access, '@charset =' specifes used character set of file;

    'imaps' specify that SSL/TLS should be used first and then
    IMAP protocol should be used for mailbox access. 'pops' specify
    SSL/TLS should be used first and then POP protocol should be
    used for mailbox access.

    Also 'imap' and 'pop' can use SSL/TLS to secure mailbox
    access. Using of SSL/TLS requires
    use-connect-library = tls
    elmrc option is used. For secure mailbox access use also
    verify-tls-certificate parameter with 'imaps', 'pops',
    'imap' and 'pop'.

    'smtp' specify that smtp protocol should be used for
    mail submission and 'submission' specify that submission
    protocol should be used for mail submission. Submission
    protocol is similar than smtp protocol, but uses different port.
    Using of smtp or submission protocol requires
    use-mailer-library = smtp
    elmrc option is used.

    'smtps' specify that SSL/TLS should be used first and then
    smtp protocol should be used for mail submission. 'smtps'
    requires that explicit port is given on parameters.
    Originally port 465 was reserved for smtps, but this was
    revoked and that port is now reserved for "URL Rendesvous
    Directory for SSM" instead.

    'submissions' specify that SSL/TLS should be used first and
    submission protocol should be used for mail submission.
    This uses tcp port 465 by default which is reserver also for
    "Message Submission over TLS protocol" or submissions.

    Also 'smtp' and 'submission' can use SSL/TLS to secure
    mail submission. Using of SSL/TLS requires
    use-connect-library = tls
    elmrc option is used. For secure mail submission
    use also verify-tls-certificate parameter with 'smtp',
    'submission' and 'smtps'. This paramater can
    ve given either on global elm.mailservices -file
    or on mailer option of global elm.rc -file.

    parameters are in general following form

    parameter=value; parameter=value; ...
    paramater; parameter; ...

    Following parameter names are recognized

    alias gives alias for host
    (value can be quoted)
    addr gives ip-address
    (or hostname) for service
    port gives port for service;
    may be on decimal form
    or named (usually
    from /etc/services)
    verify-tls-certificate connection must use tls
    (STARTTLS or similar) and
    and server certificate
    must have valid
    require-tls-peer-name connection must use tls
    (STARTTLS or similar) and
    certificates's CN must
    match. If Openssl supports
    X509_check_host() this also
    accepts DNS:name from
    'Subject Alternative Name' (SAN)
    if name is not IP address.
    use-tls-checks With value "no" disables global
    verify-tls-certificate
    and 'require-tls-peer-name given
    on use-tls elmrc option
    {tag}:{paramater} Valid {tag} are these
    which are given with
    use-library -elmrc
    option or
    use-*-library -elmrc
    options.

    Following forms for specify of "addr" can be used:

    addr=hostname
    addr="hostname"
    addr=ip:A.B.C.D
    addr=ip:"A.B.C.D"
    addr=ip:A.B.C.D/port
    addr=ip:"A.B.C.D"/port

    If entry's name is literal ip-address, then "addr" can not
    given.

    hostname is name of that host which corresponding ip-address
    (or addresses) should be used, A.B.C.D is literal ip-address,
    port is port number in decimal.

    Avoid using addr=hostname and addr=ip:A.B.C.D forms on
    same entry of mail.services file.

    Literal ip-address <A.B.C.D> can be
    - IPv4 address like 216.58.209.132
    - IPv6 address like 2a00:1450:400f:804::2004
    or IPv6 address with scope like
    fe80:1450:400f:804::2004%3
    IPv6 address must be given inside of quotes.

    Following forms for specify of "port" can be used:

    port=service
    port="service"
    port=ddd

    service is name of that host which corresponding port
    should be used, ddd is port number in decimal.

    Avoid using port=service and port=ddd forms on
    same entry of mail.services file.

    Parameter 'verify-tls-certificate' does not check certificate
    name. CN (common name) of certificate subject can be given with
    "require-tls-peer-name" parameter.

    If parameter "require-tls-peer-name" withot value is given,
    that CN (common name) of certificate subject must match to
    value given on {name} column. If Openssl supports
    X509_check_host() this also accepts DNS:name from
    'Subject Alternative Name' (SAN) if {name} is not IP address.

    Check for "require-tls-peer-name" is currently case sensitive.
    This also do not check agaist wildcards (*) on certificate
    name -- * on certificate name is treated as regular character.

    If Openssl supports X509_check_host(), then also wildcards
    DNS:*.name from 'Subject Alternative Name' (SAN) are accepted.

    Parameter 'use-tls-checks=no' do not affect to 'verify-tls-certificate'
    and 'require-tls-peer-name' parameters, but only disables flags with
    same name given on use-tls elmrc option.

    Warnings
    --------

    - Not compiled with MMDF support defined, so probably it doesn't
    work (or even compile).

    - This has not been tested much so there can be bad bugs.

    Bug reports to: Kari E. Hurtta <elm@elmme-mailer.org>
    (was hurtta+elm@posti.FMI.FI)

    - Internationalized (ie. non-ASCII) domain names are not supported.

    - Support for multipart/signed and multipart/encrypted (specially:
    support for PGP/MIME) only in reading side. There is no support
    for attachments with multipart/encrypted.

    - HP's shoftkeys are no longer supported

    - DECNET addresses like host::user may be interpreted as phrase
    of group syntax or as route of source routed address.

    - Header editing screen now uses addresses in form phrase <address>,
    but because it does not require using of comma (,), multiword
    phrases must be entered in quotes.

    For example: "Kari Hurtta" <hurtta>

    - If address includes <> or comments (), they are not aliased
    expanded. So aliases must be entered as bare words.

    - Addresses given as arguments to elm command should be given
    as one address per argument. Giving of sevaral addresses per
    one argument causes that address is misparsed if header is
    edited on header editing screen.

    That is:

    Use: elm '"Kari Hurtta" <hurtta>' 'Admin <root>'

    Don't use: elm 'Kari Hurtta <hurtta>, Admin <root>'

    - p)rint command acts as P)rint text -command. So it
    is currently quite useless.
    p)rint command does that via readmsg -command. However
    P)rint text does actually same (without readmsg).

    - Some Linux libraries does not follow $LC_CTYPE when program is
    setgid. Net result is that your locale is always C. That is
    visible that $LC_CTYPE does not effect to locale printed by
    'elm -vvvvv':

    Locale (LC_CTYPE): C
    Display character-set: US-ASCII
    Sending character-set: US-ASCII

    - All refrences iso2022 maps are parsed and read to memory.
    This may cause quite big memory consumption specially because
    eastern (multibyte) sets tend to be lot of characters. That
    mapping information should be shared between processes to
    reduce memory consuption.

    - If display charset is produced by using mapping from locale
    to charset where charset definition is later invalidated
    ("removed") by setting explicit compatcharsets on user's
    .elm/elmrc, that may cause PANIC on elm's internal pager
    or other problems. Invalidation happens if display charset
    is on implicit compatcharsets list (because of charset
    definition), but does not have explicit compatcharsets list
    given by user.

    - Neither Unicode didirectional algorithm nor Right-Left scripts
    are supported.

    - In some situations two Status headers may be generated two
    Status headers -- one by IMAP deamon and one from APPENDed
    message.

    - When APPENDing message to IMAP folder (which is normal UNIX
    mailbox format) original "From " separator line can not be
    preserved -- specially it is not possible to pass envelope
    sender address.

    - For UTF-8 charset Elm only knows printable characters from
    Latin/1 range, if unicode database (see elmrc option "unidata")
    is not loaded.

    - For using of ISO2022 character sets it is required that mapping
    them to unicode is know -- otherwise Elm ME+ does not know which
    characters are printable.

    - UTF-16 surrogate pairs (D800-DFFF) are not supported on UTF-7
    charset.

    - Mixing of names using IMAP naming convention
    (imap-naming-convention = yes)
    and names using imap-charset does not work very well...

    - " Regarding my message (8 Aug 2000) regarding 'newmail' on
    AIX 4.3.3 in an 'aixterm' window and the 'aixterm' did not
    close, indeed the problem was NOT related to 'newmail' but an
    AIX bug.

    IBM has release a patch, and the 'aixterm' in AIX 4.3.3 must
    be update with fileset X11.apps.aixterm.4.3.3.26 (PTF
    U473920) is solved to problem."
    From: Noam G. Nudelman

    - File /usr/share/locale/fi/charset gives charset name utf-8 on
    Linux Mandrake 7.2. This causes that Configure generates
    mapping
    fi utf-8
    to elm.mimecharsets. However that seems to have
    incorrect mapping. You may want change this to
    fi ISO-8859-1

    ( however nl_langinfo(CODESET) gives charset ISO-8859-15
    but look following entry. )

    - Locale 'fi' seems to have charset ISO-8859-15 according
    of nl_langinfo(CODESET) on Mandrake Linux 7.2 (and probaly
    others with same glibc version). However for example gnome
    terminal uses font
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-1
    and not
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-15

    Also KDE's konsole program seems use iso8859-1 character set
    although locale is 'fi' which should have ISO-8859-15 according
    of nl_langinfo (selecting "unicode" from menu seems fix that.)

    Because of mismatch more correct locale is fi_FI.88591, which gives
    ISO-8859-1 character set according of nl_langinfo(CODESET).

    ( Locale seems come from /etc/sysconfig/i18n or $HOME/.i18n )

    > To enable handling of ISO-8859-1 and ISO-8859-15 character sets
    on linux console, read comments from doc/terminal.info file.

    - Mandrake Linux 7.2 seems set LD_PRELOAD to load
    /usr/lib/libxalflaunch.so.0. That (xalf-0.4-2mdk) causes that
    elm to crash on startup (actually before main() is reached.)

    - kterm on Mandrake Linux 7.2 seems have (at least on my test
    environment) seems get bad fontlist (*VT100*fontList) which
    gives bad font for iso8859-1 -- therefore ISO-8859-1 characters
    do not work.

    ("xrdb -query" seems report resource with name "*fontList"
    -- that probably overrides "*VT100*fontList" which comes
    from /usr/lib/X11/app-defaults/KTerm )

    - Also note that initially kterm does NOT default to
    ISO-8859-1 -- therefore ISO-8859-1 works only when
    elm explicity switch to ISO-8859-1 (for example
    with 'elm -D ISO-8859-1')

    - When assembling message/partial MIME (RFC 2046)
    requires that all headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are copied from
    initial enclosing message to assembled message. It also
    requires that headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are ignored and
    dropped from enclosed message.

    For now we copy only Received: -headers. Dropping extra
    headers from enclosed message makes assembly more
    complicated (and dropping of Received: -headers
    from enclosed message do not make sense.)

    - mailer=sendmail; verify=yes works only when sendmail
    is installed as setuid root. Use mailer=submission instead.
    * Starting from sendmail 8.12 sendmail is normally
    installed as setgid smmsp and not as setuid root.
    - However error message is printed only if
    verify-local-address=yes is also set

    - IMAP connection is stalled some times. Reason is unknown.

    - From name option (-f) on fastmail is currently broken.

    Collector of these patches
    --------------------------

    Kari Hurtta <elm@elmme-mailer.org>
    Kari Hurtta <hurtta+elm@siilo.FMI.FI>


    diffstat:

    elmME+.2.5.alpha58-cvs/MANIFEST | 1
    elmME+.2.5.alpha58-cvs/README.ME+ | 262 ++
    elmME+.2.5.alpha58-cvs/doc/elm.1 | 2

    [continued in next message]

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Kari Hurtta@21:1/5 to All on Sat Jun 11 00:25:32 2022
    Experimental RPM spec file for ELM ME+ 2.5 PLalpha58
    exists on <URL: http://www.elmme-mailer.org/rpm/elm-ME+2.5.html >
    directory.

    Files are following

    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha58-1.spec
    RPM spec file
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha58-1.spec.elm-key-2018.sig
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha58-1.spec.sig
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha58-1.mdk7.2.src.rpm
    Source rpm
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha58-1.mdk7.2.src.rpm.sig

    Only binary packages for old Mandrake release 7.2 are available (Linux
    2.2, glibc 2.1, Sendmail 8.13).

    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha58-1.mdk7.2.i686.rpm
    Package elm binary RPM build on Linux Mandrake release 7.2
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha58-1.mdk7.2.i686.rpm.sig
    - http://www.elmme-mailer.org/rpm/elm-mod-ME+2.5.alpha58-1.mdk7.2.i686.rpm
    Package elm-mod binary RPM build on Linux Mandrake release 7.2
    - http://www.elmme-mailer.org/rpm/elm-mod-ME+2.5.alpha58-1.mdk7.2.i686.rpm.sig
    - http://www.elmme-mailer.org/rpm/elm-tls-ME+2.5.alpha58-1.mdk7.2.i686.rpm
    Package elm-tls binary RPM build on Linux Mandrake release 7.2
    - http://www.elmme-mailer.org/rpm/elm-tls-ME+2.5.alpha58-1.mdk7.2.i686.rpm.sig

    Source and binary packages are signed internally with GPG key
    elm.key.2018.asc (44FC796B 2018-12-01).

    This is is compiled agaist Sendmail 8.13 (not from Mandrake
    distribution).

    elm-tls package do not load/work on Mandrake 7.2, because openssl
    library misses ASN1_STRING_to_UTF8 function.

    * Signatures

    {file}.sig PGP signature (old key pubkey.asc, EA5A2379 1996-04-23)
    {file}.elm-key-2018.sig GPG signature (key elm.key.2018.asc, 44FC796B 2018-12-01, expires: 2028-11-28)

    * Configuration

    Following files (if exists) are rewritten by elmconfwriter on
    installation:

    - /usr/local/lib/elm.rc
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.hashmarks

    Spec file compiles elm for binary distribution, so you must edit
    /usr/local/lib/elm.rc before using Elm ME+ 2.5. Following variables may
    need to be modified on elm.rc:

    - mailer
    - hostdomain (this is usually needed)
    - hostfullname
    - hostname (usually this is not needed)
    - mailname (default values is generated from other values)
    name-resolution (controls default values of hostdomain,
    hostfullname, hostname, mailname)


    For re-generation of following file, old information (if exists) is
    used:

    - /usr/local/lib/elm.rc

    WARNING: Check after installation that libraries are enabled. Global
    elm.rc values are:

    use-library =
    use-base-library = iconv
    use-config-library = resolv
    use-connect-library = tls resolv
    use-mailer-library = smtp resolv

    Note that libelmme-resolv.so does not compile on all distributions. In
    that case omit resolv from elm.rc.

    After editing global elm.rc run /usr/local/lib/elmrc-write -GI for
    fixing possible errors.

    On installation following existing files are merged with new values:

    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.hashmarks

    Old values from /usr/local/lib/aliases.text are converted to /usr/local/lib/elm.aliases and /usr/local/lib/aliases.text is renamed to /usr/local/lib/aliases.text.OLD.

    On installation new values without merging are written to following
    files:

    - /usr/local/lib/elm.aliases.NEW
    - /usr/local/lib/elm.mailinglists.NEW
    - /usr/local/lib/elm.mailservices.NEW
    - /usr/local/lib/elm.mimecharsets.NEW
    - /usr/local/lib/elm.mimetypes.NEW
    - /usr/local/lib/elm.terminalinfo.NEW
    - /usr/local/lib/elm.iso2022sets.NEW
    - /usr/local/lib/elm.hashmarks.NEW

    Package elm-mod includes libelmme-iconv.so and libelmme-smtp.so. (If
    package elm-mod includes libelmme-resolv.so, this is noted). And package elm-tls includes libelmme-tls.so.

    Installation loses mailer = submission setting from global /usr/local/lib/elm.rc, because when elm package rewrites elm.rc,
    submission mailer is not available. It becomes from elm-mod package.

    However failed values of /usr/local/lib/elm.rc are saved to /usr/local/lib/elm.rc.old-values file during installation.

    Global setting mailer = submission is restored from /usr/local/lib/elm.rc.old-values file, when package elm-mod is
    installed.

    Also following directories are used:

    - /usr/local/lib/elm.map.txt/ (global setting map-text-dir =
    {lib}/elm.map.txt)
    - /usr/local/lib/elm.map.bin/ (global setting map-bin-dir =
    {lib}/elm.map.bin)
    - /usr/local/lib/elm.user.map/ (global setting user-map-dir =
    {lib}/elm.user.map)

    Hashmark EXAMPLE uses file /usr/local/lib/elm.user.map/elm.usermap.

    SUMMARY: This release adds "Implicit TLS" (RFC 8314)
    for imap, pop and submission protocols. This
    is controlled with new elmrc option "use-tls".
    This release uses openssl's X509_check_host().
    This release changes address prompts and fixes
    crash when folder browser login prompt from
    #hashmark is interrupted with Ctrl-C. Also
    some other changes are included and bugs fixed.

    Note that "Implicit TLS" is not available
    when elm-tls package do not load or work.

    Elm ME+ 2.5 PLalpha58 changelog

    Changes on Elm ME+ 2.5 PLalpha58 compared with Elm ME+ 2.5 PLalpha57 --------------------------------------------------------------------

    SUMMARY: This release adds "Implicit TLS" (RFC 8314)
    for imap, pop and submission protocols. This
    is controlled with new elmrc option "use-tls".
    This release uses openssl's X509_check_host().
    This release changes address prompts and fixes
    crash when folder browser login prompt from
    #hashmark is interrupted with Ctrl-C. Also
    some other changes are included and bugs fixed.

    RFC 8314: Use of TLS for Email Submission/Access

    - Added "Implicit TLS" (separate tcp port) for imap,
    pop, submission which is tried first before
    imap, pop, submission (and STARTTLS after that)
    is tried. Implicit TLS is available only
    when libelmme-tls module is loaded. This
    is controlled with new elm.rc opion "use-tls".

    - Added keyword "submissions" to to mail.services.
    RFC 8314 registers tcp port 465 for
    "Message Submission over TLS protocol".
    > Port 465 is also registered for
    "URL Rendesvous Directory for SSM"
    > Historically port 465 was registered for
    smtps, but this was revoked (smtp uses
    MX records, which do not specify port).

    - Added service_type_defport(), enumerate_service_type(),
    init_enum_service_type(), init_enum_service_list(),
    convert_service_entry()
    to lib/sercice_list.c and hdrs/connection_imp.h

    - Added elmrc option "use-tls".
    Option includes list of keywords:
    none None of values are selected
    implicit-tls Use "Implicit TLS" (separate tcp port)
    for imap, pop, submission which is tried
    first before imap, pop, submission
    (and STARTTLS after that) is tried.
    starttls libbelmme-tls module uses STARTTLS
    (IMAP, SMTP) or STLS (POP) if command
    is available. This is default.
    verify-tls-certificate connection must use tls
    and server certificate
    must have valid
    require-tls-peer-name connection must use tls
    and certificates's CN must
    match
    display-check-host display X509_check_host()
    matching when login

    The "use-tls" elm.rc option accepts two forms:
    - Absolute form where used options are listed
    - Additive form where changes from compile
    time default are listed:
    +implicit-tls -implicit-tls
    +starttls -starttls
    +verify-tls-certificate
    -verify-tls-certificate
    +require-tls-peer-name
    -require-tls-peer-name
    +display-check-host
    -display-check-host
    These two forms can not be mixed.

    - Allowed disabling automatic use of STARTTLS
    (IMAP, SMTP) or STLS (POP) commands by using of
    use-tls = none
    or use-tls = -starttls
    - Specifying tls:starttls-version on
    ~/.elm/mail.services or on global elm.mailservices
    overrides starttls disable given on use-tls setting.
    * About same can be done by removing
    use-connect-library = tls
    - Specifying require-tls-peer-name={name}
    on ~/.elm/mail.services or on global elm.mailservices
    can used to make 'require-tls-peer-name' on use-tls
    accept also other certificate's CN (or some
    cases other 'Subject Alternative Name' (SAN)) than given
    hostname.
    - 'require-tls-peer-name' checks certificate's CN
    when correct name is usually certificate's
    'Subject Alternative Name' (SAN) -
    with OpenSSL 1.0.2 or newer 'require-tls-peer-name'
    check also DNS:name from 'Subject Alternative Name' (SAN)
    if name is not IP-address.
    > If 'Subject Alternative Name' (SAN) check is
    not supported, it is usually not good idea to use
    'require-tls-peer-name' on use-tls setting

    - Specifying verify-tls-certificate=off
    on ~/.elm/mail.services or on global elm.mailservices
    overrides verify-tls-certificate given on use-tls setting.
    - Specifying use-tls-checks=no on ~/.elm/mail.services or on
    global elm.mailservices overrides 'verify-tls-certificate'
    and 'require-tls-peer-name' given on use-tls setting.

    - libbelmme-tls module changes default value of "use-tls"
    if use-config-library elmrc option lists tls.
    - Added RC_change_config() shared_libs/tls/tls.c

    - Added connect_remote_account_2()
    to lib/remote_mbx.c and hdrs/connection_imp.h
    - Added browser_passhm_open_ra2()
    to lib/mbox/hashmark_helper.c and hdrs/connection_imp.h
    - Added hashmark_passhm_open_ra2()
    to lib/mbox/hashmark.c and hdrs/hashmark.h
    - Added hashtype_passhm_open_ra2_f() to hdrs/hashmark_imp.h
    - Added hashtype_passhm_open_ra2_f * passhm_open_ra2;
    to struct hashtype_actions

    - Added 'Subject Alternative Name' (SAN) support
    to 'require-tls-peer-name' on global elm.mailservices
    and user's ~/.elm/mail.services file.
    - Added 'Subject Alternative Name' (SAN) support
    to 'require-tls-peer-name' flag on "use-tls" elm.rc
    option.
    - Added 'Subject Alternative Name' (SAN) support
    to "require-tls-peer-name" on global elm.hashmarks
    and user's ~/hash.marks file.
    > This 'Subject Alternative Name' (SAN) support requires
    OpenSSL 1.0.2 or newer, which includes X509_check_host()
    function.
    > This 'Subject Alternative Name' (SAN) support only
    checks "DNS:" -names with X509_check_host() and does not
    check "IP:" -names with X509_check_ip().

    - Added Configure (actually shared_libs/tls/config) test
    for X509_check_host()

    - 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 IMAP show

    IMAP login to <host> (verified, host matches) as <user> ...
    or IMAP login to <host> as <user> (verified, host matches <name>) ...

    instead of

    IMAP login to <host> (verified) as <user> ...
    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 files:
    src/addr_prompt.c

    Warnings
    --------

    - Not compiled with MMDF support defined, so probably it doesn't
    work (or even compile).

    - This has not been tested much so there can be bad bugs.

    Bug reports to: Kari E. Hurtta <elm@elmme-mailer.org>
    (was hurtta+elm@posti.FMI.FI)

    - Internationalized (ie. non-ASCII) domain names are not supported.

    - Support for multipart/signed and multipart/encrypted (specially:
    support for PGP/MIME) only in reading side. There is no support
    for attachments with multipart/encrypted.

    - HP's shoftkeys are no longer supported

    - DECNET addresses like host::user may be interpreted as phrase
    of group syntax or as route of source routed address.

    - Header editing screen now uses addresses in form phrase <address>,
    but because it does not require using of comma (,), multiword
    phrases must be entered in quotes.

    For example: "Kari Hurtta" <hurtta>

    - If address includes <> or comments (), they are not aliased
    expanded. So aliases must be entered as bare words.

    - Addresses given as arguments to elm command should be given
    as one address per argument. Giving of sevaral addresses per
    one argument causes that address is misparsed if header is
    edited on header editing screen.

    That is:

    Use: elm '"Kari Hurtta" <hurtta>' 'Admin <root>'

    Don't use: elm 'Kari Hurtta <hurtta>, Admin <root>'

    - p)rint command acts as P)rint text -command. So it
    is currently quite useless.
    p)rint command does that via readmsg -command. However
    P)rint text does actually same (without readmsg).

    - Some Linux libraries does not follow $LC_CTYPE when program is
    setgid. Net result is that your locale is always C. That is
    visible that $LC_CTYPE does not effect to locale printed by
    'elm -vvvvv':

    Locale (LC_CTYPE): C
    Display character-set: US-ASCII
    Sending character-set: US-ASCII

    - All refrences iso2022 maps are parsed and read to memory.
    This may cause quite big memory consumption specially because
    eastern (multibyte) sets tend to be lot of characters. That
    mapping information should be shared between processes to
    reduce memory consuption.

    - If display charset is produced by using mapping from locale
    to charset where charset definition is later invalidated
    ("removed") by setting explicit compatcharsets on user's
    .elm/elmrc, that may cause PANIC on elm's internal pager
    or other problems. Invalidation happens if display charset
    is on implicit compatcharsets list (because of charset
    definition), but does not have explicit compatcharsets list
    given by user.

    - Neither Unicode didirectional algorithm nor Right-Left scripts
    are supported.

    - In some situations two Status headers may be generated two
    Status headers -- one by IMAP deamon and one from APPENDed
    message.

    - When APPENDing message to IMAP folder (which is normal UNIX
    mailbox format) original "From " separator line can not be
    preserved -- specially it is not possible to pass envelope
    sender address.

    - For UTF-8 charset Elm only knows printable characters from
    Latin/1 range, if unicode database (see elmrc option "unidata")
    is not loaded.

    - For using of ISO2022 character sets it is required that mapping
    them to unicode is know -- otherwise Elm ME+ does not know which
    characters are printable.

    - UTF-16 surrogate pairs (D800-DFFF) are not supported on UTF-7
    charset.

    - Mixing of names using IMAP naming convention
    (imap-naming-convention = yes)
    and names using imap-charset does not work very well...

    - " Regarding my message (8 Aug 2000) regarding 'newmail' on
    AIX 4.3.3 in an 'aixterm' window and the 'aixterm' did not
    close, indeed the problem was NOT related to 'newmail' but an
    AIX bug.

    IBM has release a patch, and the 'aixterm' in AIX 4.3.3 must
    be update with fileset X11.apps.aixterm.4.3.3.26 (PTF
    U473920) is solved to problem."
    From: Noam G. Nudelman

    - File /usr/share/locale/fi/charset gives charset name utf-8 on
    Linux Mandrake 7.2. This causes that Configure generates
    mapping
    fi utf-8
    to elm.mimecharsets. However that seems to have
    incorrect mapping. You may want change this to
    fi ISO-8859-1

    ( however nl_langinfo(CODESET) gives charset ISO-8859-15
    but look following entry. )

    - Locale 'fi' seems to have charset ISO-8859-15 according
    of nl_langinfo(CODESET) on Mandrake Linux 7.2 (and probaly
    others with same glibc version). However for example gnome
    terminal uses font
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-1
    and not
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-15

    Also KDE's konsole program seems use iso8859-1 character set
    although locale is 'fi' which should have ISO-8859-15 according
    of nl_langinfo (selecting "unicode" from menu seems fix that.)

    Because of mismatch more correct locale is fi_FI.88591, which gives
    ISO-8859-1 character set according of nl_langinfo(CODESET).

    ( Locale seems come from /etc/sysconfig/i18n or $HOME/.i18n )

    > To enable handling of ISO-8859-1 and ISO-8859-15 character sets
    on linux console, read comments from doc/terminal.info file.

    - Mandrake Linux 7.2 seems set LD_PRELOAD to load
    /usr/lib/libxalflaunch.so.0. That (xalf-0.4-2mdk) causes that
    elm to crash on startup (actually before main() is reached.)

    - kterm on Mandrake Linux 7.2 seems have (at least on my test
    environment) seems get bad fontlist (*VT100*fontList) which
    gives bad font for iso8859-1 -- therefore ISO-8859-1 characters
    do not work.

    ("xrdb -query" seems report resource with name "*fontList"
    -- that probably overrides "*VT100*fontList" which comes
    from /usr/lib/X11/app-defaults/KTerm )

    - Also note that initially kterm does NOT default to
    ISO-8859-1 -- therefore ISO-8859-1 works only when
    elm explicity switch to ISO-8859-1 (for example
    with 'elm -D ISO-8859-1')

    - When assembling message/partial MIME (RFC 2046)
    requires that all headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are copied from
    initial enclosing message to assembled message. It also
    requires that headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are ignored and
    dropped from enclosed message.

    For now we copy only Received: -headers. Dropping extra
    headers from enclosed message makes assembly more
    complicated (and dropping of Received: -headers
    from enclosed message do not make sense.)

    - mailer=sendmail; verify=yes works only when sendmail
    is installed as setuid root. Use mailer=submission instead.
    * Starting from sendmail 8.12 sendmail is normally
    installed as setgid smmsp and not as setuid root.
    - However error message is printed only if
    verify-local-address=yes is also set

    - IMAP connection is stalled some times. Reason is unknown.

    - From name option (-f) on fastmail is currently broken.

    Collector of these patches
    --------------------------

    Kari Hurtta <elm@elmme-mailer.org>
    Kari Hurtta <hurtta+elm@siilo.FMI.FI>

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Kari Hurtta@21:1/5 to All on Sun Jun 12 03:46:56 2022
    Experimental DEB generator script for Elm ME+ 2.5 PLalpha58 exists on
    <URL: http://www.elmme-mailer.org/deb/elm-ME+2.5.html > directory.

    Files are following

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha58-2.gen_deb
    DEB generator script
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha58-2.gen_deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha58-2.gen_deb.sig

    A command

    elm-ME+2.5.alpha58-2.gen_deb {packager}

    generates package elmme with version 1.1.58-2.{distribution}.

    A command

    elm-ME+2.5.alpha58-2.gen_deb --nonew {packager}

    generates package elm with version ME+2.5.alpha58-2.{distribution}.

    Both commands produce package with filename elm-ME+2.5.alpha58-2.{distribution}.{arch}.deb.

    Module libelmme-resolv.so is included for all distributions.

    == Old package names, i386

    Package elm with version ME+2.5.alpha58-2.{distribution} and
    architecture i386.

    * Compiled on Ubuntu 6.06.2 LTS
    (Linux 2.6, glibc 2.3, Sendmail 8.13)

    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha58-2.Ubuntu6.06.i386.deb
    Package elm binary DEB build on Ubuntu 6.06.2 LTS
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha58-2.Ubuntu6.06.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha58-2.Ubuntu6.06.i386.deb.sig

    * Compiled on Ubuntu 10.04.4 LTS
    (Linux 2.6, glibc 2.11, Sendmail 8.14)

    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha58-2.Ubuntu10.04.i386.deb
    Package elm binary DEB build on Ubuntu 10.04.4 LTS
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha58-2.Ubuntu10.04.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha58-2.Ubuntu10.04.i386.deb.sig

    == New package names, i386

    Package elmme with version 1.1.58-2.{distribution} and architecture
    i386.

    * Compiled on Ubuntu 10.04.4 LTS
    (Linux 2.6, glibc 2.11, Sendmail 8.14)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha58-2.Ubuntu10.04.i386.deb
    Package elmme binary DEB build on Ubuntu 10.04.4 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha58-2.Ubuntu10.04.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha58-2.Ubuntu10.04.i386.deb.sig

    * Compiled on Ubuntu 14.04.6 LTS
    (Linux 4.4, glibc 2.19, no MTA)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha58-2.Ubuntu14.04.i386.deb
    Package elmme binary DEB build on Ubuntu 14.04.6 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha58-2.Ubuntu14.04.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha58-2.Ubuntu14.04.i386.deb.sig

    == New package names, amd64 (x86_64)

    Package elmme with version 1.1.58-2.{distribution} and architecture
    amd64 (also known as x86_64).

    * Compiled on Ubuntu 16.04.7 LTS
    (Linux 4.4, glibc 2.23, Sendmail 8.15)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha58-2.Ubuntu16.04.amd64.deb
    Package elmme binary DEB build on Ubuntu 16.04.7 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha58-2.Ubuntu16.04.amd64.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha58-2.Ubuntu16.04.amd64.deb.sig

    * Compiled on Ubuntu 18.04.6 LTS
    (Linux 5.4, glibc 2.27, Postfix 3.3 (not configured))

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha58-2.Ubuntu18.04.amd64.deb
    Package elmme binary DEB build on Ubuntu 18.04.6 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha58-2.Ubuntu18.04.amd64.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha58-2.Ubuntu18.04.amd64.deb.sig

    == Signatures

    {file}.sig PGP signature (old key pubkey.asc, EA5A2379 1996-04-23)
    {file}.elm-key-2018.sig GPG signature (key elm.key.2018.asc, 44FC796B 2018-12-01, expires: 2028-11-28)

    == Configuration

    Following files (if exists) are rewritten by elmconfwriter on
    installation:

    - /usr/local/lib/elm.rc
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.hashmarks

    Deb generator script compiles elm for binary distribution, so you must
    edit /usr/local/lib/elm.rc before using Elm ME+ 2.5. Following variables
    may need to be modified on elm.rc:

    - mailer
    - hostdomain (this is usually needed)
    - hostfullname
    - hostname (usually this is not needed)
    - mailname (default values is generated from other values)
    - name-resolution (controls default values of hostdomain, hostfullname, hostname, mailname)

    By default first value for mailname is read from /etc/mailname file.

    For re-generation of following file, old information (if exists) is
    used:

    - /usr/local/lib/elm.rc

    WARNING: Check after installation that libraries are enabled. Global
    elm.rc values are:

    use-library =
    use-base-library = iconv
    use-config-library = resolv
    use-connect-library = tls resolv
    use-mailer-library = smtp resolv

    After editing global elm.rc run /usr/local/lib/elmrc-write -GI for fixing possible errors.

    On installation following existing files are merged with new values:

    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.hashmarks

    Old values from /usr/local/lib/aliases.text are converted to /usr/local/lib/elm.aliases and /usr/local/lib/aliases.text is renamed to /usr/local/lib/aliases.text.OLD.

    On installation new values without merging are written to following
    files:

    - /usr/local/lib/elm.aliases.NEW
    - /usr/local/lib/elm.mailinglists.NEW
    - /usr/local/lib/elm.mailservices.NEW
    - /usr/local/lib/elm.mimecharsets.NEW
    - /usr/local/lib/elm.mimetypes.NEW
    - /usr/local/lib/elm.terminalinfo.NEW
    - /usr/local/lib/elm.iso2022sets.NEW
    - /usr/local/lib/elm.hashmarks.NEW

    Also following directories are used:

    - /usr/local/lib/elm.map.txt/ (global setting map-text-dir = {lib}/elm.map.txt)
    - /usr/local/lib/elm.map.bin/ (global setting map-bin-dir = {lib}/elm.map.bin)
    - /usr/local/lib/elm.user.map/ (global setting user-map-dir = {lib}/elm.user.map)

    Hashmark EXAMPLE uses file /usr/local/lib/elm.user.map/elm.usermap.

    SUMMARY: This release adds "Implicit TLS" (RFC 8314)
    for imap, pop and submission protocols. This
    is controlled with new elmrc option "use-tls".
    This release uses openssl's X509_check_host().
    This release changes address prompts and fixes
    crash when folder browser login prompt from
    #hashmark is interrupted with Ctrl-C. Also
    some other changes are included and bugs fixed.

    Elm ME+ 2.5 PLalpha58 changelog

    Changes on Elm ME+ 2.5 PLalpha58 compared with Elm ME+ 2.5 PLalpha57 --------------------------------------------------------------------

    SUMMARY: This release adds "Implicit TLS" (RFC 8314)
    for imap, pop and submission protocols. This
    is controlled with new elmrc option "use-tls".
    This release uses openssl's X509_check_host().
    This release changes address prompts and fixes
    crash when folder browser login prompt from
    #hashmark is interrupted with Ctrl-C. Also
    some other changes are included and bugs fixed.

    RFC 8314: Use of TLS for Email Submission/Access

    - Added "Implicit TLS" (separate tcp port) for imap,
    pop, submission which is tried first before
    imap, pop, submission (and STARTTLS after that)
    is tried. Implicit TLS is available only
    when libelmme-tls module is loaded. This
    is controlled with new elm.rc opion "use-tls".

    - Added keyword "submissions" to to mail.services.
    RFC 8314 registers tcp port 465 for
    "Message Submission over TLS protocol".
    > Port 465 is also registered for
    "URL Rendesvous Directory for SSM"
    > Historically port 465 was registered for
    smtps, but this was revoked (smtp uses
    MX records, which do not specify port).

    - Added service_type_defport(), enumerate_service_type(),
    init_enum_service_type(), init_enum_service_list(),
    convert_service_entry()
    to lib/sercice_list.c and hdrs/connection_imp.h

    - Added elmrc option "use-tls".
    Option includes list of keywords:
    none None of values are selected
    implicit-tls Use "Implicit TLS" (separate tcp port)
    for imap, pop, submission which is tried
    first before imap, pop, submission
    (and STARTTLS after that) is tried.
    starttls libbelmme-tls module uses STARTTLS
    (IMAP, SMTP) or STLS (POP) if command
    is available. This is default.
    verify-tls-certificate connection must use tls
    and server certificate
    must have valid
    require-tls-peer-name connection must use tls
    and certificates's CN must
    match
    display-check-host display X509_check_host()
    matching when login

    The "use-tls" elm.rc option accepts two forms:
    - Absolute form where used options are listed
    - Additive form where changes from compile
    time default are listed:
    +implicit-tls -implicit-tls
    +starttls -starttls
    +verify-tls-certificate
    -verify-tls-certificate
    +require-tls-peer-name
    -require-tls-peer-name
    +display-check-host
    -display-check-host
    These two forms can not be mixed.

    - Allowed disabling automatic use of STARTTLS
    (IMAP, SMTP) or STLS (POP) commands by using of
    use-tls = none
    or use-tls = -starttls
    - Specifying tls:starttls-version on
    ~/.elm/mail.services or on global elm.mailservices
    overrides starttls disable given on use-tls setting.
    * About same can be done by removing
    use-connect-library = tls
    - Specifying require-tls-peer-name={name}
    on ~/.elm/mail.services or on global elm.mailservices
    can used to make 'require-tls-peer-name' on use-tls
    accept also other certificate's CN (or some
    cases other 'Subject Alternative Name' (SAN)) than given
    hostname.
    - 'require-tls-peer-name' checks certificate's CN
    when correct name is usually certificate's
    'Subject Alternative Name' (SAN) -
    with OpenSSL 1.0.2 or newer 'require-tls-peer-name'
    check also DNS:name from 'Subject Alternative Name' (SAN)
    if name is not IP-address.
    > If 'Subject Alternative Name' (SAN) check is
    not supported, it is usually not good idea to use
    'require-tls-peer-name' on use-tls setting

    - Specifying verify-tls-certificate=off
    on ~/.elm/mail.services or on global elm.mailservices
    overrides verify-tls-certificate given on use-tls setting.
    - Specifying use-tls-checks=no on ~/.elm/mail.services or on
    global elm.mailservices overrides 'verify-tls-certificate'
    and 'require-tls-peer-name' given on use-tls setting.

    - libbelmme-tls module changes default value of "use-tls"
    if use-config-library elmrc option lists tls.
    - Added RC_change_config() shared_libs/tls/tls.c

    - Added connect_remote_account_2()
    to lib/remote_mbx.c and hdrs/connection_imp.h
    - Added browser_passhm_open_ra2()
    to lib/mbox/hashmark_helper.c and hdrs/connection_imp.h
    - Added hashmark_passhm_open_ra2()
    to lib/mbox/hashmark.c and hdrs/hashmark.h
    - Added hashtype_passhm_open_ra2_f() to hdrs/hashmark_imp.h
    - Added hashtype_passhm_open_ra2_f * passhm_open_ra2;
    to struct hashtype_actions

    - Added 'Subject Alternative Name' (SAN) support
    to 'require-tls-peer-name' on global elm.mailservices
    and user's ~/.elm/mail.services file.
    - Added 'Subject Alternative Name' (SAN) support
    to 'require-tls-peer-name' flag on "use-tls" elm.rc
    option.
    - Added 'Subject Alternative Name' (SAN) support
    to "require-tls-peer-name" on global elm.hashmarks
    and user's ~/hash.marks file.
    > This 'Subject Alternative Name' (SAN) support requires
    OpenSSL 1.0.2 or newer, which includes X509_check_host()
    function.
    > This 'Subject Alternative Name' (SAN) support only
    checks "DNS:" -names with X509_check_host() and does not
    check "IP:" -names with X509_check_ip().

    - Added Configure (actually shared_libs/tls/config) test
    for X509_check_host()

    - 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 IMAP show

    IMAP login to <host> (verified, host matches) as <user> ...
    or IMAP login to <host> as <user> (verified, host matches <name>) ...

    instead of

    IMAP login to <host> (verified) as <user> ...
    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 files:
    src/addr_prompt.c

    Warnings
    --------

    - Not compiled with MMDF support defined, so probably it doesn't
    work (or even compile).

    - This has not been tested much so there can be bad bugs.

    Bug reports to: Kari E. Hurtta <elm@elmme-mailer.org>
    (was hurtta+elm@posti.FMI.FI)

    - Internationalized (ie. non-ASCII) domain names are not supported.

    - Support for multipart/signed and multipart/encrypted (specially:
    support for PGP/MIME) only in reading side. There is no support
    for attachments with multipart/encrypted.

    - HP's shoftkeys are no longer supported

    - DECNET addresses like host::user may be interpreted as phrase
    of group syntax or as route of source routed address.

    - Header editing screen now uses addresses in form phrase <address>,
    but because it does not require using of comma (,), multiword
    phrases must be entered in quotes.

    For example: "Kari Hurtta" <hurtta>

    - If address includes <> or comments (), they are not aliased
    expanded. So aliases must be entered as bare words.

    - Addresses given as arguments to elm command should be given
    as one address per argument. Giving of sevaral addresses per
    one argument causes that address is misparsed if header is
    edited on header editing screen.

    That is:

    Use: elm '"Kari Hurtta" <hurtta>' 'Admin <root>'

    Don't use: elm 'Kari Hurtta <hurtta>, Admin <root>'

    - p)rint command acts as P)rint text -command. So it
    is currently quite useless.
    p)rint command does that via readmsg -command. However
    P)rint text does actually same (without readmsg).

    - Some Linux libraries does not follow $LC_CTYPE when program is
    setgid. Net result is that your locale is always C. That is
    visible that $LC_CTYPE does not effect to locale printed by
    'elm -vvvvv':

    Locale (LC_CTYPE): C
    Display character-set: US-ASCII
    Sending character-set: US-ASCII

    - All refrences iso2022 maps are parsed and read to memory.
    This may cause quite big memory consumption specially because
    eastern (multibyte) sets tend to be lot of characters. That
    mapping information should be shared between processes to
    reduce memory consuption.

    - If display charset is produced by using mapping from locale
    to charset where charset definition is later invalidated
    ("removed") by setting explicit compatcharsets on user's
    .elm/elmrc, that may cause PANIC on elm's internal pager
    or other problems. Invalidation happens if display charset
    is on implicit compatcharsets list (because of charset
    definition), but does not have explicit compatcharsets list
    given by user.

    - Neither Unicode didirectional algorithm nor Right-Left scripts
    are supported.

    - In some situations two Status headers may be generated two
    Status headers -- one by IMAP deamon and one from APPENDed
    message.

    - When APPENDing message to IMAP folder (which is normal UNIX
    mailbox format) original "From " separator line can not be
    preserved -- specially it is not possible to pass envelope
    sender address.

    - For UTF-8 charset Elm only knows printable characters from
    Latin/1 range, if unicode database (see elmrc option "unidata")
    is not loaded.

    - For using of ISO2022 character sets it is required that mapping
    them to unicode is know -- otherwise Elm ME+ does not know which
    characters are printable.

    - UTF-16 surrogate pairs (D800-DFFF) are not supported on UTF-7
    charset.

    - Mixing of names using IMAP naming convention
    (imap-naming-convention = yes)
    and names using imap-charset does not work very well...

    - " Regarding my message (8 Aug 2000) regarding 'newmail' on
    AIX 4.3.3 in an 'aixterm' window and the 'aixterm' did not
    close, indeed the problem was NOT related to 'newmail' but an
    AIX bug.

    IBM has release a patch, and the 'aixterm' in AIX 4.3.3 must
    be update with fileset X11.apps.aixterm.4.3.3.26 (PTF
    U473920) is solved to problem."
    From: Noam G. Nudelman

    - File /usr/share/locale/fi/charset gives charset name utf-8 on
    Linux Mandrake 7.2. This causes that Configure generates
    mapping
    fi utf-8
    to elm.mimecharsets. However that seems to have
    incorrect mapping. You may want change this to
    fi ISO-8859-1

    ( however nl_langinfo(CODESET) gives charset ISO-8859-15
    but look following entry. )

    - Locale 'fi' seems to have charset ISO-8859-15 according
    of nl_langinfo(CODESET) on Mandrake Linux 7.2 (and probaly
    others with same glibc version). However for example gnome
    terminal uses font
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-1
    and not
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-15

    Also KDE's konsole program seems use iso8859-1 character set
    although locale is 'fi' which should have ISO-8859-15 according
    of nl_langinfo (selecting "unicode" from menu seems fix that.)

    Because of mismatch more correct locale is fi_FI.88591, which gives
    ISO-8859-1 character set according of nl_langinfo(CODESET).

    ( Locale seems come from /etc/sysconfig/i18n or $HOME/.i18n )

    > To enable handling of ISO-8859-1 and ISO-8859-15 character sets
    on linux console, read comments from doc/terminal.info file.

    - Mandrake Linux 7.2 seems set LD_PRELOAD to load
    /usr/lib/libxalflaunch.so.0. That (xalf-0.4-2mdk) causes that
    elm to crash on startup (actually before main() is reached.)

    - kterm on Mandrake Linux 7.2 seems have (at least on my test
    environment) seems get bad fontlist (*VT100*fontList) which
    gives bad font for iso8859-1 -- therefore ISO-8859-1 characters
    do not work.

    ("xrdb -query" seems report resource with name "*fontList"
    -- that probably overrides "*VT100*fontList" which comes
    from /usr/lib/X11/app-defaults/KTerm )

    - Also note that initially kterm does NOT default to
    ISO-8859-1 -- therefore ISO-8859-1 works only when
    elm explicity switch to ISO-8859-1 (for example
    with 'elm -D ISO-8859-1')

    - When assembling message/partial MIME (RFC 2046)
    requires that all headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are copied from
    initial enclosing message to assembled message. It also
    requires that headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are ignored and
    dropped from enclosed message.

    For now we copy only Received: -headers. Dropping extra
    headers from enclosed message makes assembly more
    complicated (and dropping of Received: -headers
    from enclosed message do not make sense.)

    - mailer=sendmail; verify=yes works only when sendmail
    is installed as setuid root. Use mailer=submission instead.
    * Starting from sendmail 8.12 sendmail is normally
    installed as setgid smmsp and not as setuid root.
    - However error message is printed only if
    verify-local-address=yes is also set

    - IMAP connection is stalled some times. Reason is unknown.

    - From name option (-f) on fastmail is currently broken.

    Collector of these patches
    --------------------------

    Kari Hurtta <elm@elmme-mailer.org>
    Kari Hurtta <hurtta+elm@siilo.FMI.FI>

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Kari Hurtta@21:1/5 to All on Mon Aug 1 06:18:05 2022
    [ Because Usenet news (nntp) server news.kolumbus.fi is closed
    since 2021-05-04 I post this announcement only (not sources)
    via Google Groups instead. ]

    Elm ME+ 2.5 PLalpha59

    - Is available with
    <URL: http://www.elmme-mailer.org/elm-ME+2.5.alpha59.d38fb8653c9d9cf4ecbcc50ee1bf897a.tar.gz >
    and <URL: http://www.elmme-mailer.org/elm-ME+2.5.PLalpha59.patch.gz >
    via http.
    Signatures are
    <URL: http://www.elmme-mailer.org/elm-ME+2.5.alpha59.d38fb8653c9d9cf4ecbcc50ee1bf897a.tar.gz.elm-key-2018.sig >
    <URL: http://www.elmme-mailer.org/elm-ME+2.5.alpha59.d38fb8653c9d9cf4ecbcc50ee1bf897a.tar.gz.sig >
    and <URL: http://www.elmme-mailer.org/elm-ME+2.5.PLalpha59.patch.gz.elm-key-2018.sig >
    <URL: http://www.elmme-mailer.org/elm-ME+2.5.PLalpha59.patch.gz.sig >

    - Is available with
    <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.alpha59.d38fb8653c9d9cf4ecbcc50ee1bf897a.tar.gz >
    and <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.PLalpha59.patch.gz >
    Signatures are
    <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.alpha59.d38fb8653c9d9cf4ecbcc50ee1bf897a.tar.gz.elm-key-2018.sig >
    <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.alpha59.d38fb8653c9d9cf4ecbcc50ee1bf897a.tar.gz.sig >
    and <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.PLalpha59.patch.gz.elm-key-2018.sig >
    <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.PLalpha59.patch.gz.sig >

    - Is available on ftp.funet.fi
    directory pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/
    files elm-ME+2.5.alpha58.d673f00174ac6732724904eecbd5cb4e.tar.gz
    and elm-ME+2.5.PLalpha59.patch.gz
    via anonymous ftp.
    Signatures are elm-ME+2.5.alpha59.d38fb8653c9d9cf4ecbcc50ee1bf897a.tar.gz.elm-key-2018.sig
    elm-ME+2.5.alpha59.d38fb8653c9d9cf4ecbcc50ee1bf897a.tar.gz.sig
    and elm-ME+2.5.PLalpha59.patch.gz.elm-key-2018.sig
    elm-ME+2.5.PLalpha59.patch.gz.sig

    Or is available with
    <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.alpha58.d673f00174ac6732724904eecbd5cb4e.tar.gz >
    and <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha59.patch.gz >
    with browser.
    Signatures are
    <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.alpha59.d38fb8653c9d9cf4ecbcc50ee1bf897a.tar.gz.elm-key-2018.sig >
    <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.alpha59.d38fb8653c9d9cf4ecbcc50ee1bf897a.tar.gz.sig >
    and <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha59.patch.gz.elm-key-2018.sig >
    <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha59.patch.gz.sig >

    Or is available with
    <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.alpha58.d673f00174ac6732724904eecbd5cb4e.tar.gz >
    and <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha59.patch.gz >
    via https.
    Signatures are
    <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.alpha59.d38fb8653c9d9cf4ecbcc50ee1bf897a.tar.gz.elm-key-2018.sig >
    <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.alpha59.d38fb8653c9d9cf4ecbcc50ee1bf897a.tar.gz.sig >
    and <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha59.patch.gz.elm-key-2018.sig >
    <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha59.patch.gz.sig >

    Is NOT available on alt.sources, comp.mail.elm because Usenet news (nntp) server news.kolumbus.fi (*) is closed since 2021-05-04.

    (*) That is apparently also uutiset.elisa.fi and news.saunalahti.fi.
    See: https://elisa.fi/asiakastiedotteet/tiedote/?id=63663313593635

    Signatures are with following keys

    {file}.sig PGP signature (old key pubkey.asc, EA5A2379 1996-04-23)
    {file}.elm-key-2018.sig GPG signature (key elm.key.2018.asc, 44FC796B 2018-12-01, expires: 2028-11-28)

    SUMMARY: This release fixes some compiling errors and
    warnings. This releases adds aliases listing
    (available with TABulator key) to To: and
    CC: -prompts for m)ail, b)ounce and r)eply
    commands. Also some other changes are
    included and bugs fixed.


    Changes on Elm ME+ 2.5 PLalpha59 compared with Elm ME+ 2.5 PLalpha58 --------------------------------------------------------------------

    SUMMARY: This release fixes some compiling errors and
    warnings. This releases adds aliases listing
    (available with TABulator key) to To: and
    CC: -prompts for m)ail, b)ounce and r)eply
    commands. Also some other changes are
    included and bugs fixed.

    - "/usr/bin/ld: outheaders.o:(.bss+0x0): multiple definition of `attribution_s'; mailer.o:(.bss+0x0): first defined here
    /usr/bin/ld: outheaders.o:(.bss+0x8): multiple definition of `fwdattribution_s'; mailer.o:(.bss+0x8): first defined here"
    Reported by: Noam G. Nudelman
    > Added missing extern to struct string * attribution_s and
    struct string * fwdattribution_s on hdrs/elmlib.h

    - "elmregister.c: In function ‘copy_dir’:
    elmregister.c:2234:21: warning: ×’parse_log_tail×’ accessing 1034 bytes in a region of size 1024 [-Wstringop-overflow=]
    2234 | parse_log_tail(&L1,buffer,L,module_ptr,command_ptr,user_ptr,
    | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    2235 | group_ptr,mode_ptr,args_ptr,argnum);
    | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
    Reported by: Noam G. Nudelman
    > Unify parse_log_tail() buffer reservation on
    utils/elmregister.c

    - "elmregister.c: In function ‘copy_dir’:
    elmregister.c:2234:21: warning: ‘parse_log_tail’ accessing 1200 bytes in a region of size 4 [-Wstringop-overflow=]
    2234 | parse_log_tail(&L1,buffer,L,module_ptr,command_ptr,user_ptr,
    | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    2235 | group_ptr,mode_ptr,args_ptr,argnum);
    | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    elmregister.c:2234:21: note: referencing argument 9 of type ‘int *’
    elmregister.c:601:13: note: in a call to function ‘parse_log_tail’
    601 | static void parse_log_tail(l,buffer1,ptr,module_ptr,command_ptr,user_ptr,
    | ^~~~~~~~~~~~~~"
    Reported by: Noam G. Nudelman
    > Changed int args_ptr[MAX_ARGS] to int *args_ptr on prototype

    - "query.c: In function ‘lookup_resolv_cache_nonblocked’:
    query.c:5213:9: warning: ‘__hostalias’ is deprecated: use getaddrinfo instead [-Wdeprecated-declarations]
    5213 | } else if (!dots && (alias = hostalias(name))) {
    | ^
    In file included from elmresolv.h:27,
    from query.c:10:
    /usr/include/resolv.h:185:17: note: declared here
    185 | const char * hostalias (const char *) __THROW
    | ^~~~~~~~~"
    Reported by: Noam G. Nudelman
    > Added Configure test that hostalias() exists and works
    when $HOSTALIASES is set -- this does
    does not remove warning. hostalias() is not anyway useful
    when Elm ME+ is setgid mail, however.
    - Configure of libelme-resolv module asks that
    is hostalias() used directly on module if Elm ME+ is setgid
    or hostalias() is deprecated.
    - Moved hostalias() lookup from lookup_resolv_cache_nonblocked()
    on shared_libs/resolv/query.c to
    query_resolv_cache() on shared_libs/resolv/resolv.c.
    hostname() lookup is now also done when exact name is
    queried without search.

    - ".../resolv/resolvertest2.c: In function ‘main’:
    .../shared_libs/resolv/resolvertest2.c:822:5: warning: ‘__hostalias’ is deprecated: use getaddrinfo instead [-Wdeprecated-declarations]
    822 | } else if (!dots && (alias = hostalias(name))) {
    | ^
    In file included from .../shared_libs/resolv/resolvertest2.c:44:
    /usr/include/resolv.h:185:17: note: declared here
    185 | const char * hostalias (const char *) __THROW
    | ^~~~~~~~~"
    Reported by: Noam G. Nudelman
    > Excluded hostalias() from resolvertest2.c
    That is used on Configure and hostalias() is tested
    after resolvertest2.c tests. hostalias()
    is included later on elmresolvertest2 if
    hostalias() was not excluded.

    - Fixed compilation warning
    .../lib/mbox/remote_server.c:103:5: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation]
    if (REMOTE_BROWSER_magic != dir->a.remote_browser->magic)

    - Fixed compilation warning
    .../lib/mbox/remote_server.c:2805:5: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation]
    if (REMOTE_BROWSER_magic != dir->a.remote_browser->magic)

    - Fixed compilation warning
    .../lib/can_open.c: In function ‘can_open’:
    .../lib/can_open.c:124:31: warning: ?: using integer constants in boolean context, the expression will always evaluate to ‘true’ [-Wint-in-bool-context]
    DPRINT(Debug,(0 == ret) ? 10 : 1,
    ~~~~~~~~~~~~~~~~~~~~~~^~~
    .../hdrs/elmlib.h:2396:21: note: in definition of macro ‘DPRINT’
    if (x.active >= level) debug_action_call action; \
    ^~~~~
    > Changed DPRINT macro
    - Changed also DEBUG_CHECK(), SIGDPRINT() and DEBUG_PRINT_BUFFER()
    macros

    - Fixed compilation warning
    .../lib/digest_wrapper.c: In function ‘digest_proc_equal’:
    .../lib/digest_wrapper.c:473:34: warning: self-comparison always evaluates to false [-Wtautological-compare]
    if (ptr1->digest_result[x] != ptr1->digest_result[x]) {
    ^~
    > Fixed incorrect result of digest_proc_equal()

    - Fixed compilation warning
    .../lib/iso2022.c: In function ‘eat_iso2022_setid’:
    .../lib/iso2022.c:2487:2: warning: this ‘else’ clause does not guard... [-Wmisleading-indentation]
    else result->type = iso2022_94;
    ^~~~
    .../lib/iso2022.c:2488:19: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘else’
    result->bank = bank_G0;
    ^~~~~~

    - Fixed compilation warning
    .../lib/iso2022.c: In function ‘eat_iso2022_setid’:
    .../lib/iso2022.c:2498:2: warning: this ‘else’ clause does not guard... [-Wmisleading-indentation]
    else result->type = iso2022_94;
    ^~~~
    .../lib/iso2022.c:2499:19: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘else’
    result->bank = bank_G1;
    ^~~~~~

    - Fixed compilation warning
    .../lib/iso2022.c: In function ‘eat_iso2022_setid’:
    .../lib/iso2022.c:2509:2: warning: this ‘else’ clause does not guard... [-Wmisleading-indentation]
    else result->type = iso2022_94;
    ^~~~
    .../lib/iso2022.c:2510:19: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘else’
    result->bank = bank_G2;
    ^~~~~~

    - Fixed compilation warning
    .../lib/iso2022.c: In function ‘eat_iso2022_setid’:
    .../lib/iso2022.c:2520:2: warning: this ‘else’ clause does not guard... [-Wmisleading-indentation]
    else result->type = iso2022_94;
    ^~~~
    .../lib/iso2022.c:2521:19: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘else’
    result->bank = bank_G3;
    ^~~~~~

    - Fixed compilation warning
    .../lib/iso2022.c: In function ‘eat_iso2022_setid’:
    .../lib/iso2022.c:2531:2: warning: this ‘else’ clause does not guard... [-Wmisleading-indentation]
    else result->type = iso2022_96;
    ^~~~
    .../lib/iso2022.c:2532:19: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘else’
    result->bank = bank_G1;
    ^~~~~~

    - Fixed compilation warning
    .../lib/iso2022.c: In function ‘eat_iso2022_setid’:
    .../lib/iso2022.c:2543:2: warning: this ‘else’ clause does not guard... [-Wmisleading-indentation]
    else result->type = iso2022_96;
    ^~~~
    .../lib/iso2022.c:2544:19: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘else’
    result->bank = bank_G2;
    ^~~~~~

    - Fixed compilation warning
    .../lib/iso2022.c: In function ‘eat_iso2022_setid’:
    .../lib/iso2022.c:2554:2: warning: this ‘else’ clause does not guard... [-Wmisleading-indentation]
    else result->type = iso2022_96;
    ^~~~
    .../lib/iso2022.c:2555:19: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘else’
    result->bank = bank_G3;
    ^~~~~~

    - Fixed compilation warning
    .../shared_libs/tls/tls.c: In function ‘tls_init’:
    .../shared_libs/tls/tls.c:735:6: warning: unused variable ‘z’ [-Wunused-variable]
    int z,l;
    ^

    - Fixed compilation warning
    .../src/alias_display.c: In function ‘ad_set_alias_group_phrase’:
    .../src/alias_display.c:1660:6: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation]
    if (group_phrase)
    ^~
    .../src/alias_display.c:1663:7: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘if’
    redraw1:
    ^~~~~~~

    - Fixed compilation warning
    .../src/attach_menu.c: In function ‘attach_view_binary’:
    .../src/attach_menu.c:1592:10: warning: self-comparison always evaluates to true [-Wtautological-compare]
    if (cs == cs ||
    ^~
    > Fixed character set check on attach_view_binary()

    - Fixed compilation warning
    .../src/builtin++.c: In function ‘builtinplusplus’:
    .../src/builtin++.c:714:7: warning: this ‘else’ clause does not guard... [-Wmisleading-indentation]
    else
    ^~~~

    - Fixed compilation warning
    .../src/showmsg_c.c: In function ‘process_showmsg_cmd’:
    .../src/showmsg_c.c:679:6: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation]
    if (flags & SHOWMSG_NOMAIL)
    ^~
    .../src/showmsg_c.c:682:3: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘if’
    put_cmd_name(pager_page,TRUE,
    ^~~~~~~~~~~~

    - Fixed case where "Copies to:" prompt is not cleared when
    new address is written - bug was introduced when
    address prompt implementation changed on
    Elm ME+ 2.5 PLalpha58
    > Changed CleartoEOLN() to menu_CleartoEOLN()
    on enter_helper() at src/enter_helper.c

    - Added listing of aliases to
    "Send the message to: "
    and "Copies to: "
    prompts of m)ail command with TABulator. Also
    TABulator shows listing of aliases
    on "Send the message to: "
    prompt on b)ounce command and
    on "Copies to: "
    prompt on r)eply command.
    > TABulator do not show aliases address prompts of
    "Mail Pre-Send Screen" and "Message Header Edit Screen".

    - Added w_menu_calculate_rline() to src/screen/def_sceen.h
    - Added w_menu_calculate_rline * wra_calculate_line;
    to struct menu_draw_routine
    - Added scommon_calculate_rline() to src/screen/scommon.c
    and src/screen/def_scommon.h
    - Added menu_translate_pos() to src/screen/screen.c
    and hdrs/me.h

    - Added add_one_alias_to_expanded() to src/addr_util.c and
    and hdrs/me.h

    - Added full_page_r * full_page; to struct enter_info
    - Added default_full_page() to hdrs/me.h and src/enter_helper.c

    - Added more check_changes() calls to cur_ReadCh2() on src/screen/curs_input.c
    - Changed resize and redraw handling on cur_ReadCh2()
    - Changed waiting on cur_ReadCh2()
    - Added wait_for_action_or_timeout_f() to hdrs/elmlib.h
    and lib/schedule.c

    - Added prompt_hint_r * prompt_hint; to struct enter_info
    - Added default_prompt_hint() to hdrs/me.h and src/enter_helper.c

    - Changed sort_aliases() call on set_aview_alias_mode()
    at src/alias.c
    - Changed prototype of sort_aliases()

    - Fixed crash on debug output on build_address_l()
    SIGNAL PANIC in .../mail/elm-alias/src/signals.c:144:segv_signal
    >>>

    Segment Violation signal!


    Call stack: 7FF9F99BAB34 55BF908911DD 7FF9F912DF10 7FF9F927D461 7FF9F9998086
    continues: 7FF9F9998B5F 55BF907B49DD 55BF907AD4BF 55BF907AFCC7 55BF9082C5CA
    continues: 55BF9082CFC4 55BF9082DB43 55BF9082DCF2 55BF907F8AC0 55BF90829D45
    continues: 55BF9082B5E5 55BF907FBED5 7FF9F9110C87 55BF907AB87A
    backtrace:
    .../lib64/libelmme-base.so.1.1.58+(panic+0x1de)[0x7ff9f99bab34]
    .../bin/elm(segv_signal+0x80)[0x55bf908911dd]
    /lib/x86_64-linux-gnu/libc.so.6(+0x3ef10)[0x7ff9f912df10]
    /lib/x86_64-linux-gnu/libc.so.6(+0x18e461)[0x7ff9f927d461]
    .../lib64/libelmme-base.so.1.1.58+(+0x56086)[0x7ff9f9998086]
    .../lib64/libelmme-base.so.1.1.58+(debug_action_call+0x6b2)[0x7ff9f9998b5f]
    .../bin/elm(build_address_l+0x1264)[0x55bf907b49dd]
    .../bin/elm(+0x284bf)[0x55bf907ad4bf]
    .../bin/elm(prompt_expanded_address+0xc7c)[0x55bf907afcc7]
    .../bin/elm(get_to+0x4e2)[0x55bf9082c5ca]
    .../bin/elm(send_msg_middle2+0x36f)[0x55bf9082cfc4]
    .../bin/elm(send_msg_middle+0x19b)[0x55bf9082db43]
    .../bin/elm(send_msg_l+0x17a)[0x55bf9082dcf2]
    .../bin/elm(mailbox_command+0xf73)[0x55bf907f8ac0]
    .../bin/elm(+0xa4d45)[0x55bf90829d45]
    .../bin/elm(main_messages_menu+0x17d)[0x55bf9082b5e5]
    .../bin/elm(main+0xf48)[0x55bf907fbed5]
    /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xe7)[0x7ff9f9110c87]
    /tmp/TEST/bin/elm(_start+0x2a)[0x55bf907ab87a]
    Press <enter> to abort:

    - Fixed string_need_quote() on lib/stringtok.c

    Warnings
    --------

    - Not compiled with MMDF support defined, so probably it doesn't
    work (or even compile).

    - This has not been tested much so there can be bad bugs.

    Bug reports to: Kari E. Hurtta <elm@elmme-mailer.org>
    (was hurtta+elm@posti.FMI.FI)

    - Internationalized (ie. non-ASCII) domain names are not supported.

    - Support for multipart/signed and multipart/encrypted (specially:
    support for PGP/MIME) only in reading side. There is no support
    for attachments with multipart/encrypted.

    - HP's shoftkeys are no longer supported

    - DECNET addresses like host::user may be interpreted as phrase
    of group syntax or as route of source routed address.

    - Header editing screen now uses addresses in form phrase <address>,
    but because it does not require using of comma (,), multiword
    phrases must be entered in quotes.

    For example: "Kari Hurtta" <hurtta>

    - If address includes <> or comments (), they are not aliased
    expanded. So aliases must be entered as bare words.

    - Addresses given as arguments to elm command should be given
    as one address per argument. Giving of sevaral addresses per
    one argument causes that address is misparsed if header is
    edited on header editing screen.

    That is:

    Use: elm '"Kari Hurtta" <hurtta>' 'Admin <root>'

    Don't use: elm 'Kari Hurtta <hurtta>, Admin <root>'

    - p)rint command acts as P)rint text -command. So it
    is currently quite useless.
    p)rint command does that via readmsg -command. However
    P)rint text does actually same (without readmsg).

    - Some Linux libraries does not follow $LC_CTYPE when program is
    setgid. Net result is that your locale is always C. That is
    visible that $LC_CTYPE does not effect to locale printed by
    'elm -vvvvv':

    Locale (LC_CTYPE): C
    Display character-set: US-ASCII
    Sending character-set: US-ASCII

    - All refrences iso2022 maps are parsed and read to memory.
    This may cause quite big memory consumption specially because
    eastern (multibyte) sets tend to be lot of characters. That
    mapping information should be shared between processes to
    reduce memory consuption.

    - If display charset is produced by using mapping from locale
    to charset where charset definition is later invalidated
    ("removed") by setting explicit compatcharsets on user's
    .elm/elmrc, that may cause PANIC on elm's internal pager
    or other problems. Invalidation happens if display charset
    is on implicit compatcharsets list (because of charset
    definition), but does not have explicit compatcharsets list
    given by user.

    - Neither Unicode didirectional algorithm nor Right-Left scripts
    are supported.

    - In some situations two Status headers may be generated two
    Status headers -- one by IMAP deamon and one from APPENDed
    message.

    - When APPENDing message to IMAP folder (which is normal UNIX
    mailbox format) original "From " separator line can not be
    preserved -- specially it is not possible to pass envelope
    sender address.

    - For UTF-8 charset Elm only knows printable characters from
    Latin/1 range, if unicode database (see elmrc option "unidata")
    is not loaded.

    - For using of ISO2022 character sets it is required that mapping
    them to unicode is know -- otherwise Elm ME+ does not know which
    characters are printable.

    - UTF-16 surrogate pairs (D800-DFFF) are not supported on UTF-7
    charset.

    - Mixing of names using IMAP naming convention
    (imap-naming-convention = yes)
    and names using imap-charset does not work very well...

    - " Regarding my message (8 Aug 2000) regarding 'newmail' on
    AIX 4.3.3 in an 'aixterm' window and the 'aixterm' did not
    close, indeed the problem was NOT related to 'newmail' but an
    AIX bug.

    IBM has release a patch, and the 'aixterm' in AIX 4.3.3 must
    be update with fileset X11.apps.aixterm.4.3.3.26 (PTF
    U473920) is solved to problem."
    From: Noam G. Nudelman

    - File /usr/share/locale/fi/charset gives charset name utf-8 on
    Linux Mandrake 7.2. This causes that Configure generates
    mapping
    fi utf-8
    to elm.mimecharsets. However that seems to have
    incorrect mapping. You may want change this to
    fi ISO-8859-1

    ( however nl_langinfo(CODESET) gives charset ISO-8859-15
    but look following entry. )

    - Locale 'fi' seems to have charset ISO-8859-15 according
    of nl_langinfo(CODESET) on Mandrake Linux 7.2 (and probaly
    others with same glibc version). However for example gnome
    terminal uses font
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-1
    and not
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-15

    Also KDE's konsole program seems use iso8859-1 character set
    although locale is 'fi' which should have ISO-8859-15 according
    of nl_langinfo (selecting "unicode" from menu seems fix that.)

    Because of mismatch more correct locale is fi_FI.88591, which gives
    ISO-8859-1 character set according of nl_langinfo(CODESET).

    ( Locale seems come from /etc/sysconfig/i18n or $HOME/.i18n )

    > To enable handling of ISO-8859-1 and ISO-8859-15 character sets
    on linux console, read comments from doc/terminal.info file.

    - Mandrake Linux 7.2 seems set LD_PRELOAD to load
    /usr/lib/libxalflaunch.so.0. That (xalf-0.4-2mdk) causes that
    elm to crash on startup (actually before main() is reached.)

    - kterm on Mandrake Linux 7.2 seems have (at least on my test
    environment) seems get bad fontlist (*VT100*fontList) which
    gives bad font for iso8859-1 -- therefore ISO-8859-1 characters
    do not work.

    ("xrdb -query" seems report resource with name "*fontList"
    -- that probably overrides "*VT100*fontList" which comes
    from /usr/lib/X11/app-defaults/KTerm )

    - Also note that initially kterm does NOT default to
    ISO-8859-1 -- therefore ISO-8859-1 works only when
    elm explicity switch to ISO-8859-1 (for example
    with 'elm -D ISO-8859-1')

    - When assembling message/partial MIME (RFC 2046)
    requires that all headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are copied from
    initial enclosing message to assembled message. It also
    requires that headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are ignored and
    dropped from enclosed message.

    For now we copy only Received: -headers. Dropping extra
    headers from enclosed message makes assembly more
    complicated (and dropping of Received: -headers
    from enclosed message do not make sense.)

    - mailer=sendmail; verify=yes works only when sendmail
    is installed as setuid root. Use mailer=submission instead.
    * Starting from sendmail 8.12 sendmail is normally
    installed as setgid smmsp and not as setuid root.
    - However error message is printed only if
    verify-local-address=yes is also set

    - IMAP connection is stalled some times. Reason is unknown.

    - From name option (-f) on fastmail is currently broken.

    Collector of these patches
    --------------------------

    Kari Hurtta <elm@elmme-mailer.org>
    Kari Hurtta <hurtta+elm@siilo.FMI.FI>


    diffstat:

    Configure | 7
    README.ME+ | 307 +++++++++++!
    doc/elmrc.samp | 4
    hdrs/elmlib.h | 32 !
    hdrs/me.h | 64 +
    hdrs/patchlevel.h | 10
    hdrs/s_elm.h | 2
    hdrs/s_me.h | 7
    lib/digest_wrapper.c | 6
    lib/iso2022.c | 25
    lib/mbox/remote_server.c | 26 !
    lib/schedule.c | 41 +
    lib/stringtok.c | 6
    nls/C/C/C/s_elm.m | 8
    nls/C/C/C/s_me.m | 14
    shared_libs/resolv/Makefile.SH | 7
    shared_libs/resolv/config | 199 +++++++
    shared_libs/resolv/query.c | 16
    shared_libs/resolv/resolv.c | 90 ++!
    shared_libs/resolv/resolvconf.h.SH | 8
    shared_libs/resolv/resolvertest2.c | 17
    shared_libs/tls/tls.c | 7
    src/a_sort.c | 32 !
    src/addr_prompt.c | 933 ++++++++++++++++++++++++++++!!!!!!!!
    src/addr_util.c | 31 !
    src/alias.c | 8
    src/alias_display.c | 6
    src/attach_menu.c | 6
    src/browser.c | 13
    src/builtin++.c | 23
    src/editmsg.c | 9
    src/enter_helper.c | 216 +++++!!!
    src/hdrconfg.c | 6
    src/in_utils.c | 26
    src/mailmsg1.c | 42
    src/options.c | 6
    src/screen/curs_input.c | 258 ++++-!!!
    src/screen/def_scommon.h | 8
    src/screen/def_screen.h | 12
    src/screen/header.c | 7
    src/screen/scommon.c | 60 ++
    src/screen/screen.c | 62 ++
    src/screen/subpage.c | 7
    src/screen/wrapper.c | 21
    src/showmsg_c.c | 21
    utils/elmregister.c | 39 !
    46 files changed, 1816 insertions(+), 49 deletions(-), 890 modifications(!)

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Kari Hurtta@21:1/5 to All on Tue Aug 2 00:29:22 2022
    Experimental RPM spec file for ELM ME+ 2.5 PLalpha59
    exists on <URL: http://www.elmme-mailer.org/rpm/elm-ME+2.5.html >
    directory.

    Files are following

    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha59-1.spec
    RPM spec file
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha59-1.spec.elm-key-2018.sig
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha59-1.spec.sig
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha59-1.mdk7.2.src.rpm
    Source rpm
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha59-1.mdk7.2.src.rpm.sig

    Only binary packages for old Mandrake release 7.2 are available (Linux
    2.2, glibc 2.1, Sendmail 8.13).

    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha59-1.mdk7.2.i686.rpm
    Package elm binary RPM build on Linux Mandrake release 7.2
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha59-1.mdk7.2.i686.rpm.sig
    - http://www.elmme-mailer.org/rpm/elm-mod-ME+2.5.alpha59-1.mdk7.2.i686.rpm
    Package elm-mod binary RPM build on Linux Mandrake release 7.2
    - http://www.elmme-mailer.org/rpm/elm-mod-ME+2.5.alpha59-1.mdk7.2.i686.rpm.sig
    - http://www.elmme-mailer.org/rpm/elm-tls-ME+2.5.alpha59-1.mdk7.2.i686.rpm
    Package elm-tls binary RPM build on Linux Mandrake release 7.2
    - http://www.elmme-mailer.org/rpm/elm-tls-ME+2.5.alpha59-1.mdk7.2.i686.rpm.sig

    Source and binary packages are signed internally with GPG key
    elm.key.2018.asc (44FC796B 2018-12-01).

    This is is compiled agaist Sendmail 8.13 (not from Mandrake
    distribution).

    elm-tls package do not load/work on Mandrake 7.2, because openssl
    library misses ASN1_STRING_to_UTF8 function.

    * Signatures

    {file}.sig PGP signature (old key pubkey.asc, EA5A2379 1996-04-23)
    {file}.elm-key-2018.sig GPG signature (key elm.key.2018.asc, 44FC796B 2018-12-01, expires: 2028-11-28)

    * Configuration

    Following files (if exists) are rewritten by elmconfwriter on
    installation:

    - /usr/local/lib/elm.rc
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.hashmarks

    Spec file compiles elm for binary distribution, so you must edit
    /usr/local/lib/elm.rc before using Elm ME+ 2.5. Following variables may
    need to be modified on elm.rc:

    - mailer
    - hostdomain (this is usually needed)
    - hostfullname
    - hostname (usually this is not needed)
    - mailname (default values is generated from other values)
    name-resolution (controls default values of hostdomain,
    hostfullname, hostname, mailname)


    For re-generation of following file, old information (if exists) is
    used:

    - /usr/local/lib/elm.rc

    WARNING: Check after installation that libraries are enabled. Global
    elm.rc values are:

    use-library =
    use-base-library = iconv
    use-config-library = resolv
    use-connect-library = tls resolv
    use-mailer-library = smtp resolv

    Note that libelmme-resolv.so does not compile on all distributions. In
    that case omit resolv from elm.rc.

    After editing global elm.rc run /usr/local/lib/elmrc-write -GI for
    fixing possible errors.

    On installation following existing files are merged with new values:

    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.hashmarks

    Old values from /usr/local/lib/aliases.text are converted to /usr/local/lib/elm.aliases and /usr/local/lib/aliases.text is renamed to /usr/local/lib/aliases.text.OLD.

    On installation new values without merging are written to following
    files:

    - /usr/local/lib/elm.aliases.NEW
    - /usr/local/lib/elm.mailinglists.NEW
    - /usr/local/lib/elm.mailservices.NEW
    - /usr/local/lib/elm.mimecharsets.NEW
    - /usr/local/lib/elm.mimetypes.NEW
    - /usr/local/lib/elm.terminalinfo.NEW
    - /usr/local/lib/elm.iso2022sets.NEW
    - /usr/local/lib/elm.hashmarks.NEW

    Package elm-mod includes libelmme-iconv.so and libelmme-smtp.so. (If
    package elm-mod includes libelmme-resolv.so, this is noted). And package elm-tls includes libelmme-tls.so.

    Installation loses mailer = submission setting from global /usr/local/lib/elm.rc, because when elm package rewrites elm.rc,
    submission mailer is not available. It becomes from elm-mod package.

    However failed values of /usr/local/lib/elm.rc are saved to /usr/local/lib/elm.rc.old-values file during installation.

    Global setting mailer = submission is restored from /usr/local/lib/elm.rc.old-values file, when package elm-mod is
    installed.

    Also following directories are used:

    - /usr/local/lib/elm.map.txt/ (global setting map-text-dir =
    {lib}/elm.map.txt)
    - /usr/local/lib/elm.map.bin/ (global setting map-bin-dir =
    {lib}/elm.map.bin)
    - /usr/local/lib/elm.user.map/ (global setting user-map-dir =
    {lib}/elm.user.map)

    Hashmark EXAMPLE uses file /usr/local/lib/elm.user.map/elm.usermap.

    SUMMARY: This release fixes some compiling errors and
    warnings. This releases adds aliases listing
    (available with TABulator key) to To: and
    CC: -prompts for m)ail, b)ounce and r)eply
    commands. Also some other changes are
    included and bugs fixed.

    Elm ME+ 2.5 PLalpha59 changelog

    Changes on Elm ME+ 2.5 PLalpha59 compared with Elm ME+ 2.5 PLalpha58 --------------------------------------------------------------------

    SUMMARY: This release fixes some compiling errors and
    warnings. This releases adds aliases listing
    (available with TABulator key) to To: and
    CC: -prompts for m)ail, b)ounce and r)eply
    commands. Also some other changes are
    included and bugs fixed.

    - "/usr/bin/ld: outheaders.o:(.bss+0x0): multiple definition of `attribution_s'; mailer.o:(.bss+0x0): first defined here
    /usr/bin/ld: outheaders.o:(.bss+0x8): multiple definition of `fwdattribution_s'; mailer.o:(.bss+0x8): first defined here"
    Reported by: Noam G. Nudelman
    > Added missing extern to struct string * attribution_s and
    struct string * fwdattribution_s on hdrs/elmlib.h

    - "elmregister.c: In function ‘copy_dir’:
    elmregister.c:2234:21: warning: ×’parse_log_tail×’ accessing 1034 bytes in a region of size 1024 [-Wstringop-overflow=]
    2234 | parse_log_tail(&L1,buffer,L,module_ptr,command_ptr,user_ptr,
    | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    2235 | group_ptr,mode_ptr,args_ptr,argnum);
    | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
    Reported by: Noam G. Nudelman
    > Unify parse_log_tail() buffer reservation on
    utils/elmregister.c

    - "elmregister.c: In function ‘copy_dir’:
    elmregister.c:2234:21: warning: ‘parse_log_tail’ accessing 1200 bytes in a region of size 4 [-Wstringop-overflow=]
    2234 | parse_log_tail(&L1,buffer,L,module_ptr,command_ptr,user_ptr,
    | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    2235 | group_ptr,mode_ptr,args_ptr,argnum);
    | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    elmregister.c:2234:21: note: referencing argument 9 of type ‘int *’
    elmregister.c:601:13: note: in a call to function ‘parse_log_tail’
    601 | static void parse_log_tail(l,buffer1,ptr,module_ptr,command_ptr,user_ptr,
    | ^~~~~~~~~~~~~~"
    Reported by: Noam G. Nudelman
    > Changed int args_ptr[MAX_ARGS] to int *args_ptr on prototype

    - "query.c: In function ‘lookup_resolv_cache_nonblocked’:
    query.c:5213:9: warning: ‘__hostalias’ is deprecated: use getaddrinfo instead [-Wdeprecated-declarations]
    5213 | } else if (!dots && (alias = hostalias(name))) {
    | ^
    In file included from elmresolv.h:27,
    from query.c:10:
    /usr/include/resolv.h:185:17: note: declared here
    185 | const char * hostalias (const char *) __THROW
    | ^~~~~~~~~"
    Reported by: Noam G. Nudelman
    > Added Configure test that hostalias() exists and works
    when $HOSTALIASES is set -- this does
    does not remove warning. hostalias() is not anyway useful
    when Elm ME+ is setgid mail, however.
    - Configure of libelme-resolv module asks that
    is hostalias() used directly on module if Elm ME+ is setgid
    or hostalias() is deprecated.
    - Moved hostalias() lookup from lookup_resolv_cache_nonblocked()
    on shared_libs/resolv/query.c to
    query_resolv_cache() on shared_libs/resolv/resolv.c.
    hostname() lookup is now also done when exact name is
    queried without search.

    - ".../resolv/resolvertest2.c: In function ‘main’:
    .../shared_libs/resolv/resolvertest2.c:822:5: warning: ‘__hostalias’ is deprecated: use getaddrinfo instead [-Wdeprecated-declarations]
    822 | } else if (!dots && (alias = hostalias(name))) {
    | ^
    In file included from .../shared_libs/resolv/resolvertest2.c:44:
    /usr/include/resolv.h:185:17: note: declared here
    185 | const char * hostalias (const char *) __THROW
    | ^~~~~~~~~"
    Reported by: Noam G. Nudelman
    > Excluded hostalias() from resolvertest2.c
    That is used on Configure and hostalias() is tested
    after resolvertest2.c tests. hostalias()
    is included later on elmresolvertest2 if
    hostalias() was not excluded.

    - Fixed compilation warning
    .../lib/mbox/remote_server.c:103:5: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation]
    if (REMOTE_BROWSER_magic != dir->a.remote_browser->magic)

    - Fixed compilation warning
    .../lib/mbox/remote_server.c:2805:5: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation]
    if (REMOTE_BROWSER_magic != dir->a.remote_browser->magic)

    - Fixed compilation warning
    .../lib/can_open.c: In function ‘can_open’:
    .../lib/can_open.c:124:31: warning: ?: using integer constants in boolean context, the expression will always evaluate to ‘true’ [-Wint-in-bool-context]
    DPRINT(Debug,(0 == ret) ? 10 : 1,
    ~~~~~~~~~~~~~~~~~~~~~~^~~
    .../hdrs/elmlib.h:2396:21: note: in definition of macro ‘DPRINT’
    if (x.active >= level) debug_action_call action; \
    ^~~~~
    > Changed DPRINT macro
    - Changed also DEBUG_CHECK(), SIGDPRINT() and DEBUG_PRINT_BUFFER()
    macros

    - Fixed compilation warning
    .../lib/digest_wrapper.c: In function ‘digest_proc_equal’:
    .../lib/digest_wrapper.c:473:34: warning: self-comparison always evaluates to false [-Wtautological-compare]
    if (ptr1->digest_result[x] != ptr1->digest_result[x]) {
    ^~
    > Fixed incorrect result of digest_proc_equal()

    - Fixed compilation warning
    .../lib/iso2022.c: In function ‘eat_iso2022_setid’:
    .../lib/iso2022.c:2487:2: warning: this ‘else’ clause does not guard... [-Wmisleading-indentation]
    else result->type = iso2022_94;
    ^~~~
    .../lib/iso2022.c:2488:19: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘else’
    result->bank = bank_G0;
    ^~~~~~

    - Fixed compilation warning
    .../lib/iso2022.c: In function ‘eat_iso2022_setid’:
    .../lib/iso2022.c:2498:2: warning: this ‘else’ clause does not guard... [-Wmisleading-indentation]
    else result->type = iso2022_94;
    ^~~~
    .../lib/iso2022.c:2499:19: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘else’
    result->bank = bank_G1;
    ^~~~~~

    - Fixed compilation warning
    .../lib/iso2022.c: In function ‘eat_iso2022_setid’:
    .../lib/iso2022.c:2509:2: warning: this ‘else’ clause does not guard... [-Wmisleading-indentation]
    else result->type = iso2022_94;
    ^~~~
    .../lib/iso2022.c:2510:19: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘else’
    result->bank = bank_G2;
    ^~~~~~

    - Fixed compilation warning
    .../lib/iso2022.c: In function ‘eat_iso2022_setid’:
    .../lib/iso2022.c:2520:2: warning: this ‘else’ clause does not guard... [-Wmisleading-indentation]
    else result->type = iso2022_94;
    ^~~~
    .../lib/iso2022.c:2521:19: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘else’
    result->bank = bank_G3;
    ^~~~~~

    - Fixed compilation warning
    .../lib/iso2022.c: In function ‘eat_iso2022_setid’:
    .../lib/iso2022.c:2531:2: warning: this ‘else’ clause does not guard... [-Wmisleading-indentation]
    else result->type = iso2022_96;
    ^~~~
    .../lib/iso2022.c:2532:19: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘else’
    result->bank = bank_G1;
    ^~~~~~

    - Fixed compilation warning
    .../lib/iso2022.c: In function ‘eat_iso2022_setid’:
    .../lib/iso2022.c:2543:2: warning: this ‘else’ clause does not guard... [-Wmisleading-indentation]
    else result->type = iso2022_96;
    ^~~~
    .../lib/iso2022.c:2544:19: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘else’
    result->bank = bank_G2;
    ^~~~~~

    - Fixed compilation warning
    .../lib/iso2022.c: In function ‘eat_iso2022_setid’:
    .../lib/iso2022.c:2554:2: warning: this ‘else’ clause does not guard... [-Wmisleading-indentation]
    else result->type = iso2022_96;
    ^~~~
    .../lib/iso2022.c:2555:19: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘else’
    result->bank = bank_G3;
    ^~~~~~

    - Fixed compilation warning
    .../shared_libs/tls/tls.c: In function ‘tls_init’:
    .../shared_libs/tls/tls.c:735:6: warning: unused variable ‘z’ [-Wunused-variable]
    int z,l;
    ^

    - Fixed compilation warning
    .../src/alias_display.c: In function ‘ad_set_alias_group_phrase’:
    .../src/alias_display.c:1660:6: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation]
    if (group_phrase)
    ^~
    .../src/alias_display.c:1663:7: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘if’
    redraw1:
    ^~~~~~~

    - Fixed compilation warning
    .../src/attach_menu.c: In function ‘attach_view_binary’:
    .../src/attach_menu.c:1592:10: warning: self-comparison always evaluates to true [-Wtautological-compare]
    if (cs == cs ||
    ^~
    > Fixed character set check on attach_view_binary()

    - Fixed compilation warning
    .../src/builtin++.c: In function ‘builtinplusplus’:
    .../src/builtin++.c:714:7: warning: this ‘else’ clause does not guard... [-Wmisleading-indentation]
    else
    ^~~~

    - Fixed compilation warning
    .../src/showmsg_c.c: In function ‘process_showmsg_cmd’:
    .../src/showmsg_c.c:679:6: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation]
    if (flags & SHOWMSG_NOMAIL)
    ^~
    .../src/showmsg_c.c:682:3: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘if’
    put_cmd_name(pager_page,TRUE,
    ^~~~~~~~~~~~

    - Fixed case where "Copies to:" prompt is not cleared when
    new address is written - bug was introduced when
    address prompt implementation changed on
    Elm ME+ 2.5 PLalpha58
    > Changed CleartoEOLN() to menu_CleartoEOLN()
    on enter_helper() at src/enter_helper.c

    - Added listing of aliases to
    "Send the message to: "
    and "Copies to: "
    prompts of m)ail command with TABulator. Also
    TABulator shows listing of aliases
    on "Send the message to: "
    prompt on b)ounce command and
    on "Copies to: "
    prompt on r)eply command.
    > TABulator do not show aliases address prompts of
    "Mail Pre-Send Screen" and "Message Header Edit Screen".

    - Added w_menu_calculate_rline() to src/screen/def_sceen.h
    - Added w_menu_calculate_rline * wra_calculate_line;
    to struct menu_draw_routine
    - Added scommon_calculate_rline() to src/screen/scommon.c
    and src/screen/def_scommon.h
    - Added menu_translate_pos() to src/screen/screen.c
    and hdrs/me.h

    - Added add_one_alias_to_expanded() to src/addr_util.c and
    and hdrs/me.h

    - Added full_page_r * full_page; to struct enter_info
    - Added default_full_page() to hdrs/me.h and src/enter_helper.c

    - Added more check_changes() calls to cur_ReadCh2() on src/screen/curs_input.c
    - Changed resize and redraw handling on cur_ReadCh2()
    - Changed waiting on cur_ReadCh2()
    - Added wait_for_action_or_timeout_f() to hdrs/elmlib.h
    and lib/schedule.c

    - Added prompt_hint_r * prompt_hint; to struct enter_info
    - Added default_prompt_hint() to hdrs/me.h and src/enter_helper.c

    - Changed sort_aliases() call on set_aview_alias_mode()
    at src/alias.c
    - Changed prototype of sort_aliases()

    - Fixed crash on debug output on build_address_l()
    SIGNAL PANIC in .../mail/elm-alias/src/signals.c:144:segv_signal
    >>>

    Segment Violation signal!


    Call stack: 7FF9F99BAB34 55BF908911DD 7FF9F912DF10 7FF9F927D461 7FF9F9998086
    continues: 7FF9F9998B5F 55BF907B49DD 55BF907AD4BF 55BF907AFCC7 55BF9082C5CA
    continues: 55BF9082CFC4 55BF9082DB43 55BF9082DCF2 55BF907F8AC0 55BF90829D45
    continues: 55BF9082B5E5 55BF907FBED5 7FF9F9110C87 55BF907AB87A
    backtrace:
    .../lib64/libelmme-base.so.1.1.58+(panic+0x1de)[0x7ff9f99bab34]
    .../bin/elm(segv_signal+0x80)[0x55bf908911dd]
    /lib/x86_64-linux-gnu/libc.so.6(+0x3ef10)[0x7ff9f912df10]
    /lib/x86_64-linux-gnu/libc.so.6(+0x18e461)[0x7ff9f927d461]
    .../lib64/libelmme-base.so.1.1.58+(+0x56086)[0x7ff9f9998086]
    .../lib64/libelmme-base.so.1.1.58+(debug_action_call+0x6b2)[0x7ff9f9998b5f]
    .../bin/elm(build_address_l+0x1264)[0x55bf907b49dd]
    .../bin/elm(+0x284bf)[0x55bf907ad4bf]
    .../bin/elm(prompt_expanded_address+0xc7c)[0x55bf907afcc7]
    .../bin/elm(get_to+0x4e2)[0x55bf9082c5ca]
    .../bin/elm(send_msg_middle2+0x36f)[0x55bf9082cfc4]
    .../bin/elm(send_msg_middle+0x19b)[0x55bf9082db43]
    .../bin/elm(send_msg_l+0x17a)[0x55bf9082dcf2]
    .../bin/elm(mailbox_command+0xf73)[0x55bf907f8ac0]
    .../bin/elm(+0xa4d45)[0x55bf90829d45]
    .../bin/elm(main_messages_menu+0x17d)[0x55bf9082b5e5]
    .../bin/elm(main+0xf48)[0x55bf907fbed5]
    /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xe7)[0x7ff9f9110c87]
    /tmp/TEST/bin/elm(_start+0x2a)[0x55bf907ab87a]
    Press <enter> to abort:

    - Fixed string_need_quote() on lib/stringtok.c

    Warnings
    --------

    - Not compiled with MMDF support defined, so probably it doesn't
    work (or even compile).

    - This has not been tested much so there can be bad bugs.

    Bug reports to: Kari E. Hurtta <elm@elmme-mailer.org>
    (was hurtta+elm@posti.FMI.FI)

    - Internationalized (ie. non-ASCII) domain names are not supported.

    - Support for multipart/signed and multipart/encrypted (specially:
    support for PGP/MIME) only in reading side. There is no support
    for attachments with multipart/encrypted.

    - HP's shoftkeys are no longer supported

    - DECNET addresses like host::user may be interpreted as phrase
    of group syntax or as route of source routed address.

    - Header editing screen now uses addresses in form phrase <address>,
    but because it does not require using of comma (,), multiword
    phrases must be entered in quotes.

    For example: "Kari Hurtta" <hurtta>

    - If address includes <> or comments (), they are not aliased
    expanded. So aliases must be entered as bare words.

    - Addresses given as arguments to elm command should be given
    as one address per argument. Giving of sevaral addresses per
    one argument causes that address is misparsed if header is
    edited on header editing screen.

    That is:

    Use: elm '"Kari Hurtta" <hurtta>' 'Admin <root>'

    Don't use: elm 'Kari Hurtta <hurtta>, Admin <root>'

    - p)rint command acts as P)rint text -command. So it
    is currently quite useless.
    p)rint command does that via readmsg -command. However
    P)rint text does actually same (without readmsg).

    - Some Linux libraries does not follow $LC_CTYPE when program is
    setgid. Net result is that your locale is always C. That is
    visible that $LC_CTYPE does not effect to locale printed by
    'elm -vvvvv':

    Locale (LC_CTYPE): C
    Display character-set: US-ASCII
    Sending character-set: US-ASCII

    - All refrences iso2022 maps are parsed and read to memory.
    This may cause quite big memory consumption specially because
    eastern (multibyte) sets tend to be lot of characters. That
    mapping information should be shared between processes to
    reduce memory consuption.

    - If display charset is produced by using mapping from locale
    to charset where charset definition is later invalidated
    ("removed") by setting explicit compatcharsets on user's
    .elm/elmrc, that may cause PANIC on elm's internal pager
    or other problems. Invalidation happens if display charset
    is on implicit compatcharsets list (because of charset
    definition), but does not have explicit compatcharsets list
    given by user.

    - Neither Unicode didirectional algorithm nor Right-Left scripts
    are supported.

    - In some situations two Status headers may be generated two
    Status headers -- one by IMAP deamon and one from APPENDed
    message.

    - When APPENDing message to IMAP folder (which is normal UNIX
    mailbox format) original "From " separator line can not be
    preserved -- specially it is not possible to pass envelope
    sender address.

    - For UTF-8 charset Elm only knows printable characters from
    Latin/1 range, if unicode database (see elmrc option "unidata")
    is not loaded.

    - For using of ISO2022 character sets it is required that mapping
    them to unicode is know -- otherwise Elm ME+ does not know which
    characters are printable.

    - UTF-16 surrogate pairs (D800-DFFF) are not supported on UTF-7
    charset.

    - Mixing of names using IMAP naming convention
    (imap-naming-convention = yes)
    and names using imap-charset does not work very well...

    - " Regarding my message (8 Aug 2000) regarding 'newmail' on
    AIX 4.3.3 in an 'aixterm' window and the 'aixterm' did not
    close, indeed the problem was NOT related to 'newmail' but an
    AIX bug.

    IBM has release a patch, and the 'aixterm' in AIX 4.3.3 must
    be update with fileset X11.apps.aixterm.4.3.3.26 (PTF
    U473920) is solved to problem."
    From: Noam G. Nudelman

    - File /usr/share/locale/fi/charset gives charset name utf-8 on
    Linux Mandrake 7.2. This causes that Configure generates
    mapping
    fi utf-8
    to elm.mimecharsets. However that seems to have
    incorrect mapping. You may want change this to
    fi ISO-8859-1

    ( however nl_langinfo(CODESET) gives charset ISO-8859-15
    but look following entry. )

    - Locale 'fi' seems to have charset ISO-8859-15 according
    of nl_langinfo(CODESET) on Mandrake Linux 7.2 (and probaly
    others with same glibc version). However for example gnome
    terminal uses font
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-1
    and not
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-15

    Also KDE's konsole program seems use iso8859-1 character set
    although locale is 'fi' which should have ISO-8859-15 according
    of nl_langinfo (selecting "unicode" from menu seems fix that.)

    Because of mismatch more correct locale is fi_FI.88591, which gives
    ISO-8859-1 character set according of nl_langinfo(CODESET).

    ( Locale seems come from /etc/sysconfig/i18n or $HOME/.i18n )

    > To enable handling of ISO-8859-1 and ISO-8859-15 character sets
    on linux console, read comments from doc/terminal.info file.

    - Mandrake Linux 7.2 seems set LD_PRELOAD to load
    /usr/lib/libxalflaunch.so.0. That (xalf-0.4-2mdk) causes that
    elm to crash on startup (actually before main() is reached.)

    - kterm on Mandrake Linux 7.2 seems have (at least on my test
    environment) seems get bad fontlist (*VT100*fontList) which
    gives bad font for iso8859-1 -- therefore ISO-8859-1 characters
    do not work.

    ("xrdb -query" seems report resource with name "*fontList"
    -- that probably overrides "*VT100*fontList" which comes
    from /usr/lib/X11/app-defaults/KTerm )

    - Also note that initially kterm does NOT default to
    ISO-8859-1 -- therefore ISO-8859-1 works only when
    elm explicity switch to ISO-8859-1 (for example
    with 'elm -D ISO-8859-1')

    - When assembling message/partial MIME (RFC 2046)
    requires that all headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are copied from
    initial enclosing message to assembled message. It also
    requires that headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are ignored and
    dropped from enclosed message.

    For now we copy only Received: -headers. Dropping extra
    headers from enclosed message makes assembly more
    complicated (and dropping of Received: -headers
    from enclosed message do not make sense.)

    - mailer=sendmail; verify=yes works only when sendmail
    is installed as setuid root. Use mailer=submission instead.
    * Starting from sendmail 8.12 sendmail is normally
    installed as setgid smmsp and not as setuid root.
    - However error message is printed only if
    verify-local-address=yes is also set

    - IMAP connection is stalled some times. Reason is unknown.

    - From name option (-f) on fastmail is currently broken.

    Collector of these patches
    --------------------------

    Kari Hurtta <elm@elmme-mailer.org>
    Kari Hurtta <hurtta+elm@siilo.FMI.FI>

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Kari Hurtta@21:1/5 to All on Wed Aug 3 00:24:32 2022
    Experimental DEB generator script for Elm ME+ 2.5 PLalpha59 exists on
    <URL: http://www.elmme-mailer.org/deb/elm-ME+2.5.html > directory.

    Files are following

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha59-2.gen_deb
    DEB generator script
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha59-2.gen_deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha59-2.gen_deb.sig


    A command

    elm-ME+2.5.alpha59-2.gen_deb {packager}

    generates package elmme with version 1.1.59-2.{distribution}.

    A command

    elm-ME+2.5.alpha59-2.gen_deb --old {packager}

    generates package elm with version ME+2.5.alpha59-2.{distribution}.

    Both commands produce package with filename elm-ME+2.5.alpha59-2.{distribution}.{arch}.deb.

    Module libelmme-resolv.so is included for all distributions.

    == Old package names, i386

    Package elm with version ME+2.5.alpha59-2.{distribution} and
    architecture i386.

    * Compiled on Ubuntu 6.06.2 LTS
    (Linux 2.6, glibc 2.3, Sendmail 8.13)

    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha59-2.Ubuntu6.06.i386.deb
    Package elm binary DEB build on Ubuntu 6.06.2 LTS
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha59-2.Ubuntu6.06.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha59-2.Ubuntu6.06.i386.deb.sig

    * Compiled on Ubuntu 10.04.4 LTS
    (Linux 2.6, glibc 2.11, Sendmail 8.14)

    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha59-2.Ubuntu10.04.i386.deb
    Package elm binary DEB build on Ubuntu 10.04.4 LTS
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha59-2.Ubuntu10.04.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha59-2.Ubuntu10.04.i386.deb.sig

    == New package names, i386

    Package elmme with version 1.1.59-2.{distribution} and architecture
    i386.

    * Compiled on Ubuntu 10.04.4 LTS
    (Linux 2.6, glibc 2.11, Sendmail 8.14)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha59-2.Ubuntu10.04.i386.deb
    Package elmme binary DEB build on Ubuntu 10.04.4 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha59-2.Ubuntu10.04.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha59-2.Ubuntu10.04.i386.deb.sig

    * Compiled on Ubuntu 14.04.6 LTS
    (Linux 4.4, glibc 2.19, no MTA)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha59-2.Ubuntu14.04.i386.deb
    Package elmme binary DEB build on Ubuntu 14.04.4 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha59-2.Ubuntu14.04.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha59-2.Ubuntu14.04.i386.deb.sig

    == New package names, amd64 (x86_64)

    Package elmme with version 1.1.59-2.{distribution} and architecture
    amd64 (also known as x86_64).

    * Compiled on Ubuntu 18.04.6 LTS
    (Linux 4.15, glibc 2.27, Sendmail 8.15)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha59-2.Ubuntu18.04.amd64.deb
    Package elmme binary DEB build on Ubuntu 18.04.6 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha59-2.Ubuntu18.04.amd64.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha59-2.Ubuntu18.04.amd64.deb.sig

    == Signatures

    {file}.sig PGP signature (old key pubkey.asc, EA5A2379 1996-04-23)
    {file}.elm-key-2018.sig GPG signature (key elm.key.2018.asc, 44FC796B 2018-12-01, expires: 2028-11-28)

    == Configuration

    Following files (if exists) are rewritten by elmconfwriter on
    installation:

    - /usr/local/lib/elm.rc
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.hashmarks

    Deb generator script compiles elm for binary distribution, so you must
    edit /usr/local/lib/elm.rc before using Elm ME+ 2.5. Following variables
    may need to be modified on elm.rc:

    - mailer
    - hostdomain (this is usually needed)
    - hostfullname
    - hostname (usually this is not needed)
    - mailname (default values is generated from other values)
    - name-resolution (controls default values of hostdomain, hostfullname, hostname, mailname)

    By default first value for mailname is read from /etc/mailname file.

    For re-generation of following file, old information (if exists) is
    used:

    - /usr/local/lib/elm.rc

    WARNING: Check after installation that libraries are enabled. Global
    elm.rc values are:

    use-library =
    use-base-library = iconv
    use-config-library = resolv
    use-connect-library = tls resolv
    use-mailer-library = smtp resolv

    After editing global elm.rc run /usr/local/lib/elmrc-write -GI for fixing possible errors.

    On installation following existing files are merged with new values:

    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.hashmarks

    Old values from /usr/local/lib/aliases.text are converted to /usr/local/lib/elm.aliases and /usr/local/lib/aliases.text is renamed to /usr/local/lib/aliases.text.OLD.

    On installation new values without merging are written to following
    files:

    - /usr/local/lib/elm.aliases.NEW
    - /usr/local/lib/elm.mailinglists.NEW
    - /usr/local/lib/elm.mailservices.NEW
    - /usr/local/lib/elm.mimecharsets.NEW
    - /usr/local/lib/elm.mimetypes.NEW
    - /usr/local/lib/elm.terminalinfo.NEW
    - /usr/local/lib/elm.iso2022sets.NEW
    - /usr/local/lib/elm.hashmarks.NEW

    Also following directories are used:

    - /usr/local/lib/elm.map.txt/ (global setting map-text-dir = {lib}/elm.map.txt)
    - /usr/local/lib/elm.map.bin/ (global setting map-bin-dir = {lib}/elm.map.bin)
    - /usr/local/lib/elm.user.map/ (global setting user-map-dir = {lib}/elm.user.map)

    Hashmark EXAMPLE uses file /usr/local/lib/elm.user.map/elm.usermap.

    SUMMARY: This release fixes some compiling errors and
    warnings. This releases adds aliases listing
    (available with TABulator key) to To: and
    CC: -prompts for m)ail, b)ounce and r)eply
    commands. Also some other changes are
    included and bugs fixed.

    Elm ME+ 2.5 PLalpha59 changelog

    Changes on Elm ME+ 2.5 PLalpha59 compared with Elm ME+ 2.5 PLalpha58 --------------------------------------------------------------------

    SUMMARY: This release fixes some compiling errors and
    warnings. This releases adds aliases listing
    (available with TABulator key) to To: and
    CC: -prompts for m)ail, b)ounce and r)eply
    commands. Also some other changes are
    included and bugs fixed.

    - "/usr/bin/ld: outheaders.o:(.bss+0x0): multiple definition of `attribution_s'; mailer.o:(.bss+0x0): first defined here
    /usr/bin/ld: outheaders.o:(.bss+0x8): multiple definition of `fwdattribution_s'; mailer.o:(.bss+0x8): first defined here"
    Reported by: Noam G. Nudelman
    > Added missing extern to struct string * attribution_s and
    struct string * fwdattribution_s on hdrs/elmlib.h

    - "elmregister.c: In function ‘copy_dir’:
    elmregister.c:2234:21: warning: ×’parse_log_tail×’ accessing 1034 bytes in a region of size 1024 [-Wstringop-overflow=]
    2234 | parse_log_tail(&L1,buffer,L,module_ptr,command_ptr,user_ptr,
    | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    2235 | group_ptr,mode_ptr,args_ptr,argnum);
    | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
    Reported by: Noam G. Nudelman
    > Unify parse_log_tail() buffer reservation on
    utils/elmregister.c

    - "elmregister.c: In function ‘copy_dir’:
    elmregister.c:2234:21: warning: ‘parse_log_tail’ accessing 1200 bytes in a region of size 4 [-Wstringop-overflow=]
    2234 | parse_log_tail(&L1,buffer,L,module_ptr,command_ptr,user_ptr,
    | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    2235 | group_ptr,mode_ptr,args_ptr,argnum);
    | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    elmregister.c:2234:21: note: referencing argument 9 of type ‘int *’
    elmregister.c:601:13: note: in a call to function ‘parse_log_tail’
    601 | static void parse_log_tail(l,buffer1,ptr,module_ptr,command_ptr,user_ptr,
    | ^~~~~~~~~~~~~~"
    Reported by: Noam G. Nudelman
    > Changed int args_ptr[MAX_ARGS] to int *args_ptr on prototype

    - "query.c: In function ‘lookup_resolv_cache_nonblocked’:
    query.c:5213:9: warning: ‘__hostalias’ is deprecated: use getaddrinfo instead [-Wdeprecated-declarations]
    5213 | } else if (!dots && (alias = hostalias(name))) {
    | ^
    In file included from elmresolv.h:27,
    from query.c:10:
    /usr/include/resolv.h:185:17: note: declared here
    185 | const char * hostalias (const char *) __THROW
    | ^~~~~~~~~"
    Reported by: Noam G. Nudelman
    > Added Configure test that hostalias() exists and works
    when $HOSTALIASES is set -- this does
    does not remove warning. hostalias() is not anyway useful
    when Elm ME+ is setgid mail, however.
    - Configure of libelme-resolv module asks that
    is hostalias() used directly on module if Elm ME+ is setgid
    or hostalias() is deprecated.
    - Moved hostalias() lookup from lookup_resolv_cache_nonblocked()
    on shared_libs/resolv/query.c to
    query_resolv_cache() on shared_libs/resolv/resolv.c.
    hostname() lookup is now also done when exact name is
    queried without search.

    - ".../resolv/resolvertest2.c: In function ‘main’:
    .../shared_libs/resolv/resolvertest2.c:822:5: warning: ‘__hostalias’ is deprecated: use getaddrinfo instead [-Wdeprecated-declarations]
    822 | } else if (!dots && (alias = hostalias(name))) {
    | ^
    In file included from .../shared_libs/resolv/resolvertest2.c:44:
    /usr/include/resolv.h:185:17: note: declared here
    185 | const char * hostalias (const char *) __THROW
    | ^~~~~~~~~"
    Reported by: Noam G. Nudelman
    > Excluded hostalias() from resolvertest2.c
    That is used on Configure and hostalias() is tested
    after resolvertest2.c tests. hostalias()
    is included later on elmresolvertest2 if
    hostalias() was not excluded.

    - Fixed compilation warning
    .../lib/mbox/remote_server.c:103:5: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation]
    if (REMOTE_BROWSER_magic != dir->a.remote_browser->magic)

    - Fixed compilation warning
    .../lib/mbox/remote_server.c:2805:5: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation]
    if (REMOTE_BROWSER_magic != dir->a.remote_browser->magic)

    - Fixed compilation warning
    .../lib/can_open.c: In function ‘can_open’:
    .../lib/can_open.c:124:31: warning: ?: using integer constants in boolean context, the expression will always evaluate to ‘true’ [-Wint-in-bool-context]
    DPRINT(Debug,(0 == ret) ? 10 : 1,
    ~~~~~~~~~~~~~~~~~~~~~~^~~
    .../hdrs/elmlib.h:2396:21: note: in definition of macro ‘DPRINT’
    if (x.active >= level) debug_action_call action; \
    ^~~~~
    > Changed DPRINT macro
    - Changed also DEBUG_CHECK(), SIGDPRINT() and DEBUG_PRINT_BUFFER()
    macros

    - Fixed compilation warning
    .../lib/digest_wrapper.c: In function ‘digest_proc_equal’:
    .../lib/digest_wrapper.c:473:34: warning: self-comparison always evaluates to false [-Wtautological-compare]
    if (ptr1->digest_result[x] != ptr1->digest_result[x]) {
    ^~
    > Fixed incorrect result of digest_proc_equal()

    - Fixed compilation warning
    .../lib/iso2022.c: In function ‘eat_iso2022_setid’:
    .../lib/iso2022.c:2487:2: warning: this ‘else’ clause does not guard... [-Wmisleading-indentation]
    else result->type = iso2022_94;
    ^~~~
    .../lib/iso2022.c:2488:19: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘else’
    result->bank = bank_G0;
    ^~~~~~

    - Fixed compilation warning
    .../lib/iso2022.c: In function ‘eat_iso2022_setid’:
    .../lib/iso2022.c:2498:2: warning: this ‘else’ clause does not guard... [-Wmisleading-indentation]
    else result->type = iso2022_94;
    ^~~~
    .../lib/iso2022.c:2499:19: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘else’
    result->bank = bank_G1;
    ^~~~~~

    - Fixed compilation warning
    .../lib/iso2022.c: In function ‘eat_iso2022_setid’:
    .../lib/iso2022.c:2509:2: warning: this ‘else’ clause does not guard... [-Wmisleading-indentation]
    else result->type = iso2022_94;
    ^~~~
    .../lib/iso2022.c:2510:19: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘else’
    result->bank = bank_G2;
    ^~~~~~

    - Fixed compilation warning
    .../lib/iso2022.c: In function ‘eat_iso2022_setid’:
    .../lib/iso2022.c:2520:2: warning: this ‘else’ clause does not guard... [-Wmisleading-indentation]
    else result->type = iso2022_94;
    ^~~~
    .../lib/iso2022.c:2521:19: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘else’
    result->bank = bank_G3;
    ^~~~~~

    - Fixed compilation warning
    .../lib/iso2022.c: In function ‘eat_iso2022_setid’:
    .../lib/iso2022.c:2531:2: warning: this ‘else’ clause does not guard... [-Wmisleading-indentation]
    else result->type = iso2022_96;
    ^~~~
    .../lib/iso2022.c:2532:19: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘else’
    result->bank = bank_G1;
    ^~~~~~

    - Fixed compilation warning
    .../lib/iso2022.c: In function ‘eat_iso2022_setid’:
    .../lib/iso2022.c:2543:2: warning: this ‘else’ clause does not guard... [-Wmisleading-indentation]
    else result->type = iso2022_96;
    ^~~~
    .../lib/iso2022.c:2544:19: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘else’
    result->bank = bank_G2;
    ^~~~~~

    - Fixed compilation warning
    .../lib/iso2022.c: In function ‘eat_iso2022_setid’:
    .../lib/iso2022.c:2554:2: warning: this ‘else’ clause does not guard... [-Wmisleading-indentation]
    else result->type = iso2022_96;
    ^~~~
    .../lib/iso2022.c:2555:19: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘else’
    result->bank = bank_G3;
    ^~~~~~

    - Fixed compilation warning
    .../shared_libs/tls/tls.c: In function ‘tls_init’:
    .../shared_libs/tls/tls.c:735:6: warning: unused variable ‘z’ [-Wunused-variable]
    int z,l;
    ^

    - Fixed compilation warning
    .../src/alias_display.c: In function ‘ad_set_alias_group_phrase’:
    .../src/alias_display.c:1660:6: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation]
    if (group_phrase)
    ^~
    .../src/alias_display.c:1663:7: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘if’
    redraw1:
    ^~~~~~~

    - Fixed compilation warning
    .../src/attach_menu.c: In function ‘attach_view_binary’:
    .../src/attach_menu.c:1592:10: warning: self-comparison always evaluates to true [-Wtautological-compare]
    if (cs == cs ||
    ^~
    > Fixed character set check on attach_view_binary()

    - Fixed compilation warning
    .../src/builtin++.c: In function ‘builtinplusplus’:
    .../src/builtin++.c:714:7: warning: this ‘else’ clause does not guard... [-Wmisleading-indentation]
    else
    ^~~~

    - Fixed compilation warning
    .../src/showmsg_c.c: In function ‘process_showmsg_cmd’:
    .../src/showmsg_c.c:679:6: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation]
    if (flags & SHOWMSG_NOMAIL)
    ^~
    .../src/showmsg_c.c:682:3: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘if’
    put_cmd_name(pager_page,TRUE,
    ^~~~~~~~~~~~

    - Fixed case where "Copies to:" prompt is not cleared when
    new address is written - bug was introduced when
    address prompt implementation changed on
    Elm ME+ 2.5 PLalpha58
    > Changed CleartoEOLN() to menu_CleartoEOLN()
    on enter_helper() at src/enter_helper.c

    - Added listing of aliases to
    "Send the message to: "
    and "Copies to: "
    prompts of m)ail command with TABulator. Also
    TABulator shows listing of aliases
    on "Send the message to: "
    prompt on b)ounce command and
    on "Copies to: "
    prompt on r)eply command.
    > TABulator do not show aliases address prompts of
    "Mail Pre-Send Screen" and "Message Header Edit Screen".

    - Added w_menu_calculate_rline() to src/screen/def_sceen.h
    - Added w_menu_calculate_rline * wra_calculate_line;
    to struct menu_draw_routine
    - Added scommon_calculate_rline() to src/screen/scommon.c
    and src/screen/def_scommon.h
    - Added menu_translate_pos() to src/screen/screen.c
    and hdrs/me.h

    - Added add_one_alias_to_expanded() to src/addr_util.c and
    and hdrs/me.h

    - Added full_page_r * full_page; to struct enter_info
    - Added default_full_page() to hdrs/me.h and src/enter_helper.c

    - Added more check_changes() calls to cur_ReadCh2() on src/screen/curs_input.c
    - Changed resize and redraw handling on cur_ReadCh2()
    - Changed waiting on cur_ReadCh2()
    - Added wait_for_action_or_timeout_f() to hdrs/elmlib.h
    and lib/schedule.c

    - Added prompt_hint_r * prompt_hint; to struct enter_info
    - Added default_prompt_hint() to hdrs/me.h and src/enter_helper.c

    - Changed sort_aliases() call on set_aview_alias_mode()
    at src/alias.c
    - Changed prototype of sort_aliases()

    - Fixed crash on debug output on build_address_l()
    SIGNAL PANIC in .../mail/elm-alias/src/signals.c:144:segv_signal
    >>>

    Segment Violation signal!


    Call stack: 7FF9F99BAB34 55BF908911DD 7FF9F912DF10 7FF9F927D461 7FF9F9998086
    continues: 7FF9F9998B5F 55BF907B49DD 55BF907AD4BF 55BF907AFCC7 55BF9082C5CA
    continues: 55BF9082CFC4 55BF9082DB43 55BF9082DCF2 55BF907F8AC0 55BF90829D45
    continues: 55BF9082B5E5 55BF907FBED5 7FF9F9110C87 55BF907AB87A
    backtrace:
    .../lib64/libelmme-base.so.1.1.58+(panic+0x1de)[0x7ff9f99bab34]
    .../bin/elm(segv_signal+0x80)[0x55bf908911dd]
    /lib/x86_64-linux-gnu/libc.so.6(+0x3ef10)[0x7ff9f912df10]
    /lib/x86_64-linux-gnu/libc.so.6(+0x18e461)[0x7ff9f927d461]
    .../lib64/libelmme-base.so.1.1.58+(+0x56086)[0x7ff9f9998086]
    .../lib64/libelmme-base.so.1.1.58+(debug_action_call+0x6b2)[0x7ff9f9998b5f]
    .../bin/elm(build_address_l+0x1264)[0x55bf907b49dd]
    .../bin/elm(+0x284bf)[0x55bf907ad4bf]
    .../bin/elm(prompt_expanded_address+0xc7c)[0x55bf907afcc7]
    .../bin/elm(get_to+0x4e2)[0x55bf9082c5ca]
    .../bin/elm(send_msg_middle2+0x36f)[0x55bf9082cfc4]
    .../bin/elm(send_msg_middle+0x19b)[0x55bf9082db43]
    .../bin/elm(send_msg_l+0x17a)[0x55bf9082dcf2]
    .../bin/elm(mailbox_command+0xf73)[0x55bf907f8ac0]
    .../bin/elm(+0xa4d45)[0x55bf90829d45]
    .../bin/elm(main_messages_menu+0x17d)[0x55bf9082b5e5]
    .../bin/elm(main+0xf48)[0x55bf907fbed5]
    /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xe7)[0x7ff9f9110c87]
    /tmp/TEST/bin/elm(_start+0x2a)[0x55bf907ab87a]
    Press <enter> to abort:

    - Fixed string_need_quote() on lib/stringtok.c

    Warnings
    --------

    - Not compiled with MMDF support defined, so probably it doesn't
    work (or even compile).

    - This has not been tested much so there can be bad bugs.

    Bug reports to: Kari E. Hurtta <elm@elmme-mailer.org>
    (was hurtta+elm@posti.FMI.FI)

    - Internationalized (ie. non-ASCII) domain names are not supported.

    - Support for multipart/signed and multipart/encrypted (specially:
    support for PGP/MIME) only in reading side. There is no support
    for attachments with multipart/encrypted.

    - HP's shoftkeys are no longer supported

    - DECNET addresses like host::user may be interpreted as phrase
    of group syntax or as route of source routed address.

    - Header editing screen now uses addresses in form phrase <address>,
    but because it does not require using of comma (,), multiword
    phrases must be entered in quotes.

    For example: "Kari Hurtta" <hurtta>

    - If address includes <> or comments (), they are not aliased
    expanded. So aliases must be entered as bare words.

    - Addresses given as arguments to elm command should be given
    as one address per argument. Giving of sevaral addresses per
    one argument causes that address is misparsed if header is
    edited on header editing screen.

    That is:

    Use: elm '"Kari Hurtta" <hurtta>' 'Admin <root>'

    Don't use: elm 'Kari Hurtta <hurtta>, Admin <root>'

    - p)rint command acts as P)rint text -command. So it
    is currently quite useless.
    p)rint command does that via readmsg -command. However
    P)rint text does actually same (without readmsg).

    - Some Linux libraries does not follow $LC_CTYPE when program is
    setgid. Net result is that your locale is always C. That is
    visible that $LC_CTYPE does not effect to locale printed by
    'elm -vvvvv':

    Locale (LC_CTYPE): C
    Display character-set: US-ASCII
    Sending character-set: US-ASCII

    - All refrences iso2022 maps are parsed and read to memory.
    This may cause quite big memory consumption specially because
    eastern (multibyte) sets tend to be lot of characters. That
    mapping information should be shared between processes to
    reduce memory consuption.

    - If display charset is produced by using mapping from locale
    to charset where charset definition is later invalidated
    ("removed") by setting explicit compatcharsets on user's
    .elm/elmrc, that may cause PANIC on elm's internal pager
    or other problems. Invalidation happens if display charset
    is on implicit compatcharsets list (because of charset
    definition), but does not have explicit compatcharsets list
    given by user.

    - Neither Unicode didirectional algorithm nor Right-Left scripts
    are supported.

    - In some situations two Status headers may be generated two
    Status headers -- one by IMAP deamon and one from APPENDed
    message.

    - When APPENDing message to IMAP folder (which is normal UNIX
    mailbox format) original "From " separator line can not be
    preserved -- specially it is not possible to pass envelope
    sender address.

    - For UTF-8 charset Elm only knows printable characters from
    Latin/1 range, if unicode database (see elmrc option "unidata")
    is not loaded.

    - For using of ISO2022 character sets it is required that mapping
    them to unicode is know -- otherwise Elm ME+ does not know which
    characters are printable.

    - UTF-16 surrogate pairs (D800-DFFF) are not supported on UTF-7
    charset.

    - Mixing of names using IMAP naming convention
    (imap-naming-convention = yes)
    and names using imap-charset does not work very well...

    - " Regarding my message (8 Aug 2000) regarding 'newmail' on
    AIX 4.3.3 in an 'aixterm' window and the 'aixterm' did not
    close, indeed the problem was NOT related to 'newmail' but an
    AIX bug.

    IBM has release a patch, and the 'aixterm' in AIX 4.3.3 must
    be update with fileset X11.apps.aixterm.4.3.3.26 (PTF
    U473920) is solved to problem."
    From: Noam G. Nudelman

    - File /usr/share/locale/fi/charset gives charset name utf-8 on
    Linux Mandrake 7.2. This causes that Configure generates
    mapping
    fi utf-8
    to elm.mimecharsets. However that seems to have
    incorrect mapping. You may want change this to
    fi ISO-8859-1

    ( however nl_langinfo(CODESET) gives charset ISO-8859-15
    but look following entry. )

    - Locale 'fi' seems to have charset ISO-8859-15 according
    of nl_langinfo(CODESET) on Mandrake Linux 7.2 (and probaly
    others with same glibc version). However for example gnome
    terminal uses font
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-1
    and not
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-15

    Also KDE's konsole program seems use iso8859-1 character set
    although locale is 'fi' which should have ISO-8859-15 according
    of nl_langinfo (selecting "unicode" from menu seems fix that.)

    Because of mismatch more correct locale is fi_FI.88591, which gives
    ISO-8859-1 character set according of nl_langinfo(CODESET).

    ( Locale seems come from /etc/sysconfig/i18n or $HOME/.i18n )

    > To enable handling of ISO-8859-1 and ISO-8859-15 character sets
    on linux console, read comments from doc/terminal.info file.

    - Mandrake Linux 7.2 seems set LD_PRELOAD to load
    /usr/lib/libxalflaunch.so.0. That (xalf-0.4-2mdk) causes that
    elm to crash on startup (actually before main() is reached.)

    - kterm on Mandrake Linux 7.2 seems have (at least on my test
    environment) seems get bad fontlist (*VT100*fontList) which
    gives bad font for iso8859-1 -- therefore ISO-8859-1 characters
    do not work.

    ("xrdb -query" seems report resource with name "*fontList"
    -- that probably overrides "*VT100*fontList" which comes
    from /usr/lib/X11/app-defaults/KTerm )

    - Also note that initially kterm does NOT default to
    ISO-8859-1 -- therefore ISO-8859-1 works only when
    elm explicity switch to ISO-8859-1 (for example
    with 'elm -D ISO-8859-1')

    - When assembling message/partial MIME (RFC 2046)
    requires that all headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are copied from
    initial enclosing message to assembled message. It also
    requires that headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are ignored and
    dropped from enclosed message.

    For now we copy only Received: -headers. Dropping extra
    headers from enclosed message makes assembly more
    complicated (and dropping of Received: -headers
    from enclosed message do not make sense.)

    - mailer=sendmail; verify=yes works only when sendmail
    is installed as setuid root. Use mailer=submission instead.
    * Starting from sendmail 8.12 sendmail is normally
    installed as setgid smmsp and not as setuid root.
    - However error message is printed only if
    verify-local-address=yes is also set

    - IMAP connection is stalled some times. Reason is unknown.

    - From name option (-f) on fastmail is currently broken.

    Collector of these patches
    --------------------------

    Kari Hurtta <elm@elmme-mailer.org>
    Kari Hurtta <hurtta+elm@siilo.FMI.FI>

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Kari Hurtta@21:1/5 to All on Wed Sep 7 09:58:09 2022
    [ Because Usenet news (nntp) server news.kolumbus.fi is closed
    since 2021-05-04 I post this announcement only (not sources)
    via Google Groups instead. ]

    Elm ME+ 2.5 PLalpha60

    - Is available with
    <URL: http://www.elmme-mailer.org/elm-ME+2.5/src/elm-ME+2.5.alpha60.2eaad7217def7d1579e0244a7d4528a9.tar.gz >
    and <URL: http://www.elmme-mailer.org/elm-ME+2.5/src/elm-ME+2.5.PLalpha60.patch.gz >
    via http.
    Signatures are
    <URL: http://www.elmme-mailer.org/elm-ME+2.5/src/elm-ME+2.5.alpha60.2eaad7217def7d1579e0244a7d4528a9.tar.gz.elm-key-2018.sig >
    <URL: http://www.elmme-mailer.org/elm-ME+2.5/src/elm-ME+2.5.alpha60.2eaad7217def7d1579e0244a7d4528a9.tar.gz.sig >
    and <URL: http://www.elmme-mailer.org/elm-ME+2.5/src/elm-ME+2.5.PLalpha60.patch.gz.elm-key-2018.sig >
    <URL: http://www.elmme-mailer.org/elm-ME+2.5/src/elm-ME+2.5.PLalpha60.patch.gz.sig >

    - Is available with
    <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.alpha60.2eaad7217def7d1579e0244a7d4528a9.tar.gz >
    and <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.PLalpha60.patch.gz >
    via https.
    Signatures are
    <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.alpha60.2eaad7217def7d1579e0244a7d4528a9.tar.gz.elm-key-2018.sig >
    <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.alpha60.2eaad7217def7d1579e0244a7d4528a9.tar.gz.sig >
    and <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.PLalpha60.patch.gz.elm-key-2018.sig >
    <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.PLalpha60.patch.gz.sig >

    - Is available on ftp.funet.fi
    directory pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/
    files elm-ME+2.5.alpha60.2eaad7217def7d1579e0244a7d4528a9.tar.gz
    and elm-ME+2.5.PLalpha60.patch.gz
    via anonumous ftp.
    Signatures are
    elm-ME+2.5.alpha60.2eaad7217def7d1579e0244a7d4528a9.tar.gz.elm-key-2018.sig
    elm-ME+2.5.alpha60.2eaad7217def7d1579e0244a7d4528a9.tar.gz.sig
    and elm-ME+2.5.PLalpha60.patch.gz.elm-key-2018.sig
    elm-ME+2.5.PLalpha60.patch.gz.sig

    Or is available with
    <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.alpha60.2eaad7217def7d1579e0244a7d4528a9.tar.gz >
    and <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha60.patch.gz >
    with browser.
    Signatures are
    <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.alpha60.2eaad7217def7d1579e0244a7d4528a9.tar.gz.elm-key-2018.sig >
    <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.alpha60.2eaad7217def7d1579e0244a7d4528a9.tar.gz.sig >
    and <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha60.patch.gz.elm-key-2018.sig >
    <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha60.patch.gz.sig >

    Or is available with
    <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.alpha60.2eaad7217def7d1579e0244a7d4528a9.tar.gz >
    and <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha60.patch.gz >
    via https.
    Signatures are
    <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.alpha60.2eaad7217def7d1579e0244a7d4528a9.tar.gz.elm-key-2018.sig >
    <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.alpha60.2eaad7217def7d1579e0244a7d4528a9.tar.gz.sig >
    and <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha60.patch.gz.elm-key-2018.sig >
    <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha60.patch.gz.sig >

    Is NOT available on alt.sources, comp.mail.elm because Usenet news (nntp) server news.kolumbus.fi (*) is closed since 2021-05-04.

    (*) That is apparently also uutiset.elisa.fi and news.saunalahti.fi.
    See: https://elisa.fi/asiakastiedotteet/tiedote/?id=63663313593635

    Signatures are with following keys

    {file}.sig PGP signature (old key pubkey.asc, EA5A2379 1996-04-23)
    {file}.elm-key-2018.sig GPG signature (key elm.key.2018.asc, 44FC796B 2018-12-01, expires: 2028-11-28)

    SUMMARY: This release changes "Mailcap program selection"
    and adds elmrc option "mailcap-select-other". This
    release adds listing of aliases with TABulator
    to few address prompts. Also some other changes
    are included and bugs fixed.


    Changes on Elm ME+ 2.5 PLalpha60 compared with Elm ME+ 2.5 PLalpha59 --------------------------------------------------------------------

    SUMMARY: This release changes "Mailcap program selection"
    and adds elmrc option "mailcap-select-other". This
    release adds listing of aliases with TABulator
    to few address prompts. Also some other changes
    are included and bugs fixed.

    - Do no allow -f name option twice on fastmail -command.
    - Tell that both -f name and -F address options
    are not allowed together on fastmail -command.

    - Giving -F address option on fastmail -command now discards
    address read from ~/.elm/elmheaders file
    (before that -F option just appended new address).

    - Allow -f name option on fastmail -command set phrase
    of From address if ~/.elm/elmheaders file gives just
    one From address.

    - Fixed port_imaponly_masks [] on htrem_have_connection()
    at lib/mbox/hashmark_remote.c
    - Fixed port_imaponly_masks [] on make_remote_mbox()
    at lib/mbox/remote_mbx.c
    - Fixed port_masks [] on submission_mailer_info_init()
    at shared_libs/smtp/smtp.c
    - Fixed port_masks [] on submission_mailer_info_rs_hook()
    at shared_libs/smtp/smtp.c
    - Fixed debug output on bgconnect_got_connection()
    at lib/remote_mbx.c

    - Do not ask program on "Mailcap program selection"
    if later part is skipped as attachment
    - Added mime_disposition_names[] to hdrs/melib.h
    and melib/mime.c
    - Changed DISPOSITION() macro on hdrs/melib.h
    - Renamed debug_f() to mime_debug_classify_f()
    and exported from melib/mime_selector.c and
    removed other static copies.
    - Passed struct header_rec * hdr to mime_classify_media()
    on parse_mime_headers1() at melib/mime_parse.c
    - Changed prototype of mime_classify_media()

    - Added elmrc option "mailcap-select-other". If
    it is set (default), "Mailcap program selection"
    screen shows o)ther alternative programs.
    Setting this option means that "test="
    commands from all mailcap entries for given type
    is executed and if test succeed, these entries
    are added as o)ther alternatives. If elmrc
    option "mailcap-select-other" is not set,
    "test=" commands from mailcap entries
    for given type is executed until some test
    succeed (or mailcap entry without "test="
    is found for given type).
    - Added struct mailcap_entry ** other_entries;
    and size_t num_other_entries;
    to struct mime_selected_handler on hdrs/melib.h
    - Some changes on prompt_programs() at src/showmsg.c
    - Added struct prompt_programs_list to hdrs/me.h
    (was struct prompt_list on src/showmsg.c)
    - Added check_mailcap_view_cmd() to src/showmsg.c
    and hdrs/me.h
    - Added prompt_mailcap_other() to src/mailcap_sel.c
    and hdrs/me.h

    - Allow space to move to next entry on
    "Mailcap program selection" even when there is
    question if it is already answered.

    - Moved struct mailcap_vector from melib/mailcap.c to
    hdrs/mailcap_imp.h
    - Moved struct mailcap_entry from melib/mailcap.c to
    hdrs/mailcap_imp.h

    - Added char quote_char to struct mailcap_vector
    on hdrs/mailcap_imp.h for printing purposed.

    - Possible fix for need_meta() on src/showmsg.c

    - Moved "Mail Quota Screen" title to second line
    from first line.

    - Added struct hdrmenu_context to hdrs/me.h
    - Added clear_hdrmenu_context() to hdrs/me.h
    and src/hdrconfg.c
    - Changed prototype of presend_action() on
    hdrs/me.h

    - Added listing of aliases with TABulator
    to T)o:, C)c: and B)cc: -commands
    on "Mail Pre-Send Screen".
    R)eturn-path: -command does not show
    listing of aliases on "Mail Pre-Send Screen"..
    - Added listing of aliases with TABulator
    to address prompts on "Message Header Edit Screen".
    - Added listing of aliases with TABulator
    to T)o: -command on "Bounce Pre-Send Screen".
    R)eturn-path: -command does not show
    listing of aliases on "Bounce Pre-Send Screen".

    - Fixed memory leak on add_surface() at src/addr_prompt.c
    - Fixed memory leak on expanded_to_tokenized() at src/addr_prompt.c

    New elmrc option:
    mailcap-select-other

    New files:
    src/mailcap_sel.c
    hdrs/mailcap_imp.h

    Warnings
    --------

    - Not compiled with MMDF support defined, so probably it doesn't
    work (or even compile).

    - This has not been tested much so there can be bad bugs.

    Bug reports to: Kari E. Hurtta <elm@elmme-mailer.org>
    (was hurtta+elm@posti.FMI.FI)

    - Internationalized (ie. non-ASCII) domain names are not supported.

    - Support for multipart/signed and multipart/encrypted (specially:
    support for PGP/MIME) only in reading side. There is no support
    for attachments with multipart/encrypted.

    - HP's shoftkeys are no longer supported

    - DECNET addresses like host::user may be interpreted as phrase
    of group syntax or as route of source routed address.

    - Header editing screen now uses addresses in form phrase <address>,
    but because it does not require using of comma (,), multiword
    phrases must be entered in quotes.

    For example: "Kari Hurtta" <hurtta>

    - If address includes <> or comments (), they are not aliased
    expanded. So aliases must be entered as bare words.

    - Addresses given as arguments to elm command should be given
    as one address per argument. Giving of sevaral addresses per
    one argument causes that address is misparsed if header is
    edited on header editing screen.

    That is:

    Use: elm '"Kari Hurtta" <hurtta>' 'Admin <root>'

    Don't use: elm 'Kari Hurtta <hurtta>, Admin <root>'

    - p)rint command acts as P)rint text -command. So it
    is currently quite useless.
    p)rint command does that via readmsg -command. However
    P)rint text does actually same (without readmsg).

    - Some Linux libraries does not follow $LC_CTYPE when program is
    setgid. Net result is that your locale is always C. That is
    visible that $LC_CTYPE does not effect to locale printed by
    'elm -vvvvv':

    Locale (LC_CTYPE): C
    Display character-set: US-ASCII
    Sending character-set: US-ASCII

    - All refrences iso2022 maps are parsed and read to memory.
    This may cause quite big memory consumption specially because
    eastern (multibyte) sets tend to be lot of characters. That
    mapping information should be shared between processes to
    reduce memory consuption.

    - If display charset is produced by using mapping from locale
    to charset where charset definition is later invalidated
    ("removed") by setting explicit compatcharsets on user's
    .elm/elmrc, that may cause PANIC on elm's internal pager
    or other problems. Invalidation happens if display charset
    is on implicit compatcharsets list (because of charset
    definition), but does not have explicit compatcharsets list
    given by user.

    - Neither Unicode didirectional algorithm nor Right-Left scripts
    are supported.

    - In some situations two Status headers may be generated two
    Status headers -- one by IMAP deamon and one from APPENDed
    message.

    - When APPENDing message to IMAP folder (which is normal UNIX
    mailbox format) original "From " separator line can not be
    preserved -- specially it is not possible to pass envelope
    sender address.

    - For UTF-8 charset Elm only knows printable characters from
    Latin/1 range, if unicode database (see elmrc option "unidata")
    is not loaded.

    - For using of ISO2022 character sets it is required that mapping
    them to unicode is know -- otherwise Elm ME+ does not know which
    characters are printable.

    - UTF-16 surrogate pairs (D800-DFFF) are not supported on UTF-7
    charset.

    - Mixing of names using IMAP naming convention
    (imap-naming-convention = yes)
    and names using imap-charset does not work very well...

    - " Regarding my message (8 Aug 2000) regarding 'newmail' on
    AIX 4.3.3 in an 'aixterm' window and the 'aixterm' did not
    close, indeed the problem was NOT related to 'newmail' but an
    AIX bug.

    IBM has release a patch, and the 'aixterm' in AIX 4.3.3 must
    be update with fileset X11.apps.aixterm.4.3.3.26 (PTF
    U473920) is solved to problem."
    From: Noam G. Nudelman

    - File /usr/share/locale/fi/charset gives charset name utf-8 on
    Linux Mandrake 7.2. This causes that Configure generates
    mapping
    fi utf-8
    to elm.mimecharsets. However that seems to have
    incorrect mapping. You may want change this to
    fi ISO-8859-1

    ( however nl_langinfo(CODESET) gives charset ISO-8859-15
    but look following entry. )

    - Locale 'fi' seems to have charset ISO-8859-15 according
    of nl_langinfo(CODESET) on Mandrake Linux 7.2 (and probaly
    others with same glibc version). However for example gnome
    terminal uses font
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-1
    and not
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-15

    Also KDE's konsole program seems use iso8859-1 character set
    although locale is 'fi' which should have ISO-8859-15 according
    of nl_langinfo (selecting "unicode" from menu seems fix that.)

    Because of mismatch more correct locale is fi_FI.88591, which gives
    ISO-8859-1 character set according of nl_langinfo(CODESET).

    ( Locale seems come from /etc/sysconfig/i18n or $HOME/.i18n )

    > To enable handling of ISO-8859-1 and ISO-8859-15 character sets
    on linux console, read comments from doc/terminal.info file.

    - Mandrake Linux 7.2 seems set LD_PRELOAD to load
    /usr/lib/libxalflaunch.so.0. That (xalf-0.4-2mdk) causes that
    elm to crash on startup (actually before main() is reached.)

    - kterm on Mandrake Linux 7.2 seems have (at least on my test
    environment) seems get bad fontlist (*VT100*fontList) which
    gives bad font for iso8859-1 -- therefore ISO-8859-1 characters
    do not work.

    ("xrdb -query" seems report resource with name "*fontList"
    -- that probably overrides "*VT100*fontList" which comes
    from /usr/lib/X11/app-defaults/KTerm )

    - Also note that initially kterm does NOT default to
    ISO-8859-1 -- therefore ISO-8859-1 works only when
    elm explicity switch to ISO-8859-1 (for example
    with 'elm -D ISO-8859-1')

    - When assembling message/partial MIME (RFC 2046)
    requires that all headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are copied from
    initial enclosing message to assembled message. It also
    requires that headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are ignored and
    dropped from enclosed message.

    For now we copy only Received: -headers. Dropping extra
    headers from enclosed message makes assembly more
    complicated (and dropping of Received: -headers
    from enclosed message do not make sense.)

    - mailer=sendmail; verify=yes works only when sendmail
    is installed as setuid root. Use mailer=submission instead.
    * Starting from sendmail 8.12 sendmail is normally
    installed as setgid smmsp and not as setuid root.
    - However error message is printed only if
    verify-local-address=yes is also set

    - IMAP connection is stalled some times. Reason is unknown.

    Collector of these patches
    --------------------------

    Kari Hurtta <elm@elmme-mailer.org>
    Kari Hurtta <hurtta+elm@siilo.FMI.FI>


    diffstat:
    MANIFEST | 2
    README.ME+ | 117 +++
    doc/elmrc-info | 14
    doc/elmrc.samp | 14
    doc/fastmail.1 | 23
    hdrs/addrlib.h | 11
    hdrs/elmlib.h | 9
    hdrs/mailcap_imp.h | 67 ++
    hdrs/me.h | 239 !!!!!!!!
    hdrs/melib.h | 28
    hdrs/patchlevel.h | 10
    hdrs/s_elm.h | 13
    hdrs/s_fastmail.h | 6
    hdrs/s_me.h | 12
    hdrs/save_opts.h | 5
    lib/MAGIC | 2
    lib/mbox/hashmark_remote.c | 6
    lib/mbox/remote_mbx.c | 6
    lib/read_rc.c | 8
    lib/remote_mbx.c | 6
    melib/Makefile.SH | 4
    melib/mailcap.c | 100 -!!
    melib/mime.c | 14
    melib/mime_decode.c | 64 -!
    melib/mime_parse.c | 50 !
    melib/mime_selector.c | 224 +++-!
    nls/C/C/C/s_elm.m | 26
    nls/C/C/C/s_fastmail.m | 12
    nls/C/C/C/s_me.m | 26
    shared_libs/smtp/smtp.c | 8
    src/Makefile.SH | 5
    src/addr_prompt.c | 17
    src/attach_menu.c | 28
    src/hdrconfg.c | 763 +-!!!!!!!!!!!!!!!!!!!!!!
    src/mailcap_sel.c | 1320 +++++++++++++++++++++++++++++++++++++++++++++
    src/mailmsg2.c | 20
    src/messages/digest.c | 22
    src/messages/partial.c | 18
    src/quotadisp.c | 6
    src/remail.c | 132 !!!!
    src/screen.c | 8
    src/showmsg.c | 1163 ++++++++++++-!!!!!!!!!!!!!!!!!!!!!!!!
    utils/fastmail.c | 127 !!!!
    43 files changed, 2252 insertions(+), 147 deletions(-), 2356 modifications(!)

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Kari Hurtta@21:1/5 to All on Fri Sep 9 09:40:18 2022
    Experimental RPM spec file for ELM ME+ 2.5 PLalpha60
    exists on <URL: http://www.elmme-mailer.org/rpm/elm-ME+2.5.html >
    directory.

    Files are following

    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha60-1.spec
    RPM spec file
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha60-1.spec.elm-key-2018.sig
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha60-1.spec.sig
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha60-1.mdk7.2.src.rpm
    Source rpm
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha60-1.mdk7.2.src.rpm.sig

    Only binary packages for old Mandrake release 7.2 are available (Linux
    2.2, glibc 2.1, Sendmail 8.13).

    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha60-1.mdk7.2.i686.rpm
    Package elm binary RPM build on Linux Mandrake release 7.2
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha60-1.mdk7.2.i686.rpm.sig
    - http://www.elmme-mailer.org/rpm/elm-mod-ME+2.5.alpha60-1.mdk7.2.i686.rpm
    Package elm-mod binary RPM build on Linux Mandrake release 7.2
    - http://www.elmme-mailer.org/rpm/elm-mod-ME+2.5.alpha60-1.mdk7.2.i686.rpm.sig
    - http://www.elmme-mailer.org/rpm/elm-tls-ME+2.5.alpha60-1.mdk7.2.i686.rpm
    Package elm-tls binary RPM build on Linux Mandrake release 7.2
    - http://www.elmme-mailer.org/rpm/elm-tls-ME+2.5.alpha60-1.mdk7.2.i686.rpm.sig


    Source and binary packages are signed internally with GPG key
    elm.key.2018.asc (44FC796B 2018-12-01).

    This is is compiled agaist Sendmail 8.13 (not from Mandrake
    distribution).

    elm-tls package do not load/work on Mandrake 7.2, because openssl
    library misses ASN1_STRING_to_UTF8 function.

    * Signatures

    {file}.sig PGP signature (old key pubkey.asc, EA5A2379 1996-04-23)
    {file}.elm-key-2018.sig GPG signature (key elm.key.2018.asc, 44FC796B 2018-12-01, expires: 2028-11-28)

    * Configuration

    Following files (if exists) are rewritten by elmconfwriter on
    installation:

    - /usr/local/lib/elm.rc
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.hashmarks

    Spec file compiles elm for binary distribution, so you must edit
    /usr/local/lib/elm.rc before using Elm ME+ 2.5. Following variables may
    need to be modified on elm.rc:

    - mailer
    - hostdomain (this is usually needed)
    - hostfullname
    - hostname (usually this is not needed)
    - mailname (default values is generated from other values)
    name-resolution (controls default values of hostdomain,
    hostfullname, hostname, mailname)


    For re-generation of following file, old information (if exists) is
    used:

    - /usr/local/lib/elm.rc

    WARNING: Check after installation that libraries are enabled. Global
    elm.rc values are:

    use-library =
    use-base-library = iconv
    use-config-library = resolv
    use-connect-library = tls resolv
    use-mailer-library = smtp resolv

    Note that libelmme-resolv.so does not compile on all distributions. In
    that case omit resolv from elm.rc.

    After editing global elm.rc run /usr/local/lib/elmrc-write -GI for
    fixing possible errors.

    On installation following existing files are merged with new values:

    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.hashmarks

    Old values from /usr/local/lib/aliases.text are converted to /usr/local/lib/elm.aliases and /usr/local/lib/aliases.text is renamed to /usr/local/lib/aliases.text.OLD.

    On installation new values without merging are written to following
    files:

    - /usr/local/lib/elm.aliases.NEW
    - /usr/local/lib/elm.mailinglists.NEW
    - /usr/local/lib/elm.mailservices.NEW
    - /usr/local/lib/elm.mimecharsets.NEW
    - /usr/local/lib/elm.mimetypes.NEW
    - /usr/local/lib/elm.terminalinfo.NEW
    - /usr/local/lib/elm.iso2022sets.NEW
    - /usr/local/lib/elm.hashmarks.NEW

    Package elm-mod includes libelmme-iconv.so and libelmme-smtp.so. (If
    package elm-mod includes libelmme-resolv.so, this is noted). And package elm-tls includes libelmme-tls.so.

    Installation loses mailer = submission setting from global /usr/local/lib/elm.rc, because when elm package rewrites elm.rc,
    submission mailer is not available. It becomes from elm-mod package.

    However failed values of /usr/local/lib/elm.rc are saved to /usr/local/lib/elm.rc.old-values file during installation.

    Global setting mailer = submission is restored from /usr/local/lib/elm.rc.old-values file, when package elm-mod is
    installed.

    Also following directories are used:

    - /usr/local/lib/elm.map.txt/ (global setting map-text-dir =
    {lib}/elm.map.txt)
    - /usr/local/lib/elm.map.bin/ (global setting map-bin-dir =
    {lib}/elm.map.bin)
    - /usr/local/lib/elm.user.map/ (global setting user-map-dir =
    {lib}/elm.user.map)

    Hashmark EXAMPLE uses file /usr/local/lib/elm.user.map/elm.usermap.

    SUMMARY: This release changes "Mailcap program selection"
    and adds elmrc option "mailcap-select-other". This
    release adds listing of aliases with TABulator
    to few address prompts. Also some other changes
    are included and bugs fixed.

    Elm ME+ 2.5 PLalpha60 changelog

    Changes on Elm ME+ 2.5 PLalpha60 compared with Elm ME+ 2.5 PLalpha59 --------------------------------------------------------------------

    SUMMARY: This release changes "Mailcap program selection"
    and adds elmrc option "mailcap-select-other". This
    release adds listing of aliases with TABulator
    to few address prompts. Also some other changes
    are included and bugs fixed.

    - Do no allow -f name option twice on fastmail -command.
    - Tell that both -f name and -F address options
    are not allowed together on fastmail -command.

    - Giving -F address option on fastmail -command now discards
    address read from ~/.elm/elmheaders file
    (before that -F option just appended new address).

    - Allow -f name option on fastmail -command set phrase
    of From address if ~/.elm/elmheaders file gives just
    one From address.

    - Fixed port_imaponly_masks [] on htrem_have_connection()
    at lib/mbox/hashmark_remote.c
    - Fixed port_imaponly_masks [] on make_remote_mbox()
    at lib/mbox/remote_mbx.c
    - Fixed port_masks [] on submission_mailer_info_init()
    at shared_libs/smtp/smtp.c
    - Fixed port_masks [] on submission_mailer_info_rs_hook()
    at shared_libs/smtp/smtp.c
    - Fixed debug output on bgconnect_got_connection()
    at lib/remote_mbx.c

    - Do not ask program on "Mailcap program selection"
    if later part is skipped as attachment
    - Added mime_disposition_names[] to hdrs/melib.h
    and melib/mime.c
    - Changed DISPOSITION() macro on hdrs/melib.h
    - Renamed debug_f() to mime_debug_classify_f()
    and exported from melib/mime_selector.c and
    removed other static copies.
    - Passed struct header_rec * hdr to mime_classify_media()
    on parse_mime_headers1() at melib/mime_parse.c
    - Changed prototype of mime_classify_media()

    - Added elmrc option "mailcap-select-other". If
    it is set (default), "Mailcap program selection"
    screen shows o)ther alternative programs.
    Setting this option means that "test="
    commands from all mailcap entries for given type
    is executed and if test succeed, these entries
    are added as o)ther alternatives. If elmrc
    option "mailcap-select-other" is not set,
    "test=" commands from mailcap entries
    for given type is executed until some test
    succeed (or mailcap entry without "test="
    is found for given type).
    - Added struct mailcap_entry ** other_entries;
    and size_t num_other_entries;
    to struct mime_selected_handler on hdrs/melib.h
    - Some changes on prompt_programs() at src/showmsg.c
    - Added struct prompt_programs_list to hdrs/me.h
    (was struct prompt_list on src/showmsg.c)
    - Added check_mailcap_view_cmd() to src/showmsg.c
    and hdrs/me.h
    - Added prompt_mailcap_other() to src/mailcap_sel.c
    and hdrs/me.h

    - Allow space to move to next entry on
    "Mailcap program selection" even when there is
    question if it is already answered.

    - Moved struct mailcap_vector from melib/mailcap.c to
    hdrs/mailcap_imp.h
    - Moved struct mailcap_entry from melib/mailcap.c to
    hdrs/mailcap_imp.h

    - Added char quote_char to struct mailcap_vector
    on hdrs/mailcap_imp.h for printing purposed.

    - Possible fix for need_meta() on src/showmsg.c

    - Moved "Mail Quota Screen" title to second line
    from first line.

    - Added struct hdrmenu_context to hdrs/me.h
    - Added clear_hdrmenu_context() to hdrs/me.h
    and src/hdrconfg.c
    - Changed prototype of presend_action() on
    hdrs/me.h

    - Added listing of aliases with TABulator
    to T)o:, C)c: and B)cc: -commands
    on "Mail Pre-Send Screen".
    R)eturn-path: -command does not show
    listing of aliases on "Mail Pre-Send Screen"..
    - Added listing of aliases with TABulator
    to address prompts on "Message Header Edit Screen".
    - Added listing of aliases with TABulator
    to T)o: -command on "Bounce Pre-Send Screen".
    R)eturn-path: -command does not show
    listing of aliases on "Bounce Pre-Send Screen".

    - Fixed memory leak on add_surface() at src/addr_prompt.c
    - Fixed memory leak on expanded_to_tokenized() at src/addr_prompt.c

    New elmrc option:
    mailcap-select-other

    New files:
    src/mailcap_sel.c
    hdrs/mailcap_imp.h

    Warnings
    --------

    - Not compiled with MMDF support defined, so probably it doesn't
    work (or even compile).

    - This has not been tested much so there can be bad bugs.

    Bug reports to: Kari E. Hurtta <elm@elmme-mailer.org>
    (was hurtta+elm@posti.FMI.FI)

    - Internationalized (ie. non-ASCII) domain names are not supported.

    - Support for multipart/signed and multipart/encrypted (specially:
    support for PGP/MIME) only in reading side. There is no support
    for attachments with multipart/encrypted.

    - HP's shoftkeys are no longer supported

    - DECNET addresses like host::user may be interpreted as phrase
    of group syntax or as route of source routed address.

    - Header editing screen now uses addresses in form phrase <address>,
    but because it does not require using of comma (,), multiword
    phrases must be entered in quotes.

    For example: "Kari Hurtta" <hurtta>

    - If address includes <> or comments (), they are not aliased
    expanded. So aliases must be entered as bare words.

    - Addresses given as arguments to elm command should be given
    as one address per argument. Giving of sevaral addresses per
    one argument causes that address is misparsed if header is
    edited on header editing screen.

    That is:

    Use: elm '"Kari Hurtta" <hurtta>' 'Admin <root>'

    Don't use: elm 'Kari Hurtta <hurtta>, Admin <root>'

    - p)rint command acts as P)rint text -command. So it
    is currently quite useless.
    p)rint command does that via readmsg -command. However
    P)rint text does actually same (without readmsg).

    - Some Linux libraries does not follow $LC_CTYPE when program is
    setgid. Net result is that your locale is always C. That is
    visible that $LC_CTYPE does not effect to locale printed by
    'elm -vvvvv':

    Locale (LC_CTYPE): C
    Display character-set: US-ASCII
    Sending character-set: US-ASCII

    - All refrences iso2022 maps are parsed and read to memory.
    This may cause quite big memory consumption specially because
    eastern (multibyte) sets tend to be lot of characters. That
    mapping information should be shared between processes to
    reduce memory consuption.

    - If display charset is produced by using mapping from locale
    to charset where charset definition is later invalidated
    ("removed") by setting explicit compatcharsets on user's
    .elm/elmrc, that may cause PANIC on elm's internal pager
    or other problems. Invalidation happens if display charset
    is on implicit compatcharsets list (because of charset
    definition), but does not have explicit compatcharsets list
    given by user.

    - Neither Unicode didirectional algorithm nor Right-Left scripts
    are supported.

    - In some situations two Status headers may be generated two
    Status headers -- one by IMAP deamon and one from APPENDed
    message.

    - When APPENDing message to IMAP folder (which is normal UNIX
    mailbox format) original "From " separator line can not be
    preserved -- specially it is not possible to pass envelope
    sender address.

    - For UTF-8 charset Elm only knows printable characters from
    Latin/1 range, if unicode database (see elmrc option "unidata")
    is not loaded.

    - For using of ISO2022 character sets it is required that mapping
    them to unicode is know -- otherwise Elm ME+ does not know which
    characters are printable.

    - UTF-16 surrogate pairs (D800-DFFF) are not supported on UTF-7
    charset.

    - Mixing of names using IMAP naming convention
    (imap-naming-convention = yes)
    and names using imap-charset does not work very well...

    - " Regarding my message (8 Aug 2000) regarding 'newmail' on
    AIX 4.3.3 in an 'aixterm' window and the 'aixterm' did not
    close, indeed the problem was NOT related to 'newmail' but an
    AIX bug.

    IBM has release a patch, and the 'aixterm' in AIX 4.3.3 must
    be update with fileset X11.apps.aixterm.4.3.3.26 (PTF
    U473920) is solved to problem."
    From: Noam G. Nudelman

    - File /usr/share/locale/fi/charset gives charset name utf-8 on
    Linux Mandrake 7.2. This causes that Configure generates
    mapping
    fi utf-8
    to elm.mimecharsets. However that seems to have
    incorrect mapping. You may want change this to
    fi ISO-8859-1

    ( however nl_langinfo(CODESET) gives charset ISO-8859-15
    but look following entry. )

    - Locale 'fi' seems to have charset ISO-8859-15 according
    of nl_langinfo(CODESET) on Mandrake Linux 7.2 (and probaly
    others with same glibc version). However for example gnome
    terminal uses font
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-1
    and not
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-15

    Also KDE's konsole program seems use iso8859-1 character set
    although locale is 'fi' which should have ISO-8859-15 according
    of nl_langinfo (selecting "unicode" from menu seems fix that.)

    Because of mismatch more correct locale is fi_FI.88591, which gives
    ISO-8859-1 character set according of nl_langinfo(CODESET).

    ( Locale seems come from /etc/sysconfig/i18n or $HOME/.i18n )

    > To enable handling of ISO-8859-1 and ISO-8859-15 character sets
    on linux console, read comments from doc/terminal.info file.

    - Mandrake Linux 7.2 seems set LD_PRELOAD to load
    /usr/lib/libxalflaunch.so.0. That (xalf-0.4-2mdk) causes that
    elm to crash on startup (actually before main() is reached.)

    - kterm on Mandrake Linux 7.2 seems have (at least on my test
    environment) seems get bad fontlist (*VT100*fontList) which
    gives bad font for iso8859-1 -- therefore ISO-8859-1 characters
    do not work.

    ("xrdb -query" seems report resource with name "*fontList"
    -- that probably overrides "*VT100*fontList" which comes
    from /usr/lib/X11/app-defaults/KTerm )

    - Also note that initially kterm does NOT default to
    ISO-8859-1 -- therefore ISO-8859-1 works only when
    elm explicity switch to ISO-8859-1 (for example
    with 'elm -D ISO-8859-1')

    - When assembling message/partial MIME (RFC 2046)
    requires that all headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are copied from
    initial enclosing message to assembled message. It also
    requires that headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are ignored and
    dropped from enclosed message.

    For now we copy only Received: -headers. Dropping extra
    headers from enclosed message makes assembly more
    complicated (and dropping of Received: -headers
    from enclosed message do not make sense.)

    - mailer=sendmail; verify=yes works only when sendmail
    is installed as setuid root. Use mailer=submission instead.
    * Starting from sendmail 8.12 sendmail is normally
    installed as setgid smmsp and not as setuid root.
    - However error message is printed only if
    verify-local-address=yes is also set

    - IMAP connection is stalled some times. Reason is unknown.

    Collector of these patches
    --------------------------

    Kari Hurtta <elm@elmme-mailer.org>
    Kari Hurtta <hurtta+elm@siilo.FMI.FI>

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Kari Hurtta@21:1/5 to All on Fri Sep 16 09:35:12 2022
    Experimental DEB generator script for Elm ME+ 2.5 PLalpha60 exists on
    <URL: http://www.elmme-mailer.org/deb/elm-ME+2.5.html > directory.

    Files are following

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha60-1.gen_deb
    DEB generator script
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha60-1.gen_deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha60-1.gen_deb.sig

    A command

    elm-ME+2.5.alpha60-1.gen_deb {packager}

    generates package elmme with version 1.1.60-1.{distribution}.

    A command

    elm-ME+2.5.alpha60-1.gen_deb --old {packager}

    generates package elm with version ME+2.5.alpha60-1.{distribution}.

    Both commands produce package with filename elm-ME+2.5.alpha60-1.{distribution}.{arch}.deb.

    Module libelmme-resolv.so is included for all distributions.

    == Old package names, i386

    Package elm with version ME+2.5.alpha60-1.{distribution} and
    architecture i386.

    * Compiled on Ubuntu 6.06.2 LTS
    (Linux 2.6, glibc 2.3, Sendmail 8.13)

    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha60-1.Ubuntu6.06.i386.deb
    Package elm binary DEB build on Ubuntu 6.06.2 LTS
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha60-1.Ubuntu6.06.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha60-1.Ubuntu6.06.i386.deb.sig

    * Compiled on Ubuntu 10.04.4 LTS
    (Linux 2.6, glibc 2.11, Sendmail 8.14)

    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha60-1.Ubuntu10.04.i386.deb
    Package elm binary DEB build on Ubuntu 10.04.4 LTS
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha60-1.Ubuntu10.04.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha60-1.Ubuntu10.04.i386.deb.sig

    == New package names, i386

    Package elmme with version 1.1.60-1.{distribution} and architecture
    i386.

    * Compiled on Ubuntu 10.04.4 LTS
    (Linux 2.6, glibc 2.11, Sendmail 8.14)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha60-1.Ubuntu10.04.i386.deb
    Package elmme binary DEB build on Ubuntu 10.04.4 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha60-1.Ubuntu10.04.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha60-1.Ubuntu10.04.i386.deb.sig

    * Compiled on Ubuntu 14.04.6 LTS
    (Linux 4.4, glibc 2.19, no MTA)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha60-1.Ubuntu14.04.i386.deb
    Package elmme binary DEB build on Ubuntu 14.04.6 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha60-1.Ubuntu14.04.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha60-1.Ubuntu14.04.i386.deb.sig

    == New package names, amd64 (x86_64)

    Package elmme with version 1.1.60-1.{distribution} and architecture
    amd64 (also known as x86_64).

    * Compiled on Ubuntu 18.04.6 LTS
    (Linux 5.4, glibc 2.27, Sendmail 8.15)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha60-1.Ubuntu18.04.amd64.deb
    Package elmme binary DEB build on Ubuntu 18.04.6 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha60-1.Ubuntu18.04.amd64.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha60-1.Ubuntu18.04.amd64.deb.sig

    == Signatures

    {file}.sig PGP signature (old key pubkey.asc, EA5A2379 1996-04-23)
    {file}.elm-key-2018.sig GPG signature (key elm.key.2018.asc, 44FC796B 2018-12-01, expires: 2028-11-28)

    == Configuration

    Following files (if exists) are rewritten by elmconfwriter on
    installation:

    - /usr/local/lib/elm.rc
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.hashmarks

    Deb generator script compiles elm for binary distribution, so you must
    edit /usr/local/lib/elm.rc before using Elm ME+ 2.5. Following variables
    may need to be modified on elm.rc:

    - mailer
    - hostdomain (this is usually needed)
    - hostfullname
    - hostname (usually this is not needed)
    - mailname (default values is generated from other values)
    - name-resolution (controls default values of hostdomain, hostfullname, hostname, mailname)

    By default first value for mailname is read from /etc/mailname file.

    For re-generation of following file, old information (if exists) is
    used:

    - /usr/local/lib/elm.rc

    WARNING: Check after installation that libraries are enabled. Global
    elm.rc values are:

    use-library =
    use-base-library = iconv
    use-config-library = resolv
    use-connect-library = tls resolv
    use-mailer-library = smtp resolv

    After editing global elm.rc run /usr/local/lib/elmrc-write -GI for fixing possible errors.

    On installation following existing files are merged with new values:

    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.hashmarks

    Old values from /usr/local/lib/aliases.text are converted to /usr/local/lib/elm.aliases and /usr/local/lib/aliases.text is renamed to /usr/local/lib/aliases.text.OLD.

    On installation new values without merging are written to following
    files:

    - /usr/local/lib/elm.aliases.NEW
    - /usr/local/lib/elm.mailinglists.NEW
    - /usr/local/lib/elm.mailservices.NEW
    - /usr/local/lib/elm.mimecharsets.NEW
    - /usr/local/lib/elm.mimetypes.NEW
    - /usr/local/lib/elm.terminalinfo.NEW
    - /usr/local/lib/elm.iso2022sets.NEW
    - /usr/local/lib/elm.hashmarks.NEW

    Also following directories are used:

    - /usr/local/lib/elm.map.txt/ (global setting map-text-dir = {lib}/elm.map.txt)
    - /usr/local/lib/elm.map.bin/ (global setting map-bin-dir = {lib}/elm.map.bin)
    - /usr/local/lib/elm.user.map/ (global setting user-map-dir = {lib}/elm.user.map)

    Hashmark EXAMPLE uses file /usr/local/lib/elm.user.map/elm.usermap.

    SUMMARY: This release changes "Mailcap program selection"
    and adds elmrc option "mailcap-select-other". This
    release adds listing of aliases with TABulator
    to few address prompts. Also some other changes
    are included and bugs fixed.

    Elm ME+ 2.5 PLalpha60 changelog

    Changes on Elm ME+ 2.5 PLalpha60 compared with Elm ME+ 2.5 PLalpha59 --------------------------------------------------------------------

    SUMMARY: This release changes "Mailcap program selection"
    and adds elmrc option "mailcap-select-other". This
    release adds listing of aliases with TABulator
    to few address prompts. Also some other changes
    are included and bugs fixed.

    - Do no allow -f name option twice on fastmail -command.
    - Tell that both -f name and -F address options
    are not allowed together on fastmail -command.

    - Giving -F address option on fastmail -command now discards
    address read from ~/.elm/elmheaders file
    (before that -F option just appended new address).

    - Allow -f name option on fastmail -command set phrase
    of From address if ~/.elm/elmheaders file gives just
    one From address.

    - Fixed port_imaponly_masks [] on htrem_have_connection()
    at lib/mbox/hashmark_remote.c
    - Fixed port_imaponly_masks [] on make_remote_mbox()
    at lib/mbox/remote_mbx.c
    - Fixed port_masks [] on submission_mailer_info_init()
    at shared_libs/smtp/smtp.c
    - Fixed port_masks [] on submission_mailer_info_rs_hook()
    at shared_libs/smtp/smtp.c
    - Fixed debug output on bgconnect_got_connection()
    at lib/remote_mbx.c

    - Do not ask program on "Mailcap program selection"
    if later part is skipped as attachment
    - Added mime_disposition_names[] to hdrs/melib.h
    and melib/mime.c
    - Changed DISPOSITION() macro on hdrs/melib.h
    - Renamed debug_f() to mime_debug_classify_f()
    and exported from melib/mime_selector.c and
    removed other static copies.
    - Passed struct header_rec * hdr to mime_classify_media()
    on parse_mime_headers1() at melib/mime_parse.c
    - Changed prototype of mime_classify_media()

    - Added elmrc option "mailcap-select-other". If
    it is set (default), "Mailcap program selection"
    screen shows o)ther alternative programs.
    Setting this option means that "test="
    commands from all mailcap entries for given type
    is executed and if test succeed, these entries
    are added as o)ther alternatives. If elmrc
    option "mailcap-select-other" is not set,
    "test=" commands from mailcap entries
    for given type is executed until some test
    succeed (or mailcap entry without "test="
    is found for given type).
    - Added struct mailcap_entry ** other_entries;
    and size_t num_other_entries;
    to struct mime_selected_handler on hdrs/melib.h
    - Some changes on prompt_programs() at src/showmsg.c
    - Added struct prompt_programs_list to hdrs/me.h
    (was struct prompt_list on src/showmsg.c)
    - Added check_mailcap_view_cmd() to src/showmsg.c
    and hdrs/me.h
    - Added prompt_mailcap_other() to src/mailcap_sel.c
    and hdrs/me.h

    - Allow space to move to next entry on
    "Mailcap program selection" even when there is
    question if it is already answered.

    - Moved struct mailcap_vector from melib/mailcap.c to
    hdrs/mailcap_imp.h
    - Moved struct mailcap_entry from melib/mailcap.c to
    hdrs/mailcap_imp.h

    - Added char quote_char to struct mailcap_vector
    on hdrs/mailcap_imp.h for printing purposed.

    - Possible fix for need_meta() on src/showmsg.c

    - Moved "Mail Quota Screen" title to second line
    from first line.

    - Added struct hdrmenu_context to hdrs/me.h
    - Added clear_hdrmenu_context() to hdrs/me.h
    and src/hdrconfg.c
    - Changed prototype of presend_action() on
    hdrs/me.h

    - Added listing of aliases with TABulator
    to T)o:, C)c: and B)cc: -commands
    on "Mail Pre-Send Screen".
    R)eturn-path: -command does not show
    listing of aliases on "Mail Pre-Send Screen"..
    - Added listing of aliases with TABulator
    to address prompts on "Message Header Edit Screen".
    - Added listing of aliases with TABulator
    to T)o: -command on "Bounce Pre-Send Screen".
    R)eturn-path: -command does not show
    listing of aliases on "Bounce Pre-Send Screen".

    - Fixed memory leak on add_surface() at src/addr_prompt.c
    - Fixed memory leak on expanded_to_tokenized() at src/addr_prompt.c

    New elmrc option:
    mailcap-select-other

    New files:
    src/mailcap_sel.c
    hdrs/mailcap_imp.h

    Warnings
    --------

    - Not compiled with MMDF support defined, so probably it doesn't
    work (or even compile).

    - This has not been tested much so there can be bad bugs.

    Bug reports to: Kari E. Hurtta <elm@elmme-mailer.org>
    (was hurtta+elm@posti.FMI.FI)

    - Internationalized (ie. non-ASCII) domain names are not supported.

    - Support for multipart/signed and multipart/encrypted (specially:
    support for PGP/MIME) only in reading side. There is no support
    for attachments with multipart/encrypted.

    - HP's shoftkeys are no longer supported

    - DECNET addresses like host::user may be interpreted as phrase
    of group syntax or as route of source routed address.

    - Header editing screen now uses addresses in form phrase <address>,
    but because it does not require using of comma (,), multiword
    phrases must be entered in quotes.

    For example: "Kari Hurtta" <hurtta>

    - If address includes <> or comments (), they are not aliased
    expanded. So aliases must be entered as bare words.

    - Addresses given as arguments to elm command should be given
    as one address per argument. Giving of sevaral addresses per
    one argument causes that address is misparsed if header is
    edited on header editing screen.

    That is:

    Use: elm '"Kari Hurtta" <hurtta>' 'Admin <root>'

    Don't use: elm 'Kari Hurtta <hurtta>, Admin <root>'

    - p)rint command acts as P)rint text -command. So it
    is currently quite useless.
    p)rint command does that via readmsg -command. However
    P)rint text does actually same (without readmsg).

    - Some Linux libraries does not follow $LC_CTYPE when program is
    setgid. Net result is that your locale is always C. That is
    visible that $LC_CTYPE does not effect to locale printed by
    'elm -vvvvv':

    Locale (LC_CTYPE): C
    Display character-set: US-ASCII
    Sending character-set: US-ASCII

    - All refrences iso2022 maps are parsed and read to memory.
    This may cause quite big memory consumption specially because
    eastern (multibyte) sets tend to be lot of characters. That
    mapping information should be shared between processes to
    reduce memory consuption.

    - If display charset is produced by using mapping from locale
    to charset where charset definition is later invalidated
    ("removed") by setting explicit compatcharsets on user's
    .elm/elmrc, that may cause PANIC on elm's internal pager
    or other problems. Invalidation happens if display charset
    is on implicit compatcharsets list (because of charset
    definition), but does not have explicit compatcharsets list
    given by user.

    - Neither Unicode didirectional algorithm nor Right-Left scripts
    are supported.

    - In some situations two Status headers may be generated two
    Status headers -- one by IMAP deamon and one from APPENDed
    message.

    - When APPENDing message to IMAP folder (which is normal UNIX
    mailbox format) original "From " separator line can not be
    preserved -- specially it is not possible to pass envelope
    sender address.

    - For UTF-8 charset Elm only knows printable characters from
    Latin/1 range, if unicode database (see elmrc option "unidata")
    is not loaded.

    - For using of ISO2022 character sets it is required that mapping
    them to unicode is know -- otherwise Elm ME+ does not know which
    characters are printable.

    - UTF-16 surrogate pairs (D800-DFFF) are not supported on UTF-7
    charset.

    - Mixing of names using IMAP naming convention
    (imap-naming-convention = yes)
    and names using imap-charset does not work very well...

    - " Regarding my message (8 Aug 2000) regarding 'newmail' on
    AIX 4.3.3 in an 'aixterm' window and the 'aixterm' did not
    close, indeed the problem was NOT related to 'newmail' but an
    AIX bug.

    IBM has release a patch, and the 'aixterm' in AIX 4.3.3 must
    be update with fileset X11.apps.aixterm.4.3.3.26 (PTF
    U473920) is solved to problem."
    From: Noam G. Nudelman

    - File /usr/share/locale/fi/charset gives charset name utf-8 on
    Linux Mandrake 7.2. This causes that Configure generates
    mapping
    fi utf-8
    to elm.mimecharsets. However that seems to have
    incorrect mapping. You may want change this to
    fi ISO-8859-1

    ( however nl_langinfo(CODESET) gives charset ISO-8859-15
    but look following entry. )

    - Locale 'fi' seems to have charset ISO-8859-15 according
    of nl_langinfo(CODESET) on Mandrake Linux 7.2 (and probaly
    others with same glibc version). However for example gnome
    terminal uses font
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-1
    and not
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-15

    Also KDE's konsole program seems use iso8859-1 character set
    although locale is 'fi' which should have ISO-8859-15 according
    of nl_langinfo (selecting "unicode" from menu seems fix that.)

    Because of mismatch more correct locale is fi_FI.88591, which gives
    ISO-8859-1 character set according of nl_langinfo(CODESET).

    ( Locale seems come from /etc/sysconfig/i18n or $HOME/.i18n )

    > To enable handling of ISO-8859-1 and ISO-8859-15 character sets
    on linux console, read comments from doc/terminal.info file.

    - Mandrake Linux 7.2 seems set LD_PRELOAD to load
    /usr/lib/libxalflaunch.so.0. That (xalf-0.4-2mdk) causes that
    elm to crash on startup (actually before main() is reached.)

    - kterm on Mandrake Linux 7.2 seems have (at least on my test
    environment) seems get bad fontlist (*VT100*fontList) which
    gives bad font for iso8859-1 -- therefore ISO-8859-1 characters
    do not work.

    ("xrdb -query" seems report resource with name "*fontList"
    -- that probably overrides "*VT100*fontList" which comes
    from /usr/lib/X11/app-defaults/KTerm )

    - Also note that initially kterm does NOT default to
    ISO-8859-1 -- therefore ISO-8859-1 works only when
    elm explicity switch to ISO-8859-1 (for example
    with 'elm -D ISO-8859-1')

    - When assembling message/partial MIME (RFC 2046)
    requires that all headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are copied from
    initial enclosing message to assembled message. It also
    requires that headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are ignored and
    dropped from enclosed message.

    For now we copy only Received: -headers. Dropping extra
    headers from enclosed message makes assembly more
    complicated (and dropping of Received: -headers
    from enclosed message do not make sense.)

    - mailer=sendmail; verify=yes works only when sendmail
    is installed as setuid root. Use mailer=submission instead.
    * Starting from sendmail 8.12 sendmail is normally
    installed as setgid smmsp and not as setuid root.
    - However error message is printed only if
    verify-local-address=yes is also set

    - IMAP connection is stalled some times. Reason is unknown.

    Collector of these patches
    --------------------------

    Kari Hurtta <elm@elmme-mailer.org>
    Kari Hurtta <hurtta+elm@siilo.FMI.FI>

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Kari Hurtta@21:1/5 to All on Thu Nov 24 19:53:03 2022
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha-54to60.0

    Before applying this patch catenate parts 1 - 13 first.
    Also it should be possible to apply parts 1 - 13
    individually.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha54

    ====================================== ( part 0/13 ) =========
    Elm ME+ 2.5 PLalpha60

    - Is available with
    <URL: http://www.elmme-mailer.org/elm-ME+2.5/src/elm-ME+2.5.alpha60.2eaad7217def7d1579e0244a7d4528a9.tar.gz >
    and <URL: http://www.elmme-mailer.org/elm-ME+2.5/src/elm-ME+2.5.PLalpha60.patch.gz >
    <URL: http://www.elmme-mailer.org/elm-ME+2.5/src/elm-ME+2.5.PLalpha59.patch.gz >
    ... http://www.elmme-mailer.org/elm-ME+2.5/src/elm-ME+2.5.PLalpha5X.patch.gz for X = 6-8
    <URL: http://www.elmme-mailer.org/elm-ME+2.5/src/elm-ME+2.5.PLalpha55.patch.gz >
    via http.
    Signatures are
    <URL: http://www.elmme-mailer.org/elm-ME+2.5/src/elm-ME+2.5.alpha60.2eaad7217def7d1579e0244a7d4528a9.tar.gz.elm-key-2018.sig >
    <URL: http://www.elmme-mailer.org/elm-ME+2.5/src/elm-ME+2.5.alpha60.2eaad7217def7d1579e0244a7d4528a9.tar.gz.sig >
    and <URL: http://www.elmme-mailer.org/elm-ME+2.5/src/elm-ME+2.5.PLalpha60.patch.gz.elm-key-2018.sig >
    <UTL: http://www.elmme-mailer.org/elm-ME+2.5/src/elm-ME+2.5.PLalpha60.patch.gz.sig >

    - Is available with
    <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.alpha60.2eaad7217def7d1579e0244a7d4528a9.tar.gz >
    and <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.PLalpha60.patch.gz >
    <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.PLalpha59.patch.gz >
    ... https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.PLalpha5X.patch.gz for X = 6-8
    <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.PLalpha55.patch.gz >
    via https.
    Signatures are
    <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.alpha60.2eaad7217def7d1579e0244a7d4528a9.tar.gz.elm-key-2018.sig >
    <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.alpha60.2eaad7217def7d1579e0244a7d4528a9.tar.gz.sig >
    and <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.PLalpha60.patch.gz.elm-key-2018.sig >
    <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.PLalpha60.patch.gz.sig >

    - Is available on ftp.funet.fi
    directory pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/
    files elm-ME+2.5.alpha60.2eaad7217def7d1579e0244a7d4528a9.tar.gz
    and elm-ME+2.5.PLalpha60.patch.gz
    via anonumous ftp.
    Signatures are
    elm-ME+2.5.alpha60.2eaad7217def7d1579e0244a7d4528a9.tar.gz.elm-key-2018.sig
    elm-ME+2.5.alpha60.2eaad7217def7d1579e0244a7d4528a9.tar.gz.sig
    and elm-ME+2.5.PLalpha60.patch.gz.elm-key-2018.sig
    elm-ME+2.5.PLalpha60.patch.gz.sig

    Or is available with
    <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.alpha60.2eaad7217def7d1579e0244a7d4528a9.tar.gz >
    and <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha60.patch.gz >
    <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha59.patch.gz >
    ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha5X.patch.gz for X = 6-8
    <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha55.patch.gz >
    with browser.
    Signatures are
    <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.alpha60.2eaad7217def7d1579e0244a7d4528a9.tar.gz.elm-key-2018.sig >
    <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.alpha60.2eaad7217def7d1579e0244a7d4528a9.tar.gz.sig >
    and <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha60.patch.gz.elm-key-2018.sig >
    <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha60.patch.gz.sig >

    Or is available with
    <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.alpha60.2eaad7217def7d1579e0244a7d4528a9.tar.gz >
    and <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha60.patch.gz >
    <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha59.patch.gz >
    ... https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha5X.patch.gz for X = 6-8
    <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha55.patch.gz >
    via https.
    Signatures are
    <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.alpha60.2eaad7217def7d1579e0244a7d4528a9.tar.gz.elm-key-2018.sig >
    <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.alpha60.2eaad7217def7d1579e0244a7d4528a9.tar.gz.sig >
    and <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha60.patch.gz.elm-key-2018.sig >
    <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha60.patch.gz.sig >

    Usenet news (nntp) server news.kolumbus.fi (*) is closed since 2021-05-04.

    Now posting this to news.eternal-september.org instead. This post includes
    diff from Elm ME+ 2.5 PLalpha54 to Elm ME+ 2.5 PLalpha60.

    (*) That is apparently also uutiset.elisa.fi and news.saunalahti.fi.
    See: https://elisa.fi/asiakastiedotteet/tiedote/?id=63663313593635



    Changes on Elm ME+ 2.5 PLalpha60 compared with Elm ME+ 2.5 PLalpha59 --------------------------------------------------------------------

    SUMMARY: This release changes "Mailcap program selection"
    and adds elmrc option "mailcap-select-other". This
    release adds listing of aliases with TABulator
    to few address prompts. Also some other changes
    are included and bugs fixed.

    - Do no allow -f name option twice on fastmail -command.
    - Tell that both -f name and -F address options
    are not allowed together on fastmail -command.

    - Giving -F address option on fastmail -command now discards
    address read from ~/.elm/elmheaders file
    (before that -F option just appended new address).

    - Allow -f name option on fastmail -command set phrase
    of From address if ~/.elm/elmheaders file gives just
    one From address.

    - Fixed port_imaponly_masks [] on htrem_have_connection()
    at lib/mbox/hashmark_remote.c
    - Fixed port_imaponly_masks [] on make_remote_mbox()
    at lib/mbox/remote_mbx.c
    - Fixed port_masks [] on submission_mailer_info_init()
    at shared_libs/smtp/smtp.c
    - Fixed port_masks [] on submission_mailer_info_rs_hook()
    at shared_libs/smtp/smtp.c
    - Fixed debug output on bgconnect_got_connection()
    at lib/remote_mbx.c

    - Do not ask program on "Mailcap program selection"
    if later part is skipped as attachment
    - Added mime_disposition_names[] to hdrs/melib.h
    and melib/mime.c
    - Changed DISPOSITION() macro on hdrs/melib.h
    - Renamed debug_f() to mime_debug_classify_f()
    and exported from melib/mime_selector.c and
    removed other static copies.
    - Passed struct header_rec * hdr to mime_classify_media()
    on parse_mime_headers1() at melib/mime_parse.c
    - Changed prototype of mime_classify_media()

    - Added elmrc option "mailcap-select-other". If
    it is set (default), "Mailcap program selection"
    screen shows o)ther alternative programs.
    Setting this option means that "test="
    commands from all mailcap entries for given type
    is executed and if test succeed, these entries
    are added as o)ther alternatives. If elmrc
    option "mailcap-select-other" is not set,
    "test=" commands from mailcap entries
    for given type is executed until some test
    succeed (or mailcap entry without "test="
    is found for given type).
    - Added struct mailcap_entry ** other_entries;
    and size_t num_other_entries;
    to struct mime_selected_handler on hdrs/melib.h
    - Some changes on prompt_programs() at src/showmsg.c
    - Added struct prompt_programs_list to hdrs/me.h
    (was struct prompt_list on src/showmsg.c)
    - Added check_mailcap_view_cmd() to src/showmsg.c
    and hdrs/me.h
    - Added prompt_mailcap_other() to src/mailcap_sel.c
    and hdrs/me.h

    - Allow space to move to next entry on
    "Mailcap program selection" even when there is
    question if it is already answered.

    - Moved struct mailcap_vector from melib/mailcap.c to
    hdrs/mailcap_imp.h
    - Moved struct mailcap_entry from melib/mailcap.c to
    hdrs/mailcap_imp.h

    - Added char quote_char to struct mailcap_vector
    on hdrs/mailcap_imp.h for printing purposed.

    - Possible fix for need_meta() on src/showmsg.c

    - Moved "Mail Quota Screen" title to second line
    from first line.

    - Added struct hdrmenu_context to hdrs/me.h
    - Added clear_hdrmenu_context() to hdrs/me.h
    and src/hdrconfg.c
    - Changed prototype of presend_action() on
    hdrs/me.h

    - Added listing of aliases with TABulator
    to T)o:, C)c: and B)cc: -commands
    on "Mail Pre-Send Screen".
    R)eturn-path: -command does not show
    listing of aliases on "Mail Pre-Send Screen"..
    - Added listing of aliases with TABulator
    to address prompts on "Message Header Edit Screen".
    - Added listing of aliases with TABulator
    to T)o: -command on "Bounce Pre-Send Screen".
    R)eturn-path: -command does not show
    listing of aliases on "Bounce Pre-Send Screen".

    - Fixed memory leak on add_surface() at src/addr_prompt.c
    - Fixed memory leak on expanded_to_tokenized() at src/addr_prompt.c

    New elmrc option:
    mailcap-select-other

    New files:
    src/mailcap_sel.c
    hdrs/mailcap_imp.h

    Changes on Elm ME+ 2.5 PLalpha59 compared with Elm ME+ 2.5 PLalpha58 --------------------------------------------------------------------

    SUMMARY: This release fixes some compiling errors and
    warnings. This releases adds aliases listing
    (available with TABulator key) to To: and
    CC: -prompts for m)ail, b)ounce and r)eply
    commands. Also some other changes are
    included and bugs fixed.

    - "/usr/bin/ld: outheaders.o:(.bss+0x0): multiple definition of `attribution_s'; mailer.o:(.bss+0x0): first defined here
    /usr/bin/ld: outheaders.o:(.bss+0x8): multiple definition of `fwdattribution_s'; mailer.o:(.bss+0x8): first defined here"
    Reported by: Noam G. Nudelman
    > Added missing extern to struct string * attribution_s and
    struct string * fwdattribution_s on hdrs/elmlib.h

    - "elmregister.c: In function ‘copy_dir’:
    elmregister.c:2234:21: warning: ×’parse_log_tail×’ accessing 1034 bytes in a region of size 1024 [-Wstringop-overflow=]
    2234 | parse_log_tail(&L1,buffer,L,module_ptr,command_ptr,user_ptr,
    | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    2235 | group_ptr,mode_ptr,args_ptr,argnum);
    | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
    Reported by: Noam G. Nudelman
    > Unify parse_log_tail() buffer reservation on
    utils/elmregister.c

    - "elmregister.c: In function ‘copy_dir’:
    elmregister.c:2234:21: warning: ‘parse_log_tail’ accessing 1200 bytes in a region of size 4 [-Wstringop-overflow=]
    2234 | parse_log_tail(&L1,buffer,L,module_ptr,command_ptr,user_ptr,
    | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    2235 | group_ptr,mode_ptr,args_ptr,argnum);
    | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    elmregister.c:2234:21: note: referencing argument 9 of type ‘int *’
    elmregister.c:601:13: note: in a call to function ‘parse_log_tail’
    601 | static void parse_log_tail(l,buffer1,ptr,module_ptr,command_ptr,user_ptr,
    | ^~~~~~~~~~~~~~"
    Reported by: Noam G. Nudelman
    > Changed int args_ptr[MAX_ARGS] to int *args_ptr on prototype

    - "query.c: In function ‘lookup_resolv_cache_nonblocked’:
    query.c:5213:9: warning: ‘__hostalias’ is deprecated: use getaddrinfo instead [-Wdeprecated-declarations]
    5213 | } else if (!dots && (alias = hostalias(name))) {
    | ^
    In file included from elmresolv.h:27,
    from query.c:10:
    /usr/include/resolv.h:185:17: note: declared here
    185 | const char * hostalias (const char *) __THROW
    | ^~~~~~~~~"
    Reported by: Noam G. Nudelman
    > Added Configure test that hostalias() exists and works
    when $HOSTALIASES is set -- this does
    does not remove warning. hostalias() is not anyway useful
    when Elm ME+ is setgid mail, however.
    - Configure of libelme-resolv module asks that
    is hostalias() used directly on module if Elm ME+ is setgid
    or hostalias() is deprecated.
    - Moved hostalias() lookup from lookup_resolv_cache_nonblocked()
    on shared_libs/resolv/query.c to
    query_resolv_cache() on shared_libs/resolv/resolv.c.
    hostname() lookup is now also done when exact name is
    queried without search.

    - ".../resolv/resolvertest2.c: In function ‘main’:
    .../shared_libs/resolv/resolvertest2.c:822:5: warning: ‘__hostalias’ is deprecated: use getaddrinfo instead [-Wdeprecated-declarations]
    822 | } else if (!dots && (alias = hostalias(name))) {
    | ^
    In file included from .../shared_libs/resolv/resolvertest2.c:44:
    /usr/include/resolv.h:185:17: note: declared here
    185 | const char * hostalias (const char *) __THROW
    | ^~~~~~~~~"
    Reported by: Noam G. Nudelman
    > Excluded hostalias() from resolvertest2.c
    That is used on Configure and hostalias() is tested
    after resolvertest2.c tests. hostalias()
    is included later on elmresolvertest2 if
    hostalias() was not excluded.

    - Fixed compilation warning
    .../lib/mbox/remote_server.c:103:5: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation]
    if (REMOTE_BROWSER_magic != dir->a.remote_browser->magic)

    - Fixed compilation warning
    .../lib/mbox/remote_server.c:2805:5: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation]
    if (REMOTE_BROWSER_magic != dir->a.remote_browser->magic)

    - Fixed compilation warning
    .../lib/can_open.c: In function ‘can_open’:
    .../lib/can_open.c:124:31: warning: ?: using integer constants in boolean context, the expression will always evaluate to ‘true’ [-Wint-in-bool-context]
    DPRINT(Debug,(0 == ret) ? 10 : 1,
    ~~~~~~~~~~~~~~~~~~~~~~^~~
    .../hdrs/elmlib.h:2396:21: note: in definition of macro ‘DPRINT’
    if (x.active >= level) debug_action_call action; \
    ^~~~~
    > Changed DPRINT macro
    - Changed also DEBUG_CHECK(), SIGDPRINT() and DEBUG_PRINT_BUFFER()
    macros

    - Fixed compilation warning
    .../lib/digest_wrapper.c: In function ‘digest_proc_equal’:
    .../lib/digest_wrapper.c:473:34: warning: self-comparison always evaluates to false [-Wtautological-compare]
    if (ptr1->digest_result[x] != ptr1->digest_result[x]) {
    ^~
    > Fixed incorrect result of digest_proc_equal()

    - Fixed compilation warning
    .../lib/iso2022.c: In function ‘eat_iso2022_setid’:
    .../lib/iso2022.c:2487:2: warning: this ‘else’ clause does not guard... [-Wmisleading-indentation]
    else result->type = iso2022_94;
    ^~~~
    .../lib/iso2022.c:2488:19: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘else’
    result->bank = bank_G0;
    ^~~~~~

    - Fixed compilation warning
    .../lib/iso2022.c: In function ‘eat_iso2022_setid’:
    .../lib/iso2022.c:2498:2: warning: this ‘else’ clause does not guard... [-Wmisleading-indentation]
    else result->type = iso2022_94;
    ^~~~
    .../lib/iso2022.c:2499:19: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘else’
    result->bank = bank_G1;
    ^~~~~~

    - Fixed compilation warning
    .../lib/iso2022.c: In function ‘eat_iso2022_setid’:
    .../lib/iso2022.c:2509:2: warning: this ‘else’ clause does not guard... [-Wmisleading-indentation]
    else result->type = iso2022_94;
    ^~~~
    .../lib/iso2022.c:2510:19: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘else’
    result->bank = bank_G2;
    ^~~~~~

    - Fixed compilation warning
    .../lib/iso2022.c: In function ‘eat_iso2022_setid’:
    .../lib/iso2022.c:2520:2: warning: this ‘else’ clause does not guard... [-Wmisleading-indentation]
    else result->type = iso2022_94;
    ^~~~
    .../lib/iso2022.c:2521:19: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘else’
    result->bank = bank_G3;
    ^~~~~~

    - Fixed compilation warning
    .../lib/iso2022.c: In function ‘eat_iso2022_setid’:
    .../lib/iso2022.c:2531:2: warning: this ‘else’ clause does not guard... [-Wmisleading-indentation]
    else result->type = iso2022_96;
    ^~~~
    .../lib/iso2022.c:2532:19: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘else’
    result->bank = bank_G1;
    ^~~~~~

    - Fixed compilation warning
    .../lib/iso2022.c: In function ‘eat_iso2022_setid’:
    .../lib/iso2022.c:2543:2: warning: this ‘else’ clause does not guard... [-Wmisleading-indentation]
    else result->type = iso2022_96;
    ^~~~
    .../lib/iso2022.c:2544:19: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘else’
    result->bank = bank_G2;
    ^~~~~~

    - Fixed compilation warning
    .../lib/iso2022.c: In function ‘eat_iso2022_setid’:
    .../lib/iso2022.c:2554:2: warning: this ‘else’ clause does not guard... [-Wmisleading-indentation]
    else result->type = iso2022_96;
    ^~~~
    .../lib/iso2022.c:2555:19: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘else’
    result->bank = bank_G3;
    ^~~~~~

    - Fixed compilation warning
    .../shared_libs/tls/tls.c: In function ‘tls_init’:
    .../shared_libs/tls/tls.c:735:6: warning: unused variable ‘z’ [-Wunused-variable]
    int z,l;
    ^

    - Fixed compilation warning
    .../src/alias_display.c: In function ‘ad_set_alias_group_phrase’:
    .../src/alias_display.c:1660:6: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation]
    if (group_phrase)
    ^~
    .../src/alias_display.c:1663:7: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘if’
    redraw1:
    ^~~~~~~

    - Fixed compilation warning
    .../src/attach_menu.c: In function ‘attach_view_binary’:
    .../src/attach_menu.c:1592:10: warning: self-comparison always evaluates to true [-Wtautological-compare]
    if (cs == cs ||
    ^~
    > Fixed character set check on attach_view_binary()

    - Fixed compilation warning
    .../src/builtin++.c: In function ‘builtinplusplus’:
    .../src/builtin++.c:714:7: warning: this ‘else’ clause does not guard... [-Wmisleading-indentation]
    else
    ^~~~

    - Fixed compilation warning
    .../src/showmsg_c.c: In function ‘process_showmsg_cmd’:
    .../src/showmsg_c.c:679:6: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation]
    if (flags & SHOWMSG_NOMAIL)
    ^~
    .../src/showmsg_c.c:682:3: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘if’
    put_cmd_name(pager_page,TRUE,
    ^~~~~~~~~~~~

    - Fixed case where "Copies to:" prompt is not cleared when
    new address is written - bug was introduced when
    address prompt implementation changed on
    Elm ME+ 2.5 PLalpha58
    > Changed CleartoEOLN() to menu_CleartoEOLN()
    on enter_helper() at src/enter_helper.c

    - Added listing of aliases to
    "Send the message to: "
    and "Copies to: "
    prompts of m)ail command with TABulator. Also
    TABulator shows listing of aliases
    on "Send the message to: "
    prompt on b)ounce command and
    on "Copies to: "
    prompt on r)eply command.
    > TABulator do not show aliases address prompts of
    "Mail Pre-Send Screen" and "Message Header Edit Screen".

    - Added w_menu_calculate_rline() to src/screen/def_sceen.h
    - Added w_menu_calculate_rline * wra_calculate_line;
    to struct menu_draw_routine
    - Added scommon_calculate_rline() to src/screen/scommon.c
    and src/screen/def_scommon.h
    - Added menu_translate_pos() to src/screen/screen.c
    and hdrs/me.h

    - Added add_one_alias_to_expanded() to src/addr_util.c and
    and hdrs/me.h

    - Added full_page_r * full_page; to struct enter_info
    - Added default_full_page() to hdrs/me.h and src/enter_helper.c

    - Added more check_changes() calls to cur_ReadCh2() on src/screen/curs_input.c
    - Changed resize and redraw handling on cur_ReadCh2()
    - Changed waiting on cur_ReadCh2()
    - Added wait_for_action_or_timeout_f() to hdrs/elmlib.h
    and lib/schedule.c

    - Added prompt_hint_r * prompt_hint; to struct enter_info
    - Added default_prompt_hint() to hdrs/me.h and src/enter_helper.c

    - Changed sort_aliases() call on set_aview_alias_mode()
    at src/alias.c
    - Changed prototype of sort_aliases()

    - Fixed crash on debug output on build_address_l()
    SIGNAL PANIC in .../mail/elm-alias/src/signals.c:144:segv_signal
    >>>

    Segment Violation signal!


    Call stack: 7FF9F99BAB34 55BF908911DD 7FF9F912DF10 7FF9F927D461 7FF9F9998086
    continues: 7FF9F9998B5F 55BF907B49DD 55BF907AD4BF 55BF907AFCC7 55BF9082C5CA
    continues: 55BF9082CFC4 55BF9082DB43 55BF9082DCF2 55BF907F8AC0 55BF90829D45
    continues: 55BF9082B5E5 55BF907FBED5 7FF9F9110C87 55BF907AB87A
    backtrace:
    .../lib64/libelmme-base.so.1.1.58+(panic+0x1de)[0x7ff9f99bab34]
    .../bin/elm(segv_signal+0x80)[0x55bf908911dd]
    /lib/x86_64-linux-gnu/libc.so.6(+0x3ef10)[0x7ff9f912df10]
    /lib/x86_64-linux-gnu/libc.so.6(+0x18e461)[0x7ff9f927d461]
    .../lib64/libelmme-base.so.1.1.58+(+0x56086)[0x7ff9f9998086]
    .../lib64/libelmme-base.so.1.1.58+(debug_action_call+0x6b2)[0x7ff9f9998b5f]
    .../bin/elm(build_address_l+0x1264)[0x55bf907b49dd]
    .../bin/elm(+0x284bf)[0x55bf907ad4bf]
    .../bin/elm(prompt_expanded_address+0xc7c)[0x55bf907afcc7]
    .../bin/elm(get_to+0x4e2)[0x55bf9082c5ca]
    .../bin/elm(send_msg_middle2+0x36f)[0x55bf9082cfc4]
    .../bin/elm(send_msg_middle+0x19b)[0x55bf9082db43]
    .../bin/elm(send_msg_l+0x17a)[0x55bf9082dcf2]
    .../bin/elm(mailbox_command+0xf73)[0x55bf907f8ac0]
    .../bin/elm(+0xa4d45)[0x55bf90829d45]
    .../bin/elm(main_messages_menu+0x17d)[0x55bf9082b5e5]
    .../bin/elm(main+0xf48)[0x55bf907fbed5]
    /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xe7)[0x7ff9f9110c87]
    /tmp/TEST/bin/elm(_start+0x2a)[0x55bf907ab87a]
    Press <enter> to abort:

    - Fixed string_need_quote() on lib/stringtok.c

    Changes on Elm ME+ 2.5 PLalpha58 compared with Elm ME+ 2.5 PLalpha57 --------------------------------------------------------------------

    SUMMARY: This release adds "Implicit TLS" (RFC 8314)
    for imap, pop and submission protocols. This
    is controlled with new elmrc option "use-tls".
    This release uses openssl's X509_check_host().
    This release changes address prompts and fixes
    crash when folder browser login prompt from
    #hashmark is interrupted with Ctrl-C. Also
    some other changes are included and bugs fixed.

    RFC 8314: Use of TLS for Email Submission/Access

    - Added "Implicit TLS" (separate tcp port) for imap,
    pop, submission which is tried first before
    imap, pop, submission (and STARTTLS after that)
    is tried. Implicit TLS is available only
    when libelmme-tls module is loaded. This
    is controlled with new elm.rc option "use-tls".

    - Added keyword "submissions" to to mail.services.
    RFC 8314 registers tcp port 465 for
    "Message Submission over TLS protocol".
    > Port 465 is also registered for
    "URL Rendesvous Directory for SSM"
    > Historically port 465 was registered for
    smtps, but this was revoked (smtp uses
    MX records, which do not specify port).

    - Added service_type_defport(), enumerate_service_type(),
    init_enum_service_type(), init_enum_service_list(),
    convert_service_entry()
    to lib/service_list.c and hdrs/connection_imp.h

    - Added elmrc option "use-tls".
    Option includes list of keywords:
    none None of values are selected
    implicit-tls Use "Implicit TLS" (separate tcp port)
    for imap, pop, submission which is tried
    first before imap, pop, submission
    (and STARTTLS after that) is tried.
    starttls libbelmme-tls module uses STARTTLS
    (IMAP, SMTP) or STLS (POP) if command
    is available. This is default.
    verify-tls-certificate connection must use tls
    and server certificate
    must have valid
    require-tls-peer-name connection must use tls
    and certificates's CN must
    match
    display-check-host display X509_check_host()
    matching when login

    The "use-tls" elm.rc option accepts two forms:
    - Absolute form where used options are listed
    - Additive form where changes from compile
    time default are listed:
    +implicit-tls -implicit-tls
    +starttls -starttls
    +verify-tls-certificate
    -verify-tls-certificate
    +require-tls-peer-name
    -require-tls-peer-name
    +display-check-host
    -display-check-host
    These two forms can not be mixed.

    - Allowed disabling automatic use of STARTTLS
    (IMAP, SMTP) or STLS (POP) commands by using of
    use-tls = none
    or use-tls = -starttls
    - Specifying tls:starttls-version on
    ~/.elm/mail.services or on global elm.mailservices
    overrides starttls disable given on use-tls setting.
    * About same can be done by removing
    use-connect-library = tls
    - Specifying require-tls-peer-name={name}
    on ~/.elm/mail.services or on global elm.mailservices
    can used to make 'require-tls-peer-name' on use-tls
    accept also other certificate's CN (or some
    cases other 'Subject Alternative Name' (SAN)) than given
    hostname.
    - 'require-tls-peer-name' checks certificate's CN
    when correct name is usually certificate's
    'Subject Alternative Name' (SAN) -
    with OpenSSL 1.0.2 or newer 'require-tls-peer-name'
    check also DNS:name from 'Subject Alternative Name' (SAN)
    if name is not IP-address.
    > If 'Subject Alternative Name' (SAN) check is
    not supported, it is usually not good idea to use
    'require-tls-peer-name' on use-tls setting

    - Specifying verify-tls-certificate=off
    on ~/.elm/mail.services or on global elm.mailservices
    overrides verify-tls-certificate given on use-tls setting.
    - Specifying use-tls-checks=no on ~/.elm/mail.services or on
    global elm.mailservices overrides 'verify-tls-certificate'
    and 'require-tls-peer-name' given on use-tls setting.

    - libbelmme-tls module changes default value of "use-tls"
    if use-config-library elmrc option lists tls.
    - Added RC_change_config() shared_libs/tls/tls.c

    - Added connect_remote_account_2()
    to lib/remote_mbx.c and hdrs/connection_imp.h
    - Added browser_passhm_open_ra2()
    to lib/mbox/hashmark_helper.c and hdrs/connection_imp.h
    - Added hashmark_passhm_open_ra2()
    to lib/mbox/hashmark.c and hdrs/hashmark.h
    - Added hashtype_passhm_open_ra2_f() to hdrs/hashmark_imp.h
    - Added hashtype_passhm_open_ra2_f * passhm_open_ra2;
    to struct hashtype_actions

    - Added 'Subject Alternative Name' (SAN) support
    to 'require-tls-peer-name' on global elm.mailservices
    and user's ~/.elm/mail.services file.
    - Added 'Subject Alternative Name' (SAN) support
    to 'require-tls-peer-name' flag on "use-tls" elm.rc
    option.
    - Added 'Subject Alternative Name' (SAN) support
    to "require-tls-peer-name" on global elm.hashmarks
    and user's ~/hash.marks file.
    > This 'Subject Alternative Name' (SAN) support requires
    OpenSSL 1.0.2 or newer, which includes X509_check_host()
    function.
    > This 'Subject Alternative Name' (SAN) support only
    checks "DNS:" -names with X509_check_host() and does not
    check "IP:" -names with X509_check_ip().

    - Added Configure (actually shared_libs/tls/config) test
    for X509_check_host()

    - 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 IMAP show

    IMAP login to <host> (verified, host matches) as <user> ...
    or IMAP login to <host> as <user> (verified, host matches <name>) ...

    instead of

    IMAP login to <host> (verified) as <user> ...

    [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
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha-54to60.0

    Before applying this patch catenate parts 1 - 13 first.
    Also it should be possible to apply parts 1 - 13
    individually.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha54

    ====================================== ( part 0/13 ) =========
    Elm ME+ 2.5 PLalpha60

    - Is available with
    <URL: http://www.elmme-mailer.org/elm-ME+2.5/src/elm-ME+2.5.alpha60.2eaad7217def7d1579e0244a7d4528a9.tar.gz >
    and <URL: http://www.elmme-mailer.org/elm-ME+2.5/src/elm-ME+2.5.PLalpha60.patch.gz >
    <URL: http://www.elmme-mailer.org/elm-ME+2.5/src/elm-ME+2.5.PLalpha59.patch.gz >
    ... http://www.elmme-mailer.org/elm-ME+2.5/src/elm-ME+2.5.PLalpha5X.patch.gz for X = 6-8
    <URL: http://www.elmme-mailer.org/elm-ME+2.5/src/elm-ME+2.5.PLalpha55.patch.gz >
    via http.
    Signatures are
    <URL: http://www.elmme-mailer.org/elm-ME+2.5/src/elm-ME+2.5.alpha60.2eaad7217def7d1579e0244a7d4528a9.tar.gz.elm-key-2018.sig >
    <URL: http://www.elmme-mailer.org/elm-ME+2.5/src/elm-ME+2.5.alpha60.2eaad7217def7d1579e0244a7d4528a9.tar.gz.sig >
    and <URL: http://www.elmme-mailer.org/elm-ME+2.5/src/elm-ME+2.5.PLalpha60.patch.gz.elm-key-2018.sig >
    <UTL: http://www.elmme-mailer.org/elm-ME+2.5/src/elm-ME+2.5.PLalpha60.patch.gz.sig >

    - Is available with
    <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.alpha60.2eaad7217def7d1579e0244a7d4528a9.tar.gz >
    and <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.PLalpha60.patch.gz >
    <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.PLalpha59.patch.gz >
    ... https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.PLalpha5X.patch.gz for X = 6-8
    <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.PLalpha55.patch.gz >
    via https.
    Signatures are
    <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.alpha60.2eaad7217def7d1579e0244a7d4528a9.tar.gz.elm-key-2018.sig >
    <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.alpha60.2eaad7217def7d1579e0244a7d4528a9.tar.gz.sig >
    and <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.PLalpha60.patch.gz.elm-key-2018.sig >
    <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.PLalpha60.patch.gz.sig >

    - Is available on ftp.funet.fi
    directory pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/
    files elm-ME+2.5.alpha60.2eaad7217def7d1579e0244a7d4528a9.tar.gz
    and elm-ME+2.5.PLalpha60.patch.gz
    via anonumous ftp.
    Signatures are
    elm-ME+2.5.alpha60.2eaad7217def7d1579e0244a7d4528a9.tar.gz.elm-key-2018.sig
    elm-ME+2.5.alpha60.2eaad7217def7d1579e0244a7d4528a9.tar.gz.sig
    and elm-ME+2.5.PLalpha60.patch.gz.elm-key-2018.sig
    elm-ME+2.5.PLalpha60.patch.gz.sig

    Or is available with
    <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.alpha60.2eaad7217def7d1579e0244a7d4528a9.tar.gz >
    and <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha60.patch.gz >
    <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha59.patch.gz >
    ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha5X.patch.gz for X = 6-8
    <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha55.patch.gz >
    with browser.
    Signatures are
    <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.alpha60.2eaad7217def7d1579e0244a7d4528a9.tar.gz.elm-key-2018.sig >
    <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.alpha60.2eaad7217def7d1579e0244a7d4528a9.tar.gz.sig >
    and <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha60.patch.gz.elm-key-2018.sig >
    <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha60.patch.gz.sig >

    Or is available with
    <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.alpha60.2eaad7217def7d1579e0244a7d4528a9.tar.gz >
    and <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha60.patch.gz >
    <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha59.patch.gz >
    ... https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha5X.patch.gz for X = 6-8
    <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha55.patch.gz >
    via https.
    Signatures are
    <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.alpha60.2eaad7217def7d1579e0244a7d4528a9.tar.gz.elm-key-2018.sig >
    <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.alpha60.2eaad7217def7d1579e0244a7d4528a9.tar.gz.sig >
    and <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha60.patch.gz.elm-key-2018.sig >
    <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha60.patch.gz.sig >

    Usenet news (nntp) server news.kolumbus.fi (*) is closed since 2021-05-04.

    Now posting this to news.eternal-september.org instead. This post includes
    diff from Elm ME+ 2.5 PLalpha54 to Elm ME+ 2.5 PLalpha60.

    (*) That is apparently also uutiset.elisa.fi and news.saunalahti.fi.
    See: https://elisa.fi/asiakastiedotteet/tiedote/?id=63663313593635



    Changes on Elm ME+ 2.5 PLalpha60 compared with Elm ME+ 2.5 PLalpha59 --------------------------------------------------------------------

    SUMMARY: This release changes "Mailcap program selection"
    and adds elmrc option "mailcap-select-other". This
    release adds listing of aliases with TABulator
    to few address prompts. Also some other changes
    are included and bugs fixed.

    - Do no allow -f name option twice on fastmail -command.
    - Tell that both -f name and -F address options
    are not allowed together on fastmail -command.

    - Giving -F address option on fastmail -command now discards
    address read from ~/.elm/elmheaders file
    (before that -F option just appended new address).

    - Allow -f name option on fastmail -command set phrase
    of From address if ~/.elm/elmheaders file gives just
    one From address.

    - Fixed port_imaponly_masks [] on htrem_have_connection()
    at lib/mbox/hashmark_remote.c
    - Fixed port_imaponly_masks [] on make_remote_mbox()
    at lib/mbox/remote_mbx.c
    - Fixed port_masks [] on submission_mailer_info_init()
    at shared_libs/smtp/smtp.c
    - Fixed port_masks [] on submission_mailer_info_rs_hook()
    at shared_libs/smtp/smtp.c
    - Fixed debug output on bgconnect_got_connection()
    at lib/remote_mbx.c

    - Do not ask program on "Mailcap program selection"
    if later part is skipped as attachment
    - Added mime_disposition_names[] to hdrs/melib.h
    and melib/mime.c
    - Changed DISPOSITION() macro on hdrs/melib.h
    - Renamed debug_f() to mime_debug_classify_f()
    and exported from melib/mime_selector.c and
    removed other static copies.
    - Passed struct header_rec * hdr to mime_classify_media()
    on parse_mime_headers1() at melib/mime_parse.c
    - Changed prototype of mime_classify_media()

    - Added elmrc option "mailcap-select-other". If
    it is set (default), "Mailcap program selection"
    screen shows o)ther alternative programs.
    Setting this option means that "test="
    commands from all mailcap entries for given type
    is executed and if test succeed, these entries
    are added as o)ther alternatives. If elmrc
    option "mailcap-select-other" is not set,
    "test=" commands from mailcap entries
    for given type is executed until some test
    succeed (or mailcap entry without "test="
    is found for given type).
    - Added struct mailcap_entry ** other_entries;
    and size_t num_other_entries;
    to struct mime_selected_handler on hdrs/melib.h
    - Some changes on prompt_programs() at src/showmsg.c
    - Added struct prompt_programs_list to hdrs/me.h
    (was struct prompt_list on src/showmsg.c)
    - Added check_mailcap_view_cmd() to src/showmsg.c
    and hdrs/me.h
    - Added prompt_mailcap_other() to src/mailcap_sel.c
    and hdrs/me.h

    - Allow space to move to next entry on
    "Mailcap program selection" even when there is
    question if it is already answered.

    - Moved struct mailcap_vector from melib/mailcap.c to
    hdrs/mailcap_imp.h
    - Moved struct mailcap_entry from melib/mailcap.c to
    hdrs/mailcap_imp.h

    - Added char quote_char to struct mailcap_vector
    on hdrs/mailcap_imp.h for printing purposed.

    - Possible fix for need_meta() on src/showmsg.c

    - Moved "Mail Quota Screen" title to second line
    from first line.

    - Added struct hdrmenu_context to hdrs/me.h
    - Added clear_hdrmenu_context() to hdrs/me.h
    and src/hdrconfg.c
    - Changed prototype of presend_action() on
    hdrs/me.h

    - Added listing of aliases with TABulator
    to T)o:, C)c: and B)cc: -commands
    on "Mail Pre-Send Screen".
    R)eturn-path: -command does not show
    listing of aliases on "Mail Pre-Send Screen"..
    - Added listing of aliases with TABulator
    to address prompts on "Message Header Edit Screen".
    - Added listing of aliases with TABulator
    to T)o: -command on "Bounce Pre-Send Screen".
    R)eturn-path: -command does not show
    listing of aliases on "Bounce Pre-Send Screen".

    - Fixed memory leak on add_surface() at src/addr_prompt.c
    - Fixed memory leak on expanded_to_tokenized() at src/addr_prompt.c

    New elmrc option:
    mailcap-select-other

    New files:
    src/mailcap_sel.c
    hdrs/mailcap_imp.h

    Changes on Elm ME+ 2.5 PLalpha59 compared with Elm ME+ 2.5 PLalpha58 --------------------------------------------------------------------

    SUMMARY: This release fixes some compiling errors and
    warnings. This releases adds aliases listing
    (available with TABulator key) to To: and
    CC: -prompts for m)ail, b)ounce and r)eply
    commands. Also some other changes are
    included and bugs fixed.

    - "/usr/bin/ld: outheaders.o:(.bss+0x0): multiple definition of `attribution_s'; mailer.o:(.bss+0x0): first defined here
    /usr/bin/ld: outheaders.o:(.bss+0x8): multiple definition of `fwdattribution_s'; mailer.o:(.bss+0x8): first defined here"
    Reported by: Noam G. Nudelman
    > Added missing extern to struct string * attribution_s and
    struct string * fwdattribution_s on hdrs/elmlib.h

    - "elmregister.c: In function ‘copy_dir’:
    elmregister.c:2234:21: warning: ×’parse_log_tail×’ accessing 1034 bytes in a region of size 1024 [-Wstringop-overflow=]
    2234 | parse_log_tail(&L1,buffer,L,module_ptr,command_ptr,user_ptr,
    | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    2235 | group_ptr,mode_ptr,args_ptr,argnum);
    | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
    Reported by: Noam G. Nudelman
    > Unify parse_log_tail() buffer reservation on
    utils/elmregister.c

    - "elmregister.c: In function ‘copy_dir’:
    elmregister.c:2234:21: warning: ‘parse_log_tail’ accessing 1200 bytes in a region of size 4 [-Wstringop-overflow=]
    2234 | parse_log_tail(&L1,buffer,L,module_ptr,command_ptr,user_ptr,
    | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    2235 | group_ptr,mode_ptr,args_ptr,argnum);
    | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    elmregister.c:2234:21: note: referencing argument 9 of type ‘int *’
    elmregister.c:601:13: note: in a call to function ‘parse_log_tail’
    601 | static void parse_log_tail(l,buffer1,ptr,module_ptr,command_ptr,user_ptr,
    | ^~~~~~~~~~~~~~"
    Reported by: Noam G. Nudelman
    > Changed int args_ptr[MAX_ARGS] to int *args_ptr on prototype

    - "query.c: In function ‘lookup_resolv_cache_nonblocked’:
    query.c:5213:9: warning: ‘__hostalias’ is deprecated: use getaddrinfo instead [-Wdeprecated-declarations]
    5213 | } else if (!dots && (alias = hostalias(name))) {
    | ^
    In file included from elmresolv.h:27,
    from query.c:10:
    /usr/include/resolv.h:185:17: note: declared here
    185 | const char * hostalias (const char *) __THROW
    | ^~~~~~~~~"
    Reported by: Noam G. Nudelman
    > Added Configure test that hostalias() exists and works
    when $HOSTALIASES is set -- this does
    does not remove warning. hostalias() is not anyway useful
    when Elm ME+ is setgid mail, however.
    - Configure of libelme-resolv module asks that
    is hostalias() used directly on module if Elm ME+ is setgid
    or hostalias() is deprecated.
    - Moved hostalias() lookup from lookup_resolv_cache_nonblocked()
    on shared_libs/resolv/query.c to
    query_resolv_cache() on shared_libs/resolv/resolv.c.
    hostname() lookup is now also done when exact name is
    queried without search.

    - ".../resolv/resolvertest2.c: In function ‘main’:
    .../shared_libs/resolv/resolvertest2.c:822:5: warning: ‘__hostalias’ is deprecated: use getaddrinfo instead [-Wdeprecated-declarations]
    822 | } else if (!dots && (alias = hostalias(name))) {
    | ^
    In file included from .../shared_libs/resolv/resolvertest2.c:44:
    /usr/include/resolv.h:185:17: note: declared here
    185 | const char * hostalias (const char *) __THROW
    | ^~~~~~~~~"
    Reported by: Noam G. Nudelman
    > Excluded hostalias() from resolvertest2.c
    That is used on Configure and hostalias() is tested
    after resolvertest2.c tests. hostalias()
    is included later on elmresolvertest2 if
    hostalias() was not excluded.

    - Fixed compilation warning
    .../lib/mbox/remote_server.c:103:5: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation]
    if (REMOTE_BROWSER_magic != dir->a.remote_browser->magic)

    - Fixed compilation warning
    .../lib/mbox/remote_server.c:2805:5: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation]
    if (REMOTE_BROWSER_magic != dir->a.remote_browser->magic)

    - Fixed compilation warning
    .../lib/can_open.c: In function ‘can_open’:
    .../lib/can_open.c:124:31: warning: ?: using integer constants in boolean context, the expression will always evaluate to ‘true’ [-Wint-in-bool-context]
    DPRINT(Debug,(0 == ret) ? 10 : 1,
    ~~~~~~~~~~~~~~~~~~~~~~^~~
    .../hdrs/elmlib.h:2396:21: note: in definition of macro ‘DPRINT’
    if (x.active >= level) debug_action_call action; \
    ^~~~~
    > Changed DPRINT macro
    - Changed also DEBUG_CHECK(), SIGDPRINT() and DEBUG_PRINT_BUFFER()
    macros

    - Fixed compilation warning
    .../lib/digest_wrapper.c: In function ‘digest_proc_equal’:
    .../lib/digest_wrapper.c:473:34: warning: self-comparison always evaluates to false [-Wtautological-compare]
    if (ptr1->digest_result[x] != ptr1->digest_result[x]) {
    ^~
    > Fixed incorrect result of digest_proc_equal()

    - Fixed compilation warning
    .../lib/iso2022.c: In function ‘eat_iso2022_setid’:
    .../lib/iso2022.c:2487:2: warning: this ‘else’ clause does not guard... [-Wmisleading-indentation]
    else result->type = iso2022_94;
    ^~~~
    .../lib/iso2022.c:2488:19: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘else’
    result->bank = bank_G0;
    ^~~~~~

    - Fixed compilation warning
    .../lib/iso2022.c: In function ‘eat_iso2022_setid’:
    .../lib/iso2022.c:2498:2: warning: this ‘else’ clause does not guard... [-Wmisleading-indentation]
    else result->type = iso2022_94;
    ^~~~
    .../lib/iso2022.c:2499:19: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘else’
    result->bank = bank_G1;
    ^~~~~~

    - Fixed compilation warning
    .../lib/iso2022.c: In function ‘eat_iso2022_setid’:
    .../lib/iso2022.c:2509:2: warning: this ‘else’ clause does not guard... [-Wmisleading-indentation]
    else result->type = iso2022_94;
    ^~~~
    .../lib/iso2022.c:2510:19: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘else’
    result->bank = bank_G2;
    ^~~~~~

    - Fixed compilation warning
    .../lib/iso2022.c: In function ‘eat_iso2022_setid’:
    .../lib/iso2022.c:2520:2: warning: this ‘else’ clause does not guard... [-Wmisleading-indentation]
    else result->type = iso2022_94;
    ^~~~
    .../lib/iso2022.c:2521:19: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘else’
    result->bank = bank_G3;
    ^~~~~~

    - Fixed compilation warning
    .../lib/iso2022.c: In function ‘eat_iso2022_setid’:
    .../lib/iso2022.c:2531:2: warning: this ‘else’ clause does not guard... [-Wmisleading-indentation]
    else result->type = iso2022_96;
    ^~~~
    .../lib/iso2022.c:2532:19: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘else’
    result->bank = bank_G1;
    ^~~~~~

    - Fixed compilation warning
    .../lib/iso2022.c: In function ‘eat_iso2022_setid’:
    .../lib/iso2022.c:2543:2: warning: this ‘else’ clause does not guard... [-Wmisleading-indentation]
    else result->type = iso2022_96;
    ^~~~
    .../lib/iso2022.c:2544:19: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘else’
    result->bank = bank_G2;
    ^~~~~~

    - Fixed compilation warning
    .../lib/iso2022.c: In function ‘eat_iso2022_setid’:
    .../lib/iso2022.c:2554:2: warning: this ‘else’ clause does not guard... [-Wmisleading-indentation]
    else result->type = iso2022_96;
    ^~~~
    .../lib/iso2022.c:2555:19: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘else’
    result->bank = bank_G3;
    ^~~~~~

    - Fixed compilation warning
    .../shared_libs/tls/tls.c: In function ‘tls_init’:
    .../shared_libs/tls/tls.c:735:6: warning: unused variable ‘z’ [-Wunused-variable]
    int z,l;
    ^

    - Fixed compilation warning
    .../src/alias_display.c: In function ‘ad_set_alias_group_phrase’:
    .../src/alias_display.c:1660:6: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation]
    if (group_phrase)
    ^~
    .../src/alias_display.c:1663:7: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘if’
    redraw1:
    ^~~~~~~

    - Fixed compilation warning
    .../src/attach_menu.c: In function ‘attach_view_binary’:
    .../src/attach_menu.c:1592:10: warning: self-comparison always evaluates to true [-Wtautological-compare]
    if (cs == cs ||
    ^~
    > Fixed character set check on attach_view_binary()

    - Fixed compilation warning
    .../src/builtin++.c: In function ‘builtinplusplus’:
    .../src/builtin++.c:714:7: warning: this ‘else’ clause does not guard... [-Wmisleading-indentation]
    else
    ^~~~

    - Fixed compilation warning
    .../src/showmsg_c.c: In function ‘process_showmsg_cmd’:
    .../src/showmsg_c.c:679:6: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation]
    if (flags & SHOWMSG_NOMAIL)
    ^~
    .../src/showmsg_c.c:682:3: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘if’
    put_cmd_name(pager_page,TRUE,
    ^~~~~~~~~~~~

    - Fixed case where "Copies to:" prompt is not cleared when
    new address is written - bug was introduced when
    address prompt implementation changed on
    Elm ME+ 2.5 PLalpha58
    > Changed CleartoEOLN() to menu_CleartoEOLN()
    on enter_helper() at src/enter_helper.c

    - Added listing of aliases to
    "Send the message to: "
    and "Copies to: "
    prompts of m)ail command with TABulator. Also
    TABulator shows listing of aliases
    on "Send the message to: "
    prompt on b)ounce command and
    on "Copies to: "
    prompt on r)eply command.
    > TABulator do not show aliases address prompts of
    "Mail Pre-Send Screen" and "Message Header Edit Screen".

    - Added w_menu_calculate_rline() to src/screen/def_sceen.h
    - Added w_menu_calculate_rline * wra_calculate_line;
    to struct menu_draw_routine
    - Added scommon_calculate_rline() to src/screen/scommon.c
    and src/screen/def_scommon.h
    - Added menu_translate_pos() to src/screen/screen.c
    and hdrs/me.h

    - Added add_one_alias_to_expanded() to src/addr_util.c and
    and hdrs/me.h

    - Added full_page_r * full_page; to struct enter_info
    - Added default_full_page() to hdrs/me.h and src/enter_helper.c

    - Added more check_changes() calls to cur_ReadCh2() on src/screen/curs_input.c
    - Changed resize and redraw handling on cur_ReadCh2()
    - Changed waiting on cur_ReadCh2()
    - Added wait_for_action_or_timeout_f() to hdrs/elmlib.h
    and lib/schedule.c

    - Added prompt_hint_r * prompt_hint; to struct enter_info
    - Added default_prompt_hint() to hdrs/me.h and src/enter_helper.c

    - Changed sort_aliases() call on set_aview_alias_mode()
    at src/alias.c
    - Changed prototype of sort_aliases()

    - Fixed crash on debug output on build_address_l()
    SIGNAL PANIC in .../mail/elm-alias/src/signals.c:144:segv_signal
    >>>

    Segment Violation signal!


    Call stack: 7FF9F99BAB34 55BF908911DD 7FF9F912DF10 7FF9F927D461 7FF9F9998086
    continues: 7FF9F9998B5F 55BF907B49DD 55BF907AD4BF 55BF907AFCC7 55BF9082C5CA
    continues: 55BF9082CFC4 55BF9082DB43 55BF9082DCF2 55BF907F8AC0 55BF90829D45
    continues: 55BF9082B5E5 55BF907FBED5 7FF9F9110C87 55BF907AB87A
    backtrace:
    .../lib64/libelmme-base.so.1.1.58+(panic+0x1de)[0x7ff9f99bab34]
    .../bin/elm(segv_signal+0x80)[0x55bf908911dd]
    /lib/x86_64-linux-gnu/libc.so.6(+0x3ef10)[0x7ff9f912df10]
    /lib/x86_64-linux-gnu/libc.so.6(+0x18e461)[0x7ff9f927d461]
    .../lib64/libelmme-base.so.1.1.58+(+0x56086)[0x7ff9f9998086]
    .../lib64/libelmme-base.so.1.1.58+(debug_action_call+0x6b2)[0x7ff9f9998b5f]
    .../bin/elm(build_address_l+0x1264)[0x55bf907b49dd]
    .../bin/elm(+0x284bf)[0x55bf907ad4bf]
    .../bin/elm(prompt_expanded_address+0xc7c)[0x55bf907afcc7]
    .../bin/elm(get_to+0x4e2)[0x55bf9082c5ca]
    .../bin/elm(send_msg_middle2+0x36f)[0x55bf9082cfc4]
    .../bin/elm(send_msg_middle+0x19b)[0x55bf9082db43]
    .../bin/elm(send_msg_l+0x17a)[0x55bf9082dcf2]
    .../bin/elm(mailbox_command+0xf73)[0x55bf907f8ac0]
    .../bin/elm(+0xa4d45)[0x55bf90829d45]
    .../bin/elm(main_messages_menu+0x17d)[0x55bf9082b5e5]
    .../bin/elm(main+0xf48)[0x55bf907fbed5]
    /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xe7)[0x7ff9f9110c87]
    /tmp/TEST/bin/elm(_start+0x2a)[0x55bf907ab87a]
    Press <enter> to abort:

    - Fixed string_need_quote() on lib/stringtok.c

    Changes on Elm ME+ 2.5 PLalpha58 compared with Elm ME+ 2.5 PLalpha57 --------------------------------------------------------------------

    SUMMARY: This release adds "Implicit TLS" (RFC 8314)
    for imap, pop and submission protocols. This
    is controlled with new elmrc option "use-tls".
    This release uses openssl's X509_check_host().
    This release changes address prompts and fixes
    crash when folder browser login prompt from
    #hashmark is interrupted with Ctrl-C. Also
    some other changes are included and bugs fixed.

    RFC 8314: Use of TLS for Email Submission/Access

    - Added "Implicit TLS" (separate tcp port) for imap,
    pop, submission which is tried first before
    imap, pop, submission (and STARTTLS after that)
    is tried. Implicit TLS is available only
    when libelmme-tls module is loaded. This
    is controlled with new elm.rc option "use-tls".

    - Added keyword "submissions" to to mail.services.
    RFC 8314 registers tcp port 465 for
    "Message Submission over TLS protocol".
    > Port 465 is also registered for
    "URL Rendesvous Directory for SSM"
    > Historically port 465 was registered for
    smtps, but this was revoked (smtp uses
    MX records, which do not specify port).

    - Added service_type_defport(), enumerate_service_type(),
    init_enum_service_type(), init_enum_service_list(),
    convert_service_entry()
    to lib/service_list.c and hdrs/connection_imp.h

    - Added elmrc option "use-tls".
    Option includes list of keywords:
    none None of values are selected
    implicit-tls Use "Implicit TLS" (separate tcp port)
    for imap, pop, submission which is tried
    first before imap, pop, submission
    (and STARTTLS after that) is tried.
    starttls libbelmme-tls module uses STARTTLS
    (IMAP, SMTP) or STLS (POP) if command
    is available. This is default.
    verify-tls-certificate connection must use tls
    and server certificate
    must have valid
    require-tls-peer-name connection must use tls
    and certificates's CN must
    match
    display-check-host display X509_check_host()
    matching when login

    The "use-tls" elm.rc option accepts two forms:
    - Absolute form where used options are listed
    - Additive form where changes from compile
    time default are listed:
    +implicit-tls -implicit-tls
    +starttls -starttls
    +verify-tls-certificate
    -verify-tls-certificate
    +require-tls-peer-name
    -require-tls-peer-name
    +display-check-host
    -display-check-host
    These two forms can not be mixed.

    - Allowed disabling automatic use of STARTTLS
    (IMAP, SMTP) or STLS (POP) commands by using of
    use-tls = none
    or use-tls = -starttls
    - Specifying tls:starttls-version on
    ~/.elm/mail.services or on global elm.mailservices
    overrides starttls disable given on use-tls setting.
    * About same can be done by removing
    use-connect-library = tls
    - Specifying require-tls-peer-name={name}
    on ~/.elm/mail.services or on global elm.mailservices
    can used to make 'require-tls-peer-name' on use-tls
    accept also other certificate's CN (or some
    cases other 'Subject Alternative Name' (SAN)) than given
    hostname.
    - 'require-tls-peer-name' checks certificate's CN
    when correct name is usually certificate's
    'Subject Alternative Name' (SAN) -
    with OpenSSL 1.0.2 or newer 'require-tls-peer-name'
    check also DNS:name from 'Subject Alternative Name' (SAN)
    if name is not IP-address.
    > If 'Subject Alternative Name' (SAN) check is
    not supported, it is usually not good idea to use
    'require-tls-peer-name' on use-tls setting

    - Specifying verify-tls-certificate=off
    on ~/.elm/mail.services or on global elm.mailservices
    overrides verify-tls-certificate given on use-tls setting.
    - Specifying use-tls-checks=no on ~/.elm/mail.services or on
    global elm.mailservices overrides 'verify-tls-certificate'
    and 'require-tls-peer-name' given on use-tls setting.

    - libbelmme-tls module changes default value of "use-tls"
    if use-config-library elmrc option lists tls.
    - Added RC_change_config() shared_libs/tls/tls.c

    - Added connect_remote_account_2()
    to lib/remote_mbx.c and hdrs/connection_imp.h
    - Added browser_passhm_open_ra2()
    to lib/mbox/hashmark_helper.c and hdrs/connection_imp.h
    - Added hashmark_passhm_open_ra2()
    to lib/mbox/hashmark.c and hdrs/hashmark.h
    - Added hashtype_passhm_open_ra2_f() to hdrs/hashmark_imp.h
    - Added hashtype_passhm_open_ra2_f * passhm_open_ra2;
    to struct hashtype_actions

    - Added 'Subject Alternative Name' (SAN) support
    to 'require-tls-peer-name' on global elm.mailservices
    and user's ~/.elm/mail.services file.
    - Added 'Subject Alternative Name' (SAN) support
    to 'require-tls-peer-name' flag on "use-tls" elm.rc
    option.
    - Added 'Subject Alternative Name' (SAN) support
    to "require-tls-peer-name" on global elm.hashmarks
    and user's ~/hash.marks file.
    > This 'Subject Alternative Name' (SAN) support requires
    OpenSSL 1.0.2 or newer, which includes X509_check_host()
    function.
    > This 'Subject Alternative Name' (SAN) support only
    checks "DNS:" -names with X509_check_host() and does not
    check "IP:" -names with X509_check_ip().

    - Added Configure (actually shared_libs/tls/config) test
    for X509_check_host()

    - 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 IMAP show

    IMAP login to <host> (verified, host matches) as <user> ...
    or IMAP login to <host> as <user> (verified, host matches <name>) ...

    instead of

    IMAP login to <host> (verified) as <user> ...

    [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:23:46 2022
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha-54to60.2

    Before applying this patch catenate parts 1 - 13 first.
    Also it should be possible to apply parts 1 - 13
    individually.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha54

    ====================================== ( part 2/13 ) =========
    Index: elmME+.2.5.alpha60/doc/elmregister.1
    *** elmME+.2.5.alpha54/doc/elmregister.1 Tue Apr 20 20:32:06 2021
    --- elmME+.2.5.alpha60/doc/elmregister.1 Thu May 26 11:16:29 2022 ***************
    *** 505,508 ****
    .SH BUG REPORTS TO
    Kari Hurtta elm@elmme-mailer.org
    .SH COPYRIGHTS
    ! \fB\*(ct\fRCopyright 2003-2021 by Kari Hurtta
    --- 505,508 ----
    .SH BUG REPORTS TO
    Kari Hurtta elm@elmme-mailer.org
    .SH COPYRIGHTS
    ! \fB\*(ct\fRCopyright 2003-2022 by Kari Hurtta
    Index: elmME+.2.5.alpha60/doc/elmstringconvert.1
    *** elmME+.2.5.alpha54/doc/elmstringconvert.1 Tue Apr 20 20:32:06 2021
    --- elmME+.2.5.alpha60/doc/elmstringconvert.1 Thu May 26 11:16:29 2022 ***************
    *** 86,89 ****
    .SH BUG REPORTS TO
    Kari Hurtta elm@elmme-mailer.org
    .SH COPYRIGHTS
    ! \fB\*(ct\fRCopyright 2002-2021 by Kari Hurtta
    --- 86,89 ----
    .SH BUG REPORTS TO
    Kari Hurtta elm@elmme-mailer.org
    .SH COPYRIGHTS
    ! \fB\*(ct\fRCopyright 2002-2022 by Kari Hurtta
    Index: elmME+.2.5.alpha60/doc/elmterminal.1
    *** elmME+.2.5.alpha54/doc/elmterminal.1 Tue Apr 20 20:32:06 2021
    --- elmME+.2.5.alpha60/doc/elmterminal.1 Thu May
  • From Kari Hurtta@21:1/5 to All on Thu Nov 24 20:22:40 2022
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha-54to60.1

    Before applying this patch catenate parts 1 - 13 first.
    Also it should be possible to apply parts 1 - 13
    individually.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha54

    ====================================== ( part 1/13 ) =========
    For applying thich patch use (on directory where Configure is)

    patch -p1 < {this-file}

    ------------------------------------------------------------------------
    Index: elmME+.2.5.alpha60/hdrs/patchlevel.h
    Prereq: 1650000000
    *** elmME+.2.5.alpha54/hdrs/patchlevel.h Tue Apr 20 20:32:06 2021
    --- elmME+.2.5.alpha60/hdrs/patchlevel.h Fri Sep 2 20:38:19 2022 ***************
    *** 1,12 ****
    ! #define PATCHLEVEL "alpha54"
    /* Used by Configure:
    ! SHAREDTAG: .1.1.54
    */
    ! #define LAST_REPORT_TIME 1650000000
    #define BUG_REPORT_ADDR "Kari Hurtta <elm@elmme-mailer.org>"
    ! #define VERS_DATE "May 2021" /* for elm -v option */
    #define WHAT_STRING \
    ! "@(#) Version ME+ 2.5, USENET supported version, released May 2021"

    /*
    * Local Variables:
    --- 1,12 ----
    ! #define PATCHLEVEL "alpha60"
    /* Used by Configure:
    ! SHAREDTAG: .1.1.60
    */
    ! #define LAST_REPORT_TIME 1693000000
    #define BUG_REPORT_ADDR "Kari Hurtta <elm@elmme-mailer.org>"
    ! #define VERS_DATE "Sep 2022" /* for elm -v option */
    #define WHAT_STRING \
    ! "@(#) Version ME+ 2.5, released Sep 2022"

    /*
    * Local Variables:
    Index: elmME+.2.5.alpha60/README.ME+
    *** elmME+.2.5.alpha54/README.ME+ Tue Apr 20 20:32:06 2021
    --- elmME+.2.5.alpha60/README.ME+ Fri Sep 2 20:38:19 2022
    **********
  • From Kari Hurtta@21:1/5 to All on Thu Nov 24 20:24:49 2022
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha-54to60.3

    Before applying this patch catenate parts 1 - 13 first.
    Also it should be possible to apply parts 1 - 13
    individually.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha54

    ====================================== ( part 3/13 ) =========
    Index: elmME+.2.5.alpha60/hdrs/s_elmrc.h
    *** elmME+.2.5.alpha54/hdrs/s_elmrc.h Sat Dec 30 13:44:58 2017
    --- elmME+.2.5.alpha60/hdrs/s_elmrc.h Sat Aug 28 14:11:45 2021 ***************
    *** 15,17 ****
    --- 15,18 ----
    #define ElmrcCharsetExplain 0x11
    #define ElmrcCommentFileError 0x12
    #define ElmrcFailConvCharset 0x13
    + #define ElmrcBackupFailed 0x14
    Index: elmME+.2.5.alpha60/hdrs/s_fastmail.h
    *** elmME+.2.5.alpha54/hdrs/s_fastmail.h Fri May 22 09:39:59 2020
    --- elmME+.2.5.alpha60/hdrs/s_fastmail.h Fri Sep 2 20:38:19 2022 ***************
    *** 51,53 ****
    --- 51,59 ----
    #define FastmailFromAddrFail 0x31
    #define FastmailSenderFailDomain 0x32
    #define FastmailNoToAddressAdded 0x33
    + #define FastmailFromNameDuplicate 0x34
    + #define FastmailFromNameAndAddr 0x35
    + #define FastmailFromGivenDiscard 0x36
    + #define FastmailFromNameOptChange 0x37
    + #define FastmailFromNameSource 0x38
    + #define FastmailFromNameResult 0x39
    Index: elmME+.2.5.alpha60/hdrs/s_me.h
    *** elmME+.2.5.alpha54/hdrs/s_me.h Wed Dec 2 21:21:30 2020
    --- elmME+.2.5.alpha60/hdrs/s_me.h Fri Sep 2 20:38:19 2022 ***************
  • From Kari Hurtta@21:1/5 to All on Thu Nov 24 20:25:47 2022
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha-54to60.4

    Before applying this patch catenate parts 1 - 13 first.
    Also it should be possible to apply parts 1 - 13
    individually.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha54

    ====================================== ( part 4/13 ) =========
    Index: elmME+.2.5.alpha60/lib/alias/aliasexpand.c
    *** elmME+.2.5.alpha54/lib/alias/aliasexpand.c Sun Aug 12 11:42:17 2018
    --- elmME+.2.5.alpha60/lib/alias/aliasexpand.c Sat Aug 28 14:11:45 2021 ***************
    *** 1,7 ****
    ! static char rcsid[] = "@(#)$Id: aliasexpand.c,v 1.12 2018/08/12 08:42:17 hurtta Exp $";

    /******************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 1.12 $ $State: Exp $
    *
    * Author: Kari Hurtta <hurtta+elm@siilo.FMI.FI> (was hurtta+elm@posti.FMI.FI)
    * or Kari Hurtta <elm@elmme-mailer.org>
    --- 1,7 ----
    ! static char rcsid[] = "@(#)$Id: aliasexpand.c,v 1.13 2021/07/13 07:58:36 hurtta Exp $";

    /******************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 1.13 $ $State: Exp $
    *
    * Author: Kari Hurtta <hurtta+elm@siilo.FMI.FI> (was hurtta+elm@posti.FMI.FI)
    * or Kari Hurtta <elm@elmme-mailer.org>
    ***************
    *** 199,204 ****
    --- 199,212 ----

    }

    + if (address_is_empty(address) && ! firstn && !lastn) {
    +
  • From Kari Hurtta@21:1/5 to All on Thu Nov 24 20:26:44 2022
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha-54to60.5

    Before applying this patch catenate parts 1 - 13 first.
    Also it should be possible to apply parts 1 - 13
    individually.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha54

    ====================================== ( part 5/13 ) =========
    Index: elmME+.2.5.alpha60/lib/mbox/mbox.c
    *** elmME+.2.5.alpha54/lib/mbox/mbox.c Tue Apr 20 20:32:06 2021
    --- elmME+.2.5.alpha60/lib/mbox/mbox.c Sat Aug 28 14:11:45 2021 ***************
    *** 1,7 ****
    ! static char rcsid[] = "@(#)$Id: mbox.c,v 2.33 2021/01/10 15:47:32 hurtta Exp $";

    /******************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 2.33 $ $State: Exp $
    *
    * Author: Kari Hurtta <hurtta+elm@siilo.FMI.FI>
    * (was hurtta+elm@posti.FMI.FI, hurtta+elm@ozone.FMI.FI) --- 1,7 ----
    ! static char rcsid[] = "@(#)$Id: mbox.c,v 2.35 2021/08/20 18:11:57 hurtta Exp $";

    /******************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 2.35 $ $State: Exp $
    *
    * Author: Kari Hurtta <hurtta+elm@siilo.FMI.FI>
    * (was hurtta+elm@posti.FMI.FI, hurtta+elm@ozone.FMI.FI) ***************
    *** 960,966 ****
    } else if (0 == r) {
    if (buf1->st_ino == buf2.st_ino && buf1->st_dev == buf2.st_dev) {
    DPRINT(Debug,8,(&Debug
  • From Kari Hurtta@21:1/5 to All on Thu Nov 24 20:27:31 2022
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha-54to60.6

    Before applying this patch catenate parts 1 - 13 first.
    Also it should be possible to apply parts 1 - 13
    individually.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha54

    ====================================== ( part 6/13 ) =========
    Index: elmME+.2.5.alpha60/lib/misc/def_misc.h
    *** elmME+.2.5.alpha54/lib/misc/def_misc.h Tue May 12 21:18:19 2020
    --- elmME+.2.5.alpha60/lib/misc/def_misc.h Sat Aug 28 14:11:45 2021 ***************
    *** 1,7 ****
    ! /* $Id: def_misc.h,v 2.7 2020/05/12 18:18:19 hurtta Exp $ */

    /******************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 2.7 $ $State: Exp $
    *
    * Author: Kari Hurtta <hurtta+elm@siilo.FMI.FI> (was hurtta+elm@posti.FMI.FI)
    * or Kari Hurtta <elm@elmme-mailer.org>
    --- 1,7 ----
    ! /* $Id: def_misc.h,v 2.8 2021/07/07 07:56:36 hurtta Exp $ */

    /******************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 2.8 $ $State: Exp $
    *
    * Author: Kari Hurtta <hurtta+elm@siilo.FMI.FI> (was hurtta+elm@posti.FMI.FI)
    * or Kari Hurtta <elm@elmme-mailer.org>
    ***************
    *** 10,15 ****
    --- 10,17 ----
    #include "elm_defs.h"
    #include "misclib.h"

    + extern int user_conf_rewrite;
    +
    /* meadiatype.c */

    extern struct media_type text_pl
  • From Kari Hurtta@21:1/5 to All on Thu Nov 24 20:28:18 2022
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha-54to60.7

    Before applying this patch catenate parts 1 - 13 first.
    Also it should be possible to apply parts 1 - 13
    individually.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha54

    ====================================== ( part 7/13 ) =========
    Index: elmME+.2.5.alpha60/lib/safeopen.c
    *** elmME+.2.5.alpha54/lib/safeopen.c Fri Mar 4 18:27:13 2016
    --- elmME+.2.5.alpha60/lib/safeopen.c Sat Aug 28 14:11:45 2021 ***************
    *** 1,7 ****
    ! static char rcsid[] = "@(#)$Id: safeopen.c,v 2.5 2016/03/04 16:27:13 hurtta Exp $";

    /******************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 2.5 $ $State: Exp $
    *
    * Modified by: Kari Hurtta <hurtta+elm@siilo.FMI.FI>
    * (was hurtta+elm@posti.FMI.FI, hurtta+elm@ozone.FMI.FI)
    --- 1,7 ----
    ! static char rcsid[] = "@(#)$Id: safeopen.c,v 2.7 2021/07/07 16:28:00 hurtta Exp $";

    /******************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 2.7 $ $State: Exp $
    *
    * Modified by: Kari Hurtta <hurtta+elm@siilo.FMI.FI>
    * (was hurtta+elm@posti.FMI.FI, hurtta+elm@ozone.FMI.FI)
    ***************
    *** 12,52 ****

    #include "elm_defs.h"

    DEBUG_VAR(Debug,__FILE__,"core");

    ! FILE *safeopen(name)
    char
  • From Kari Hurtta@21:1/5 to All on Thu Nov 24 20:29:04 2022
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha-54to60.8

    Before applying this patch catenate parts 1 - 13 first.
    Also it should be possible to apply parts 1 - 13
    individually.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha54

    ====================================== ( part 8/13 ) =========
    Index: elmME+.2.5.alpha60/melib/pgp_decode.c
    *** elmME+.2.5.alpha54/melib/pgp_decode.c Tue Apr 20 20:32:06 2021
    --- elmME+.2.5.alpha60/melib/pgp_decode.c Sat Aug 28 14:11:45 2021 ***************
    *** 1,7 ****
    ! static char rcsid[] = "@(#)$Id: pgp_decode.c,v 2.26 2021/01/16 17:58:50 hurtta Exp $";

    /******************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 2.26 $ $State: Exp $
    *
    * Modified by: Kari Hurtta <hurtta+elm@siilo.FMI.FI>
    * (was hurtta+elm@posti.FMI.FI, hurtta+elm@ozone.FMI.FI)
    --- 1,7 ----
    ! static char rcsid[] = "@(#)$Id: pgp_decode.c,v 2.27 2021/07/07 16:28:00 hurtta Exp $";

    /******************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 2.27 $ $State: Exp $
    *
    * Modified by: Kari Hurtta <hurtta+elm@siilo.FMI.FI>
    * (was hurtta+elm@posti.FMI.FI, hurtta+elm@ozone.FMI.FI)
    ***************
    *** 659,665 ****
    "pgp_decode: format=mime\n"));


    ! if (NULL == (tmpfp = safeopen_rdwr(tempf
  • From Kari Hurtta@21:1/5 to All on Thu Nov 24 20:30:18 2022
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha-54to60.9

    Before applying this patch catenate parts 1 - 13 first.
    Also it should be possible to apply parts 1 - 13
    individually.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha54

    ====================================== ( part 9/13 ) =========
    Index: elmME+.2.5.alpha60/shared_libs/tls/config
    *** elmME+.2.5.alpha54/shared_libs/tls/config Fri Jun 5 12:37:14 2020
    --- elmME+.2.5.alpha60/shared_libs/tls/config Thu May 26 11:16:29 2022 ***************
    *** 203,209 ****
    else
    tls_ok=''
    echo "Failed to compile and link with OpenSSL".
    ! cat try.log
    fi

    rm -f try.log try.c try
    --- 203,209 ----
    else
    tls_ok=''
    echo "Failed to compile and link with OpenSSL".
    ! # cat try.log
    fi

    rm -f try.log try.c try
    ***************
    *** 300,306 ****
    else
    echo "failed compile and link"
    tls_have_egd="$undef"
    ! cat tryegd.log
    fi

    rm -f tryegd.log tryegd.c tryegd
    --- 300,306 ----
    else
    echo "failed compile and link"
    tls_have_egd="$undef"
    ! # cat tryegd.log
    fi

    rm -f tryegd.log tryegd.c tryegd
    ***************
    *** 408,414 ****
    else
    echo "failed compile and link"
    result="$undef"
    ! cat $logfile
    fi

    rm -f $outfile $logfile
    --- 408,414 ----
    else
    echo "failed compile and link"
    result="$undef"
    !
  • From Kari Hurtta@21:1/5 to All on Thu Nov 24 20:31:08 2022
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha-54to60.10

    Before applying this patch catenate parts 1 - 13 first.
    Also it should be possible to apply parts 1 - 13
    individually.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha54

    ====================================== ( part 10/13 ) =========
    Index: elmME+.2.5.alpha60/src/aliases/aliases.c
    *** elmME+.2.5.alpha54/src/aliases/aliases.c Mon Mar 21 22:26:15 2016
    --- elmME+.2.5.alpha60/src/aliases/aliases.c Sat Aug 28 14:11:45 2021 ***************
    *** 1,7 ****
    ! static char rcsid[] = "@(#)$Id: aliases.c,v 2.10 2016/03/21 20:26:15 hurtta Exp $";

    /******************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 2.10 $ $State: Exp $
    *
    * Author: Kari Hurtta <hurtta+elm@siilo.FMI.FI>
    * (was hurtta+elm@posti.FMI.FI, hurtta+elm@ozone.FMI.FI) --- 1,7 ----
    ! static char rcsid[] = "@(#)$Id: aliases.c,v 2.12 2021/07/14 07:19:22 hurtta Exp $";

    /******************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 2.12 $ $State: Exp $
    *
    * Author: Kari Hurtta <hurtta+elm@siilo.FMI.FI>
    * (was hurtta+elm@posti.FMI.FI, hurtta+elm@ozone.FMI.FI) ***************
    *** 452,464 ****
    a = am_give_alias(aview->aliasclass[i],y);

    if (a) {
    !
    ! if (a->type & DUPLICATE) {
  • From Kari Hurtta@21:1/5 to All on Thu Nov 24 20:33:54 2022
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha-54to60.13

    Before applying this patch catenate parts 1 - 13 first.
    Also it should be possible to apply parts 1 - 13
    individually.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha54

    ====================================== ( part 13/13 ) =========
    Index: elmME+.2.5.alpha60/src/showmsg_c.c
    *** elmME+.2.5.alpha54/src/showmsg_c.c Fri Mar 20 21:01:15 2020
    --- elmME+.2.5.alpha60/src/showmsg_c.c Thu Jul 28 18:49:52 2022 ***************
    *** 1,7 ****
    ! static char rcsid[] = "@(#)$Id: showmsg_c.c,v 2.23 2020/03/20 19:01:15 hurtta Exp $";

    /******************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 2.23 $ $State: Exp $
    *
    * Modified by: Kari Hurtta <hurtta+elm@siilo.FMI.FI>
    * (was hurtta+elm@posti.FMI.FI, hurtta+elm@ozone.FMI.FI)
    --- 1,7 ----
    ! static char rcsid[] = "@(#)$Id: showmsg_c.c,v 2.24 2022/06/26 16:55:21 hurtta Exp $";

    /******************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 2.24 $ $State: Exp $
    *
    * Modified by: Kari Hurtta <hurtta+elm@siilo.FMI.FI>
    * (was hurtta+elm@posti.FMI.FI, hurtta+elm@ozone.FMI.FI)
    ***************
    *** 670,676 ****

    }

    ! }
    break;

    case 'r' : {
    --- 670,676 ----

    }

    !
  • From Kari Hurtta@21:1/5 to All on Thu Nov 24 20:32:01 2022
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha-54to60.11

    Before applying this patch catenate parts 1 - 13 first.
    Also it should be possible to apply parts 1 - 13
    individually.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha54

    ====================================== ( part 11/13 ) =========
    Index: elmME+.2.5.alpha60/src/in_utils.c
    *** elmME+.2.5.alpha54/src/in_utils.c Fri Mar 20 21:01:15 2020
    --- elmME+.2.5.alpha60/src/in_utils.c Thu Jul 28 18:49:52 2022 ***************
    *** 1,7 ****
    ! static char rcsid[] = "@(#)$Id: in_utils.c,v 2.11 2020/03/20 19:01:15 hurtta Exp $";

    /******************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 2.11 $ $State: Exp $
    *
    * Modified by: Kari Hurtta <hurtta+elm@siilo.FMI.FI>
    * (was hurtta+elm@posti.FMI.FI, hurtta+elm@ozone.FMI.FI)
    --- 1,7 ----
    ! static char rcsid[] = "@(#)$Id: in_utils.c,v 2.13 2022/07/14 14:16:01 hurtta Exp $";

    /******************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 2.13 $ $State: Exp $
    *
    * Modified by: Kari Hurtta <hurtta+elm@siilo.FMI.FI>
    * (was hurtta+elm@posti.FMI.FI, hurtta+elm@ozone.FMI.FI)
    ***************
    *** 372,379 ****
    }

    struct in_utils_edit {
    ! int px;
    ! int py;
    };


    --- 372,
  • From Kari Hurtta@21:1/5 to All on Thu Nov 24 20:32:48 2022
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha-54to60.12

    Before applying this patch catenate parts 1 - 13 first.
    Also it should be possible to apply parts 1 - 13
    individually.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha54

    ====================================== ( part 12/13 ) =========
    Index: elmME+.2.5.alpha60/src/mailmsg1.c
    *** elmME+.2.5.alpha54/src/mailmsg1.c Sun Aug 26 17:43:24 2018
    --- elmME+.2.5.alpha60/src/mailmsg1.c Thu Jul 28 18:49:52 2022 ***************
    *** 1,7 ****
    ! static char rcsid[] = "@(#)$Id: mailmsg1.c,v 2.27 2018/08/26 14:43:24 hurtta Exp $";

    /******************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 2.27 $ $State: Exp $
    *
    * Modified by: Kari Hurtta <hurtta+elm@siilo.FMI.FI>
    * (was hurtta+elm@posti.FMI.FI), hurtta+elm@ozone.FMI.FI)
    --- 1,7 ----
    ! static char rcsid[] = "@(#)$Id: mailmsg1.c,v 2.29 2022/07/14 14:16:01 hurtta Exp $";

    /******************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 2.29 $ $State: Exp $
    *
    * Modified by: Kari Hurtta <hurtta+elm@siilo.FMI.FI>
    * (was hurtta+elm@posti.FMI.FI), hurtta+elm@ozone.FMI.FI)
    ***************
    *** 228,337 ****
    struct menu_context *prompt_area;
    {

    - struct string * buffer = NULL;
  • From Kari Hurtta@21:1/5 to All on Mon Dec 5 17:02:56 2022
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha61.0

    Before applying this patch catenate parts 1 - 2 first.
    Also it should be possible to apply parts 1 - 2
    individually.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha60

    ====================================== ( part 0/2 ) =========
    Elm ME+ 2.5 PLalpha61

    - Is available with
    <URL: http://www.elmme-mailer.org/elm-ME+2.5/src/elm-ME+2.5.alpha61.5b6df62e1184142ad0c065a03eddd247.tar.gz >
    and <URL: http://www.elmme-mailer.org/elm-ME+2.5/src/elm-ME+2.5.PLalpha61.patch.gz >
    via http.
    Signatures are
    <URL: http://www.elmme-mailer.org/elm-ME+2.5/src/elm-ME+2.5.alpha61.5b6df62e1184142ad0c065a03eddd247.tar.gz.elm-key-2018.sig >
    <URL: http://www.elmme-mailer.org/elm-ME+2.5/src/elm-ME+2.5.alpha61.5b6df62e1184142ad0c065a03eddd247.tar.gz.sig >
    and <URL: http://www.elmme-mailer.org/elm-ME+2.5/src/elm-ME+2.5.PLalpha61.patch.gz.elm-key-2018.sig >
    <URL: http://www.elmme-mailer.org/elm-ME+2.5/src/elm-ME+2.5.PLalpha61.patch.gz.sig >

    - Is available with
    <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.alpha61.5b6df62e1184142ad0c065a03eddd247.tar.gz >
    and <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.PLalpha61.patch.gz >
    via https.
    Signatures are
    <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.alpha61.5b6df62e1184142ad0c065a03eddd247.tar.gz.elm-key-2018.sig >
    <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.alpha61.5b6df62e1184142ad0c065a03eddd247.tar.gz.sig >
    and <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.PLalpha61.patch.gz.elm-key-2018.sig >
    <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.PLalpha61.patch.gz.sig >

    - Is available on ftp.funet.fi
    directory pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/
    files elm-ME+2.5.alpha61.5b6df62e1184142ad0c065a03eddd247.tar.gz
    and elm-ME+2.5.PLalpha61.patch.gz
    via anonumous ftp.
    Signatures are
    elm-ME+2.5.alpha61.5b6df62e1184142ad0c065a03eddd247.tar.gz.elm-key-2018.sig
    elm-ME+2.5.alpha61.5b6df62e1184142ad0c065a03eddd247.tar.gz.sig
    and elm-ME+2.5.PLalpha61.patch.gz.elm-key-2018.sig
    elm-ME+2.5.PLalpha61.patch.gz.sig

    Or is available with
    <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.alpha61.5b6df62e1184142ad0c065a03eddd247.tar.gz >
    and <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha61.patch.gz >
    with browser.
    Signatures are
    <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.alpha61.5b6df62e1184142ad0c065a03eddd247.tar.gz.elm-key-2018.sig >
    <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.alpha61.5b6df62e1184142ad0c065a03eddd247.tar.gz.sig >
    and <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha61.patch.gz.elm-key-2018.sig >
    <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha61.patch.gz.sig >

    Or is available with
    <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.alpha61.5b6df62e1184142ad0c065a03eddd247.tar.gz >
    and <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha61.patch.gz >
    via https.
    Signatures are
    <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.alpha61.5b6df62e1184142ad0c065a03eddd247.tar.gz.elm-key-2018.sig >
    <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.alpha61.5b6df62e1184142ad0c065a03eddd247.tar.gz.sig >
    and <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha61.patch.gz.elm-key-2018.sig >
    <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha61.patch.gz.sig >

    Signatures are with following keys

    {file}.sig PGP signature (old key pubkey.asc, EA5A2379 1996-04-23)
    {file}.elm-key-2018.sig GPG signature (key elm.key.2018.asc, 44FC796B 2018-12-01, expires: 2028-11-28)

    SUMMARY: This release adds -4 (use IPv4) and -6 (use IPv6)
    options to elm and other commands. This release
    includes hack for convert bare CR to newline
    with elmrc option "convert-cr-to-newline-hack".
    Also some bug fixes and other changes are
    included.


    Changes on Elm ME+ 2.5 PLalpha61 compared with Elm ME+ 2.5 PLalpha60 --------------------------------------------------------------------

    SUMMARY: This release adds -4 (use IPv4) and -6 (use IPv6)
    options to elm and other commands. This release
    includes hack for convert bare CR to newline
    with elmrc option "convert-cr-to-newline-hack".
    Also some bug fixes and other changes are
    included.

    - Added options -4 (use IPv4) and -6 (use IPv6) to elm,
    readmsg,fastmail,frm and newmail.
    Both options can be given. If only use IPv4 or
    use IPv6 options are used, that limits some
    connections to IPv6 or IPv4 addresses.
    Does not limit all possible usage.
    - Option combination -46 can be used
    to try first IPv4 connections before IPv6
    connections are tried.
    - Option combination -64 can be used to
    try first IPv6 connections before
    IPv4 connections are tried.
    - Added add_ipv_option() to lib/remote_mbx.c
    and hdrs/elmib.h
    - Options -4 (use IPv4) and -6 (use IPv6) override
    elmrc option "query-address-type" (on resolv:
    -section) when lookup for service address is
    done.
    - Options -4 and -6 works with
    mail-services-lookup = getaddrinfo
    and mail-services-lookup = resolv:all-addresses
    values of elmrc option.
    > With other values of "mail-services-lookup"
    elmrc option command line options -4 (use IPv4) and
    -6 (use IPv6) may produce unexpected results
    or cause connection failure.

    - Fixed 'z' modifier on elm_vmessage() and
    elm_smessage()

    - Fixed case where elmrc option "resolv:search-mail-service"
    was not set default value properly.
    - Added post_init_shared_options1(), and
    post_init_shared_opt1() to hdrs/shared_imp.h
    and lib/shared.c

    - Changed fastmail, newmail and readmsg usage text.
    - Changed frm help text.

    - Certain sender sends mail with CR (^M) as line
    separator (on content-transfer-encoded body part).
    Added elmrc option "convert-cr-to-newline-hack".
    When set, lone CR on text body part are converted
    to newline. Possible values are
    off Do not convert lone CR
    on-with-error Convert lone CR to newline
    with diagnostic message
    on-silent Convert lone CR to newline
    without diagnostic message
    Also boolean ON, OFF, TRUE, FALSE, YES and NO values
    are allowed.
    - Changed newline / CR caching on struct in_state_decode
    or on state_decode routines at melib/state_decode.c
    - Potentially fixed case where CR NUL loses NUL
    when converting newlines on decoded text.
    - Added unsigned int show_error : 1;
    to struct decode_opts on hdrs/melib.h
    - Print errors to buffer also when replying
    (or forwarding with mail on edit buffer)

    NOTE: Ubuntu 20.04 is observed to need
    imap.server imaps; tls:tls-version=tls-1.2
    smtp.server submissions; tls:tls-version=tls-1.2
    on .elm/mail.services when imap server and
    submission server are used. Record messages with
    --messages=message.log elm ME+ command line option and
    look TLS error from message.log.

    - Fixed debug output crash on prompt_expanded_address()
    at src/addr_prompt.c.

    Warnings
    --------

    - Not compiled with MMDF support defined, so probably it doesn't
    work (or even compile).

    - This has not been tested much so there can be bad bugs.

    Bug reports to: Kari E. Hurtta <elm@elmme-mailer.org>
    (was hurtta+elm@posti.FMI.FI)

    - Internationalized (ie. non-ASCII) domain names are not supported.

    - Support for multipart/signed and multipart/encrypted (specially:
    support for PGP/MIME) only in reading side. There is no support
    for attachments with multipart/encrypted.

    - HP's shoftkeys are no longer supported

    - DECNET addresses like host::user may be interpreted as phrase
    of group syntax or as route of source routed address.

    - Header editing screen now uses addresses in form phrase <address>,
    but because it does not require using of comma (,), multiword
    phrases must be entered in quotes.

    For example: "Kari Hurtta" <hurtta>

    - If address includes <> or comments (), they are not aliased
    expanded. So aliases must be entered as bare words.

    - Addresses given as arguments to elm command should be given
    as one address per argument. Giving of sevaral addresses per
    one argument causes that address is misparsed if header is
    edited on header editing screen.

    That is:

    Use: elm '"Kari Hurtta" <hurtta>' 'Admin <root>'

    Don't use: elm 'Kari Hurtta <hurtta>, Admin <root>'

    - p)rint command acts as P)rint text -command. So it
    is currently quite useless.
    p)rint command does that via readmsg -command. However
    P)rint text does actually same (without readmsg).

    - Some Linux libraries does not follow $LC_CTYPE when program is
    setgid. Net result is that your locale is always C. That is
    visible that $LC_CTYPE does not effect to locale printed by
    'elm -vvvvv':

    Locale (LC_CTYPE): C
    Display character-set: US-ASCII
    Sending character-set: US-ASCII

    - All refrences iso2022 maps are parsed and read to memory.
    This may cause quite big memory consumption specially because
    eastern (multibyte) sets tend to be lot of characters. That
    mapping information should be shared between processes to
    reduce memory consuption.

    - If display charset is produced by using mapping from locale
    to charset where charset definition is later invalidated
    ("removed") by setting explicit compatcharsets on user's
    .elm/elmrc, that may cause PANIC on elm's internal pager
    or other problems. Invalidation happens if display charset
    is on implicit compatcharsets list (because of charset
    definition), but does not have explicit compatcharsets list
    given by user.

    - Neither Unicode didirectional algorithm nor Right-Left scripts
    are supported.

    - In some situations two Status headers may be generated two
    Status headers -- one by IMAP deamon and one from APPENDed
    message.

    - When APPENDing message to IMAP folder (which is normal UNIX
    mailbox format) original "From " separator line can not be
    preserved -- specially it is not possible to pass envelope
    sender address.

    - For UTF-8 charset Elm only knows printable characters from
    Latin/1 range, if unicode database (see elmrc option "unidata")
    is not loaded.

    - For using of ISO2022 character sets it is required that mapping
    them to unicode is know -- otherwise Elm ME+ does not know which
    characters are printable.

    - UTF-16 surrogate pairs (D800-DFFF) are not supported on UTF-7
    charset.

    - Mixing of names using IMAP naming convention
    (imap-naming-convention = yes)
    and names using imap-charset does not work very well...

    - " Regarding my message (8 Aug 2000) regarding 'newmail' on
    AIX 4.3.3 in an 'aixterm' window and the 'aixterm' did not
    close, indeed the problem was NOT related to 'newmail' but an
    AIX bug.

    IBM has release a patch, and the 'aixterm' in AIX 4.3.3 must
    be update with fileset X11.apps.aixterm.4.3.3.26 (PTF
    U473920) is solved to problem."
    From: Noam G. Nudelman

    - File /usr/share/locale/fi/charset gives charset name utf-8 on
    Linux Mandrake 7.2. This causes that Configure generates
    mapping
    fi utf-8
    to elm.mimecharsets. However that seems to have
    incorrect mapping. You may want change this to
    fi ISO-8859-1

    ( however nl_langinfo(CODESET) gives charset ISO-8859-15
    but look following entry. )

    - Locale 'fi' seems to have charset ISO-8859-15 according
    of nl_langinfo(CODESET) on Mandrake Linux 7.2 (and probaly
    others with same glibc version). However for example gnome
    terminal uses font
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-1
    and not
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-15

    Also KDE's konsole program seems use iso8859-1 character set
    although locale is 'fi' which should have ISO-8859-15 according
    of nl_langinfo (selecting "unicode" from menu seems fix that.)

    Because of mismatch more correct locale is fi_FI.88591, which gives
    ISO-8859-1 character set according of nl_langinfo(CODESET).

    ( Locale seems come from /etc/sysconfig/i18n or $HOME/.i18n )

    > To enable handling of ISO-8859-1 and ISO-8859-15 character sets
    on linux console, read comments from doc/terminal.info file.

    - Mandrake Linux 7.2 seems set LD_PRELOAD to load
    /usr/lib/libxalflaunch.so.0. That (xalf-0.4-2mdk) causes that
    elm to crash on startup (actually before main() is reached.)

    - kterm on Mandrake Linux 7.2 seems have (at least on my test
    environment) seems get bad fontlist (*VT100*fontList) which
    gives bad font for iso8859-1 -- therefore ISO-8859-1 characters
    do not work.

    ("xrdb -query" seems report resource with name "*fontList"
    -- that probably overrides "*VT100*fontList" which comes
    from /usr/lib/X11/app-defaults/KTerm )

    - Also note that initially kterm does NOT default to
    ISO-8859-1 -- therefore ISO-8859-1 works only when
    elm explicity switch to ISO-8859-1 (for example
    with 'elm -D ISO-8859-1')

    - When assembling message/partial MIME (RFC 2046)
    requires that all headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are copied from
    initial enclosing message to assembled message. It also
    requires that headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are ignored and
    dropped from enclosed message.

    For now we copy only Received: -headers. Dropping extra
    headers from enclosed message makes assembly more
    complicated (and dropping of Received: -headers
    from enclosed message do not make sense.)

    - mailer=sendmail; verify=yes works only when sendmail
    is installed as setuid root. Use mailer=submission instead.
    * Starting from sendmail 8.12 sendmail is normally
    installed as setgid smmsp and not as setuid root.
    - However error message is printed only if
    verify-local-address=yes is also set

    - IMAP connection is stalled some times. Reason is unknown.

    Collector of these patches
    --------------------------

    Kari Hurtta <elm@elmme-mailer.org>
    Kari Hurtta <hurtta+elm@siilo.FMI.FI>


    diffstat:

    README.ME+ | 83 ++
    doc/elm.1 | 22
    doc/elmrc-info | 31 !
    doc/elmrc.samp | 34 !
    doc/fastmail.1 | 3
    doc/readmsg.1 | 9
    hdrs/connection_imp.h | 17
    hdrs/elm_globals.h | 54 !
    hdrs/elmlib.h | 39 +
    hdrs/melib.h | 6
    hdrs/patchlevel.h | 10
    hdrs/s_elm.h | 31 -
    hdrs/s_fastmail.h | 19
    hdrs/s_from.h | 17
    hdrs/s_me.h | 5
    hdrs/s_newmail.h | 11
    hdrs/s_readmsg.h | 14
    hdrs/save_opts.h | 5
    hdrs/shared_imp.h | 9
    lib/MAGIC | 1
    lib/mailer/shared_mailer.c | 21
    lib/output.c | 10
    lib/read_rc.c | 20
    lib/remote_mbx.c | 1038 ++++++++++!!!!!!!!!!!!!!!!!!!!!!!!
    lib/service_list.c | 85 !
    lib/shared.c | 162 +++-
    lib/shared_base.c | 7
    lib/shared_connect.c | 16
    melib/decodeopts.c | 7
    melib/mime_decode.c | 18
    melib/state_decode.c | 212 ++++!!!
    nls/C/C/C/s_elm.m | 82 +-
    nls/C/C/C/s_fastmail.m | 46 +
    nls/C/C/C/s_from.m | 48 +
    nls/C/C/C/s_me.m | 10
    nls/C/C/C/s_newmail.m | 33
    nls/C/C/C/s_readmsg.m | 29
    shared_libs/resolv/config | 2
    shared_libs/resolv/elmrc-resolv-info | 8
    shared_libs/resolv/resolv.c | 368 -!!!!!!!!!
    src/addr_prompt.c | 6
    src/args.c | 626 +!!!!!!!!!!!!!!!!!!!!
    src/fileio.c | 16
    src/mailmsg2.c | 7
    utils/fastmail.c | 249 ++!!!!!
    utils/from.c | 377 +++!!!!!!!!!
    utils/newmail.c | 132 !!!!
    utils/readmsg/readmsg.c | 165 +++!!
    48 files changed, 1458 insertions(+), 108 deletions(-), 2654 modifications(!)

    --
    / Kari Hurtta

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Kari Hurtta@21:1/5 to All on Mon Dec 5 17:03:46 2022
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha61.1

    Before applying this patch catenate parts 1 - 2 first.
    Also it should be possible to apply parts 1 - 2
    individually.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha60

    ====================================== ( part 1/2 ) =========
    For applying thich patch use (on directory where Configure is)

    patch -p1 < {this-file}

    ------------------------------------------------------------------------
    Index: elmME+.2.5.alpha61-cvs/hdrs/patchlevel.h
    Prereq: 1693000000
    *** elmME+.2.5.alpha60/hdrs/patchlevel.h Fri Sep 2 20:38:19 2022
    --- elmME+.2.5.alpha61-cvs/hdrs/patchlevel.h Tue Nov 29 19:22:40 2022 ***************
    *** 1,12 ****
    ! #define PATCHLEVEL "alpha60"
    /* Used by Configure:
    ! SHAREDTAG: .1.1.60
    */
    ! #define LAST_REPORT_TIME 1693000000
    #define BUG_REPORT_ADDR "Kari Hurtta <elm@elmme-mailer.org>"
    ! #define VERS_DATE "Sep 2022" /* for elm -v option */
    #define WHAT_STRING \
    ! "@(#) Version ME+ 2.5, released Sep 2022"

    /*
    * Local Variables:
    --- 1,12 ----
    ! #define PATCHLEVEL "alpha61"
    /* Used by Configure:
    ! SHAREDTAG: .1.1.61
    */
    ! #define LAST_REPORT_TIME 1700000000
    #define BUG_REPORT_ADDR "Kari Hurtta <elm@elmme-mailer.org>"
    ! #define VERS_DATE "Dec 2022" /* for elm -v option */
    #define WHAT_STRING \
    ! "@(#) Version ME+ 2.5, released Dec 2022"

    /*
    * Local Variables:
    Index: elmME+.2.5.alpha61-cvs/README.ME+
    *** elmME+.2.5.alpha60/README.ME+ Fri Sep 2 20:38:19 2022
    --- elmME+.2.5.alpha61-cvs/README.ME+ Sun Dec 4 10:29:41 2022 ***************
    *** 1,4
  • From Kari Hurtta@21:1/5 to All on Mon Dec 5 17:04:23 2022
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha61.2

    Before applying this patch catenate parts 1 - 2 first.
    Also it should be possible to apply parts 1 - 2
    individually.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha60

    ====================================== ( part 2/2 ) =========
    Index: elmME+.2.5.alpha61-cvs/src/fileio.c
    *** elmME+.2.5.alpha60/src/fileio.c Fri Dec 10 20:18:48 2021
    --- elmME+.2.5.alpha61-cvs/src/fileio.c Sat Nov 19 08:50:54 2022 ***************
    *** 1,7 ****
    ! static char rcsid[] = "@(#)$Id: fileio.c,v 2.26 2021/09/22 17:50:59 hurtta Exp $";

    /******************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 2.26 $ $State: Exp $
    *
    * Modified by: Kari Hurtta <hurtta+elm@siilo.FMI.FI>
    * (was hurtta+elm@posti.FMI.FI, hurtta+elm@ozone.FMI.FI)
    --- 1,7 ----
    ! static char rcsid[] = "@(#)$Id: fileio.c,v 2.27 2022/11/19 06:50:54 hurtta Exp $";

    /******************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 2.27 $ $State: Exp $
    *
    * Modified by: Kari Hurtta <hurtta+elm@siilo.FMI.FI>
    * (was hurtta+elm@posti.FMI.FI, hurtta+elm@ozone.FMI.FI)
    ***************
    *** 555,562 ****
    mime_parse_routine(NULL,current_header,infile);
    }

    ! DECODE_OPT.displaying = (cm_opt
  • From Kari Hurtta@21:1/5 to All on Tue Dec 6 10:28:37 2022
    Experimental RPM spec file for ELM ME+ 2.5 PLalpha61
    exists on <URL: http://www.elmme-mailer.org/rpm/elm-ME+2.5.html >
    directory.

    Files are following

    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha61-2.spec
    RPM spec file
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha61-2.spec.elm-key-2018.sig
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha61-2.spec.sig
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha61-2.mdk7.2.src.rpm
    Source rpm
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha61-2.mdk7.2.src.rpm.sig

    Only binary packages for old Mandrake release 7.2 are available (Linux
    2.2, glibc 2.1, Sendmail 8.13).

    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha61-2.mdk7.2.i686.rpm
    Package elm binary RPM build on Linux Mandrake release 7.2
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha61-2.mdk7.2.i686.rpm.sig
    - http://www.elmme-mailer.org/rpm/elm-mod-ME+2.5.alpha61-2.mdk7.2.i686.rpm
    Package elm-mod binary RPM build on Linux Mandrake release 7.2
    - http://www.elmme-mailer.org/rpm/elm-tls-ME+2.5.alpha61-2.mdk7.2.i686.rpm
    Package elm-tls binary RPM build on Linux Mandrake release 7.2
    - http://www.elmme-mailer.org/rpm/elm-tls-ME+2.5.alpha61-2.mdk7.2.i686.rpm.sig

    Source and binary packages are signed internally with GPG key
    elm.key.2018.asc (44FC796B 2018-12-01).

    This is is compiled agaist Sendmail 8.13 (not from Mandrake
    distribution).

    elm-tls package do not load/work on Mandrake 7.2, because openssl
    library misses ASN1_STRING_to_UTF8 function.

    * Signatures

    {file}.sig PGP signature (old key pubkey.asc, EA5A2379 1996-04-23)
    {file}.elm-key-2018.sig GPG signature (key elm.key.2018.asc, 44FC796B 2018-12-01, expires: 2028-11-28)

    * Configuration

    Following files (if exists) are rewritten by elmconfwriter on
    installation:

    - /usr/local/lib/elm.rc
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.hashmarks

    Spec file compiles elm for binary distribution, so you must edit
    /usr/local/lib/elm.rc before using Elm ME+ 2.5. Following variables may
    need to be modified on elm.rc:

    - mailer
    - hostdomain (this is usually needed)
    - hostfullname
    - hostname (usually this is not needed)
    - mailname (default values is generated from other values)
    name-resolution (controls default values of hostdomain,
    hostfullname, hostname, mailname)


    For re-generation of following file, old information (if exists) is
    used:

    - /usr/local/lib/elm.rc

    WARNING: Check after installation that libraries are enabled. Global
    elm.rc values are:

    use-library =
    use-base-library = iconv
    use-config-library = resolv
    use-connect-library = tls resolv
    use-mailer-library = smtp resolv

    Note that libelmme-resolv.so does not compile on all distributions. In
    that case omit resolv from elm.rc.

    After editing global elm.rc run /usr/local/lib/elmrc-write -GI for
    fixing possible errors.

    On installation following existing files are merged with new values:

    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.hashmarks

    Old values from /usr/local/lib/aliases.text are converted to /usr/local/lib/elm.aliases and /usr/local/lib/aliases.text is renamed to /usr/local/lib/aliases.text.OLD.

    On installation new values without merging are written to following
    files:

    - /usr/local/lib/elm.aliases.NEW
    - /usr/local/lib/elm.mailinglists.NEW
    - /usr/local/lib/elm.mailservices.NEW
    - /usr/local/lib/elm.mimecharsets.NEW
    - /usr/local/lib/elm.mimetypes.NEW
    - /usr/local/lib/elm.terminalinfo.NEW
    - /usr/local/lib/elm.iso2022sets.NEW
    - /usr/local/lib/elm.hashmarks.NEW

    Package elm-mod includes libelmme-iconv.so and libelmme-smtp.so. (If
    package elm-mod includes libelmme-resolv.so, this is noted). And package elm-tls includes libelmme-tls.so.

    Installation loses mailer = submission setting from global /usr/local/lib/elm.rc, because when elm package rewrites elm.rc,
    submission mailer is not available. It becomes from elm-mod package.

    However failed values of /usr/local/lib/elm.rc are saved to /usr/local/lib/elm.rc.old-values file during installation.

    Global setting mailer = submission is restored from /usr/local/lib/elm.rc.old-values file, when package elm-mod is
    installed.

    Also following directories are used:

    - /usr/local/lib/elm.map.txt/ (global setting map-text-dir =
    {lib}/elm.map.txt)
    - /usr/local/lib/elm.map.bin/ (global setting map-bin-dir =
    {lib}/elm.map.bin)
    - /usr/local/lib/elm.user.map/ (global setting user-map-dir =
    {lib}/elm.user.map)

    Hashmark EXAMPLE uses file /usr/local/lib/elm.user.map/elm.usermap.

    SUMMARY: This release adds -4 (use IPv4) and -6 (use IPv6)
    options to elm and other commands. This release
    includes hack for convert bare CR to newline
    with elmrc option "convert-cr-to-newline-hack".
    Also some bug fixes and other changes are
    included.


    Changes on Elm ME+ 2.5 PLalpha61 compared with Elm ME+ 2.5 PLalpha60 --------------------------------------------------------------------

    SUMMARY: This release adds -4 (use IPv4) and -6 (use IPv6)
    options to elm and other commands. This release
    includes hack for convert bare CR to newline
    with elmrc option "convert-cr-to-newline-hack".
    Also some bug fixes and other changes are
    included.

    - Added options -4 (use IPv4) and -6 (use IPv6) to elm,
    readmsg,fastmail,frm and newmail.
    Both options can be given. If only use IPv4 or
    use IPv6 options are used, that limits some
    connections to IPv6 or IPv4 addresses.
    Does not limit all possible usage.
    - Option combination -46 can be used
    to try first IPv4 connections before IPv6
    connections are tried.
    - Option combination -64 can be used to
    try first IPv6 connections before
    IPv4 connections are tried.
    - Added add_ipv_option() to lib/remote_mbx.c
    and hdrs/elmib.h
    - Options -4 (use IPv4) and -6 (use IPv6) override
    elmrc option "query-address-type" (on resolv:
    -section) when lookup for service address is
    done.
    - Options -4 and -6 works with
    mail-services-lookup = getaddrinfo
    and mail-services-lookup = resolv:all-addresses
    values of elmrc option.
    > With other values of "mail-services-lookup"
    elmrc option command line options -4 (use IPv4) and
    -6 (use IPv6) may produce unexpected results
    or cause connection failure.

    - Fixed 'z' modifier on elm_vmessage() and
    elm_smessage()

    - Fixed case where elmrc option "resolv:search-mail-service"
    was not set default value properly.
    - Added post_init_shared_options1(), and
    post_init_shared_opt1() to hdrs/shared_imp.h
    and lib/shared.c

    - Changed fastmail, newmail and readmsg usage text.
    - Changed frm help text.

    - Certain sender sends mail with CR (^M) as line
    separator (on content-transfer-encoded body part).
    Added elmrc option "convert-cr-to-newline-hack".
    When set, lone CR on text body part are converted
    to newline. Possible values are
    off Do not convert lone CR
    on-with-error Convert lone CR to newline
    with diagnostic message
    on-silent Convert lone CR to newline
    without diagnostic message
    Also boolean ON, OFF, TRUE, FALSE, YES and NO values
    are allowed.
    - Changed newline / CR caching on struct in_state_decode
    or on state_decode routines at melib/state_decode.c
    - Potentially fixed case where CR NUL loses NUL
    when converting newlines on decoded text.
    - Added unsigned int show_error : 1;
    to struct decode_opts on hdrs/melib.h
    - Print errors to buffer also when replying
    (or forwarding with mail on edit buffer)

    NOTE: Ubuntu 20.04 is observed to need
    imap.server imaps; tls:tls-version=tls-1.2
    smtp.server submissions; tls:tls-version=tls-1.2
    on .elm/mail.services when imap server and
    submission server are used. Record messages with
    --messages=message.log elm ME+ command line option and
    look TLS error from message.log.

    - Fixed debug output crash on prompt_expanded_address()
    at src/addr_prompt.c.

    Warnings
    --------

    - Not compiled with MMDF support defined, so probably it doesn't
    work (or even compile).

    - This has not been tested much so there can be bad bugs.

    Bug reports to: Kari E. Hurtta <elm@elmme-mailer.org>
    (was hurtta+elm@posti.FMI.FI)

    - Internationalized (ie. non-ASCII) domain names are not supported.

    - Support for multipart/signed and multipart/encrypted (specially:
    support for PGP/MIME) only in reading side. There is no support
    for attachments with multipart/encrypted.

    - HP's shoftkeys are no longer supported

    - DECNET addresses like host::user may be interpreted as phrase
    of group syntax or as route of source routed address.

    - Header editing screen now uses addresses in form phrase <address>,
    but because it does not require using of comma (,), multiword
    phrases must be entered in quotes.

    For example: "Kari Hurtta" <hurtta>

    - If address includes <> or comments (), they are not aliased
    expanded. So aliases must be entered as bare words.

    - Addresses given as arguments to elm command should be given
    as one address per argument. Giving of sevaral addresses per
    one argument causes that address is misparsed if header is
    edited on header editing screen.

    That is:

    Use: elm '"Kari Hurtta" <hurtta>' 'Admin <root>'

    Don't use: elm 'Kari Hurtta <hurtta>, Admin <root>'

    - p)rint command acts as P)rint text -command. So it
    is currently quite useless.
    p)rint command does that via readmsg -command. However
    P)rint text does actually same (without readmsg).

    - Some Linux libraries does not follow $LC_CTYPE when program is
    setgid. Net result is that your locale is always C. That is
    visible that $LC_CTYPE does not effect to locale printed by
    'elm -vvvvv':

    Locale (LC_CTYPE): C
    Display character-set: US-ASCII
    Sending character-set: US-ASCII

    - All refrences iso2022 maps are parsed and read to memory.
    This may cause quite big memory consumption specially because
    eastern (multibyte) sets tend to be lot of characters. That
    mapping information should be shared between processes to
    reduce memory consuption.

    - If display charset is produced by using mapping from locale
    to charset where charset definition is later invalidated
    ("removed") by setting explicit compatcharsets on user's
    .elm/elmrc, that may cause PANIC on elm's internal pager
    or other problems. Invalidation happens if display charset
    is on implicit compatcharsets list (because of charset
    definition), but does not have explicit compatcharsets list
    given by user.

    - Neither Unicode didirectional algorithm nor Right-Left scripts
    are supported.

    - In some situations two Status headers may be generated two
    Status headers -- one by IMAP deamon and one from APPENDed
    message.

    - When APPENDing message to IMAP folder (which is normal UNIX
    mailbox format) original "From " separator line can not be
    preserved -- specially it is not possible to pass envelope
    sender address.

    - For UTF-8 charset Elm only knows printable characters from
    Latin/1 range, if unicode database (see elmrc option "unidata")
    is not loaded.

    - For using of ISO2022 character sets it is required that mapping
    them to unicode is know -- otherwise Elm ME+ does not know which
    characters are printable.

    - UTF-16 surrogate pairs (D800-DFFF) are not supported on UTF-7
    charset.

    - Mixing of names using IMAP naming convention
    (imap-naming-convention = yes)
    and names using imap-charset does not work very well...

    - " Regarding my message (8 Aug 2000) regarding 'newmail' on
    AIX 4.3.3 in an 'aixterm' window and the 'aixterm' did not
    close, indeed the problem was NOT related to 'newmail' but an
    AIX bug.

    IBM has release a patch, and the 'aixterm' in AIX 4.3.3 must
    be update with fileset X11.apps.aixterm.4.3.3.26 (PTF
    U473920) is solved to problem."
    From: Noam G. Nudelman

    - File /usr/share/locale/fi/charset gives charset name utf-8 on
    Linux Mandrake 7.2. This causes that Configure generates
    mapping
    fi utf-8
    to elm.mimecharsets. However that seems to have
    incorrect mapping. You may want change this to
    fi ISO-8859-1

    ( however nl_langinfo(CODESET) gives charset ISO-8859-15
    but look following entry. )

    - Locale 'fi' seems to have charset ISO-8859-15 according
    of nl_langinfo(CODESET) on Mandrake Linux 7.2 (and probaly
    others with same glibc version). However for example gnome
    terminal uses font
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-1
    and not
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-15

    Also KDE's konsole program seems use iso8859-1 character set
    although locale is 'fi' which should have ISO-8859-15 according
    of nl_langinfo (selecting "unicode" from menu seems fix that.)

    Because of mismatch more correct locale is fi_FI.88591, which gives
    ISO-8859-1 character set according of nl_langinfo(CODESET).

    ( Locale seems come from /etc/sysconfig/i18n or $HOME/.i18n )

    > To enable handling of ISO-8859-1 and ISO-8859-15 character sets
    on linux console, read comments from doc/terminal.info file.

    - Mandrake Linux 7.2 seems set LD_PRELOAD to load
    /usr/lib/libxalflaunch.so.0. That (xalf-0.4-2mdk) causes that
    elm to crash on startup (actually before main() is reached.)

    - kterm on Mandrake Linux 7.2 seems have (at least on my test
    environment) seems get bad fontlist (*VT100*fontList) which
    gives bad font for iso8859-1 -- therefore ISO-8859-1 characters
    do not work.

    ("xrdb -query" seems report resource with name "*fontList"
    -- that probably overrides "*VT100*fontList" which comes
    from /usr/lib/X11/app-defaults/KTerm )

    - Also note that initially kterm does NOT default to
    ISO-8859-1 -- therefore ISO-8859-1 works only when
    elm explicity switch to ISO-8859-1 (for example
    with 'elm -D ISO-8859-1')

    - When assembling message/partial MIME (RFC 2046)
    requires that all headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are copied from
    initial enclosing message to assembled message. It also
    requires that headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are ignored and
    dropped from enclosed message.

    For now we copy only Received: -headers. Dropping extra
    headers from enclosed message makes assembly more
    complicated (and dropping of Received: -headers
    from enclosed message do not make sense.)

    - mailer=sendmail; verify=yes works only when sendmail
    is installed as setuid root. Use mailer=submission instead.
    * Starting from sendmail 8.12 sendmail is normally
    installed as setgid smmsp and not as setuid root.
    - However error message is printed only if
    verify-local-address=yes is also set

    - IMAP connection is stalled some times. Reason is unknown.

    Collector of these patches
    --------------------------

    Kari Hurtta <elm@elmme-mailer.org>
    Kari Hurtta <hurtta+elm@siilo.FMI.FI>

    --
    / Kari Hurtta

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Kari Hurtta@21:1/5 to All on Tue Dec 6 16:25:44 2022
    Experimental DEB generator script for Elm ME+ 2.5 PLalpha61 exists on
    <URL: http://www.elmme-mailer.org/deb/elm-ME+2.5.html > directory.

    Files are following

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha61-2.gen_deb
    DEB generator script
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha61-2.gen_deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha61-2.gen_deb.sig

    A command

    elm-ME+2.5.alpha61-2.gen_deb {packager}

    generates package elmme with version 1.1.61-2.{distribution}.

    A command

    elm-ME+2.5.alpha61-2.gen_deb --old {packager}

    generates package elm with version ME+2.5.alpha61-2.{distribution}.

    Both commands produce package with filename elm-ME+2.5.alpha61-2.{distribution}.{arch}.deb.

    == Old package names, i386

    Package elm with version ME+2.5.alpha61-2.{distribution} and
    architecture i386.

    * Compiled on Ubuntu 6.06.2 LTS
    (Linux 2.6, glibc 2.3, Sendmail 8.13)

    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha61-2.Ubuntu6.06.i386.deb
    Package elm binary DEB build on Ubuntu 6.06.2 LTS
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha61-2.Ubuntu6.06.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha61-2.Ubuntu6.06.i386.deb.sig

    * Compiled on Ubuntu 10.04.4 LTS
    (Linux 2.6, glibc 2.11, Sendmail 8.14)

    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha61-2.Ubuntu10.04.i386.deb
    Package elm binary DEB build on Ubuntu 10.04.4 LTS
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha61-2.Ubuntu10.04.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha61-2.Ubuntu10.04.i386.deb.sig

    == New package names, i386

    Package elmme with version 1.1.61-2.{distribution} and architecture
    i386.

    * Compiled on Ubuntu 10.04.4 LTS
    (Linux 2.6, glibc 2.11, Sendmail 8.14)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha61-2.Ubuntu10.04.i386.deb
    Package elmme binary DEB build on Ubuntu 10.04.4 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha61-2.Ubuntu10.04.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha61-2.Ubuntu10.04.i386.deb.sig

    * Compiled on Ubuntu 14.04.6 LTS
    (Linux 4.4, glibc 2.19, no MTA)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha61-2.Ubuntu14.04.i386.deb
    Package elmme binary DEB build on Ubuntu 14.04.6 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha61-2.Ubuntu14.04.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha61-2.Ubuntu14.04.i386.deb.sig

    == New package names, amd64 (x86_64)

    Package elmme with version 1.1.61-2.{distribution} and architecture
    amd64 (also known as x86_64).

    * Compiled on Ubuntu 18.04.6 LTS
    (Linux 5.4, glibc 2.27, Sendmail 8.15)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha61-2.Ubuntu18.04.amd64.deb
    Package elmme binary DEB build on Ubuntu 18.04.6 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha61-2.Ubuntu18.04.amd64.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha61-2.Ubuntu18.04.amd64.deb.sig

    * Compiled on Ubuntu 20.04.5 LTS
    (Linux 5.4, glibc 2.31, Postfix 3.4 (not configured))

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha61-2.Ubuntu20.04.amd64.deb
    Package elmme binary DEB build on Ubuntu 20.04.5 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha61-2.Ubuntu20.04.amd64.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha61-2.Ubuntu20.04.amd64.deb.sig

    NOTE: Ubuntu 20.04 is observed to need

    imap.server imaps; tls:tls-version=tls-1.2
    smtp.server submissions; tls:tls-version=tls-1.2

    on .elm/mail.services when imap server and submission server are
    used. Record messages with --messages=message.log elm ME+ command line
    option and look TLS error from message.log.

    == Signatures

    {file}.sig PGP signature (old key pubkey.asc, EA5A2379 1996-04-23)
    {file}.elm-key-2018.sig GPG signature (key elm.key.2018.asc, 44FC796B 2018-12-01, expires: 2028-11-28)

    == Configuration

    Following files (if exists) are rewritten by elmconfwriter on
    installation:

    - /usr/local/lib/elm.rc
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.hashmarks

    Deb generator script compiles elm for binary distribution, so you must
    edit /usr/local/lib/elm.rc before using Elm ME+ 2.5. Following variables
    may need to be modified on elm.rc:

    - mailer
    - hostdomain (this is usually needed)
    - hostfullname
    - hostname (usually this is not needed)
    - mailname (default values is generated from other values)
    - name-resolution (controls default values of hostdomain, hostfullname, hostname, mailname)

    By default first value for mailname is read from /etc/mailname file.

    For re-generation of following file, old information (if exists) is
    used:

    - /usr/local/lib/elm.rc

    WARNING: Check after installation that libraries are enabled. Global
    elm.rc values are:

    use-library =
    use-base-library = iconv
    use-config-library = resolv
    use-connect-library = tls resolv
    use-mailer-library = smtp resolv

    After editing global elm.rc run /usr/local/lib/elmrc-write -GI for fixing possible errors.

    On installation following existing files are merged with new values:

    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.hashmarks

    Old values from /usr/local/lib/aliases.text are converted to /usr/local/lib/elm.aliases and /usr/local/lib/aliases.text is renamed to /usr/local/lib/aliases.text.OLD.

    On installation new values without merging are written to following
    files:

    - /usr/local/lib/elm.aliases.NEW
    - /usr/local/lib/elm.mailinglists.NEW
    - /usr/local/lib/elm.mailservices.NEW
    - /usr/local/lib/elm.mimecharsets.NEW
    - /usr/local/lib/elm.mimetypes.NEW
    - /usr/local/lib/elm.terminalinfo.NEW
    - /usr/local/lib/elm.iso2022sets.NEW
    - /usr/local/lib/elm.hashmarks.NEW

    Also following directories are used:

    - /usr/local/lib/elm.map.txt/ (global setting map-text-dir = {lib}/elm.map.txt)
    - /usr/local/lib/elm.map.bin/ (global setting map-bin-dir = {lib}/elm.map.bin)
    - /usr/local/lib/elm.user.map/ (global setting user-map-dir = {lib}/elm.user.map)

    Hashmark EXAMPLE uses file /usr/local/lib/elm.user.map/elm.usermap.

    SUMMARY: This release adds -4 (use IPv4) and -6 (use IPv6)
    options to elm and other commands. This release
    includes hack for convert bare CR to newline
    with elmrc option "convert-cr-to-newline-hack".
    Also some bug fixes and other changes are
    included.


    Changes on Elm ME+ 2.5 PLalpha61 compared with Elm ME+ 2.5 PLalpha60 --------------------------------------------------------------------

    SUMMARY: This release adds -4 (use IPv4) and -6 (use IPv6)
    options to elm and other commands. This release
    includes hack for convert bare CR to newline
    with elmrc option "convert-cr-to-newline-hack".
    Also some bug fixes and other changes are
    included.

    - Added options -4 (use IPv4) and -6 (use IPv6) to elm,
    readmsg,fastmail,frm and newmail.
    Both options can be given. If only use IPv4 or
    use IPv6 options are used, that limits some
    connections to IPv6 or IPv4 addresses.
    Does not limit all possible usage.
    - Option combination -46 can be used
    to try first IPv4 connections before IPv6
    connections are tried.
    - Option combination -64 can be used to
    try first IPv6 connections before
    IPv4 connections are tried.
    - Added add_ipv_option() to lib/remote_mbx.c
    and hdrs/elmib.h
    - Options -4 (use IPv4) and -6 (use IPv6) override
    elmrc option "query-address-type" (on resolv:
    -section) when lookup for service address is
    done.
    - Options -4 and -6 works with
    mail-services-lookup = getaddrinfo
    and mail-services-lookup = resolv:all-addresses
    values of elmrc option.
    > With other values of "mail-services-lookup"
    elmrc option command line options -4 (use IPv4) and
    -6 (use IPv6) may produce unexpected results
    or cause connection failure.

    - Fixed 'z' modifier on elm_vmessage() and
    elm_smessage()

    - Fixed case where elmrc option "resolv:search-mail-service"
    was not set default value properly.
    - Added post_init_shared_options1(), and
    post_init_shared_opt1() to hdrs/shared_imp.h
    and lib/shared.c

    - Changed fastmail, newmail and readmsg usage text.
    - Changed frm help text.

    - Certain sender sends mail with CR (^M) as line
    separator (on content-transfer-encoded body part).
    Added elmrc option "convert-cr-to-newline-hack".
    When set, lone CR on text body part are converted
    to newline. Possible values are
    off Do not convert lone CR
    on-with-error Convert lone CR to newline
    with diagnostic message
    on-silent Convert lone CR to newline
    without diagnostic message
    Also boolean ON, OFF, TRUE, FALSE, YES and NO values
    are allowed.
    - Changed newline / CR caching on struct in_state_decode
    or on state_decode routines at melib/state_decode.c
    - Potentially fixed case where CR NUL loses NUL
    when converting newlines on decoded text.
    - Added unsigned int show_error : 1;
    to struct decode_opts on hdrs/melib.h
    - Print errors to buffer also when replying
    (or forwarding with mail on edit buffer)

    NOTE: Ubuntu 20.04 is observed to need
    imap.server imaps; tls:tls-version=tls-1.2
    smtp.server submissions; tls:tls-version=tls-1.2
    on .elm/mail.services when imap server and
    submission server are used. Record messages with
    --messages=message.log elm ME+ command line option and
    look TLS error from message.log.

    - Fixed debug output crash on prompt_expanded_address()
    at src/addr_prompt.c.

    Warnings
    --------

    - Not compiled with MMDF support defined, so probably it doesn't
    work (or even compile).

    - This has not been tested much so there can be bad bugs.

    Bug reports to: Kari E. Hurtta <elm@elmme-mailer.org>
    (was hurtta+elm@posti.FMI.FI)

    - Internationalized (ie. non-ASCII) domain names are not supported.

    - Support for multipart/signed and multipart/encrypted (specially:
    support for PGP/MIME) only in reading side. There is no support
    for attachments with multipart/encrypted.

    - HP's shoftkeys are no longer supported

    - DECNET addresses like host::user may be interpreted as phrase
    of group syntax or as route of source routed address.

    - Header editing screen now uses addresses in form phrase <address>,
    but because it does not require using of comma (,), multiword
    phrases must be entered in quotes.

    For example: "Kari Hurtta" <hurtta>

    - If address includes <> or comments (), they are not aliased
    expanded. So aliases must be entered as bare words.

    - Addresses given as arguments to elm command should be given
    as one address per argument. Giving of sevaral addresses per
    one argument causes that address is misparsed if header is
    edited on header editing screen.

    That is:

    Use: elm '"Kari Hurtta" <hurtta>' 'Admin <root>'

    Don't use: elm 'Kari Hurtta <hurtta>, Admin <root>'

    - p)rint command acts as P)rint text -command. So it
    is currently quite useless.
    p)rint command does that via readmsg -command. However
    P)rint text does actually same (without readmsg).

    - Some Linux libraries does not follow $LC_CTYPE when program is
    setgid. Net result is that your locale is always C. That is
    visible that $LC_CTYPE does not effect to locale printed by
    'elm -vvvvv':

    Locale (LC_CTYPE): C
    Display character-set: US-ASCII
    Sending character-set: US-ASCII

    - All refrences iso2022 maps are parsed and read to memory.
    This may cause quite big memory consumption specially because
    eastern (multibyte) sets tend to be lot of characters. That
    mapping information should be shared between processes to
    reduce memory consuption.

    - If display charset is produced by using mapping from locale
    to charset where charset definition is later invalidated
    ("removed") by setting explicit compatcharsets on user's
    .elm/elmrc, that may cause PANIC on elm's internal pager
    or other problems. Invalidation happens if display charset
    is on implicit compatcharsets list (because of charset
    definition), but does not have explicit compatcharsets list
    given by user.

    - Neither Unicode didirectional algorithm nor Right-Left scripts
    are supported.

    - In some situations two Status headers may be generated two
    Status headers -- one by IMAP deamon and one from APPENDed
    message.

    - When APPENDing message to IMAP folder (which is normal UNIX
    mailbox format) original "From " separator line can not be
    preserved -- specially it is not possible to pass envelope
    sender address.

    - For UTF-8 charset Elm only knows printable characters from
    Latin/1 range, if unicode database (see elmrc option "unidata")
    is not loaded.

    - For using of ISO2022 character sets it is required that mapping
    them to unicode is know -- otherwise Elm ME+ does not know which
    characters are printable.

    - UTF-16 surrogate pairs (D800-DFFF) are not supported on UTF-7
    charset.

    - Mixing of names using IMAP naming convention
    (imap-naming-convention = yes)
    and names using imap-charset does not work very well...

    - " Regarding my message (8 Aug 2000) regarding 'newmail' on
    AIX 4.3.3 in an 'aixterm' window and the 'aixterm' did not
    close, indeed the problem was NOT related to 'newmail' but an
    AIX bug.

    IBM has release a patch, and the 'aixterm' in AIX 4.3.3 must
    be update with fileset X11.apps.aixterm.4.3.3.26 (PTF
    U473920) is solved to problem."
    From: Noam G. Nudelman

    - File /usr/share/locale/fi/charset gives charset name utf-8 on
    Linux Mandrake 7.2. This causes that Configure generates
    mapping
    fi utf-8
    to elm.mimecharsets. However that seems to have
    incorrect mapping. You may want change this to
    fi ISO-8859-1

    ( however nl_langinfo(CODESET) gives charset ISO-8859-15
    but look following entry. )

    - Locale 'fi' seems to have charset ISO-8859-15 according
    of nl_langinfo(CODESET) on Mandrake Linux 7.2 (and probaly
    others with same glibc version). However for example gnome
    terminal uses font
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-1
    and not
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-15

    Also KDE's konsole program seems use iso8859-1 character set
    although locale is 'fi' which should have ISO-8859-15 according
    of nl_langinfo (selecting "unicode" from menu seems fix that.)

    Because of mismatch more correct locale is fi_FI.88591, which gives
    ISO-8859-1 character set according of nl_langinfo(CODESET).

    ( Locale seems come from /etc/sysconfig/i18n or $HOME/.i18n )

    > To enable handling of ISO-8859-1 and ISO-8859-15 character sets
    on linux console, read comments from doc/terminal.info file.

    - Mandrake Linux 7.2 seems set LD_PRELOAD to load
    /usr/lib/libxalflaunch.so.0. That (xalf-0.4-2mdk) causes that
    elm to crash on startup (actually before main() is reached.)

    - kterm on Mandrake Linux 7.2 seems have (at least on my test
    environment) seems get bad fontlist (*VT100*fontList) which
    gives bad font for iso8859-1 -- therefore ISO-8859-1 characters
    do not work.

    ("xrdb -query" seems report resource with name "*fontList"
    -- that probably overrides "*VT100*fontList" which comes
    from /usr/lib/X11/app-defaults/KTerm )

    - Also note that initially kterm does NOT default to
    ISO-8859-1 -- therefore ISO-8859-1 works only when
    elm explicity switch to ISO-8859-1 (for example
    with 'elm -D ISO-8859-1')

    - When assembling message/partial MIME (RFC 2046)
    requires that all headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are copied from
    initial enclosing message to assembled message. It also
    requires that headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are ignored and
    dropped from enclosed message.

    For now we copy only Received: -headers. Dropping extra
    headers from enclosed message makes assembly more
    complicated (and dropping of Received: -headers
    from enclosed message do not make sense.)

    - mailer=sendmail; verify=yes works only when sendmail
    is installed as setuid root. Use mailer=submission instead.
    * Starting from sendmail 8.12 sendmail is normally
    installed as setgid smmsp and not as setuid root.
    - However error message is printed only if
    verify-local-address=yes is also set

    - IMAP connection is stalled some times. Reason is unknown.

    Collector of these patches
    --------------------------

    Kari Hurtta <elm@elmme-mailer.org>
    Kari Hurtta <hurtta+elm@siilo.FMI.FI>


    --
    / Kari Hurtta

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Kari Hurtta@21:1/5 to All on Sun Nov 26 14:45:49 2023
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha62.0

    Part 1 includes whole patch.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha61

    ====================================== ( part 0/1 ) =========
    Elm ME+ 2.5 PLalpha62

    - Is available with
    <URL: http://www.elmme-mailer.org/elm-ME+2.5/src/elm-ME+2.5.alpha62.dd8cb0803138a48194c1b81c857580f3.tar.gz >
    and <URL: http://www.elmme-mailer.org/elm-ME+2.5/src/elm-ME+2.5.PLalpha62.patch.gz >
    via http.
    Signatures are
    <URL: http://www.elmme-mailer.org/elm-ME+2.5/src/elm-ME+2.5.alpha62.dd8cb0803138a48194c1b81c857580f3.tar.gz.elm-key-2018.sig >
    <URL: http://www.elmme-mailer.org/elm-ME+2.5/src/elm-ME+2.5.alpha62.dd8cb0803138a48194c1b81c857580f3.tar.gz.sig >
    and <URL: http://www.elmme-mailer.org/elm-ME+2.5/src/elm-ME+2.5.PLalpha62.patch.gz.elm-key-2018.sig >
    <URL: http://www.elmme-mailer.org/elm-ME+2.5/src/elm-ME+2.5.PLalpha62.patch.gz.sig >

    - Is available with
    <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.alpha62.dd8cb0803138a48194c1b81c857580f3.tar.gz >
    and <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.PLalpha62.patch.gz >
    via https.
    Signatures are
    <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.alpha62.dd8cb0803138a48194c1b81c857580f3.tar.gz.elm-key-2018.sig >
    <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.alpha62.dd8cb0803138a48194c1b81c857580f3.tar.gz.sig >
    and <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.PLalpha62.patch.gz.elm-key-2018.sig >
    <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.PLalpha62.patch.gz.sig >

    - Is available on ftp.funet.fi
    directory pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/
    files elm-ME+2.5.alpha62.dd8cb0803138a48194c1b81c857580f3.tar.gz
    and elm-ME+2.5.PLalpha62.patch.gz
    via anonumous ftp.
    Signatures are
    elm-ME+2.5.alpha62.dd8cb0803138a48194c1b81c857580f3.tar.gz.elm-key-2018.sig
    elm-ME+2.5.alpha62.dd8cb0803138a48194c1b81c857580f3.tar.gz.sig
    and elm-ME+2.5.PLalpha62.patch.gz.elm-key-2018.sig
    elm-ME+2.5.PLalpha62.patch.gz.sig

    Or is available with
    <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.alpha62.dd8cb0803138a48194c1b81c857580f3.tar.gz >
    and <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha62.patch.gz >
    with browser.
    Signatures are
    <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.alpha62.dd8cb0803138a48194c1b81c857580f3.tar.gz.elm-key-2018.sig >
    <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5.alpha62.dd8cb0803138a48194c1b81c857580f3.tar.gz.sig >
    and <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5.PLalpha62.patch.gz.elm-key-2018.sig >
    <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5.PLalpha62.patch.gz.sig >

    Or is available with
    <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.alpha62.dd8cb0803138a48194c1b81c857580f3.tar.gz >
    and <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha62.patch.gz.sig >
    via https.
    Signatures are
    <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.alpha62.dd8cb0803138a48194c1b81c857580f3.tar.gz.elm-key-2018.sig >
    <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.alpha62.dd8cb0803138a48194c1b81c857580f3.tar.gz.sig >
    and <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha62.patch.gz.elm-key-2018.sig >
    <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha62.patch.gz.sig >

    Signatures are with following keys

    {file}.sig PGP signature (old key pubkey.asc, EA5A2379 1996-04-23)
    {file}.elm-key-2018.sig GPG signature (key elm.key.2018.asc, 44FC796B 2018-12-01, expires: 2028-11-28)

    SUMMARY: This release fixes few crashes.

    Changes on Elm ME+ 2.5 PLalpha62 compared with Elm ME+ 2.5 PLalpha61 --------------------------------------------------------------------

    SUMMARY: This release fixes few crashes.

    - Fixed crash on reconnect when same time is open
    imap mailbox and local folder.
    MBX PANIC in .../lib/mbox/localmbx.c:5738:mbx_prepare_read_non_spool
    >>>mode == PREPARE_RECONNECT
    Call stack: 7FA4D22B5DC9 7FA4D2C856D7 7FA4D2C64DAD 5555938012D8 5555937FE4C9
    continues: 555593813D57 5555937D5BEF 5555937D7262 5555937A2E17 7FA4D1A0BC87
    continues: 55559374FB4A
    backtrace:
    /usr/local/lib64/libelmme-base.so.1.1.61(panic+0x1de)[0x7fa4d22b5dc9]
    /usr/local/lib64/libelmme-mbox.so.1.1.61(+0x3a6d7)[0x7fa4d2c856d7]
    /usr/local/lib64/libelmme-mbox.so.1.1.61(prepare_read_folder+0x687)[0x7fa4d2c64dad]
    elm(+0xd82d8)[0x5555938012d8]
    elm(newmbox_1+0x5e7)[0x5555937fe4c9]
    elm(resync+0x4d2)[0x555593813d57]
    elm(+0xacbef)[0x5555937d5bef]
    elm(main_messages_menu+0x17d)[0x5555937d7262]
    elm(main+0xf48)[0x5555937a2e17]
    /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xe7)[0x7fa4d1a0bc87]
    elm(_start+0x2a)[0x55559374fb4a]
    Press a <enter> to abort or <enter> to exit:

    - Fixed crash on reconnect when same time is open
    imap mailbox and local mailbox.
    MBX PANIC in .../lib/mbox/localmbx.c:5808:mbx_prepare_read_spool
    >>>mode == PREPARE_RECONNECT
    Call stack: 7FAC4D996DC9 7FAC4E364B83 7FAC4E343DAD 55A9DCC072B8 55A9DCC044A9
    continues: 55A9DCC19D37 55A9DCBDBBCF 55A9DCBDD242 55A9DCBA8DF7 7FAC4D0ECC87
    continues: 55A9DCB55B2A
    backtrace:
    /tmp/TEST/lib64/libelmme-base.so.1.1.61+(panic+0x1de)[0x7fac4d996dc9]
    /tmp/TEST/lib64/libelmme-mbox.so.1.1.61+(+0x3ab83)[0x7fac4e364b83]
    /tmp/TEST/lib64/libelmme-mbox.so.1.1.61+(prepare_read_folder+0x687)[0x7fac4e343dad]
    /tmp/TEST/bin/elm(+0xd82b8)[0x55a9dcc072b8]
    /tmp/TEST/bin/elm(newmbox_1+0x5e7)[0x55a9dcc044a9]
    /tmp/TEST/bin/elm(resync+0x4d2)[0x55a9dcc19d37]
    /tmp/TEST/bin/elm(+0xacbcf)[0x55a9dcbdbbcf]
    /tmp/TEST/bin/elm(main_messages_menu+0x17d)[0x55a9dcbdd242]
    /tmp/TEST/bin/elm(main+0xf48)[0x55a9dcba8df7]
    /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xe7)[0x7fac4d0ecc87]
    /tmp/TEST/bin/elm(_start+0x2a)[0x55a9dcb55b2a]
    Press <enter> to abort:

    - Fixed debug output on file_bytes() at lib/file_util.c

    diffstat:

    README.ME+ | 51 +++++++++++++++++++++++!
    doc/elm.1 | 2
    doc/elmalias.1 | 2
    doc/elmaliases-write.1 | 2
    doc/elmbindata.1 | 2
    doc/elmcharset.1 | 2
    doc/elmconfwriter.1 | 2
    doc/elmhashmarks.1 | 2
    doc/elmiso2022sets.1 | 2
    doc/elmlibregister.1 | 2
    doc/elmmailinglists.1 | 2
    doc/elmmailservices.1 | 2
    doc/elmmimetypes.1 | 2
    doc/elmrc-write.1 | 2
    doc/elmregister.1 | 2
    doc/elmstringconvert.1 | 2
    doc/elmterminal.1 | 2
    doc/elmunidata.1 | 2
    doc/fastmail.1 | 2
    doc/frm.1 | 2
    doc/newalias.1 | 2
    doc/newmail.1 | 2
    doc/readmsg.1 | 2
    hdrs/elm_defs.h | 6 !!
    hdrs/patchlevel.h | 10 !!!!
    hdrs/readmsg.h | 4 !
    lib/file_util.c | 25 ++++-!!!!!
    lib/mbox/localmbx.c | 104 ++++++++++--!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    src/args.c | 8 !!!
    29 files changed, 82 insertions(+), 5 deletions(-), 165 modifications(!)

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Kari Hurtta@21:1/5 to All on Sun Nov 26 14:46:52 2023
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha62.1

    Part 1 includes whole patch.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha61

    ====================================== ( part 1/1 ) =========
    For applying thich patch use (on directory where Configure is)

    patch -p1 < {this-file}

    ------------------------------------------------------------------------
    Index: elmME+.2.5.alpha62-cvs/hdrs/patchlevel.h
    Prereq: 1700000000
    *** elmME+.2.5.alpha61/hdrs/patchlevel.h Sun Dec 4 10:38:37 2022
    --- elmME+.2.5.alpha62-cvs/hdrs/patchlevel.h Sat Nov 25 10:45:55 2023 ***************
    *** 1,12 ****
    ! #define PATCHLEVEL "alpha61"
    /* Used by Configure:
    ! SHAREDTAG: .1.1.61
    */
    ! #define LAST_REPORT_TIME 1700000000
    #define BUG_REPORT_ADDR "Kari Hurtta <elm@elmme-mailer.org>"
    ! #define VERS_DATE "Dec 2022" /* for elm -v option */
    #define WHAT_STRING \
    ! "@(#) Version ME+ 2.5, released Dec 2022"

    /*
    * Local Variables:
    --- 1,12 ----
    ! #define PATCHLEVEL "alpha62"
    /* Used by Configure:
    ! SHAREDTAG: .1.1.62
    */
    ! #define LAST_REPORT_TIME 1730000000
    #define BUG_REPORT_ADDR "Kari Hurtta <elm@elmme-mailer.org>"
    ! #define VERS_DATE "Nov 2023" /* for elm -v option */
    #define WHAT_STRING \
    ! "@(#) Version ME+ 2.5, released Nov 2023"

    /*
    * Local Variables:
    Index: elmME+.2.5.alpha62-cvs/README.ME+
    *** elmME+.2.5.alpha61/README.ME+ Sun Dec 4 10:38:37 2022
    --- elmME+.2.5.alpha62-cvs/README.ME+ Sat Nov 25 10:45:55 2023 ***************
    *** 1,4
  • From Kari Hurtta@21:1/5 to All on Mon Nov 27 19:11:35 2023
    Experimental RPM spec file for ELM ME+ 2.5 PLalpha62
    exists on <URL: http://www.elmme-mailer.org/rpm/elm-ME+2.5.html >
    directory.

    Files are following

    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha62-1.spec
    RPM spec file
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha62-1.spec.elm-key-2018.sig
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha62-1.spec.sig
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha62-1.mdk7.2.src.rpm
    Source rpm
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha62-1.mdk7.2.src.rpm.sig

    Only binary packages for old Mandrake release 7.2 are available (Linux
    2.2, glibc 2.1, Sendmail 8.13).

    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha62-1.mdk7.2.i686.rpm
    Package elm binary RPM build on Linux Mandrake release 7.2
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha62-1.mdk7.2.i686.rpm.sig
    - http://www.elmme-mailer.org/rpm/elm-mod-ME+2.5.alpha62-1.mdk7.2.i686.rpm
    Package elm-mod binary RPM build on Linux Mandrake release 7.2
    - http://www.elmme-mailer.org/rpm/elm-mod-ME+2.5.alpha62-1.mdk7.2.i686.rpm.sig
    - http://www.elmme-mailer.org/rpm/elm-tls-ME+2.5.alpha62-1.mdk7.2.i686.rpm
    Package elm-tls binary RPM build on Linux Mandrake release 7.2
    - http://www.elmme-mailer.org/rpm/elm-tls-ME+2.5.alpha62-1.mdk7.2.i686.rpm.sig

    Source and binary packages are signed internally with GPG key
    elm.key.2018.asc (44FC796B 2018-12-01).

    This is is compiled agaist Sendmail 8.13 (not from Mandrake
    distribution).

    elm-tls package do not load/work on Mandrake 7.2.

    * Signatures

    {file}.sig PGP signature (old key pubkey.asc, EA5A2379 1996-04-23)
    {file}.elm-key-2018.sig GPG signature (key elm.key.2018.asc, 44FC796B 2018-12-01, expires: 2028-11-28)

    * Configuration

    Following files (if exists) are rewritten by elmconfwriter on
    installation:

    - /usr/local/lib/elm.rc
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.hashmarks

    Spec file compiles elm for binary distribution, so you must edit /usr/local/lib/elm.rc before using Elm ME+ 2.5. Following variables may
    need to be modified on elm.rc:

    - mailer
    - hostdomain (this is usually needed)
    - hostfullname
    - hostname (usually this is not needed)
    - mailname (default values is generated from other values)
    name-resolution (controls default values of hostdomain,
    hostfullname, hostname, mailname)


    For re-generation of following file, old information (if exists) is
    used:

    - /usr/local/lib/elm.rc

    WARNING: Check after installation that libraries are enabled. Global
    elm.rc values are:

    use-library =
    use-base-library = iconv
    use-config-library = resolv
    use-connect-library = tls resolv
    use-mailer-library = smtp resolv

    Note that libelmme-resolv.so does not compile on all distributions. In
    that case omit resolv from elm.rc.

    After editing global elm.rc run /usr/local/lib/elmrc-write -GI for
    fixing possible errors.

    On installation following existing files are merged with new values:

    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.hashmarks

    Old values from /usr/local/lib/aliases.text are converted to /usr/local/lib/elm.aliases and /usr/local/lib/aliases.text is renamed to /usr/local/lib/aliases.text.OLD.

    On installation new values without merging are written to following
    files:

    - /usr/local/lib/elm.aliases.NEW
    - /usr/local/lib/elm.mailinglists.NEW
    - /usr/local/lib/elm.mailservices.NEW
    - /usr/local/lib/elm.mimecharsets.NEW
    - /usr/local/lib/elm.mimetypes.NEW
    - /usr/local/lib/elm.terminalinfo.NEW
    - /usr/local/lib/elm.iso2022sets.NEW
    - /usr/local/lib/elm.hashmarks.NEW

    Package elm-mod includes libelmme-iconv.so and libelmme-smtp.so. (If
    package elm-mod includes libelmme-resolv.so, this is noted). And package elm-tls includes libelmme-tls.so.

    Installation loses mailer = submission setting from global /usr/local/lib/elm.rc, because when elm package rewrites elm.rc,
    submission mailer is not available. It becomes from elm-mod package.

    However failed values of /usr/local/lib/elm.rc are saved to /usr/local/lib/elm.rc.old-values file during installation.

    Global setting mailer = submission is restored from /usr/local/lib/elm.rc.old-values file, when package elm-mod is
    installed.

    Also following directories are used:

    - /usr/local/lib/elm.map.txt/ (global setting map-text-dir =
    {lib}/elm.map.txt)
    - /usr/local/lib/elm.map.bin/ (global setting map-bin-dir =
    {lib}/elm.map.bin)
    - /usr/local/lib/elm.user.map/ (global setting user-map-dir =
    {lib}/elm.user.map)

    Hashmark EXAMPLE uses file /usr/local/lib/elm.user.map/elm.usermap.

    SUMMARY: This release fixes few crashes.


    Changes on Elm ME+ 2.5 PLalpha62 compared with Elm ME+ 2.5 PLalpha61 --------------------------------------------------------------------

    SUMMARY: This release fixes few crashes.

    - Fixed crash on reconnect when same time is open
    imap mailbox and local folder.
    MBX PANIC in .../lib/mbox/localmbx.c:5738:mbx_prepare_read_non_spool
    >>>mode == PREPARE_RECONNECT
    Call stack: 7FA4D22B5DC9 7FA4D2C856D7 7FA4D2C64DAD 5555938012D8 5555937FE4C9
    continues: 555593813D57 5555937D5BEF 5555937D7262 5555937A2E17 7FA4D1A0BC87
    continues: 55559374FB4A
    backtrace:
    /usr/local/lib64/libelmme-base.so.1.1.61(panic+0x1de)[0x7fa4d22b5dc9]
    /usr/local/lib64/libelmme-mbox.so.1.1.61(+0x3a6d7)[0x7fa4d2c856d7]
    /usr/local/lib64/libelmme-mbox.so.1.1.61(prepare_read_folder+0x687)[0x7fa4d2c64dad]
    elm(+0xd82d8)[0x5555938012d8]
    elm(newmbox_1+0x5e7)[0x5555937fe4c9]
    elm(resync+0x4d2)[0x555593813d57]
    elm(+0xacbef)[0x5555937d5bef]
    elm(main_messages_menu+0x17d)[0x5555937d7262]
    elm(main+0xf48)[0x5555937a2e17]
    /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xe7)[0x7fa4d1a0bc87]
    elm(_start+0x2a)[0x55559374fb4a]
    Press a <enter> to abort or <enter> to exit:

    - Fixed crash on reconnect when same time is open
    imap mailbox and local mailbox.
    MBX PANIC in .../lib/mbox/localmbx.c:5808:mbx_prepare_read_spool
    >>>mode == PREPARE_RECONNECT
    Call stack: 7FAC4D996DC9 7FAC4E364B83 7FAC4E343DAD 55A9DCC072B8 55A9DCC044A9
    continues: 55A9DCC19D37 55A9DCBDBBCF 55A9DCBDD242 55A9DCBA8DF7 7FAC4D0ECC87
    continues: 55A9DCB55B2A
    backtrace:
    /tmp/TEST/lib64/libelmme-base.so.1.1.61+(panic+0x1de)[0x7fac4d996dc9]
    /tmp/TEST/lib64/libelmme-mbox.so.1.1.61+(+0x3ab83)[0x7fac4e364b83]
    /tmp/TEST/lib64/libelmme-mbox.so.1.1.61+(prepare_read_folder+0x687)[0x7fac4e343dad]
    /tmp/TEST/bin/elm(+0xd82b8)[0x55a9dcc072b8]
    /tmp/TEST/bin/elm(newmbox_1+0x5e7)[0x55a9dcc044a9]
    /tmp/TEST/bin/elm(resync+0x4d2)[0x55a9dcc19d37]
    /tmp/TEST/bin/elm(+0xacbcf)[0x55a9dcbdbbcf]
    /tmp/TEST/bin/elm(main_messages_menu+0x17d)[0x55a9dcbdd242]
    /tmp/TEST/bin/elm(main+0xf48)[0x55a9dcba8df7]
    /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xe7)[0x7fac4d0ecc87]
    /tmp/TEST/bin/elm(_start+0x2a)[0x55a9dcb55b2a]
    Press <enter> to abort:

    - Fixed debug output on file_bytes() at lib/file_util.c

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Kari Hurtta@21:1/5 to All on Tue Nov 28 19:08:10 2023
    Experimental DEB generator script for Elm ME+ 2.5 PLalpha62 exists on
    <URL: http://www.elmme-mailer.org/deb/elm-ME+2.5.html > directory.

    Files are following

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha62-1.gen_deb
    DEB generator script
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha62-1.gen_deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha62-1.gen_deb.sig

    A command

    elm-ME+2.5.alpha62-1.gen_deb {packager}

    generates package elmme with version 1.1.62-1.{distribution}.

    A command

    elm-ME+2.5.alpha62-1.gen_deb --old {packager}

    generates package elm with version ME+2.5.alpha62-1.{distribution}.

    Both commands produce package with filename elm-ME+2.5.alpha62-1.{distribution}.{arch}.deb.

    == Old package names, i386

    Package elm with version ME+2.5.alpha62-1.{distribution} and
    architecture i386.

    * Compiled on Ubuntu 6.06.2 LTS
    (Linux 2.6, glibc 2.3, Sendmail 8.13)

    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha62-1.Ubuntu6.06.i386.deb
    Package elm binary DEB build on Ubuntu 6.06.2 LTS
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha62-1.Ubuntu6.06.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha62-1.Ubuntu6.06.i386.deb.sig

    * Compiled on Ubuntu 10.04.4 LTS
    (Linux 2.6, glibc 2.11, Sendmail 8.14)

    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha62-1.Ubuntu10.04.i386.deb
    Package elm binary DEB build on Ubuntu 10.04.4 LTS
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha62-1.Ubuntu10.04.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha62-1.Ubuntu10.04.i386.deb.sig

    == New package names, i386

    Package elmme with version 1.1.62-1.{distribution} and architecture
    i386.

    * Compiled on Ubuntu 10.04.4 LTS
    (Linux 2.6, glibc 2.11, Sendmail 8.14)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha62-1.Ubuntu10.04.i386.deb
    Package elmme binary DEB build on Ubuntu 10.04.4 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha62-1.Ubuntu10.04.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha62-1.Ubuntu10.04.i386.deb.sig

    * Compiled on Ubuntu 14.04.6 LTS
    (Linux 4.4, glibc 2.19, no MTA)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha62-1.Ubuntu14.04.i386.deb
    Package elmme binary DEB build on Ubuntu 14.04.6 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha62-1.Ubuntu14.04.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha62-1.Ubuntu14.04.i386.deb.sig

    == New package names, amd64 (x86_64)

    Package elmme with version 1.1.62-1.{distribution} and architecture
    amd64 (also known as x86_64).

    * Compiled on Ubuntu 18.04.6 LTS
    (Linux 5.4, glibc 2.27, Sendmail 8.15)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha62-1.Ubuntu18.04.amd64.deb
    Package elmme binary DEB build on Ubuntu 18.04.6 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha62-1.Ubuntu18.04.amd64.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha62-1.Ubuntu18.04.amd64.deb.sig

    * Compiled on Ubuntu 20.04.6 LTS
    (Linux 5.4, glibc 2.31, Postfix 3.4 (not configured))

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha62-1.Ubuntu20.04.amd64.deb
    Package elmme binary DEB build on Ubuntu 20.04.6 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha62-1.Ubuntu20.04.amd64.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha62-1.Ubuntu20.04.amd64.deb.sig

    == Signatures

    {file}.sig PGP signature (old key pubkey.asc, EA5A2379 1996-04-23)
    {file}.elm-key-2018.sig GPG signature (key elm.key.2018.asc, 44FC796B 2018-12-01, expires: 2028-11-28)

    == Configuration

    Following files (if exists) are rewritten by elmconfwriter on
    installation:

    - /usr/local/lib/elm.rc
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.hashmarks

    Deb generator script compiles elm for binary distribution, so you must
    edit /usr/local/lib/elm.rc before using Elm ME+ 2.5. Following variables
    may need to be modified on elm.rc:

    - mailer
    - hostdomain (this is usually needed)
    - hostfullname
    - hostname (usually this is not needed)
    - mailname (default values is generated from other values)
    - name-resolution (controls default values of hostdomain, hostfullname, hostname, mailname)

    By default first value for mailname is read from /etc/mailname file.

    For re-generation of following file, old information (if exists) is
    used:

    - /usr/local/lib/elm.rc

    WARNING: Check after installation that libraries are enabled. Global
    elm.rc values are:

    use-library =
    use-base-library = iconv
    use-config-library = resolv
    use-connect-library = tls resolv
    use-mailer-library = smtp resolv

    After editing global elm.rc run /usr/local/lib/elmrc-write -GI for fixing possible errors.

    On installation following existing files are merged with new values:

    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.hashmarks

    Old values from /usr/local/lib/aliases.text are converted to /usr/local/lib/elm.aliases and /usr/local/lib/aliases.text is renamed to /usr/local/lib/aliases.text.OLD.

    On installation new values without merging are written to following
    files:

    - /usr/local/lib/elm.aliases.NEW
    - /usr/local/lib/elm.mailinglists.NEW
    - /usr/local/lib/elm.mailservices.NEW
    - /usr/local/lib/elm.mimecharsets.NEW
    - /usr/local/lib/elm.mimetypes.NEW
    - /usr/local/lib/elm.terminalinfo.NEW
    - /usr/local/lib/elm.iso2022sets.NEW
    - /usr/local/lib/elm.hashmarks.NEW

    Also following directories are used:

    - /usr/local/lib/elm.map.txt/ (global setting map-text-dir = {lib}/elm.map.txt)
    - /usr/local/lib/elm.map.bin/ (global setting map-bin-dir = {lib}/elm.map.bin)
    - /usr/local/lib/elm.user.map/ (global setting user-map-dir = {lib}/elm.user.map)

    Hashmark EXAMPLE uses file /usr/local/lib/elm.user.map/elm.usermap.

    SUMMARY: This release fixes few crashes.

    Changes on Elm ME+ 2.5 PLalpha62 compared with Elm ME+ 2.5 PLalpha61 --------------------------------------------------------------------

    SUMMARY: This release fixes few crashes.

    - Fixed crash on reconnect when same time is open
    imap mailbox and local folder.
    MBX PANIC in .../lib/mbox/localmbx.c:5738:mbx_prepare_read_non_spool
    >>>mode == PREPARE_RECONNECT
    Call stack: 7FA4D22B5DC9 7FA4D2C856D7 7FA4D2C64DAD 5555938012D8 5555937FE4C9
    continues: 555593813D57 5555937D5BEF 5555937D7262 5555937A2E17 7FA4D1A0BC87
    continues: 55559374FB4A
    backtrace:
    /usr/local/lib64/libelmme-base.so.1.1.61(panic+0x1de)[0x7fa4d22b5dc9]
    /usr/local/lib64/libelmme-mbox.so.1.1.61(+0x3a6d7)[0x7fa4d2c856d7]
    /usr/local/lib64/libelmme-mbox.so.1.1.61(prepare_read_folder+0x687)[0x7fa4d2c64dad]
    elm(+0xd82d8)[0x5555938012d8]
    elm(newmbox_1+0x5e7)[0x5555937fe4c9]
    elm(resync+0x4d2)[0x555593813d57]
    elm(+0xacbef)[0x5555937d5bef]
    elm(main_messages_menu+0x17d)[0x5555937d7262]
    elm(main+0xf48)[0x5555937a2e17]
    /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xe7)[0x7fa4d1a0bc87]
    elm(_start+0x2a)[0x55559374fb4a]
    Press a <enter> to abort or <enter> to exit:

    - Fixed crash on reconnect when same time is open
    imap mailbox and local mailbox.
    MBX PANIC in .../lib/mbox/localmbx.c:5808:mbx_prepare_read_spool
    >>>mode == PREPARE_RECONNECT
    Call stack: 7FAC4D996DC9 7FAC4E364B83 7FAC4E343DAD 55A9DCC072B8 55A9DCC044A9
    continues: 55A9DCC19D37 55A9DCBDBBCF 55A9DCBDD242 55A9DCBA8DF7 7FAC4D0ECC87
    continues: 55A9DCB55B2A
    backtrace:
    /tmp/TEST/lib64/libelmme-base.so.1.1.61+(panic+0x1de)[0x7fac4d996dc9]
    /tmp/TEST/lib64/libelmme-mbox.so.1.1.61+(+0x3ab83)[0x7fac4e364b83]
    /tmp/TEST/lib64/libelmme-mbox.so.1.1.61+(prepare_read_folder+0x687)[0x7fac4e343dad]
    /tmp/TEST/bin/elm(+0xd82b8)[0x55a9dcc072b8]
    /tmp/TEST/bin/elm(newmbox_1+0x5e7)[0x55a9dcc044a9]
    /tmp/TEST/bin/elm(resync+0x4d2)[0x55a9dcc19d37]
    /tmp/TEST/bin/elm(+0xacbcf)[0x55a9dcbdbbcf]
    /tmp/TEST/bin/elm(main_messages_menu+0x17d)[0x55a9dcbdd242]
    /tmp/TEST/bin/elm(main+0xf48)[0x55a9dcba8df7]
    /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xe7)[0x7fac4d0ecc87]
    /tmp/TEST/bin/elm(_start+0x2a)[0x55a9dcb55b2a]
    Press <enter> to abort:

    - Fixed debug output on file_bytes() at lib/file_util.c



    --
    / Kari Hurtta

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Kari Hurtta@21:1/5 to All on Wed Jan 3 13:49:52 2024
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha63.0

    Before applying this patch catenate parts 1 - 7 first.
    Also it should be possible to apply parts 1 - 7
    individually.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha62

    ====================================== ( part 0/7 ) =========
    Elm ME+ 2.5 PLalpha63

    - Is available with
    <URL: http://www.elmme-mailer.org/elm-ME+2.5/src/elm-ME+2.5.alpha63.41a68fda8c51e1b32e5760f7ee5eff1e.tar.gz >
    and <URL: http://www.elmme-mailer.org/elm-ME+2.5/src/elm-ME+2.5.PLalpha63.patch.gz >
    via http.
    Signatures are
    <URL: http://www.elmme-mailer.org/elm-ME+2.5/src/elm-ME+2.5.alpha63.41a68fda8c51e1b32e5760f7ee5eff1e.tar.gz.elm-key-2018.sig >
    <URL: http://www.elmme-mailer.org/elm-ME+2.5/src/elm-ME+2.5.alpha63.41a68fda8c51e1b32e5760f7ee5eff1e.tar.gz.sig >
    and <URL: http://www.elmme-mailer.org/elm-ME+2.5/src/elm-ME+2.5.PLalpha63.patch.gz.elm-key-2018.sig >
    <URL: http://www.elmme-mailer.org/elm-ME+2.5/src/elm-ME+2.5.PLalpha63.patch.gz.sig >

    - Is available with
    <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.alpha63.41a68fda8c51e1b32e5760f7ee5eff1e.tar.gz >
    and <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.PLalpha63.patch.gz >
    via https.
    Signatures are
    <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.alpha63.41a68fda8c51e1b32e5760f7ee5eff1e.tar.gz.elm-key-2018.sig >
    <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.alpha63.41a68fda8c51e1b32e5760f7ee5eff1e.tar.gz.sig >
    and <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.PLalpha63.patch.gz.elm-key-2018.sig >
    <URL: https://hurtta.kapsi.fi/elm-ME+2.5/elm-ME+2.5.PLalpha63.patch.gz.sig >

    - Is available on ftp.funet.fi
    directory pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/
    files elm-ME+2.5.alpha63.41a68fda8c51e1b32e5760f7ee5eff1e.tar.gz
    and elm-ME+2.5.PLalpha63.patch.gz
    via anonumous ftp.
    Signatures are
    elm-ME+2.5.alpha63.41a68fda8c51e1b32e5760f7ee5eff1e.tar.gz.elm-key-2018.sig
    elm-ME+2.5.alpha63.41a68fda8c51e1b32e5760f7ee5eff1e.tar.gz.sig
    and elm-ME+2.5.PLalpha63.patch.gz.elm-key-2018.sig
    elm-ME+2.5.PLalpha63.patch.gz.sig

    Or is available with
    <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.alpha63.41a68fda8c51e1b32e5760f7ee5eff1e.tar.gz >
    and <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha63.patch.gz >
    with browser.
    Signatures are
    <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.alpha63.41a68fda8c51e1b32e5760f7ee5eff1e.tar.gz.elm-key-2018.sig >
    <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.alpha63.41a68fda8c51e1b32e5760f7ee5eff1e.tar.gz.sig >
    and <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha63.patch.gz.elm-key-2018.sig >
    <URL: ftp://ftp.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha63.patch.gz.sig >

    Or is available with
    <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.alpha63.41a68fda8c51e1b32e5760f7ee5eff1e.tar.gz >
    and <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha63.patch.gz >
    via https.
    Signatures are
    <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.alpha63.41a68fda8c51e1b32e5760f7ee5eff1e.tar.gz.elm-key-2018.sig >
    <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.alpha63.41a68fda8c51e1b32e5760f7ee5eff1e.tar.gz.sig >
    and <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha63.patch.gz.elm-key-2018.sig >
    <URL: https://nic.funet.fi/pub/mirrors/elmme-mailer.org/src/elm-ME+2.5/elm-ME+2.5.PLalpha63.patch.gz.sig >

    Signatures are with following keys

    {file}.sig PGP signature (old key pubkey.asc, EA5A2379 1996-04-23)
    {file}.elm-key-2018.sig GPG signature (key elm.key.2018.asc, 44FC796B 2018-12-01, expires: 2028-11-28)

    SUMMARY: This release includes tagfilter module for
    filtering text/enriched and text/html
    tags. This release adds "editor-tfent-propline"
    and "page-tagfilter" elmrc options and
    new tool "elmtagfilterents". This release
    adds global "elm.tagfilter.entities" and
    user "~/.elm/tagfilter.entities" configuration
    files. Also some bug fixes and other changes are
    included.

    Changes on Elm ME+ 2.5 PLalpha63 compared with Elm ME+ 2.5 PLalpha62 --------------------------------------------------------------------

    SUMMARY: This release includes tagfilter module for
    filtering text/enriched and text/html
    tags. This release adds "editor-tfent-propline"
    and "page-tagfilter" elmrc options and
    new tool "elmtagfilterents". This release
    adds global "elm.tagfilter.entities" and
    user "~/.elm/tagfilter.entities" configuration
    files. Also some bug fixes and other changes are
    included.

    - Changed prototype of string_matches_ascii() -
    Added op parameter:
    SMA_op_normal,
    SMA_op_match_prefix,
    SMA_op_find_ascii,
    SMA_op_return_order
    SMA_return_len can not used with SMA_op_return_order

    - Added tagfilter module for <tag> filtering.

    - Tagfilter supports following text/enriched tags
    when builtin++ pager is used:
    <bold>
    <underline>
    <italic>
    <center> (detected, does nor work correctly (*))
    <nofill>
    Other tags are just filtered.
    - Rewrapping and joining of multiple lines to one line
    for displaying not supported when replying or forwarding
    mail or when viewing with external pager. This is similar
    than how content type text/plain; format=flowed
    is handled.
    - If builtin pager is not used (or when replying or
    forwarding mail) shows message

    [ text/enriched is unsupported, filtering tags. ]

    (*) Centering does not work when displayed line
    cover several tags or several lines on
    original message (before newline is
    converted to space or multiple
    lines are joined to one line for
    displaying).

    - Added pg_ITALIC flag (termcap codes ZH and ZR).
    - Added pg_DIM flag (termcap code mh).
    - Added pg_SUBSCRIPT flag (termcap codes ZN and ZV).
    - Added pg_SUPERSCRIPT flag (termcap codes ZO and ZW).
    - Added pg_STRIKETHROUGH (no termcap code)

    - Changed PR_CENTER_THIS handling on span_helper()

    - Tagfilter supports following text/html tags
    when builtin++ pager is used:
    <html>
    <head>
    <body>
    <noscript>
    <b>
    <br>
    <em>
    <hr>
    <i>
    <p>
    <pre>
    <q>
    <s> (!!)
    <strong>
    <sub> (XX)
    <sub> (XX)
    <u>
    - Tagfilter uses display attributes for following
    text/html tags (but reports them unsupported)
    when builtin++ pager is used:
    <cite>
    <del>
    <h1>
    <h2>
    <h3>
    <h4>
    <h5>
    <h6>
    <var>
    - Other text/html tags are just used for define
    what are recognized tags but otherwise just
    filtered.
    - Tagfilter recognizes different text/html tags depending
    on inside on what tags they occurs.

    (!!) Only when "ANSI-SGR strikethrough" is
    given on global elm.terminalinfo or
    on user ~/.elm/terminal.info.
    (XX) Incompletely - no terminals support this
    - If builtin pager is not used (or when replying or
    forwarding mail) shows message

    [ text/html is unsupported, filtering tags. ]

    - Added elmrc option "page-tagfilter". If set,
    media types given as keywords are displayed with "pager",
    otherwise these are considered to need metamail
    (or mailcap programs).
    Option includes list of keywords:
    none None of values are selected
    text/enriched text/enriched type does not require
    external programs or metamail
    text/html text/html type does not require
    external programs or metamail
    This does not take account possible unsupported
    tags or that builtin++ pager is not used as "pager".

    - Added global elm.tagfilter.entities and
    user .elm/tagfilter.entities. These files
    defines text/html named character references
    recognized by tagfilter.

    See also "Tagfilter entities listing"

    - Builtin text/html named character references
    recognized by tagfilter are

    &amp; unicode 0x0026 & -character
    &nbsp; unicode 0x00A0 NO-BREAK SPACE
    &quot; unicode 0x0022 " -character
    &lt; unicode 0x003C < -character
    &gt; unicode 0x003E > -character

    - Added elmtagfilterents -command.

    - Added "editor-tfent-propline" elmrc option.
    This is similar than "editor-elmrc-propline".
    If set to "emacs", then when on user's
    tagfilter.entities file, line
    # -*- coding: ... -*-
    is added to top of file. That line is also written
    if "editor-tfent-propline" elmrc option is
    set to "auto" (default) and line detected
    when file is read.
    If set to "ignore", then editor property line
    # -*- coding: ... -*-
    on top of file is ignored.

    - Global global elm.terminalinfo and
    user ~/.elm/terminal.info can now include
    ANSI-SGR which tell elm to use ANSI SGR
    attributes for bold, dim, italic, underline,
    blinking, reverse, strikethrough, superscript
    and subscript. If termcap specifies also
    attribute, elm may invoke it twice. Do
    not use ANSI-SGR if termcap already specifies it.
    This is mainly for strikethrough, which is
    not supported by termcap. For more information
    see chapter "Additional terminal information".

    - Added struct out_entity routines with lib/out_entity.c
    - Added state_putentity() to lib/elmlib.h and
    lib/state_out.c
    - Added string_type_have_unicode() to hdrs/elmlib.h
    and lib/string.c
    - Added state_add_opcode_pager_range() to hdrs/elmlib.h and
    lib/state_out.c
    - Added state_pager_add_param_text() to hdrs/elmlib.h and
    lib/state_out.c
    - Added struct pager_param_value routines with
    lib/pager_range.c
    - Added stringbuffer_add_entity() and
    stringbuffer_add_pager_param() to hdrs/elmlib.h and
    lib/stringbuffer.c

    - Added new_out_entity(), free_out_entity(),
    inc_out_entity_refcount(), out_entity_reference_key(),
    out_entity_text_value(), out_entity_unicode_value(),
    and dup_out_entity()
    to hdrs/elmlib.h and lib/out_entity.c

    - Added missing fclose(f) to parse_hash_mark_entries()
    - Change on dump_aliases_map()

    - Changed exit status handling on elmregister.

    - Possible fix for state_putunicode() on lib/state_out.c

    - Moved inc_pager_range_refcount() from hdrs/pg_range_imp.h
    to hdrs/elmlib.h
    - Potential fix for string_sort_cmp()
    - Fixed crash when inherited page_range was used
    PAGER RANGE PANIC in .../lib/pager_range.c:562:get_pager_range_serialization_from_file
    >>>Bad data read from file

    - Added new_string_alt_text(), new_string_alt_entity(),
    get_string_alt_value(), inc_string_alt_refcount() and
    free_string_alt() to hdrs/elmlib.h and lib/string_alt.c

    - Added get_lineext_alt_and_walk()to hdrs/elmlib.h and
    lib/pager_lineext.c
    - Added curses_available_string()
    to hdrs/me.h and src/screen/curses.c
    - Added get_pager_param_from_stringbuffer() to
    hdrs/me.h and lib/stringbuffer.c

    - Some fixed for error handling of load_terminal_map()
    - Added ANSI_sgr_values[] to hdrs/msiclib.h
    and lib/misc/terminal.c
    - Added pg_set_or_disable_flags() to hdrs/msiclib.h
    and lib/misc/terminal.c

    - Changed get_pager_range_change()
    - Changed malloc_simple_pager_range()

    - Fix for put_pager_range_serialization_to_file()
    - Fix for stringbuffer_add_pager_range()
    - Fix for state_convert_EOLN()
    - Fix for get_decoded_attachment()

    - Added curses_check_terminal()
    to hdrs/me.h and src/screen/curses.c

    New tool:
    elmtagfilterents

    New files:
    melib/tagfilter.c
    melib/tagfilter_decode.c
    hdrs/tagfilter_imp.h
    melib/tagfilter_entity.c
    melib/init.c
    doc/elmtagfilent-info
    utils/elmtagfilterents.c
    doc/tagfilter.entities
    ConfTool/GenEntities
    hdrs/convert_status.h
    lib/convert_status.c
    doc/elmtagfilterents.1
    melib/tagfilter_tag.c
    lib/out_entity.c
    melib/tagfilter_enriched.c
    hdrs/elmme-magic.h
    melib/tagfilter_html.c
    hdrs/pg_params_imp.h
    lib/string_alt.c

    New elmrc option:
    editor-tfent-propline
    page-tagfilter

    diffstat:

    ConfTool/GenEntities | 9
    Configure | 27
    MANIFEST | 19
    Makefile-1.SH | 17
    Makefile.SH | 15
    README.ME+ | 635 ++!!
    doc/Makefile.SH | 28
    doc/elm.1 | 2
    doc/elmalias.1 | 2
    doc/elmaliases-write.1 | 2
    doc/elmbindata.1 | 2
    doc/elmcharset.1 | 2
    doc/elmconfwriter.1 | 2
    doc/elmhashmarks.1 | 2
    doc/elmiso2022sets.1 | 2
    doc/elmlibregister.1 | 2
    doc/elmmailinglists.1 | 2
    doc/elmmailservices.1 | 2
    doc/elmmimetypes.1 | 2
    doc/elmrc-info | 47
    doc/elmrc-write.1 | 2
    doc/elmrc.samp | 47
    doc/elmregister.1 | 2
    doc/elmstringconvert.1 | 2
    doc/elmtagfilent-info | 9
    doc/elmtagfilterents.1 | 83
    doc/elmterminal.1 | 2
    doc/elmterminalinfo-info | 16
    doc/elmunidata.1 | 2
    doc/fastmail.1 | 2
    doc/frm.1 | 2
    doc/newalias.1 | 2
    doc/newmail.1 | 2
    doc/readmsg.1 | 2
    doc/tagfilter.entities | 111
    doc/terminal.info | 8
    hdrs/convert_status.h | 21
    hdrs/cs_imp.h | 10
    hdrs/elm_defs.h | 62
    hdrs/elmlib.h | 321 +
    hdrs/elmme-magic.h | 4
    hdrs/me.h | 14
    hdrs/melib.h | 136
    hdrs/misclib.h | 93
    hdrs/pager.h | 48
    hdrs/patchlevel.h | 10
    hdrs/pg_lineext_imp.h | 11
    hdrs/pg_params_imp.h | 59
    hdrs/pg_range_imp.h | 24
    hdrs/readmsg.h | 4
    hdrs/s_me.h | 33
    hdrs/save_opts.h | 42
    hdrs/sb_imp.h | 30
    hdrs/state_imp.h | 43
    hdrs/sysdefs.SH | 12
    hdrs/tagfilter_imp.h | 613 ++++
    lib/MAGIC | 21
    lib/Makefile.SH | 26
    lib/alias/aliases.c | 476 !!!
    lib/convert_status.c | 59
    lib/cs_binary.c | 117
    lib/cs_iso2022.c | 45
    lib/cs_unknown.c | 68
    lib/cs_utf.c | 38
    lib/debug.c | 48
    lib/mbox/hashmark.c | 14
    lib/mbox/init.c | 11
    lib/mbox/savefolder.c | 6
    lib/mbox/state.c | 37
    lib/misc/terminal.c | 735 ++!!!
    lib/out_entity.c | 146 +
    lib/pager_lineext.c | 143
    lib/pager_range.c | 570 +++
    lib/pgrng_bfr_binding.c | 194 +
    lib/posixsig.c | 39
    lib/rc_handle.c | 16
    lib/read_rc.c | 42
    lib/sb_file.c | 1069 ++++!!
    lib/sb_mem.c | 559 +++
    lib/service_list.c | 6
    lib/state_out.c | 393 ++
    lib/state_out_buffer.c | 62
    lib/string.c | 399 !!
    lib/string_alt.c | 196 +
    lib/string_sort.c | 6
    lib/stringbuffer.c | 219 +
    lib/unicode.c | 13
    melib/Makefile.SH | 37
    melib/def_melib.h | 5
    melib/flowed.c | 51
    melib/init.c | 238 +
    melib/mime_decode.c | 383 +!
    melib/tagfilter.c | 5201 ++++++++++++++++++++++++++++++++++++++++
    melib/tagfilter_decode.c | 234 +
    melib/tagfilter_enriched.c | 131 +
    melib/tagfilter_entity.c | 3378 +++++++++++++++++++++++++
    melib/tagfilter_html.c | 3109 +++++++++++++++++++++++
    melib/tagfilter_tag.c | 4031 +++++++++++++++++++++++++++++++
    nls/C/C/C/s_me.m | 69
    shared_libs/iconv/iconv.c | 33
    src/addr_prompt.c | 6
    src/args.c | 11
    src/attach_menu.c | 15
    src/browser_help.c | 33
    src/builtin++.c | 162 !
    src/init.c | 9
    src/limit.c | 12
    src/menu_common/alias_limit.c | 16
    src/menu_common/message_limit.c | 18
    src/metapager.c | 8
    src/opt_generic.c | 6
    src/pager/helper.c | 264
    src/pager/span_range.c | 582 ++!
    src/pattern.c | 10
    src/quotadisp.c | 9
    src/save_opts.c | 6
    src/screen/curses.c | 372 ++
    src/screen/screen.c | 23
    utils/Makefile.SH | 74
    utils/elmconfwriter.c | 75
    utils/elmmailinglists.c | 6
    utils/elmregister.c | 90
    utils/elmtagfilterents.c | 383 ++
    utils/elmterminal.c | 166 !
    utils/readmsg/readmsg.c | 5
    125 files changed, 23120 insertions(+), 184 deletions(-), 4435 modifications(!)

    --
    / Kari Hurtta

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Kari Hurtta@21:1/5 to All on Wed Jan 3 13:50:31 2024
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha63.1

    Before applying this patch catenate parts 1 - 7 first.
    Also it should be possible to apply parts 1 - 7
    individually.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha62

    ====================================== ( part 1/7 ) =========
    For applying thich patch use (on directory where Configure is)

    patch -p1 < {this-file}

    ------------------------------------------------------------------------
    Index: elmME+.2.5.alpha63-cvs/hdrs/patchlevel.h
    Prereq: 1730000000
    *** elmME+.2.5.alpha62/hdrs/patchlevel.h Sat Nov 25 10:59:28 2023
    --- elmME+.2.5.alpha63-cvs/hdrs/patchlevel.h Mon Jan 1 19:00:40 2024 ***************
    *** 1,12 ****
    ! #define PATCHLEVEL "alpha62"
    /* Used by Configure:
    ! SHAREDTAG: .1.1.62
    */
    ! #define LAST_REPORT_TIME 1730000000
    #define BUG_REPORT_ADDR "Kari Hurtta <elm@elmme-mailer.org>"
    ! #define VERS_DATE "Nov 2023" /* for elm -v option */
    #define WHAT_STRING \
    ! "@(#) Version ME+ 2.5, released Nov 2023"

    /*
    * Local Variables:
    --- 1,12 ----
    ! #define PATCHLEVEL "alpha63"
    /* Used by Configure:
    ! SHAREDTAG: .1.1.63
    */
    ! #define LAST_REPORT_TIME 1735000000
    #define BUG_REPORT_ADDR "Kari Hurtta <elm@elmme-mailer.org>"
    ! #define VERS_DATE "Jan 2024" /* for elm -v option */
    #define WHAT_STRING \
    ! "@(#) Version ME+ 2.5, released Jan 2024"

    /*
    * Local Variables:
    Index: elmME+.2.5.alpha63-cvs/README.ME+
    *** elmME+.2.5.alpha62/README.ME+ Sat Nov 25 10:59:28 2023
    --- elmME+.2.5.alpha63-cvs/README.ME+ Mon Jan 1 21:05:58 2024 ***************
    *** 1,4
  • From Kari Hurtta@21:1/5 to All on Wed Jan 3 13:51:40 2024
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha63.3

    Before applying this patch catenate parts 1 - 7 first.
    Also it should be possible to apply parts 1 - 7
    individually.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha62

    ====================================== ( part 3/7 ) =========
    Index: elmME+.2.5.alpha63-cvs/lib/read_rc.c
    *** elmME+.2.5.alpha62/lib/read_rc.c Sun Dec 4 10:38:37 2022
    --- elmME+.2.5.alpha63-cvs/lib/read_rc.c Wed Dec 13 18:55:32 2023 ***************
    *** 1,7 ****
    ! static char rcsid[] = "@(#)$Id: read_rc.c,v 2.147 2022/11/19 06:50:54 hurtta Exp $";

    /******************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 2.147 $ $State: Exp $
    *
    * Modified by: Kari Hurtta <hurtta+elm@siilo.FMI.FI>
    * (was hurtta+elm@posti.FMI.FI, hurtta+elm@ozone.FMI.FI)
    --- 1,7 ----
    ! static char rcsid[] = "@(#)$Id: read_rc.c,v 2.148 2023/12/13 16:55:32 hurtta Exp $";

    /******************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 2.148 $ $State: Exp $
    *
    * Modified by: Kari Hurtta <hurtta+elm@siilo.FMI.FI>
    * (was hurtta+elm@posti.FMI.FI, hurtta+elm@ozone.FMI.FI)
    ***************
    *** 647,652 ****
    --- 647,653 ----
    char system_mime_charsets[SLEN] = SYSTEM_MIME_CHARSETS;

    char system_
  • From Kari Hurtta@21:1/5 to All on Wed Jan 3 13:51:04 2024
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha63.2

    Before applying this patch catenate parts 1 - 7 first.
    Also it should be possible to apply parts 1 - 7
    individually.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha62

    ====================================== ( part 2/7 ) =========
    Index: elmME+.2.5.alpha63-cvs/lib/MAGIC
    *** elmME+.2.5.alpha62/lib/MAGIC Sun Dec 4 10:38:37 2022
    --- elmME+.2.5.alpha63-cvs/lib/MAGIC Wed Dec 13 18:55:32 2023 ***************
    *** 35,41 ****
    #define SPAN_HELPER_DATA_magic 0xEB21
    #define PAGER_HELPER_DATA_magic 0xEB22
    #define ENTER_INFO_magic 0xEB23
    ! #define ADDRESS_EDIT_magic 0xEB23
    #define URL_magic 0xEC00
    #define URL_handler_magic 0xEC01
    #define URL_element_magic 0xEC02
    --- 35,44 ----
    #define SPAN_HELPER_DATA_magic 0xEB21
    #define PAGER_HELPER_DATA_magic 0xEB22
    #define ENTER_INFO_magic 0xEB23
    ! #define ADDRESS_EDIT_magic 0xEB24
    ! #define OUT_ENTITY_magic 0xEB25
    ! #define PAGER_PARAM_VALUE_magic 0xEB26
    ! #define STRING_ALT_magic 0xEB27
    #define URL_magic 0xEC00
    #define URL_handler_magic 0xEC01
    #define URL_element_magic 0xEC02
    ***************
    *** 241,245 ****
    --- 244,264 ----
    #define ATTACH_STRUCTURE_magic 0xFD07
    #define DISPLAY_VECTOR_magic 0xFD08
    #define MIME_PART_FSOURCE_magic 0xFD09
    + #define TAGFILTER_SELECTION_magic 0xFD0A
    + #define TAGFILTER_TOKEN_magic 0xFD0B
    +
  • From Kari Hurtta@21:1/5 to All on Wed Jan 3 13:52:11 2024
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha63.4

    Before applying this patch catenate parts 1 - 7 first.
    Also it should be possible to apply parts 1 - 7
    individually.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha62

    ====================================== ( part 4/7 ) =========
    Index: elmME+.2.5.alpha63-cvs/melib/Makefile.SH
    *** elmME+.2.5.alpha62/melib/Makefile.SH Fri Sep 2 20:38:19 2022
    --- elmME+.2.5.alpha63-cvs/melib/Makefile.SH Wed Dec 13 18:55:32 2023 ***************
    *** 32,38 ****
    cat >Makefile <<!GROK!THIS!
    #!$make
    #
    ! # $Id: Makefile.SH,v 2.13 2022/08/19 16:13:04 hurtta Exp $
    #
    # Makefile for the ELM (ME+) mail program.
    #
    --- 32,38 ----
    cat >Makefile <<!GROK!THIS!
    #!$make
    #
    ! # $Id: Makefile.SH,v 2.14 2023/12/13 16:55:32 hurtta Exp $
    #
    # Makefile for the ELM (ME+) mail program.
    #
    ***************
    *** 97,103 ****
    --- 97,105 ----

    # Lists
    LIB_SRC = decodeopts.c \
    + encode.c \
    flowed.c \
    + init.c \
    parse_util.c \
    parse_helper.c \
    pgp_decode.c \
    ***************
    *** 115,124 ****
    partial.c \
    state_decode.c \
    type_check.c \
    ! encode.c

    LIB_OBJ = decodeopts.o \
    flowed.o \
    parse_util.o \
    parse_helper.o \
    pgp_decode.o \
    --- 117,133 ----
    partial.c \
    state_decode.c \
    type_check.c \
    ! tagfilter.c \
    ! tagfilter_decode.c \
    !
  • From Kari Hurtta@21:1/5 to All on Wed Jan 3 13:53:51 2024
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha63.7

    Before applying this patch catenate parts 1 - 7 first.
    Also it should be possible to apply parts 1 - 7
    individually.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha62

    ====================================== ( part 7/7 ) =========
    Index: elmME+.2.5.alpha63-cvs/src/menu_common/message_limit.c
    *** elmME+.2.5.alpha62/src/menu_common/message_limit.c Wed Jun 16 20:17:54 2021
    --- elmME+.2.5.alpha63-cvs/src/menu_common/message_limit.c Wed Dec 13 18:55:32 2023
    ***************
    *** 1,7 ****
    ! static char rcsid[] = "@(#)$Id: message_limit.c,v 2.7 2021/05/24 16:26:44 hurtta Exp $";

    /******************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 2.7 $ $State: Exp $
    *
    * Author: Kari Hurtta <hurtta+elm@siilo.FMI.FI> (was hurtta+elm@posti.FMI.FI)
    * or Kari Hurtta <elm@elmme-mailer.org>
    --- 1,7 ----
    ! static char rcsid[] = "@(#)$Id: message_limit.c,v 2.8 2023/12/13 16:55:32 hurtta Exp $";

    /******************************************************************************
    ! * The Elm (ME+) Mail System - $Revision: 2.8 $ $State: Exp $
    *
    * Author: Kari Hurtta <hurtta+elm@siilo.FMI.FI> (was hurtta+elm@posti.FMI.FI)
    * or Kari Hurtta <elm@elmme-mailer.org>
    ***************
    *** 279,285 ****

    vector = safe_calloc(n, sizeof(vector[0]));

    ! if (string_matches_ascii(s
  • From Kari Hurtta@21:1/5 to All on Wed Jan 3 13:53:20 2024
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha63.6

    Before applying this patch catenate parts 1 - 7 first.
    Also it should be possible to apply parts 1 - 7
    individually.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha62

    ====================================== ( part 6/7 ) =========
    Index: elmME+.2.5.alpha63-cvs/melib/tagfilter_tag.c
    *** /tmp/2707-very-long-file-name/NULL-2707-comes-in-here--XXXXXXXXX Mon Jan 1 21:13:30 2024
    --- elmME+.2.5.alpha63-cvs/melib/tagfilter_tag.c Wed Dec 13 18:55:32 2023
    ***************
    *** 0 ****
    --- 1,4031 ----
    + static char rcsid[] = "@(#)$Id: tagfilter_tag.c,v 2.1 2023/12/13 16:55:32 hurtta Exp $";
    +
    + /******************************************************************
    + * The Elm (ME+) Mail System - $Revision: 2.1 $ $State: Exp $
    + *
    + * Author: Kari Hurtta <hurtta+elm@siilo.FMI.FI>
    + * or Kari Hurtta <elm@elmme-mailer.org>
    + ******************************************************************/
    +
    + #include "def_melib.h"
    + #include "tagfilter_imp.h"
    +
    + DEBUG_VAR(Debug,__FILE__,"mime");
    +
    + #if ANSI_C
    + #define E_(x) extern x;
    + #define S_(x) static x;
    + #else
    + #define E_(x)
    + #define S_(x)
    + #endif
    +
    + static unsigned char *s2us P_((char *str));
    + static unsigned char *s2us(str)
    + char *str;
    + {
    + return (unsigned char *)str;
    + }
    +
    + #include "elmme-magic.h"
    +
    + #define TAGFILTER_TAGS_magic 0xFD0D
    +
    + struct tagfilter_tags {
    + uns
  • From Kari Hurtta@21:1/5 to All on Wed Jan 3 13:52:43 2024
    XPost: alt.sources

    Archive-name: elmME+2.5/PLalpha63.5

    Before applying this patch catenate parts 1 - 7 first.
    Also it should be possible to apply parts 1 - 7
    individually.

    Part 0 does not include patch.

    This patch is agaist Elm ME+ 2.5 PLalpha62

    ====================================== ( part 5/7 ) =========
    Index: elmME+.2.5.alpha63-cvs/melib/tagfilter_decode.c
    *** /tmp/2707-very-long-file-name/NULL-2707-comes-in-here--XXXXXXXXX Mon Jan 1 21:13:30 2024
    --- elmME+.2.5.alpha63-cvs/melib/tagfilter_decode.c Wed Dec 13 18:55:32 2023
    ***************
    *** 0 ****
    --- 1,234 ----
    + static char rcsid[] = "@(#)$Id: tagfilter_decode.c,v 2.1 2023/12/13 16:55:32 hurtta Exp $";
    +
    + /******************************************************************************
    + * The Elm (ME+) Mail System - $Revision: 2.1 $ $State: Exp $
    + *
    + * Author: Kari Hurtta <hurtta+elm@siilo.FMI.FI>
    + * or Kari Hurtta <elm@elmme-mailer.org>
    + *****************************************************************************/
    +
    + #include "def_melib.h"
    + #include "s_me.h"
    + #include "tagfilter_imp.h"
    +
    + DEBUG_VAR(Debug,__FILE__,"mime");
    +
    + /* text/enriched ---------------------------------------------------------- */
    +
    + E_(CT_decoder text_enriched_decode)
    + void text_enriched_decode (ptr, state_in, state_out, decode_opt,defcharset,
    + mss, badtype, bodydefcharset)
    + mime_t *ptr;
    + struct in_state *state_in;
    + struct out_state *state_out;
  • From Kari Hurtta@21:1/5 to All on Thu Jan 4 14:22:20 2024
    Experimental RPM spec file for ELM ME+ 2.5 PLalpha63
    exists on <URL: http://www.elmme-mailer.org/rpm/elm-ME+2.5.html >
    directory.

    Files are following

    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha63.spec
    RPM spec file
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha63.spec.elm-key-2018.sig
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha63.spec.sig
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha63-1.mdk7.2.src.rpm
    Source rpm
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha63-1.mdk7.2.src.rpm.sig

    Only binary packages for old Mandrake release 7.2 are available (Linux
    2.2, glibc 2.1, Sendmail 8.13).

    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha63-1.mdk7.2.i686.rpm
    Package elm binary RPM build on Linux Mandrake release 7.2
    - http://www.elmme-mailer.org/rpm/elm-ME+2.5.alpha63-1.mdk7.2.i686.rpm.sig
    - http://www.elmme-mailer.org/rpm/elm-mod-ME+2.5.alpha63-1.mdk7.2.i686.rpm
    Package elm-mod binary RPM build on Linux Mandrake release 7.2
    - http://www.elmme-mailer.org/rpm/elm-mod-ME+2.5.alpha63-1.mdk7.2.i686.rpm.sig
    - http://www.elmme-mailer.org/rpm/elm-tls-ME+2.5.alpha63-1.mdk7.2.i686.rpm
    Package elm-tls binary RPM build on Linux Mandrake release 7.2
    - http://www.elmme-mailer.org/rpm/elm-tls-ME+2.5.alpha63-1.mdk7.2.i686.rpm.sig

    Source and binary packages are signed internally with GPG key
    elm.key.2018.asc (44FC796B 2018-12-01).

    This is is compiled agaist Sendmail 8.13 (not from Mandrake
    distribution).

    elm-tls package do not load/work on Mandrake 7.2.

    * Signatures

    {file}.sig PGP signature (old key pubkey.asc, EA5A2379 1996-04-23)
    {file}.elm-key-2018.sig GPG signature (key elm.key.2018.asc, 44FC796B 2018-12-01, expires: 2028-11-28)

    * Configuration

    Following files (if exists) are rewritten by elmconfwriter on
    installation:

    - /usr/local/lib/elm.rc
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.hashmarks
    - /usr/local/lib/elm.tagfilter.entities

    Spec file compiles elm for binary distribution, so you must edit /usr/local/lib/elm.rc before using Elm ME+ 2.5. Following variables
    may need to be modified on elm.rc:

    - mailer
    - hostdomain (this is usually needed)
    - hostfullname
    - hostname (usually this is not needed)
    - mailname (default values is generated from other values)
    - name-resolution (controls default values of hostdomain, hostfullname, hostname, mailname)

    For re-generation of following file, old information (if exists) is used:

    - /usr/local/lib/elm.rc

    WARNING: Check after installation that libraries are enabled. Global elm.rc values are:

    use-library =
    use-base-library = iconv
    use-config-library = resolv
    use-connect-library = tls resolv
    use-mailer-library = smtp resolv

    Note that libelmme-resolv.so does not compile on all distributions. In
    that case omit resolv from elm.rc.

    Note that libelmme-rls.so does not load on Linux Mandrake release
    7.2. In that case omit tls from elm.rc.

    After editing global elm.rc run /usr/local/lib/elmrc-write -GI for
    fixing possible errors.

    On installation following existing files are merged with new values:

    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.hashmarks
    - /usr/local/lib/elm.tagfilter.entities

    Old values from /usr/local/lib/aliases.text are converted to /usr/local/lib/elm.aliases and /usr/local/lib/aliases.text is renamed
    to /usr/local/lib/aliases.text.OLD.

    On installation new values without merging are written to following files:

    - /usr/local/lib/elm.aliases.NEW
    - /usr/local/lib/elm.mailinglists.NEW
    - /usr/local/lib/elm.mailservices.NEW
    - /usr/local/lib/elm.mimecharsets.NEW
    - /usr/local/lib/elm.mimetypes.NEW
    - /usr/local/lib/elm.terminalinfo.NEW
    - /usr/local/lib/elm.iso2022sets.NEW
    - /usr/local/lib/elm.hashmarks.NEW
    - /usr/local/lib/elm.tagfilter.entities.NEW

    Package elm-mod includes libelmme-iconv.so and libelmme-smtp.so. If
    package elm-mod includes libelmme-resolv.so, this is noted. And
    package elm-tls includes libelmme-tls.so.

    Installation loses mailer = submission setting from global /usr/local/lib/elm.rc, because when elm package rewrites elm.rc,
    submission mailer is not available. It becomes from elm-mod package.

    However failed values of /usr/local/lib/elm.rc are saved to /usr/local/lib/elm.rc.old-values file during installation.

    Global setting mailer = submission is restored from /usr/local/lib/elm.rc.old-values file, when package elm-mod is
    installed.

    Also following directories are used:

    - /usr/local/lib/elm.map.txt/ (global setting map-text-dir = {lib}/elm.map.txt)
    - /usr/local/lib/elm.map.bin/ (global setting map-bin-dir = {lib}/elm.map.bin)
    - /usr/local/lib/elm.user.map/ (global setting user-map-dir = {lib}/elm.user.map)

    Hashmark EXAMPLE uses file /usr/local/lib/elm.user.map/elm.usermap.

    SUMMARY: This release includes tagfilter module for
    filtering text/enriched and text/html
    tags. This release adds "editor-tfent-propline"
    and "page-tagfilter" elmrc options and
    new tool "elmtagfilterents". This release
    adds global "elm.tagfilter.entities" and
    user "~/.elm/tagfilter.entities" configuration
    files. Also some bug fixes and other changes are
    included.


    Changes on Elm ME+ 2.5 PLalpha63 compared with Elm ME+ 2.5 PLalpha62 --------------------------------------------------------------------

    SUMMARY: This release includes tagfilter module for
    filtering text/enriched and text/html
    tags. This release adds "editor-tfent-propline"
    and "page-tagfilter" elmrc options and
    new tool "elmtagfilterents". This release
    adds global "elm.tagfilter.entities" and
    user "~/.elm/tagfilter.entities" configuration
    files. Also some bug fixes and other changes are
    included.

    - Changed prototype of string_matches_ascii() -
    Added op parameter:
    SMA_op_normal,
    SMA_op_match_prefix,
    SMA_op_find_ascii,
    SMA_op_return_order
    SMA_return_len can not used with SMA_op_return_order

    - Added tagfilter module for <tag> filtering.

    - Tagfilter supports following text/enriched tags
    when builtin++ pager is used:
    <bold>
    <underline>
    <italic>
    <center> (detected, does nor work correctly (*))
    <nofill>
    Other tags are just filtered.
    - Rewrapping and joining of multiple lines to one line
    for displaying not supported when replying or forwarding
    mail or when viewing with external pager. This is similar
    than how content type text/plain; format=flowed
    is handled.
    - If builtin pager is not used (or when replying or
    forwarding mail) shows message

    [ text/enriched is unsupported, filtering tags. ]

    (*) Centering does not work when displayed line
    cover several tags or several lines on
    original message (before newline is
    converted to space or multiple
    lines are joined to one line for
    displaying).

    - Added pg_ITALIC flag (termcap codes ZH and ZR).
    - Added pg_DIM flag (termcap code mh).
    - Added pg_SUBSCRIPT flag (termcap codes ZN and ZV).
    - Added pg_SUPERSCRIPT flag (termcap codes ZO and ZW).
    - Added pg_STRIKETHROUGH (no termcap code)

    - Changed PR_CENTER_THIS handling on span_helper()

    - Tagfilter supports following text/html tags
    when builtin++ pager is used:
    <html>
    <head>
    <body>
    <noscript>
    <b>
    <br>
    <em>
    <hr>
    <i>
    <p>
    <pre>
    <q>
    <s> (!!)
    <strong>
    <sub> (XX)
    <sub> (XX)
    <u>
    - Tagfilter uses display attributes for following
    text/html tags (but reports them unsupported)
    when builtin++ pager is used:
    <cite>
    <del>
    <h1>
    <h2>
    <h3>
    <h4>
    <h5>
    <h6>
    <var>
    - Other text/html tags are just used for define
    what are recognized tags but otherwise just
    filtered.
    - Tagfilter recognizes different text/html tags depending
    on inside on what tags they occurs.

    (!!) Only when "ANSI-SGR strikethrough" is
    given on global elm.terminalinfo or
    on user ~/.elm/terminal.info.
    (XX) Incompletely - no terminals support this
    - If builtin pager is not used (or when replying or
    forwarding mail) shows message

    [ text/html is unsupported, filtering tags. ]

    - Added elmrc option "page-tagfilter". If set,
    media types given as keywords are displayed with "pager",
    otherwise these are considered to need metamail
    (or mailcap programs).
    Option includes list of keywords:
    none None of values are selected
    text/enriched text/enriched type does not require
    external programs or metamail
    text/html text/html type does not require
    external programs or metamail
    This does not take account possible unsupported
    tags or that builtin++ pager is not used as "pager".

    - Added global elm.tagfilter.entities and
    user .elm/tagfilter.entities. These files
    defines text/html named character references
    recognized by tagfilter.

    See also "Tagfilter entities listing"

    - Builtin text/html named character references
    recognized by tagfilter are

    &amp; unicode 0x0026 & -character
    &nbsp; unicode 0x00A0 NO-BREAK SPACE
    &quot; unicode 0x0022 " -character
    &lt; unicode 0x003C < -character
    &gt; unicode 0x003E > -character

    - Added elmtagfilterents -command.

    - Added "editor-tfent-propline" elmrc option.
    This is similar than "editor-elmrc-propline".
    If set to "emacs", then when on user's
    tagfilter.entities file, line
    # -*- coding: ... -*-
    is added to top of file. That line is also written
    if "editor-tfent-propline" elmrc option is
    set to "auto" (default) and line detected
    when file is read.
    If set to "ignore", then editor property line
    # -*- coding: ... -*-
    on top of file is ignored.

    - Global global elm.terminalinfo and
    user ~/.elm/terminal.info can now include
    ANSI-SGR which tell elm to use ANSI SGR
    attributes for bold, dim, italic, underline,
    blinking, reverse, strikethrough, superscript
    and subscript. If termcap specifies also
    attribute, elm may invoke it twice. Do
    not use ANSI-SGR if termcap already specifies it.
    This is mainly for strikethrough, which is
    not supported by termcap. For more information
    see chapter "Additional terminal information".

    - Added struct out_entity routines with lib/out_entity.c
    - Added state_putentity() to lib/elmlib.h and
    lib/state_out.c
    - Added string_type_have_unicode() to hdrs/elmlib.h
    and lib/string.c
    - Added state_add_opcode_pager_range() to hdrs/elmlib.h and
    lib/state_out.c
    - Added state_pager_add_param_text() to hdrs/elmlib.h and
    lib/state_out.c
    - Added struct pager_param_value routines with
    lib/pager_range.c
    - Added stringbuffer_add_entity() and
    stringbuffer_add_pager_param() to hdrs/elmlib.h and
    lib/stringbuffer.c

    - Added new_out_entity(), free_out_entity(),
    inc_out_entity_refcount(), out_entity_reference_key(),
    out_entity_text_value(), out_entity_unicode_value(),
    and dup_out_entity()
    to hdrs/elmlib.h and lib/out_entity.c

    - Added missing fclose(f) to parse_hash_mark_entries()
    - Change on dump_aliases_map()

    - Changed exit status handling on elmregister.

    - Possible fix for state_putunicode() on lib/state_out.c

    - Moved inc_pager_range_refcount() from hdrs/pg_range_imp.h
    to hdrs/elmlib.h
    - Potential fix for string_sort_cmp()
    - Fixed crash when inherited page_range was used
    PAGER RANGE PANIC in .../lib/pager_range.c:562:get_pager_range_serialization_from_file
    >>>Bad data read from file

    - Added new_string_alt_text(), new_string_alt_entity(),
    get_string_alt_value(), inc_string_alt_refcount() and
    free_string_alt() to hdrs/elmlib.h and lib/string_alt.c

    - Added get_lineext_alt_and_walk()to hdrs/elmlib.h and
    lib/pager_lineext.c
    - Added curses_available_string()
    to hdrs/me.h and src/screen/curses.c
    - Added get_pager_param_from_stringbuffer() to
    hdrs/me.h and lib/stringbuffer.c

    - Some fixed for error handling of load_terminal_map()
    - Added ANSI_sgr_values[] to hdrs/msiclib.h
    and lib/misc/terminal.c
    - Added pg_set_or_disable_flags() to hdrs/msiclib.h
    and lib/misc/terminal.c

    - Changed get_pager_range_change()
    - Changed malloc_simple_pager_range()

    - Fix for put_pager_range_serialization_to_file()
    - Fix for stringbuffer_add_pager_range()
    - Fix for state_convert_EOLN()
    - Fix for get_decoded_attachment()

    - Added curses_check_terminal()
    to hdrs/me.h and src/screen/curses.c

    New tool:
    elmtagfilterents

    New files:
    melib/tagfilter.c
    melib/tagfilter_decode.c
    hdrs/tagfilter_imp.h
    melib/tagfilter_entity.c
    melib/init.c
    doc/elmtagfilent-info
    utils/elmtagfilterents.c
    doc/tagfilter.entities
    ConfTool/GenEntities
    hdrs/convert_status.h
    lib/convert_status.c
    doc/elmtagfilterents.1
    melib/tagfilter_tag.c
    lib/out_entity.c
    melib/tagfilter_enriched.c
    hdrs/elmme-magic.h
    melib/tagfilter_html.c
    hdrs/pg_params_imp.h
    lib/string_alt.c

    New elmrc option:
    editor-tfent-propline
    page-tagfilter

    Additional terminal information
    -------------------------------

    Files libdir/elm.terminalinfo and ~/.elm/terminal.info
    handle terminal specific methods for switching of chartset
    of terminal. In the file there may be following kinds of
    lines:

    term ISO-2022 charset-name
    term ISO-2022 charset-definition
    term ISO-2022 charset-name [ condition ]
    term ISO-2022/DW charset-name
    term ISO-2022/DW charset-definition
    term ISO-2022/DW charset-name [ condition ]
    term ISO-2022-LIKE charset-name bank-specification
    term PRIVATE charset-name d/d d/d d/d
    term PRIVATE charset-name [ condition ] d/d d/d d/d

    term flag flag-keyword
    term DW charset-name
    term DW charset-name [ condition ]

    term ANSI-SGR attribute
    term ANSI-SGR attribute [ condition ]

    where term is type of terminal (ie value of $TERM).
    ISO-2022 is literal, which indicates that
    next column is character set name or character set
    definition as on elm.mimecharsets or mime.charsets file
    and that character set switching happends as given with
    other-set and bank-Gx-* attributes on character set
    definition. PRIVATE literal, which indicates that
    next two columns are character set name and bytes given
    on d/d format for switch character set.

    ISO-2022/DW literal indicates that terminal uses
    same attributes than on case ISO2022 literal.
    Additionally that says that 94x94 and 96x96 sets
    consume two character positions on display with that
    terminal. That literal is available only with charset
    which have type=iso2022.

    It is assumed that these escape sequences do not affect
    to input (keyboard) charset of terminal (ie. do not affect
    'keyboard mode' or 'keyboard language').

    [ condition ] is like [ exp = exp ] where exp can be
    either "quoted value" or $ENV_VAR. "quoted value" allow
    also environment variables (same way than Elm ME+ allows
    on pathnames.) For example that may be used on lines like

    linux PRIVATE ISO-8859-15 [ $SYSFONTACM="iso15" ] 1/11 2/8 4/11 0/15


    Also [ condition ] can be like [ exp =~ exp ]
    Right side is treated as pattern ( * and ? are joker
    characters.) For example that may be used on lines like

    xterm ISO-2022 UTF-8 [ $XTERM_VERSION=~"XTerm(*)" ]


    Read comments about using of these from doc/terminal.info

    ISO-2022-LIKE indicates that terminal assigns private
    codes for the charset. That definition do not define iso 2022
    codes for the charset, but it is used than these codes are
    defined for charset. For example that may be used on lines
    like

    vt200 ISO-2022-LIKE DEC-MCS left=bank-G0;bank-G0-94=4/2;right=bank-G2;bank-96=3/12

    DW indicates for system charset that wcwidth()
    function should be used to get char width.
    This means that logical width of character
    may be 0, 1 or 2 columns on that terminal.

    On systems which have __STDC_ISO_10646__ defined,
    DW flag on terminal.info works like "locale-charsets"
    option if charset and terminal match.

    If charset does not support calculation of visible len
    and there is DW flag given for that charset and
    terminal, then error message
    Double wide characters are not supported
    is printed.

    Flag keyword xterm-title specifies that terminal supports
    changing of window title and icon name in the same way as
    xterm. That can be used with elmrc option set-window-title.
    Flag keyword xwsh-title that terminal supports changing of
    window title and icon name similar than SGI's xwsh.

    ANSI-SGR indicates that terminal supports display
    attributes chich are not given on termcap specification.
    These attributes are following (listed attribute
    name and uses codes for enable an disable them):

    bold CSI 1 m CSI 22 m
    dim CSI 2 m CSI 22 m
    italic CSI 3 m CSI 23 m
    underline CSI 4 m CSI 24 m
    blinking CSI 5 m CSI 25 m
    reverse CSI 7 m CSI 27 m
    strikethrough CSI 9 m CSI 29 m
    superscript CSI 73 m CSI 75 m
    subscript CSI 74 m CSI 75 m

    Tagfilter entities listing
    -------------------------

    Files libdir/elm.tagfilter.entities and ~/.elm/.elm/tagfilter.entities
    handles named character references regognized by
    tagfilter. In the file there may be following kinds of
    lines:

    &tag; html nnnn
    &tag; html 0ooo
    &tag; html xhhhh
    &tag; html "xxxx"

    where nnnn is decimal value (must start with 1-9)
    where 0ooo is octal value (must start with 0)
    where xhhh is hexdecimal (must start with x)
    where "xxxx" is string value (must be quoted with ")
    where &tag; is entity / named character reference
    which includes ending ; when matching.
    where &tag is entity / named character reference
    which matches if there is no ;
    where html specifies that these entities are for text/html
    (other keywords not currently defined)

    Lines starting with # are comments
    Also there can be ending # comment
    on data lines.

    Warnings
    --------

    - Not compiled with MMDF support defined, so probably it doesn't
    work (or even compile).

    - This has not been tested much so there can be bad bugs.

    Bug reports to: Kari E. Hurtta <elm@elmme-mailer.org>
    (was hurtta+elm@posti.FMI.FI)

    - Internationalized (ie. non-ASCII) domain names are not supported.

    - Support for multipart/signed and multipart/encrypted (specially:
    support for PGP/MIME) only in reading side. There is no support
    for attachments with multipart/encrypted.

    - HP's shoftkeys are no longer supported

    - DECNET addresses like host::user may be interpreted as phrase
    of group syntax or as route of source routed address.

    - Header editing screen now uses addresses in form phrase <address>,
    but because it does not require using of comma (,), multiword
    phrases must be entered in quotes.

    For example: "Kari Hurtta" <hurtta>

    - If address includes <> or comments (), they are not aliased
    expanded. So aliases must be entered as bare words.

    - Addresses given as arguments to elm command should be given
    as one address per argument. Giving of sevaral addresses per
    one argument causes that address is misparsed if header is
    edited on header editing screen.

    That is:

    Use: elm '"Kari Hurtta" <hurtta>' 'Admin <root>'

    Don't use: elm 'Kari Hurtta <hurtta>, Admin <root>'

    - p)rint command acts as P)rint text -command. So it
    is currently quite useless.
    p)rint command does that via readmsg -command. However
    P)rint text does actually same (without readmsg).

    - Some Linux libraries does not follow $LC_CTYPE when program is
    setgid. Net result is that your locale is always C. That is
    visible that $LC_CTYPE does not effect to locale printed by
    'elm -vvvvv':

    Locale (LC_CTYPE): C
    Display character-set: US-ASCII
    Sending character-set: US-ASCII

    - All refrences iso2022 maps are parsed and read to memory.
    This may cause quite big memory consumption specially because
    eastern (multibyte) sets tend to be lot of characters. That
    mapping information should be shared between processes to
    reduce memory consuption.

    - If display charset is produced by using mapping from locale
    to charset where charset definition is later invalidated
    ("removed") by setting explicit compatcharsets on user's
    .elm/elmrc, that may cause PANIC on elm's internal pager
    or other problems. Invalidation happens if display charset
    is on implicit compatcharsets list (because of charset
    definition), but does not have explicit compatcharsets list
    given by user.

    - Neither Unicode didirectional algorithm nor Right-Left scripts
    are supported.

    - In some situations two Status headers may be generated two
    Status headers -- one by IMAP deamon and one from APPENDed
    message.

    - When APPENDing message to IMAP folder (which is normal UNIX
    mailbox format) original "From " separator line can not be
    preserved -- specially it is not possible to pass envelope
    sender address.

    - For UTF-8 charset Elm only knows printable characters from
    Latin/1 range, if unicode database (see elmrc option "unidata")
    is not loaded.

    - For using of ISO2022 character sets it is required that mapping
    them to unicode is know -- otherwise Elm ME+ does not know which
    characters are printable.

    - UTF-16 surrogate pairs (D800-DFFF) are not supported on UTF-7
    charset.

    - Mixing of names using IMAP naming convention
    (imap-naming-convention = yes)
    and names using imap-charset does not work very well...

    - " Regarding my message (8 Aug 2000) regarding 'newmail' on
    AIX 4.3.3 in an 'aixterm' window and the 'aixterm' did not
    close, indeed the problem was NOT related to 'newmail' but an
    AIX bug.

    IBM has release a patch, and the 'aixterm' in AIX 4.3.3 must
    be update with fileset X11.apps.aixterm.4.3.3.26 (PTF
    U473920) is solved to problem."
    From: Noam G. Nudelman

    - File /usr/share/locale/fi/charset gives charset name utf-8 on
    Linux Mandrake 7.2. This causes that Configure generates
    mapping
    fi utf-8
    to elm.mimecharsets. However that seems to have
    incorrect mapping. You may want change this to
    fi ISO-8859-1

    ( however nl_langinfo(CODESET) gives charset ISO-8859-15
    but look following entry. )

    - Locale 'fi' seems to have charset ISO-8859-15 according
    of nl_langinfo(CODESET) on Mandrake Linux 7.2 (and probaly
    others with same glibc version). However for example gnome
    terminal uses font
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-1
    and not
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-15

    Also KDE's konsole program seems use iso8859-1 character set
    although locale is 'fi' which should have ISO-8859-15 according
    of nl_langinfo (selecting "unicode" from menu seems fix that.)

    Because of mismatch more correct locale is fi_FI.88591, which gives
    ISO-8859-1 character set according of nl_langinfo(CODESET).

    ( Locale seems come from /etc/sysconfig/i18n or $HOME/.i18n )

    > To enable handling of ISO-8859-1 and ISO-8859-15 character sets
    on linux console, read comments from doc/terminal.info file.

    - Mandrake Linux 7.2 seems set LD_PRELOAD to load
    /usr/lib/libxalflaunch.so.0. That (xalf-0.4-2mdk) causes that
    elm to crash on startup (actually before main() is reached.)

    - kterm on Mandrake Linux 7.2 seems have (at least on my test
    environment) seems get bad fontlist (*VT100*fontList) which
    gives bad font for iso8859-1 -- therefore ISO-8859-1 characters
    do not work.

    ("xrdb -query" seems report resource with name "*fontList"
    -- that probably overrides "*VT100*fontList" which comes
    from /usr/lib/X11/app-defaults/KTerm )

    - Also note that initially kterm does NOT default to
    ISO-8859-1 -- therefore ISO-8859-1 works only when
    elm explicity switch to ISO-8859-1 (for example
    with 'elm -D ISO-8859-1')

    - When assembling message/partial MIME (RFC 2046)
    requires that all headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are copied from
    initial enclosing message to assembled message. It also
    requires that headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are ignored and
    dropped from enclosed message.

    For now we copy only Received: -headers. Dropping extra
    headers from enclosed message makes assembly more
    complicated (and dropping of Received: -headers
    from enclosed message do not make sense.)

    - mailer=sendmail; verify=yes works only when sendmail
    is installed as setuid root. Use mailer=submission instead.
    * Starting from sendmail 8.12 sendmail is normally
    installed as setgid smmsp and not as setuid root.
    - However error message is printed only if
    verify-local-address=yes is also set

    - IMAP connection is stalled some times. Reason is unknown.

    Collector of these patches
    --------------------------

    Kari Hurtta <elm@elmme-mailer.org>
    Kari Hurtta <hurtta+elm@siilo.FMI.FI>

    --
    / Kari Hurtta

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Kari Hurtta@21:1/5 to All on Fri Jan 5 13:54:39 2024
    Experimental DEB generator script for Elm ME+ 2.5 PLalpha63 exists on
    <URL: http://www.elmme-mailer.org/deb/elm-ME+2.5.html > directory.

    Files are following

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha63-1.gen_deb
    DEB generator script
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha63-1.gen_deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha63-1.gen_deb.sig

    A command

    elm-ME+2.5.alpha63-1.gen_deb {packager}

    generates package elmme with version 1.1.62-1.{distribution}.

    A command

    elm-ME+2.5.alpha63-1.gen_deb --old {packager}

    generates package elm with version ME+2.5.alpha63-1.{distribution}.

    Both commands produce package with filename elm-ME+2.5.alpha63-1.{distribution}.{arch}.deb.

    == Old package names, i386

    Package elm with version ME+2.5.alpha63-1.{distribution} and
    architecture i386.

    * Compiled on Ubuntu 6.06.2 LTS
    (Linux 2.6, glibc 2.3, Sendmail 8.13)

    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha63-1.Ubuntu6.06.i386.deb
    Package elm binary DEB build on Ubuntu 6.06.2 LTS
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha63-1.Ubuntu6.06.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha63-1.Ubuntu6.06.i386.deb.sig

    * Compiled on Ubuntu 10.04.4 LTS
    (Linux 2.6, glibc 2.11, Sendmail 8.14)

    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha63-1.Ubuntu10.04.i386.deb
    Package elm binary DEB build on Ubuntu 10.04.4 LTS
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha63-1.Ubuntu10.04.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha63-1.Ubuntu10.04.i386.deb.sig

    == New package names, i386

    Package elmme with version 1.1.63-1.{distribution} and architecture
    i386.

    * Compiled on Ubuntu 10.04.4 LTS
    (Linux 2.6, glibc 2.11, Sendmail 8.14)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha63-1.Ubuntu10.04.i386.deb
    Package elmme binary DEB build on Ubuntu 10.04.4 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha63-1.Ubuntu10.04.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha63-1.Ubuntu10.04.i386.deb.sig

    * Compiled on Ubuntu 14.04.6 LTS
    (Linux 4.4, glibc 2.19, no MTA)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha63-1.Ubuntu14.04.i386.deb
    Package elmme binary DEB build on Ubuntu 14.04.6 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha63-1.Ubuntu14.04.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha63-1.Ubuntu14.04.i386.deb.sig

    == New package names, amd64 (x86_64)

    Package elmme with version 1.1.63-1.{distribution} and architecture
    amd64 (also known as x86_64).

    * Compiled on Ubuntu 18.04.6 LTS
    (Linux 5.4, glibc 2.27, Sendmail 8.15)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha63-1.Ubuntu18.04.amd64.deb
    Package elmme binary DEB build on Ubuntu 18.04.6 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha63-1.Ubuntu18.04.amd64.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha63-1.Ubuntu18.04.amd64.deb.sig

    * Compiled on Ubuntu 20.04.6 LTS
    (Linux 5.4, glibc 2.31, Postfix 3.4 (not configured))

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha63-1.Ubuntu20.04.amd64.deb
    Package elmme binary DEB build on Ubuntu 20.04.6 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha63-1.Ubuntu20.04.amd64.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha63-1.Ubuntu20.04.amd64.deb.sig

    == Signatures

    {file}.sig PGP signature (old key pubkey.asc, EA5A2379 1996-04-23)
    {file}.elm-key-2018.sig GPG signature (key elm.key.2018.asc, 44FC796B 2018-12-01, expires: 2028-11-28)

    == Configuration

    Following files (if exists) are rewritten by elmconfwriter on
    installation:

    - /usr/local/lib/elm.rc
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.hashmarks
    - /usr/local/lib/elm.tagfilter.entities

    Deb generator script compiles elm for binary distribution, so you must
    edit /usr/local/lib/elm.rc before using Elm ME+ 2.5. Following
    variables may need to be modified on elm.rc:

    - mailer
    - hostdomain (this is usually needed)
    - hostfullname
    - hostname (usually this is not needed)
    - mailname (default values is generated from other values)
    - name-resolution (controls default values of hostdomain, hostfullname, hostname, mailname)

    By default first value for mailname is read from /etc/mailname file.

    For re-generation of following file, old information (if exists) is used:

    - /usr/local/lib/elm.rc

    WARNING: Check after installation that libraries are enabled. Global elm.rc values are:

    use-library =
    use-base-library = iconv
    use-config-library = resolv
    use-connect-library = tls resolv
    use-mailer-library = smtp resolv

    After editing global elm.rc run /usr/local/lib/elmrc-write -GI for fixing possible errors.

    On installation following existing files are merged with new values:

    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.hashmarks
    - /usr/local/lib/elm.tagfilter.entities

    Old values from /usr/local/lib/aliases.text are converted to /usr/local/lib/elm.aliases and /usr/local/lib/aliases.text is renamed
    to /usr/local/lib/aliases.text.OLD.

    On installation new values without merging are written to following
    files:

    - /usr/local/lib/elm.aliases.NEW
    - /usr/local/lib/elm.mailinglists.NEW
    - /usr/local/lib/elm.mailservices.NEW
    - /usr/local/lib/elm.mimecharsets.NEW
    - /usr/local/lib/elm.mimetypes.NEW
    - /usr/local/lib/elm.terminalinfo.NEW
    - /usr/local/lib/elm.iso2022sets.NEW
    - /usr/local/lib/elm.hashmarks.NEW
    - /usr/local/lib/elm.tagfilter.entities.NEW

    Also following directories are used:

    - /usr/local/lib/elm.map.txt/ (global setting map-text-dir = {lib}/elm.map.txt)
    - /usr/local/lib/elm.map.bin/ (global setting map-bin-dir = {lib}/elm.map.bin)
    - /usr/local/lib/elm.user.map/ (global setting user-map-dir = {lib}/elm.user.map)

    Hashmark EXAMPLE uses file /usr/local/lib/elm.user.map/elm.usermap.

    SUMMARY: This release includes tagfilter module for
    filtering text/enriched and text/html
    tags. This release adds "editor-tfent-propline"
    and "page-tagfilter" elmrc options and
    new tool "elmtagfilterents". This release
    adds global "elm.tagfilter.entities" and
    user "~/.elm/tagfilter.entities" configuration
    files. Also some bug fixes and other changes are
    included.

    Changes on Elm ME+ 2.5 PLalpha63 compared with Elm ME+ 2.5 PLalpha62 --------------------------------------------------------------------

    SUMMARY: This release includes tagfilter module for
    filtering text/enriched and text/html
    tags. This release adds "editor-tfent-propline"
    and "page-tagfilter" elmrc options and
    new tool "elmtagfilterents". This release
    adds global "elm.tagfilter.entities" and
    user "~/.elm/tagfilter.entities" configuration
    files. Also some bug fixes and other changes are
    included.

    - Changed prototype of string_matches_ascii() -
    Added op parameter:
    SMA_op_normal,
    SMA_op_match_prefix,
    SMA_op_find_ascii,
    SMA_op_return_order
    SMA_return_len can not used with SMA_op_return_order

    - Added tagfilter module for <tag> filtering.

    - Tagfilter supports following text/enriched tags
    when builtin++ pager is used:
    <bold>
    <underline>
    <italic>
    <center> (detected, does nor work correctly (*))
    <nofill>
    Other tags are just filtered.
    - Rewrapping and joining of multiple lines to one line
    for displaying not supported when replying or forwarding
    mail or when viewing with external pager. This is similar
    than how content type text/plain; format=flowed
    is handled.
    - If builtin pager is not used (or when replying or
    forwarding mail) shows message

    [ text/enriched is unsupported, filtering tags. ]

    (*) Centering does not work when displayed line
    cover several tags or several lines on
    original message (before newline is
    converted to space or multiple
    lines are joined to one line for
    displaying).

    - Added pg_ITALIC flag (termcap codes ZH and ZR).
    - Added pg_DIM flag (termcap code mh).
    - Added pg_SUBSCRIPT flag (termcap codes ZN and ZV).
    - Added pg_SUPERSCRIPT flag (termcap codes ZO and ZW).
    - Added pg_STRIKETHROUGH (no termcap code)

    - Changed PR_CENTER_THIS handling on span_helper()

    - Tagfilter supports following text/html tags
    when builtin++ pager is used:
    <html>
    <head>
    <body>
    <noscript>
    <b>
    <br>
    <em>
    <hr>
    <i>
    <p>
    <pre>
    <q>
    <s> (!!)
    <strong>
    <sub> (XX)
    <sub> (XX)
    <u>
    - Tagfilter uses display attributes for following
    text/html tags (but reports them unsupported)
    when builtin++ pager is used:
    <cite>
    <del>
    <h1>
    <h2>
    <h3>
    <h4>
    <h5>
    <h6>
    <var>
    - Other text/html tags are just used for define
    what are recognized tags but otherwise just
    filtered.
    - Tagfilter recognizes different text/html tags depending
    on inside on what tags they occurs.

    (!!) Only when "ANSI-SGR strikethrough" is
    given on global elm.terminalinfo or
    on user ~/.elm/terminal.info.
    (XX) Incompletely - no terminals support this
    - If builtin pager is not used (or when replying or
    forwarding mail) shows message

    [ text/html is unsupported, filtering tags. ]

    - Added elmrc option "page-tagfilter". If set,
    media types given as keywords are displayed with "pager",
    otherwise these are considered to need metamail
    (or mailcap programs).
    Option includes list of keywords:
    none None of values are selected
    text/enriched text/enriched type does not require
    external programs or metamail
    text/html text/html type does not require
    external programs or metamail
    This does not take account possible unsupported
    tags or that builtin++ pager is not used as "pager".

    - Added global elm.tagfilter.entities and
    user .elm/tagfilter.entities. These files
    defines text/html named character references
    recognized by tagfilter.

    See also "Tagfilter entities listing"

    - Builtin text/html named character references
    recognized by tagfilter are

    &amp; unicode 0x0026 & -character
    &nbsp; unicode 0x00A0 NO-BREAK SPACE
    &quot; unicode 0x0022 " -character
    &lt; unicode 0x003C < -character
    &gt; unicode 0x003E > -character

    - Added elmtagfilterents -command.

    - Added "editor-tfent-propline" elmrc option.
    This is similar than "editor-elmrc-propline".
    If set to "emacs", then when on user's
    tagfilter.entities file, line
    # -*- coding: ... -*-
    is added to top of file. That line is also written
    if "editor-tfent-propline" elmrc option is
    set to "auto" (default) and line detected
    when file is read.
    If set to "ignore", then editor property line
    # -*- coding: ... -*-
    on top of file is ignored.

    - Global global elm.terminalinfo and
    user ~/.elm/terminal.info can now include
    ANSI-SGR which tell elm to use ANSI SGR
    attributes for bold, dim, italic, underline,
    blinking, reverse, strikethrough, superscript
    and subscript. If termcap specifies also
    attribute, elm may invoke it twice. Do
    not use ANSI-SGR if termcap already specifies it.
    This is mainly for strikethrough, which is
    not supported by termcap. For more information
    see chapter "Additional terminal information".

    - Added struct out_entity routines with lib/out_entity.c
    - Added state_putentity() to lib/elmlib.h and
    lib/state_out.c
    - Added string_type_have_unicode() to hdrs/elmlib.h
    and lib/string.c
    - Added state_add_opcode_pager_range() to hdrs/elmlib.h and
    lib/state_out.c
    - Added state_pager_add_param_text() to hdrs/elmlib.h and
    lib/state_out.c
    - Added struct pager_param_value routines with
    lib/pager_range.c
    - Added stringbuffer_add_entity() and
    stringbuffer_add_pager_param() to hdrs/elmlib.h and
    lib/stringbuffer.c

    - Added new_out_entity(), free_out_entity(),
    inc_out_entity_refcount(), out_entity_reference_key(),
    out_entity_text_value(), out_entity_unicode_value(),
    and dup_out_entity()
    to hdrs/elmlib.h and lib/out_entity.c

    - Added missing fclose(f) to parse_hash_mark_entries()
    - Change on dump_aliases_map()

    - Changed exit status handling on elmregister.

    - Possible fix for state_putunicode() on lib/state_out.c

    - Moved inc_pager_range_refcount() from hdrs/pg_range_imp.h
    to hdrs/elmlib.h
    - Potential fix for string_sort_cmp()
    - Fixed crash when inherited page_range was used
    PAGER RANGE PANIC in .../lib/pager_range.c:562:get_pager_range_serialization_from_file
    >>>Bad data read from file

    - Added new_string_alt_text(), new_string_alt_entity(),
    get_string_alt_value(), inc_string_alt_refcount() and
    free_string_alt() to hdrs/elmlib.h and lib/string_alt.c

    - Added get_lineext_alt_and_walk()to hdrs/elmlib.h and
    lib/pager_lineext.c
    - Added curses_available_string()
    to hdrs/me.h and src/screen/curses.c
    - Added get_pager_param_from_stringbuffer() to
    hdrs/me.h and lib/stringbuffer.c

    - Some fixed for error handling of load_terminal_map()
    - Added ANSI_sgr_values[] to hdrs/msiclib.h
    and lib/misc/terminal.c
    - Added pg_set_or_disable_flags() to hdrs/msiclib.h
    and lib/misc/terminal.c

    - Changed get_pager_range_change()
    - Changed malloc_simple_pager_range()

    - Fix for put_pager_range_serialization_to_file()
    - Fix for stringbuffer_add_pager_range()
    - Fix for state_convert_EOLN()
    - Fix for get_decoded_attachment()

    - Added curses_check_terminal()
    to hdrs/me.h and src/screen/curses.c

    New tool:
    elmtagfilterents

    New files:
    melib/tagfilter.c
    melib/tagfilter_decode.c
    hdrs/tagfilter_imp.h
    melib/tagfilter_entity.c
    melib/init.c
    doc/elmtagfilent-info
    utils/elmtagfilterents.c
    doc/tagfilter.entities
    ConfTool/GenEntities
    hdrs/convert_status.h
    lib/convert_status.c
    doc/elmtagfilterents.1
    melib/tagfilter_tag.c
    lib/out_entity.c
    melib/tagfilter_enriched.c
    hdrs/elmme-magic.h
    melib/tagfilter_html.c
    hdrs/pg_params_imp.h
    lib/string_alt.c

    New elmrc option:
    editor-tfent-propline
    page-tagfilter

    Additional terminal information
    -------------------------------

    Files libdir/elm.terminalinfo and ~/.elm/terminal.info
    handle terminal specific methods for switching of chartset
    of terminal. In the file there may be following kinds of
    lines:

    term ISO-2022 charset-name
    term ISO-2022 charset-definition
    term ISO-2022 charset-name [ condition ]
    term ISO-2022/DW charset-name
    term ISO-2022/DW charset-definition
    term ISO-2022/DW charset-name [ condition ]
    term ISO-2022-LIKE charset-name bank-specification
    term PRIVATE charset-name d/d d/d d/d
    term PRIVATE charset-name [ condition ] d/d d/d d/d

    term flag flag-keyword
    term DW charset-name
    term DW charset-name [ condition ]

    term ANSI-SGR attribute
    term ANSI-SGR attribute [ condition ]

    where term is type of terminal (ie value of $TERM).
    ISO-2022 is literal, which indicates that
    next column is character set name or character set
    definition as on elm.mimecharsets or mime.charsets file
    and that character set switching happends as given with
    other-set and bank-Gx-* attributes on character set
    definition. PRIVATE literal, which indicates that
    next two columns are character set name and bytes given
    on d/d format for switch character set.

    ISO-2022/DW literal indicates that terminal uses
    same attributes than on case ISO2022 literal.
    Additionally that says that 94x94 and 96x96 sets
    consume two character positions on display with that
    terminal. That literal is available only with charset
    which have type=iso2022.

    It is assumed that these escape sequences do not affect
    to input (keyboard) charset of terminal (ie. do not affect
    'keyboard mode' or 'keyboard language').

    [ condition ] is like [ exp = exp ] where exp can be
    either "quoted value" or $ENV_VAR. "quoted value" allow
    also environment variables (same way than Elm ME+ allows
    on pathnames.) For example that may be used on lines like

    linux PRIVATE ISO-8859-15 [ $SYSFONTACM="iso15" ] 1/11 2/8 4/11 0/15


    Also [ condition ] can be like [ exp =~ exp ]
    Right side is treated as pattern ( * and ? are joker
    characters.) For example that may be used on lines like

    xterm ISO-2022 UTF-8 [ $XTERM_VERSION=~"XTerm(*)" ]


    Read comments about using of these from doc/terminal.info

    ISO-2022-LIKE indicates that terminal assigns private
    codes for the charset. That definition do not define iso 2022
    codes for the charset, but it is used than these codes are
    defined for charset. For example that may be used on lines
    like

    vt200 ISO-2022-LIKE DEC-MCS left=bank-G0;bank-G0-94=4/2;right=bank-G2;bank-96=3/12

    DW indicates for system charset that wcwidth()
    function should be used to get char width.
    This means that logical width of character
    may be 0, 1 or 2 columns on that terminal.

    On systems which have __STDC_ISO_10646__ defined,
    DW flag on terminal.info works like "locale-charsets"
    option if charset and terminal match.

    If charset does not support calculation of visible len
    and there is DW flag given for that charset and
    terminal, then error message
    Double wide characters are not supported
    is printed.

    Flag keyword xterm-title specifies that terminal supports
    changing of window title and icon name in the same way as
    xterm. That can be used with elmrc option set-window-title.
    Flag keyword xwsh-title that terminal supports changing of
    window title and icon name similar than SGI's xwsh.

    ANSI-SGR indicates that terminal supports display
    attributes chich are not given on termcap specification.
    These attributes are following (listed attribute
    name and uses codes for enable an disable them):

    bold CSI 1 m CSI 22 m
    dim CSI 2 m CSI 22 m
    italic CSI 3 m CSI 23 m
    underline CSI 4 m CSI 24 m
    blinking CSI 5 m CSI 25 m
    reverse CSI 7 m CSI 27 m
    strikethrough CSI 9 m CSI 29 m
    superscript CSI 73 m CSI 75 m
    subscript CSI 74 m CSI 75 m

    Tagfilter entities listing
    -------------------------

    Files libdir/elm.tagfilter.entities and ~/.elm/.elm/tagfilter.entities
    handles named character references regognized by
    tagfilter. In the file there may be following kinds of
    lines:

    &tag; html nnnn
    &tag; html 0ooo
    &tag; html xhhhh
    &tag; html "xxxx"

    where nnnn is decimal value (must start with 1-9)
    where 0ooo is octal value (must start with 0)
    where xhhh is hexdecimal (must start with x)
    where "xxxx" is string value (must be quoted with ")
    where &tag; is entity / named character reference
    which includes ending ; when matching.
    where &tag is entity / named character reference
    which matches if there is no ;
    where html specifies that these entities are for text/html
    (other keywords not currently defined)

    Lines starting with # are comments
    Also there can be ending # comment
    on data lines.

    Warnings
    --------

    - Not compiled with MMDF support defined, so probably it doesn't
    work (or even compile).

    - This has not been tested much so there can be bad bugs.

    Bug reports to: Kari E. Hurtta <elm@elmme-mailer.org>
    (was hurtta+elm@posti.FMI.FI)

    - Internationalized (ie. non-ASCII) domain names are not supported.

    - Support for multipart/signed and multipart/encrypted (specially:
    support for PGP/MIME) only in reading side. There is no support
    for attachments with multipart/encrypted.

    - HP's shoftkeys are no longer supported

    - DECNET addresses like host::user may be interpreted as phrase
    of group syntax or as route of source routed address.

    - Header editing screen now uses addresses in form phrase <address>,
    but because it does not require using of comma (,), multiword
    phrases must be entered in quotes.

    For example: "Kari Hurtta" <hurtta>

    - If address includes <> or comments (), they are not aliased
    expanded. So aliases must be entered as bare words.

    - Addresses given as arguments to elm command should be given
    as one address per argument. Giving of sevaral addresses per
    one argument causes that address is misparsed if header is
    edited on header editing screen.

    That is:

    Use: elm '"Kari Hurtta" <hurtta>' 'Admin <root>'

    Don't use: elm 'Kari Hurtta <hurtta>, Admin <root>'

    - p)rint command acts as P)rint text -command. So it
    is currently quite useless.
    p)rint command does that via readmsg -command. However
    P)rint text does actually same (without readmsg).

    - Some Linux libraries does not follow $LC_CTYPE when program is
    setgid. Net result is that your locale is always C. That is
    visible that $LC_CTYPE does not effect to locale printed by
    'elm -vvvvv':

    Locale (LC_CTYPE): C
    Display character-set: US-ASCII
    Sending character-set: US-ASCII

    - All refrences iso2022 maps are parsed and read to memory.
    This may cause quite big memory consumption specially because
    eastern (multibyte) sets tend to be lot of characters. That
    mapping information should be shared between processes to
    reduce memory consuption.

    - If display charset is produced by using mapping from locale
    to charset where charset definition is later invalidated
    ("removed") by setting explicit compatcharsets on user's
    .elm/elmrc, that may cause PANIC on elm's internal pager
    or other problems. Invalidation happens if display charset
    is on implicit compatcharsets list (because of charset
    definition), but does not have explicit compatcharsets list
    given by user.

    - Neither Unicode didirectional algorithm nor Right-Left scripts
    are supported.

    - In some situations two Status headers may be generated two
    Status headers -- one by IMAP deamon and one from APPENDed
    message.

    - When APPENDing message to IMAP folder (which is normal UNIX
    mailbox format) original "From " separator line can not be
    preserved -- specially it is not possible to pass envelope
    sender address.

    - For UTF-8 charset Elm only knows printable characters from
    Latin/1 range, if unicode database (see elmrc option "unidata")
    is not loaded.

    - For using of ISO2022 character sets it is required that mapping
    them to unicode is know -- otherwise Elm ME+ does not know which
    characters are printable.

    - UTF-16 surrogate pairs (D800-DFFF) are not supported on UTF-7
    charset.

    - Mixing of names using IMAP naming convention
    (imap-naming-convention = yes)
    and names using imap-charset does not work very well...

    - " Regarding my message (8 Aug 2000) regarding 'newmail' on
    AIX 4.3.3 in an 'aixterm' window and the 'aixterm' did not
    close, indeed the problem was NOT related to 'newmail' but an
    AIX bug.

    IBM has release a patch, and the 'aixterm' in AIX 4.3.3 must
    be update with fileset X11.apps.aixterm.4.3.3.26 (PTF
    U473920) is solved to problem."
    From: Noam G. Nudelman

    - File /usr/share/locale/fi/charset gives charset name utf-8 on
    Linux Mandrake 7.2. This causes that Configure generates
    mapping
    fi utf-8
    to elm.mimecharsets. However that seems to have
    incorrect mapping. You may want change this to
    fi ISO-8859-1

    ( however nl_langinfo(CODESET) gives charset ISO-8859-15
    but look following entry. )

    - Locale 'fi' seems to have charset ISO-8859-15 according
    of nl_langinfo(CODESET) on Mandrake Linux 7.2 (and probaly
    others with same glibc version). However for example gnome
    terminal uses font
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-1
    and not
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-15

    Also KDE's konsole program seems use iso8859-1 character set
    although locale is 'fi' which should have ISO-8859-15 according
    of nl_langinfo (selecting "unicode" from menu seems fix that.)

    Because of mismatch more correct locale is fi_FI.88591, which gives
    ISO-8859-1 character set according of nl_langinfo(CODESET).

    ( Locale seems come from /etc/sysconfig/i18n or $HOME/.i18n )

    > To enable handling of ISO-8859-1 and ISO-8859-15 character sets
    on linux console, read comments from doc/terminal.info file.

    - Mandrake Linux 7.2 seems set LD_PRELOAD to load
    /usr/lib/libxalflaunch.so.0. That (xalf-0.4-2mdk) causes that
    elm to crash on startup (actually before main() is reached.)

    - kterm on Mandrake Linux 7.2 seems have (at least on my test
    environment) seems get bad fontlist (*VT100*fontList) which
    gives bad font for iso8859-1 -- therefore ISO-8859-1 characters
    do not work.

    ("xrdb -query" seems report resource with name "*fontList"
    -- that probably overrides "*VT100*fontList" which comes
    from /usr/lib/X11/app-defaults/KTerm )

    - Also note that initially kterm does NOT default to
    ISO-8859-1 -- therefore ISO-8859-1 works only when
    elm explicity switch to ISO-8859-1 (for example
    with 'elm -D ISO-8859-1')

    - When assembling message/partial MIME (RFC 2046)
    requires that all headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are copied from
    initial enclosing message to assembled message. It also
    requires that headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are ignored and
    dropped from enclosed message.

    For now we copy only Received: -headers. Dropping extra
    headers from enclosed message makes assembly more
    complicated (and dropping of Received: -headers
    from enclosed message do not make sense.)

    - mailer=sendmail; verify=yes works only when sendmail
    is installed as setuid root. Use mailer=submission instead.
    * Starting from sendmail 8.12 sendmail is normally
    installed as setgid smmsp and not as setuid root.
    - However error message is printed only if
    verify-local-address=yes is also set

    - IMAP connection is stalled some times. Reason is unknown.

    Collector of these patches
    --------------------------

    Kari Hurtta <elm@elmme-mailer.org>
    Kari Hurtta <hurtta+elm@siilo.FMI.FI>


    --
    / Kari Hurtta

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Kari Hurtta@21:1/5 to All on Fri Jan 5 13:46:11 2024
    Experimental DEB generator script for Elm ME+ 2.5 PLalpha63 exists on
    <URL: http://www.elmme-mailer.org/deb/elm-ME+2.5.html > directory.

    Files are following

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha63-1.gen_deb
    DEB generator script
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha63-1.gen_deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha63-1.gen_deb.sig

    A command

    elm-ME+2.5.alpha63-1.gen_deb {packager}

    generates package elmme with version 1.1.62-1.{distribution}.

    A command

    elm-ME+2.5.alpha63-1.gen_deb --old {packager}

    generates package elm with version ME+2.5.alpha63-1.{distribution}.

    Both commands produce package with filename elm-ME+2.5.alpha63-1.{distribution}.{arch}.deb.

    == Old package names, i386

    Package elm with version ME+2.5.alpha63-1.{distribution} and
    architecture i386.

    * Compiled on Ubuntu 6.06.2 LTS
    (Linux 2.6, glibc 2.3, Sendmail 8.13)

    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha63-1.Ubuntu6.06.i386.deb
    Package elm binary DEB build on Ubuntu 6.06.2 LTS
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha63-1.Ubuntu6.06.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha63-1.Ubuntu6.06.i386.deb.sig

    * Compiled on Ubuntu 10.04.4 LTS
    (Linux 2.6, glibc 2.11, Sendmail 8.14)

    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha63-1.Ubuntu10.04.i386.deb
    Package elm binary DEB build on Ubuntu 10.04.4 LTS
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha63-1.Ubuntu10.04.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/old/elm-ME+2.5.alpha63-1.Ubuntu10.04.i386.deb.sig

    == New package names, i386

    Package elmme with version 1.1.63-1.{distribution} and architecture
    i386.

    * Compiled on Ubuntu 10.04.4 LTS
    (Linux 2.6, glibc 2.11, Sendmail 8.14)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha63-1.Ubuntu10.04.i386.deb
    Package elmme binary DEB build on Ubuntu 10.04.4 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha63-1.Ubuntu10.04.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha63-1.Ubuntu10.04.i386.deb.sig

    * Compiled on Ubuntu 14.04.6 LTS
    (Linux 4.4, glibc 2.19, no MTA)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha63-1.Ubuntu14.04.i386.deb
    Package elmme binary DEB build on Ubuntu 14.04.6 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha63-1.Ubuntu14.04.i386.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha63-1.Ubuntu14.04.i386.deb.sig

    == New package names, amd64 (x86_64)

    Package elmme with version 1.1.63-1.{distribution} and architecture
    amd64 (also known as x86_64).

    * Compiled on Ubuntu 18.04.6 LTS
    (Linux 5.4, glibc 2.27, Sendmail 8.15)

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha63-1.Ubuntu18.04.amd64.deb
    Package elmme binary DEB build on Ubuntu 18.04.6 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha63-1.Ubuntu18.04.amd64.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha63-1.Ubuntu18.04.amd64.deb.sig

    * Compiled on Ubuntu 20.04.6 LTS
    (Linux 5.4, glibc 2.31, Postfix 3.4 (not configured))

    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha63-1.Ubuntu20.04.amd64.deb
    Package elmme binary DEB build on Ubuntu 20.04.6 LTS
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha63-1.Ubuntu20.04.amd64.deb.elm-key-2018.sig
    - http://www.elmme-mailer.org/deb/elm-ME+2.5.alpha63-1.Ubuntu20.04.amd64.deb.sig

    == Signatures

    {file}.sig PGP signature (old key pubkey.asc, EA5A2379 1996-04-23)
    {file}.elm-key-2018.sig GPG signature (key elm.key.2018.asc, 44FC796B 2018-12-01, expires: 2028-11-28)

    == Configuration

    Following files (if exists) are rewritten by elmconfwriter on
    installation:

    - /usr/local/lib/elm.rc
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.hashmarks
    - /usr/local/lib/elm.tagfilter.entities

    Deb generator script compiles elm for binary distribution, so you must
    edit /usr/local/lib/elm.rc before using Elm ME+ 2.5. Following
    variables may need to be modified on elm.rc:

    - mailer
    - hostdomain (this is usually needed)
    - hostfullname
    - hostname (usually this is not needed)
    - mailname (default values is generated from other values)
    - name-resolution (controls default values of hostdomain, hostfullname, hostname, mailname)

    By default first value for mailname is read from /etc/mailname file.

    For re-generation of following file, old information (if exists) is used:

    - /usr/local/lib/elm.rc

    WARNING: Check after installation that libraries are enabled. Global elm.rc values are:

    use-library =
    use-base-library = iconv
    use-config-library = resolv
    use-connect-library = tls resolv
    use-mailer-library = smtp resolv

    After editing global elm.rc run /usr/local/lib/elmrc-write -GI for fixing possible errors.

    On installation following existing files are merged with new values:

    - /usr/local/lib/elm.terminalinfo
    - /usr/local/lib/elm.mimetypes
    - /usr/local/lib/elm.mimecharsets
    - /usr/local/lib/elm.mailservices
    - /usr/local/lib/elm.mailinglists
    - /usr/local/lib/elm.aliases
    - /usr/local/lib/elm.iso2022sets
    - /usr/local/lib/elm.hashmarks
    - /usr/local/lib/elm.tagfilter.entities

    Old values from /usr/local/lib/aliases.text are converted to /usr/local/lib/elm.aliases and /usr/local/lib/aliases.text is renamed
    to /usr/local/lib/aliases.text.OLD.

    On installation new values without merging are written to following
    files:

    - /usr/local/lib/elm.aliases.NEW
    - /usr/local/lib/elm.mailinglists.NEW
    - /usr/local/lib/elm.mailservices.NEW
    - /usr/local/lib/elm.mimecharsets.NEW
    - /usr/local/lib/elm.mimetypes.NEW
    - /usr/local/lib/elm.terminalinfo.NEW
    - /usr/local/lib/elm.iso2022sets.NEW
    - /usr/local/lib/elm.hashmarks.NEW
    - /usr/local/lib/elm.tagfilter.entities.NEW

    Also following directories are used:

    - /usr/local/lib/elm.map.txt/ (global setting map-text-dir = {lib}/elm.map.txt)
    - /usr/local/lib/elm.map.bin/ (global setting map-bin-dir = {lib}/elm.map.bin)
    - /usr/local/lib/elm.user.map/ (global setting user-map-dir = {lib}/elm.user.map)

    Hashmark EXAMPLE uses file /usr/local/lib/elm.user.map/elm.usermap.

    SUMMARY: This release includes tagfilter module for
    filtering text/enriched and text/html
    tags. This release adds "editor-tfent-propline"
    and "page-tagfilter" elmrc options and
    new tool "elmtagfilterents". This release
    adds global "elm.tagfilter.entities" and
    user "~/.elm/tagfilter.entities" configuration
    files. Also some bug fixes and other changes are
    included.

    Changes on Elm ME+ 2.5 PLalpha63 compared with Elm ME+ 2.5 PLalpha62 --------------------------------------------------------------------

    SUMMARY: This release includes tagfilter module for
    filtering text/enriched and text/html
    tags. This release adds "editor-tfent-propline"
    and "page-tagfilter" elmrc options and
    new tool "elmtagfilterents". This release
    adds global "elm.tagfilter.entities" and
    user "~/.elm/tagfilter.entities" configuration
    files. Also some bug fixes and other changes are
    included.

    - Changed prototype of string_matches_ascii() -
    Added op parameter:
    SMA_op_normal,
    SMA_op_match_prefix,
    SMA_op_find_ascii,
    SMA_op_return_order
    SMA_return_len can not used with SMA_op_return_order

    - Added tagfilter module for <tag> filtering.

    - Tagfilter supports following text/enriched tags
    when builtin++ pager is used:
    <bold>
    <underline>
    <italic>
    <center> (detected, does nor work correctly (*))
    <nofill>
    Other tags are just filtered.
    - Rewrapping and joining of multiple lines to one line
    for displaying not supported when replying or forwarding
    mail or when viewing with external pager. This is similar
    than how content type text/plain; format=flowed
    is handled.
    - If builtin pager is not used (or when replying or
    forwarding mail) shows message

    [ text/enriched is unsupported, filtering tags. ]

    (*) Centering does not work when displayed line
    cover several tags or several lines on
    original message (before newline is
    converted to space or multiple
    lines are joined to one line for
    displaying).

    - Added pg_ITALIC flag (termcap codes ZH and ZR).
    - Added pg_DIM flag (termcap code mh).
    - Added pg_SUBSCRIPT flag (termcap codes ZN and ZV).
    - Added pg_SUPERSCRIPT flag (termcap codes ZO and ZW).
    - Added pg_STRIKETHROUGH (no termcap code)

    - Changed PR_CENTER_THIS handling on span_helper()

    - Tagfilter supports following text/html tags
    when builtin++ pager is used:
    <html>
    <head>
    <body>
    <noscript>
    <b>
    <br>
    <em>
    <hr>
    <i>
    <p>
    <pre>
    <q>
    <s> (!!)
    <strong>
    <sub> (XX)
    <sub> (XX)
    <u>
    - Tagfilter uses display attributes for following
    text/html tags (but reports them unsupported)
    when builtin++ pager is used:
    <cite>
    <del>
    <h1>
    <h2>
    <h3>
    <h4>
    <h5>
    <h6>
    <var>
    - Other text/html tags are just used for define
    what are recognized tags but otherwise just
    filtered.
    - Tagfilter recognizes different text/html tags depending
    on inside on what tags they occurs.

    (!!) Only when "ANSI-SGR strikethrough" is
    given on global elm.terminalinfo or
    on user ~/.elm/terminal.info.
    (XX) Incompletely - no terminals support this
    - If builtin pager is not used (or when replying or
    forwarding mail) shows message

    [ text/html is unsupported, filtering tags. ]

    - Added elmrc option "page-tagfilter". If set,
    media types given as keywords are displayed with "pager",
    otherwise these are considered to need metamail
    (or mailcap programs).
    Option includes list of keywords:
    none None of values are selected
    text/enriched text/enriched type does not require
    external programs or metamail
    text/html text/html type does not require
    external programs or metamail
    This does not take account possible unsupported
    tags or that builtin++ pager is not used as "pager".

    - Added global elm.tagfilter.entities and
    user .elm/tagfilter.entities. These files
    defines text/html named character references
    recognized by tagfilter.

    See also "Tagfilter entities listing"

    - Builtin text/html named character references
    recognized by tagfilter are

    &amp; unicode 0x0026 & -character
    &nbsp; unicode 0x00A0 NO-BREAK SPACE
    &quot; unicode 0x0022 " -character
    &lt; unicode 0x003C < -character
    &gt; unicode 0x003E > -character

    - Added elmtagfilterents -command.

    - Added "editor-tfent-propline" elmrc option.
    This is similar than "editor-elmrc-propline".
    If set to "emacs", then when on user's
    tagfilter.entities file, line
    # -*- coding: ... -*-
    is added to top of file. That line is also written
    if "editor-tfent-propline" elmrc option is
    set to "auto" (default) and line detected
    when file is read.
    If set to "ignore", then editor property line
    # -*- coding: ... -*-
    on top of file is ignored.

    - Global global elm.terminalinfo and
    user ~/.elm/terminal.info can now include
    ANSI-SGR which tell elm to use ANSI SGR
    attributes for bold, dim, italic, underline,
    blinking, reverse, strikethrough, superscript
    and subscript. If termcap specifies also
    attribute, elm may invoke it twice. Do
    not use ANSI-SGR if termcap already specifies it.
    This is mainly for strikethrough, which is
    not supported by termcap. For more information
    see chapter "Additional terminal information".

    - Added struct out_entity routines with lib/out_entity.c
    - Added state_putentity() to lib/elmlib.h and
    lib/state_out.c
    - Added string_type_have_unicode() to hdrs/elmlib.h
    and lib/string.c
    - Added state_add_opcode_pager_range() to hdrs/elmlib.h and
    lib/state_out.c
    - Added state_pager_add_param_text() to hdrs/elmlib.h and
    lib/state_out.c
    - Added struct pager_param_value routines with
    lib/pager_range.c
    - Added stringbuffer_add_entity() and
    stringbuffer_add_pager_param() to hdrs/elmlib.h and
    lib/stringbuffer.c

    - Added new_out_entity(), free_out_entity(),
    inc_out_entity_refcount(), out_entity_reference_key(),
    out_entity_text_value(), out_entity_unicode_value(),
    and dup_out_entity()
    to hdrs/elmlib.h and lib/out_entity.c

    - Added missing fclose(f) to parse_hash_mark_entries()
    - Change on dump_aliases_map()

    - Changed exit status handling on elmregister.

    - Possible fix for state_putunicode() on lib/state_out.c

    - Moved inc_pager_range_refcount() from hdrs/pg_range_imp.h
    to hdrs/elmlib.h
    - Potential fix for string_sort_cmp()
    - Fixed crash when inherited page_range was used
    PAGER RANGE PANIC in .../lib/pager_range.c:562:get_pager_range_serialization_from_file
    >>>Bad data read from file

    - Added new_string_alt_text(), new_string_alt_entity(),
    get_string_alt_value(), inc_string_alt_refcount() and
    free_string_alt() to hdrs/elmlib.h and lib/string_alt.c

    - Added get_lineext_alt_and_walk()to hdrs/elmlib.h and
    lib/pager_lineext.c
    - Added curses_available_string()
    to hdrs/me.h and src/screen/curses.c
    - Added get_pager_param_from_stringbuffer() to
    hdrs/me.h and lib/stringbuffer.c

    - Some fixed for error handling of load_terminal_map()
    - Added ANSI_sgr_values[] to hdrs/msiclib.h
    and lib/misc/terminal.c
    - Added pg_set_or_disable_flags() to hdrs/msiclib.h
    and lib/misc/terminal.c

    - Changed get_pager_range_change()
    - Changed malloc_simple_pager_range()

    - Fix for put_pager_range_serialization_to_file()
    - Fix for stringbuffer_add_pager_range()
    - Fix for state_convert_EOLN()
    - Fix for get_decoded_attachment()

    - Added curses_check_terminal()
    to hdrs/me.h and src/screen/curses.c

    New tool:
    elmtagfilterents

    New files:
    melib/tagfilter.c
    melib/tagfilter_decode.c
    hdrs/tagfilter_imp.h
    melib/tagfilter_entity.c
    melib/init.c
    doc/elmtagfilent-info
    utils/elmtagfilterents.c
    doc/tagfilter.entities
    ConfTool/GenEntities
    hdrs/convert_status.h
    lib/convert_status.c
    doc/elmtagfilterents.1
    melib/tagfilter_tag.c
    lib/out_entity.c
    melib/tagfilter_enriched.c
    hdrs/elmme-magic.h
    melib/tagfilter_html.c
    hdrs/pg_params_imp.h
    lib/string_alt.c

    New elmrc option:
    editor-tfent-propline
    page-tagfilter

    Additional terminal information
    -------------------------------

    Files libdir/elm.terminalinfo and ~/.elm/terminal.info
    handle terminal specific methods for switching of chartset
    of terminal. In the file there may be following kinds of
    lines:

    term ISO-2022 charset-name
    term ISO-2022 charset-definition
    term ISO-2022 charset-name [ condition ]
    term ISO-2022/DW charset-name
    term ISO-2022/DW charset-definition
    term ISO-2022/DW charset-name [ condition ]
    term ISO-2022-LIKE charset-name bank-specification
    term PRIVATE charset-name d/d d/d d/d
    term PRIVATE charset-name [ condition ] d/d d/d d/d

    term flag flag-keyword
    term DW charset-name
    term DW charset-name [ condition ]

    term ANSI-SGR attribute
    term ANSI-SGR attribute [ condition ]

    where term is type of terminal (ie value of $TERM).
    ISO-2022 is literal, which indicates that
    next column is character set name or character set
    definition as on elm.mimecharsets or mime.charsets file
    and that character set switching happends as given with
    other-set and bank-Gx-* attributes on character set
    definition. PRIVATE literal, which indicates that
    next two columns are character set name and bytes given
    on d/d format for switch character set.

    ISO-2022/DW literal indicates that terminal uses
    same attributes than on case ISO2022 literal.
    Additionally that says that 94x94 and 96x96 sets
    consume two character positions on display with that
    terminal. That literal is available only with charset
    which have type=iso2022.

    It is assumed that these escape sequences do not affect
    to input (keyboard) charset of terminal (ie. do not affect
    'keyboard mode' or 'keyboard language').

    [ condition ] is like [ exp = exp ] where exp can be
    either "quoted value" or $ENV_VAR. "quoted value" allow
    also environment variables (same way than Elm ME+ allows
    on pathnames.) For example that may be used on lines like

    linux PRIVATE ISO-8859-15 [ $SYSFONTACM="iso15" ] 1/11 2/8 4/11 0/15


    Also [ condition ] can be like [ exp =~ exp ]
    Right side is treated as pattern ( * and ? are joker
    characters.) For example that may be used on lines like

    xterm ISO-2022 UTF-8 [ $XTERM_VERSION=~"XTerm(*)" ]


    Read comments about using of these from doc/terminal.info

    ISO-2022-LIKE indicates that terminal assigns private
    codes for the charset. That definition do not define iso 2022
    codes for the charset, but it is used than these codes are
    defined for charset. For example that may be used on lines
    like

    vt200 ISO-2022-LIKE DEC-MCS left=bank-G0;bank-G0-94=4/2;right=bank-G2;bank-96=3/12

    DW indicates for system charset that wcwidth()
    function should be used to get char width.
    This means that logical width of character
    may be 0, 1 or 2 columns on that terminal.

    On systems which have __STDC_ISO_10646__ defined,
    DW flag on terminal.info works like "locale-charsets"
    option if charset and terminal match.

    If charset does not support calculation of visible len
    and there is DW flag given for that charset and
    terminal, then error message
    Double wide characters are not supported
    is printed.

    Flag keyword xterm-title specifies that terminal supports
    changing of window title and icon name in the same way as
    xterm. That can be used with elmrc option set-window-title.
    Flag keyword xwsh-title that terminal supports changing of
    window title and icon name similar than SGI's xwsh.

    ANSI-SGR indicates that terminal supports display
    attributes chich are not given on termcap specification.
    These attributes are following (listed attribute
    name and uses codes for enable an disable them):

    bold CSI 1 m CSI 22 m
    dim CSI 2 m CSI 22 m
    italic CSI 3 m CSI 23 m
    underline CSI 4 m CSI 24 m
    blinking CSI 5 m CSI 25 m
    reverse CSI 7 m CSI 27 m
    strikethrough CSI 9 m CSI 29 m
    superscript CSI 73 m CSI 75 m
    subscript CSI 74 m CSI 75 m

    Tagfilter entities listing
    -------------------------

    Files libdir/elm.tagfilter.entities and ~/.elm/.elm/tagfilter.entities
    handles named character references regognized by
    tagfilter. In the file there may be following kinds of
    lines:

    &tag; html nnnn
    &tag; html 0ooo
    &tag; html xhhhh
    &tag; html "xxxx"

    where nnnn is decimal value (must start with 1-9)
    where 0ooo is octal value (must start with 0)
    where xhhh is hexdecimal (must start with x)
    where "xxxx" is string value (must be quoted with ")
    where &tag; is entity / named character reference
    which includes ending ; when matching.
    where &tag is entity / named character reference
    which matches if there is no ;
    where html specifies that these entities are for text/html
    (other keywords not currently defined)

    Lines starting with # are comments
    Also there can be ending # comment
    on data lines.

    Warnings
    --------

    - Not compiled with MMDF support defined, so probably it doesn't
    work (or even compile).

    - This has not been tested much so there can be bad bugs.

    Bug reports to: Kari E. Hurtta <elm@elmme-mailer.org>
    (was hurtta+elm@posti.FMI.FI)

    - Internationalized (ie. non-ASCII) domain names are not supported.

    - Support for multipart/signed and multipart/encrypted (specially:
    support for PGP/MIME) only in reading side. There is no support
    for attachments with multipart/encrypted.

    - HP's shoftkeys are no longer supported

    - DECNET addresses like host::user may be interpreted as phrase
    of group syntax or as route of source routed address.

    - Header editing screen now uses addresses in form phrase <address>,
    but because it does not require using of comma (,), multiword
    phrases must be entered in quotes.

    For example: "Kari Hurtta" <hurtta>

    - If address includes <> or comments (), they are not aliased
    expanded. So aliases must be entered as bare words.

    - Addresses given as arguments to elm command should be given
    as one address per argument. Giving of sevaral addresses per
    one argument causes that address is misparsed if header is
    edited on header editing screen.

    That is:

    Use: elm '"Kari Hurtta" <hurtta>' 'Admin <root>'

    Don't use: elm 'Kari Hurtta <hurtta>, Admin <root>'

    - p)rint command acts as P)rint text -command. So it
    is currently quite useless.
    p)rint command does that via readmsg -command. However
    P)rint text does actually same (without readmsg).

    - Some Linux libraries does not follow $LC_CTYPE when program is
    setgid. Net result is that your locale is always C. That is
    visible that $LC_CTYPE does not effect to locale printed by
    'elm -vvvvv':

    Locale (LC_CTYPE): C
    Display character-set: US-ASCII
    Sending character-set: US-ASCII

    - All refrences iso2022 maps are parsed and read to memory.
    This may cause quite big memory consumption specially because
    eastern (multibyte) sets tend to be lot of characters. That
    mapping information should be shared between processes to
    reduce memory consuption.

    - If display charset is produced by using mapping from locale
    to charset where charset definition is later invalidated
    ("removed") by setting explicit compatcharsets on user's
    .elm/elmrc, that may cause PANIC on elm's internal pager
    or other problems. Invalidation happens if display charset
    is on implicit compatcharsets list (because of charset
    definition), but does not have explicit compatcharsets list
    given by user.

    - Neither Unicode didirectional algorithm nor Right-Left scripts
    are supported.

    - In some situations two Status headers may be generated two
    Status headers -- one by IMAP deamon and one from APPENDed
    message.

    - When APPENDing message to IMAP folder (which is normal UNIX
    mailbox format) original "From " separator line can not be
    preserved -- specially it is not possible to pass envelope
    sender address.

    - For UTF-8 charset Elm only knows printable characters from
    Latin/1 range, if unicode database (see elmrc option "unidata")
    is not loaded.

    - For using of ISO2022 character sets it is required that mapping
    them to unicode is know -- otherwise Elm ME+ does not know which
    characters are printable.

    - UTF-16 surrogate pairs (D800-DFFF) are not supported on UTF-7
    charset.

    - Mixing of names using IMAP naming convention
    (imap-naming-convention = yes)
    and names using imap-charset does not work very well...

    - " Regarding my message (8 Aug 2000) regarding 'newmail' on
    AIX 4.3.3 in an 'aixterm' window and the 'aixterm' did not
    close, indeed the problem was NOT related to 'newmail' but an
    AIX bug.

    IBM has release a patch, and the 'aixterm' in AIX 4.3.3 must
    be update with fileset X11.apps.aixterm.4.3.3.26 (PTF
    U473920) is solved to problem."
    From: Noam G. Nudelman

    - File /usr/share/locale/fi/charset gives charset name utf-8 on
    Linux Mandrake 7.2. This causes that Configure generates
    mapping
    fi utf-8
    to elm.mimecharsets. However that seems to have
    incorrect mapping. You may want change this to
    fi ISO-8859-1

    ( however nl_langinfo(CODESET) gives charset ISO-8859-15
    but look following entry. )

    - Locale 'fi' seems to have charset ISO-8859-15 according
    of nl_langinfo(CODESET) on Mandrake Linux 7.2 (and probaly
    others with same glibc version). However for example gnome
    terminal uses font
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-1
    and not
    -misc-fixed-medium-r-normal--12-200-75-75-c-100-iso8859-15

    Also KDE's konsole program seems use iso8859-1 character set
    although locale is 'fi' which should have ISO-8859-15 according
    of nl_langinfo (selecting "unicode" from menu seems fix that.)

    Because of mismatch more correct locale is fi_FI.88591, which gives
    ISO-8859-1 character set according of nl_langinfo(CODESET).

    ( Locale seems come from /etc/sysconfig/i18n or $HOME/.i18n )

    > To enable handling of ISO-8859-1 and ISO-8859-15 character sets
    on linux console, read comments from doc/terminal.info file.

    - Mandrake Linux 7.2 seems set LD_PRELOAD to load
    /usr/lib/libxalflaunch.so.0. That (xalf-0.4-2mdk) causes that
    elm to crash on startup (actually before main() is reached.)

    - kterm on Mandrake Linux 7.2 seems have (at least on my test
    environment) seems get bad fontlist (*VT100*fontList) which
    gives bad font for iso8859-1 -- therefore ISO-8859-1 characters
    do not work.

    ("xrdb -query" seems report resource with name "*fontList"
    -- that probably overrides "*VT100*fontList" which comes
    from /usr/lib/X11/app-defaults/KTerm )

    - Also note that initially kterm does NOT default to
    ISO-8859-1 -- therefore ISO-8859-1 works only when
    elm explicity switch to ISO-8859-1 (for example
    with 'elm -D ISO-8859-1')

    - When assembling message/partial MIME (RFC 2046)
    requires that all headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are copied from
    initial enclosing message to assembled message. It also
    requires that headers except Content-*, Subject,
    MIME-Version, Message-ID and Encrypted are ignored and
    dropped from enclosed message.

    For now we copy only Received: -headers. Dropping extra
    headers from enclosed message makes assembly more
    complicated (and dropping of Received: -headers
    from enclosed message do not make sense.)

    - mailer=sendmail; verify=yes works only when sendmail
    is installed as setuid root. Use mailer=submission instead.
    * Starting from sendmail 8.12 sendmail is normally
    installed as setgid smmsp and not as setuid root.
    - However error message is printed only if
    verify-local-address=yes is also set

    - IMAP connection is stalled some times. Reason is unknown.

    Collector of these patches
    --------------------------

    Kari Hurtta <elm@elmme-mailer.org>
    Kari Hurtta <hurtta+elm@siilo.FMI.FI>


    --
    / Kari Hurtta

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)