From 8781af1dfc9fdc1fbc08b281cc418bee8dde604d Mon Sep 17 00:00:00 2001 From: Eduardo Chappa Date: Sun, 9 Feb 2020 22:46:32 -0700 Subject: * Creation of port wxp to build Alpine in Windows XP. At the time of this writing, the port w32 is the same as the port wxp, but it is intended to target other 32 bit operating systems. --- alpine/DLL/README | 6 ++++++ alpine/DLL/w32/libcrypto-41.dll | Bin 0 -> 1384064 bytes alpine/DLL/w32/libssl-43.dll | Bin 0 -> 294525 bytes alpine/DLL/w32/libtls-15.dll | Bin 0 -> 69245 bytes alpine/DLL/wnt/libcrypto-45.dll | Bin 0 -> 1657500 bytes alpine/DLL/wnt/libssl-47.dll | Bin 0 -> 333468 bytes alpine/DLL/wnt/libtls-19.dll | Bin 0 -> 78492 bytes alpine/DLL/wxp/libcrypto-41.dll | Bin 0 -> 1384064 bytes alpine/DLL/wxp/libssl-43.dll | Bin 0 -> 294525 bytes alpine/DLL/wxp/libtls-15.dll | Bin 0 -> 69245 bytes alpine/alpine.c | 2 +- alpine/confscroll.c | 2 +- alpine/libcrypto-41.dll | Bin 1384064 -> 0 bytes alpine/libcrypto-45.dll | Bin 1657500 -> 0 bytes alpine/libssl-43.dll | Bin 294525 -> 0 bytes alpine/libssl-47.dll | Bin 333468 -> 0 bytes alpine/libtls-15.dll | Bin 69245 -> 0 bytes alpine/libtls-19.dll | Bin 78492 -> 0 bytes build.bat | 29 +++++++++++++++++++++++------ imap/src/osdep/nt/ssl_nt.c | 6 +++--- include/config.wnt.h | 15 +++++++++++---- libressl/x86/README | 6 ++++++ libressl/x86/libcrypto-41.lib | Bin 784894 -> 0 bytes libressl/x86/libcrypto-45.lib | Bin 838006 -> 0 bytes libressl/x86/libssl-43.lib | Bin 62960 -> 0 bytes libressl/x86/libssl-47.lib | Bin 75200 -> 0 bytes libressl/x86/libtls-15.lib | Bin 20746 -> 0 bytes libressl/x86/libtls-19.lib | Bin 23172 -> 0 bytes libressl/x86/w32/libcrypto-41.lib | Bin 0 -> 784894 bytes libressl/x86/w32/libssl-43.lib | Bin 0 -> 62960 bytes libressl/x86/w32/libtls-15.lib | Bin 0 -> 20746 bytes libressl/x86/wnt/libcrypto-45.lib | Bin 0 -> 838006 bytes libressl/x86/wnt/libssl-47.lib | Bin 0 -> 75200 bytes libressl/x86/wnt/libtls-19.lib | Bin 0 -> 23172 bytes libressl/x86/wxp/libcrypto-41.lib | Bin 0 -> 784894 bytes libressl/x86/wxp/libssl-43.lib | Bin 0 -> 62960 bytes libressl/x86/wxp/libtls-15.lib | Bin 0 -> 20746 bytes pith/conf.c | 10 +++++----- pith/conf.h | 4 ++-- pith/conftype.h | 2 +- pith/pine.hlp | 2 +- 41 files changed, 60 insertions(+), 24 deletions(-) create mode 100644 alpine/DLL/README create mode 100644 alpine/DLL/w32/libcrypto-41.dll create mode 100644 alpine/DLL/w32/libssl-43.dll create mode 100644 alpine/DLL/w32/libtls-15.dll create mode 100644 alpine/DLL/wnt/libcrypto-45.dll create mode 100644 alpine/DLL/wnt/libssl-47.dll create mode 100644 alpine/DLL/wnt/libtls-19.dll create mode 100644 alpine/DLL/wxp/libcrypto-41.dll create mode 100644 alpine/DLL/wxp/libssl-43.dll create mode 100644 alpine/DLL/wxp/libtls-15.dll delete mode 100755 alpine/libcrypto-41.dll delete mode 100644 alpine/libcrypto-45.dll delete mode 100755 alpine/libssl-43.dll delete mode 100644 alpine/libssl-47.dll delete mode 100755 alpine/libtls-15.dll delete mode 100644 alpine/libtls-19.dll create mode 100644 libressl/x86/README delete mode 100755 libressl/x86/libcrypto-41.lib delete mode 100644 libressl/x86/libcrypto-45.lib delete mode 100755 libressl/x86/libssl-43.lib delete mode 100644 libressl/x86/libssl-47.lib delete mode 100755 libressl/x86/libtls-15.lib delete mode 100644 libressl/x86/libtls-19.lib create mode 100644 libressl/x86/w32/libcrypto-41.lib create mode 100644 libressl/x86/w32/libssl-43.lib create mode 100644 libressl/x86/w32/libtls-15.lib create mode 100644 libressl/x86/wnt/libcrypto-45.lib create mode 100644 libressl/x86/wnt/libssl-47.lib create mode 100644 libressl/x86/wnt/libtls-19.lib create mode 100644 libressl/x86/wxp/libcrypto-41.lib create mode 100644 libressl/x86/wxp/libssl-43.lib create mode 100644 libressl/x86/wxp/libtls-15.lib diff --git a/alpine/DLL/README b/alpine/DLL/README new file mode 100644 index 00000000..2bde1fab --- /dev/null +++ b/alpine/DLL/README @@ -0,0 +1,6 @@ +This directory is populated by the build.bat script. + +* wxp comes from libressl, and can run 32 bits version in Alpine. +* w32 is equal to wxp, but it is intended to be different from it, + and useful for other 32 bits operating systems +* wnt was compiled with cygwin 64 bits. diff --git a/alpine/DLL/w32/libcrypto-41.dll b/alpine/DLL/w32/libcrypto-41.dll new file mode 100644 index 00000000..7c7f328f Binary files /dev/null and b/alpine/DLL/w32/libcrypto-41.dll differ diff --git a/alpine/DLL/w32/libssl-43.dll b/alpine/DLL/w32/libssl-43.dll new file mode 100644 index 00000000..369fe403 Binary files /dev/null and b/alpine/DLL/w32/libssl-43.dll differ diff --git a/alpine/DLL/w32/libtls-15.dll b/alpine/DLL/w32/libtls-15.dll new file mode 100644 index 00000000..3dd9450c Binary files /dev/null and b/alpine/DLL/w32/libtls-15.dll differ diff --git a/alpine/DLL/wnt/libcrypto-45.dll b/alpine/DLL/wnt/libcrypto-45.dll new file mode 100644 index 00000000..b644579b Binary files /dev/null and b/alpine/DLL/wnt/libcrypto-45.dll differ diff --git a/alpine/DLL/wnt/libssl-47.dll b/alpine/DLL/wnt/libssl-47.dll new file mode 100644 index 00000000..6aad166c Binary files /dev/null and b/alpine/DLL/wnt/libssl-47.dll differ diff --git a/alpine/DLL/wnt/libtls-19.dll b/alpine/DLL/wnt/libtls-19.dll new file mode 100644 index 00000000..bbbb6c34 Binary files /dev/null and b/alpine/DLL/wnt/libtls-19.dll differ diff --git a/alpine/DLL/wxp/libcrypto-41.dll b/alpine/DLL/wxp/libcrypto-41.dll new file mode 100644 index 00000000..7c7f328f Binary files /dev/null and b/alpine/DLL/wxp/libcrypto-41.dll differ diff --git a/alpine/DLL/wxp/libssl-43.dll b/alpine/DLL/wxp/libssl-43.dll new file mode 100644 index 00000000..369fe403 Binary files /dev/null and b/alpine/DLL/wxp/libssl-43.dll differ diff --git a/alpine/DLL/wxp/libtls-15.dll b/alpine/DLL/wxp/libtls-15.dll new file mode 100644 index 00000000..3dd9450c Binary files /dev/null and b/alpine/DLL/wxp/libtls-15.dll differ diff --git a/alpine/alpine.c b/alpine/alpine.c index 25ea2800..98814787 100644 --- a/alpine/alpine.c +++ b/alpine/alpine.c @@ -471,7 +471,7 @@ main(int argc, char **argv) init_vars(pine_state, process_init_cmds); -#if !defined(_WINDOWS) || (defined(ENABLE_WINDOWS_LIBRESSL) && defined(W32BITSBUILD)) +#if !defined(_WINDOWS) || defined(WINDOWS_LIBRESSL_CERTS) set_system_certs_path(pine_state); set_system_certs_container(pine_state); #endif diff --git a/alpine/confscroll.c b/alpine/confscroll.c index 78f4a92d..85e364d8 100644 --- a/alpine/confscroll.c +++ b/alpine/confscroll.c @@ -5773,7 +5773,7 @@ fix_side_effects(struct pine *ps, struct variable *var, int revert) #ifdef DF_ENCRYPTION_RANGE var == &ps->vars[V_ENCRYPTION_RANGE] || #endif -#if !defined(_WINDOWS) || (defined(ENABLE_WINDOWS_LIBRESSL) && defined(W32BITSBUILD)) +#if !defined(_WINDOWS) || defined(ENABLE_WINDOWS_LIBRESSL_CERTS) var == &ps->vars[V_SSLCAPATH] || var == &ps->vars[V_SSLCAFILE] || #endif diff --git a/alpine/libcrypto-41.dll b/alpine/libcrypto-41.dll deleted file mode 100755 index 7c7f328f..00000000 Binary files a/alpine/libcrypto-41.dll and /dev/null differ diff --git a/alpine/libcrypto-45.dll b/alpine/libcrypto-45.dll deleted file mode 100644 index b644579b..00000000 Binary files a/alpine/libcrypto-45.dll and /dev/null differ diff --git a/alpine/libssl-43.dll b/alpine/libssl-43.dll deleted file mode 100755 index 369fe403..00000000 Binary files a/alpine/libssl-43.dll and /dev/null differ diff --git a/alpine/libssl-47.dll b/alpine/libssl-47.dll deleted file mode 100644 index 6aad166c..00000000 Binary files a/alpine/libssl-47.dll and /dev/null differ diff --git a/alpine/libtls-15.dll b/alpine/libtls-15.dll deleted file mode 100755 index 3dd9450c..00000000 Binary files a/alpine/libtls-15.dll and /dev/null differ diff --git a/alpine/libtls-19.dll b/alpine/libtls-19.dll deleted file mode 100644 index bbbb6c34..00000000 Binary files a/alpine/libtls-19.dll and /dev/null differ diff --git a/build.bat b/build.bat index 6f43f0a9..ad288fcc 100755 --- a/build.bat +++ b/build.bat @@ -11,8 +11,15 @@ rem http://www.apache.org/licenses/LICENSE-2.0 rem rem ======================================================================== +rem These are the default values, which we might override below +rem by setting them to older versions +set CRYPTO_VERSION=45 +set SSL_VERSION=47 +set TLS_VERSION=19 + if "%1"=="" goto blank if "%1"=="wnt" goto wnt +if "%1"=="wxp" goto wxp if "%1"=="w32" goto w32 if "%1"=="w2k" goto w2k if "%1"=="clean" goto clean @@ -24,22 +31,27 @@ echo Must specify build command! echo usage: BUILD cmd echo where "cmd" is one of either: echo wnt -- Windows -echo w32 -- Windows 32 bits (e.g. XP) +echo w32 -- Windows 32 bits (not Windows XP) +echo wxp -- Windows XP echo w2k -- Windows with Win2k Kerb echo clean -- to remove obj, lib, and exe files from source goto fini -:w32 +:wxp set CRYPTO_VERSION=41 set SSL_VERSION=43 set TLS_VERSION=15 set BIT=32 -set windows32build=-DW32BITSBUILD +set windows32build=-DWXPBUILD -D__MINGW_USE_VC2005_COMPAT +goto wntbuild + +:w32 +rem this port uses the default values for libcrypto and friends. +set BIT=32 +set windows32build=-DW32BITSBUILD -D__MINGW_USE_VC2005_COMPAT goto wntbuild :wnt -set CRYPTO_VERSION=45 -set SSL_VERSION=47 -set TLS_VERSION=19 +rem this port uses the default values for libcrypto and friends. set BIT=64 set windows32build= :wntbuild @@ -164,6 +176,11 @@ rem del garbageout.txt if not exist mailutil mkdir mailutil copy /Y "%ALPINE_IMAP%"\src\mailutil\* mailutil\ > garbageout.txt del garbageout.txt +if defined ALPINE_LIBRESSL del /Q libressl\x86\lib*.lib +if defined ALPINE_LIBRESSL del /Q alpine\lib*.dll +if defined ALPINE_LIBRESSL copy /Y libressl\x86\"%1%"\* libressl\x86\ > garbageout.txt +if defined ALPINE_LIBRESSL copy /Y alpine\DLL\"%1%"\* alpine\ > garbageout.txt +if defined ALPINE_LIBRESSL del garbageout.txt goto build :build diff --git a/imap/src/osdep/nt/ssl_nt.c b/imap/src/osdep/nt/ssl_nt.c index 71695766..39368f0f 100644 --- a/imap/src/osdep/nt/ssl_nt.c +++ b/imap/src/osdep/nt/ssl_nt.c @@ -23,8 +23,8 @@ * http://www.apache.org/licenses/LICENSE-2.0 * */ -#if !defined(ENABLE_WINDOWS_LIBRESSL) || !defined(W32BITSBUILD) -#include "ssl_win.c" -#else +#if defined(ENABLE_WINDOWS_LIBRESSL) && (defined(W32BITSBUILD) || defined(WXPBUILD)) #include "ssl_libressl.c" +#else +#include "ssl_win.c" #endif diff --git a/include/config.wnt.h b/include/config.wnt.h index a906b6ff..f086793b 100644 --- a/include/config.wnt.h +++ b/include/config.wnt.h @@ -559,12 +559,19 @@ #define DF_CA_CONTAINER "CAContainer" #endif /* ENABLE_WINDOWS_LIBRESSL */ -#if !defined(ENABLE_WINDOWS_LIBRESSL) || !defined(W32BITSBUILD) -#undef DF_ENCRYPTION_RANGE -#else +#if defined(ENABLE_WINDOWS_LIBRESSL) && (defined(W32BITSBUILD) || defined(WXPBUILD)) +#define WINDOWS_LIBRESSL_CERTS +#if defined(W32BITSBUILD) +#define DEFAULT_SSLCAPATH "certs" +#define DEFAULT_SSLCAFILE "erts\\cert.pem" +#endif /* W32BITSBUILD */ +#if defined(WXPBUILD) #define DEFAULT_SSLCAPATH "C:\\libressl\\ssl\\certs" #define DEFAULT_SSLCAFILE "C:\\libressl\\ssl\\certs\\cert.pem" -#endif +#endif /* WXPBUILD */ +#else +#undef DF_ENCRYPTION_RANGE +#endif /* defined(ENABLE_WINDOWS_LIBRESSL) && (defined(W32BITSBUILD) || defined(WXPBUILD)) */ /* Define to 1 if you can safely include both and . */ /* #define TIME_WITH_SYS_TIME */ diff --git a/libressl/x86/README b/libressl/x86/README new file mode 100644 index 00000000..2bde1fab --- /dev/null +++ b/libressl/x86/README @@ -0,0 +1,6 @@ +This directory is populated by the build.bat script. + +* wxp comes from libressl, and can run 32 bits version in Alpine. +* w32 is equal to wxp, but it is intended to be different from it, + and useful for other 32 bits operating systems +* wnt was compiled with cygwin 64 bits. diff --git a/libressl/x86/libcrypto-41.lib b/libressl/x86/libcrypto-41.lib deleted file mode 100755 index b85bfdfa..00000000 Binary files a/libressl/x86/libcrypto-41.lib and /dev/null differ diff --git a/libressl/x86/libcrypto-45.lib b/libressl/x86/libcrypto-45.lib deleted file mode 100644 index 2dce3dee..00000000 Binary files a/libressl/x86/libcrypto-45.lib and /dev/null differ diff --git a/libressl/x86/libssl-43.lib b/libressl/x86/libssl-43.lib deleted file mode 100755 index e1c673bc..00000000 Binary files a/libressl/x86/libssl-43.lib and /dev/null differ diff --git a/libressl/x86/libssl-47.lib b/libressl/x86/libssl-47.lib deleted file mode 100644 index 495816bf..00000000 Binary files a/libressl/x86/libssl-47.lib and /dev/null differ diff --git a/libressl/x86/libtls-15.lib b/libressl/x86/libtls-15.lib deleted file mode 100755 index 216745dd..00000000 Binary files a/libressl/x86/libtls-15.lib and /dev/null differ diff --git a/libressl/x86/libtls-19.lib b/libressl/x86/libtls-19.lib deleted file mode 100644 index 074b947b..00000000 Binary files a/libressl/x86/libtls-19.lib and /dev/null differ diff --git a/libressl/x86/w32/libcrypto-41.lib b/libressl/x86/w32/libcrypto-41.lib new file mode 100644 index 00000000..b85bfdfa Binary files /dev/null and b/libressl/x86/w32/libcrypto-41.lib differ diff --git a/libressl/x86/w32/libssl-43.lib b/libressl/x86/w32/libssl-43.lib new file mode 100644 index 00000000..e1c673bc Binary files /dev/null and b/libressl/x86/w32/libssl-43.lib differ diff --git a/libressl/x86/w32/libtls-15.lib b/libressl/x86/w32/libtls-15.lib new file mode 100644 index 00000000..216745dd Binary files /dev/null and b/libressl/x86/w32/libtls-15.lib differ diff --git a/libressl/x86/wnt/libcrypto-45.lib b/libressl/x86/wnt/libcrypto-45.lib new file mode 100644 index 00000000..2dce3dee Binary files /dev/null and b/libressl/x86/wnt/libcrypto-45.lib differ diff --git a/libressl/x86/wnt/libssl-47.lib b/libressl/x86/wnt/libssl-47.lib new file mode 100644 index 00000000..495816bf Binary files /dev/null and b/libressl/x86/wnt/libssl-47.lib differ diff --git a/libressl/x86/wnt/libtls-19.lib b/libressl/x86/wnt/libtls-19.lib new file mode 100644 index 00000000..074b947b Binary files /dev/null and b/libressl/x86/wnt/libtls-19.lib differ diff --git a/libressl/x86/wxp/libcrypto-41.lib b/libressl/x86/wxp/libcrypto-41.lib new file mode 100644 index 00000000..b85bfdfa Binary files /dev/null and b/libressl/x86/wxp/libcrypto-41.lib differ diff --git a/libressl/x86/wxp/libssl-43.lib b/libressl/x86/wxp/libssl-43.lib new file mode 100644 index 00000000..e1c673bc Binary files /dev/null and b/libressl/x86/wxp/libssl-43.lib differ diff --git a/libressl/x86/wxp/libtls-15.lib b/libressl/x86/wxp/libtls-15.lib new file mode 100644 index 00000000..216745dd Binary files /dev/null and b/libressl/x86/wxp/libtls-15.lib differ diff --git a/pith/conf.c b/pith/conf.c index c39a19eb..dedeb1be 100644 --- a/pith/conf.c +++ b/pith/conf.c @@ -377,7 +377,7 @@ CONF_TXT_T cf_text_mailcap_path[] = "Sets the search path for the mailcap config CONF_TXT_T cf_text_mimetype_path[] = "Sets the search path for the mimetypes configuration file.\n# NOTE: colon delimited under UNIX, semi-colon delimited under DOS/Windows/OS2."; -#if !defined(_WINDOWS) || (defined(ENABLE_WINDOWS_LIBRESSL) && defined(W32BITSBUILD)) +#if !defined(_WINDOWS) || defined(WINDOWS_LIBRESSL_CERTS) CONF_TXT_T cf_text_system_certs_path[] = "Sets the path for the system ssl certificates issued by a trusted\n# certificate authority. Note that this could be a list of paths, if the same\n# pinerc is used in different systems. Alpine always chooses the first one that\n# it finds. Value must be an absolute path."; CONF_TXT_T cf_text_system_certs_file[] = "Sets the path for the system ssl file container of certificates issued by a\n# certificate authority. Note that this could be a list of container files,\n# if the same pinerc is used in different systems. Alpine always chooses the,\n# first one that it finds. Value must be an absolute path."; @@ -667,7 +667,7 @@ static struct variable variables[] = { NULL, cf_text_mailcap_path}, {"mimetype-search-path", 0, 1, 0, 1, 1, 0, 0, 0, 0, 1, 0, NULL, cf_text_mimetype_path}, -#if !defined(_WINDOWS) || (defined(ENABLE_WINDOWS_LIBRESSL) && defined(W32BITSBUILD)) +#if !defined(_WINDOWS) || defined(WINDOWS_LIBRESSL_CERTS) {"system-certs-path", 0, 1, 0, 1, 1, 1, 0, 0, 0, 0, 0, "System CACerts Dir", cf_text_system_certs_path}, {"system-certs-file", 0, 1, 0, 1, 1, 1, 0, 0, 0, 0, 0, @@ -2388,7 +2388,7 @@ init_vars(struct pine *ps, void (*cmds_f) (struct pine *, char **)) set_current_val(&vars[V_DOWNLOAD_CMD_PREFIX], TRUE, TRUE); set_current_val(&vars[V_MAILCAP_PATH], TRUE, TRUE); set_current_val(&vars[V_MIMETYPE_PATH], TRUE, TRUE); -#if !defined(_WINDOWS) || (defined(ENABLE_WINDOWS_LIBRESSL) && defined(W32BITSBUILD)) +#if !defined(_WINDOWS) || defined(WINDOWS_LIBRESSL_CERTS) set_current_val(&vars[V_SSLCAPATH], TRUE, TRUE); set_current_val(&vars[V_SSLCAFILE], TRUE, TRUE); #endif @@ -7076,7 +7076,7 @@ feature_gets_an_x(struct pine *ps, struct variable *var, FEATURE_S *feature, test_old_growth_bits(ps, feature->id))))); } -#if !defined(_WINDOWS) || (defined(ENABLE_WINDOWS_LIBRESSL) && defined(W32BITSBUILD)) +#if !defined(_WINDOWS) || defined(WINDOWS_LIBRESSL_CERTS) void set_system_certs_path(struct pine *ps) { @@ -7967,7 +7967,7 @@ config_help(int var, int feature) return(h_config_mailcap_path); case V_MIMETYPE_PATH : return(h_config_mimetype_path); -#if !defined(_WINDOWS) || (defined(ENABLE_WINDOWS_LIBRESSL) && defined(W32BITSBUILD)) +#if !defined(_WINDOWS) || defined(WINDOWS_LIBRESSL_CERTS) case V_SSLCAPATH : return(h_config_system_certs_path); case V_SSLCAFILE : diff --git a/pith/conf.h b/pith/conf.h index ac6f0a8f..1ed1f90b 100644 --- a/pith/conf.h +++ b/pith/conf.h @@ -133,7 +133,7 @@ #define VAR_COLOR_STYLE vars[V_COLOR_STYLE].current_val.p #define GLO_COLOR_STYLE vars[V_COLOR_STYLE].global_val.p #endif -#if !defined(_WINDOWS) || (defined(ENABLE_WINDOWS_LIBRESSL) && defined(W32BITSBUILD)) +#if !defined(_WINDOWS) || defined(WINDOWS_LIBRESSL_CERTS) #define VAR_SSLCAPATH vars[V_SSLCAPATH].current_val.l #define GLO_SSLCAPATH vars[V_SSLCAPATH].global_val.l #define VAR_SSLCAFILE vars[V_SSLCAFILE].current_val.l @@ -922,7 +922,7 @@ char **get_supported_options(void); unsigned reset_startup_rule(MAILSTREAM *); void free_pinerc_lines(PINERC_LINE **); void panic1(char *, char *); -#if !defined(_WINDOWS) || (defined(ENABLE_WINDOWS_LIBRESSL) && defined(W32BITSBUILD)) +#if !defined(_WINDOWS) || defined(WINDOWS_LIBRESSL_CERTS) void set_system_certs_path(struct pine *); void set_system_certs_container(struct pine *); #endif diff --git a/pith/conftype.h b/pith/conftype.h index 029b81bc..ca316189 100644 --- a/pith/conftype.h +++ b/pith/conftype.h @@ -125,7 +125,7 @@ typedef enum { V_PERSONAL_NAME = 0 , V_DOWNLOAD_CMD_PREFIX , V_MAILCAP_PATH , V_MIMETYPE_PATH -#if !defined(_WINDOWS) || (defined(ENABLE_WINDOWS_LIBRESSL) && defined(W32BITSBUILD)) +#if !defined(_WINDOWS) || defined(WINDOWS_LIBRESSL_CERTS) , V_SSLCAPATH , V_SSLCAFILE #endif diff --git a/pith/pine.hlp b/pith/pine.hlp index 2a73d944..fa22dd9b 100644 --- a/pith/pine.hlp +++ b/pith/pine.hlp @@ -140,7 +140,7 @@ with help text for the config screen and the composer that didn't have any reasonable place to be called from. Dummy change to get revision in pine.hlp ============= h_revision ================= -Alpine Commit 404 2020-02-06 15:41:28 +Alpine Commit 407 2020-02-09 22:46:28 ============= h_news ================= -- cgit v1.2.3-70-g09d2