From:  Kari Hurtta <hurtta@kasvihuone.keh.iki.fi>
Date:  24 Mar 2020 14:20:35 Hong Kong Time
Newsgroup:  news.alt119.net/comp.mail.elm
Subject:  

Elm ME+ 2.5 PLalpha51a DEB announcement

NNTP-Posting-Host:  89.27.39.95

Experimental DEB generator script for Elm ME+ 2.5 PLalpha51a
exists on  
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  to abort or  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 
                                     (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 
, but because it does not require using of comma (,), multiword phrases must be entered in quotes. For example: "Kari 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" ' 'Admin ' Don't use: elm 'Kari Hurtta , Admin ' - 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 Kari Hurtta -- / Kari Hurtta