new upstream release: 0.15.1

This commit is contained in:
Kamil Dudka 2022-08-01 12:22:25 +02:00
parent 09a0758ded
commit d7bb168676
9 changed files with 37 additions and 217 deletions

2
.gitignore vendored
View File

@ -1,2 +1,2 @@
/elinks-0.12pre6.tar.bz2
/elinks-0.15.0.tar.xz
/elinks-0.*.tar.xz

View File

@ -12,7 +12,7 @@ diff --git a/src/network/ssl/ssl.c b/src/network/ssl/ssl.c
index dbc506c..c09daa2 100644
--- a/src/network/ssl/ssl.c
+++ b/src/network/ssl/ssl.c
@@ -80,23 +80,6 @@ socket_SSL_ex_data_dup(CRYPTO_EX_DATA *to, const CRYPTO_EX_DATA *from,
@@ -123,23 +123,6 @@ ssl_set_private_paths(SSL_CTX *ctx)
static void
init_openssl(struct module *module)
{
@ -33,9 +33,9 @@ index dbc506c..c09daa2 100644
- }
-#endif
-
SSLeay_add_ssl_algorithms();
context = SSL_CTX_new(SSLv23_client_method());
SSL_CTX_set_options(context, SSL_OP_ALL);
#if defined(HAVE_RAND_ADD) && defined(CONFIG_OS_DOS)
{
unsigned char *os_pool;
--
2.34.1

View File

@ -0,0 +1,25 @@
From 52dbca32610d5f4c23b9abf212424b973da7390a Mon Sep 17 00:00:00 2001
From: Kamil Dudka <kdudka@redhat.com>
Date: Mon, 1 Aug 2022 12:32:37 +0200
Subject: [PATCH] elinks-0.10.1-utf_8_io-default.patch
---
src/config/options.inc | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/config/options.inc b/src/config/options.inc
index 01ef159..1c9bf12 100644
--- a/src/config/options.inc
+++ b/src/config/options.inc
@@ -1006,7 +1006,7 @@ static union option_info config_options_info[] = {
* not defined, it should not be possible to set UTF-8 as "codepage";
* please report any such possibilities as bugs.) */
INIT_OPT_BOOL("terminal._template_", N_("UTF-8 I/O"),
- "utf_8_io", OPT_ZERO, 0,
+ "utf_8_io", OPT_ZERO, 1,
N_("Enable I/O in UTF-8 for Unicode terminals. "
"Note that currently, only the subset of UTF-8 according to "
"terminal codepage is used. ELinks ignores this option "
--
2.35.3

View File

@ -1,102 +0,0 @@
From f6735d03337aedecfad13a72c1b98eae16c89e29 Mon Sep 17 00:00:00 2001
From: Kamil Dudka <kdudka@redhat.com>
Date: Mon, 11 Apr 2022 09:39:48 +0200
Subject: [PATCH] Resolves: #1098789 - add support for GNU Libidn2
patch by Robert Scheck
---
Makefile.config.in | 2 +-
configure.ac | 4 ++--
src/osdep/win32/win32.c | 2 +-
src/protocol/uri.c | 18 +++++++-----------
4 files changed, 11 insertions(+), 15 deletions(-)
diff --git a/Makefile.config.in b/Makefile.config.in
index f68c8fc..5a69fb0 100644
--- a/Makefile.config.in
+++ b/Makefile.config.in
@@ -136,7 +136,7 @@ CONFIG_GOPHER = @CONFIG_GOPHER@
CONFIG_GPM = @CONFIG_GPM@
CONFIG_GZIP = @CONFIG_GZIP@
CONFIG_HTML_HIGHLIGHT = @CONFIG_HTML_HIGHLIGHT@
-CONFIG_IDN = @CONFIG_IDN@
+CONFIG_IDN2 = @CONFIG_IDN2@
CONFIG_INTERLINK = @CONFIG_INTERLINK@
CONFIG_IPV6 = @CONFIG_IPV6@
CONFIG_DBLATEX = @CONFIG_DBLATEX@
diff --git a/configure.ac b/configure.ac
index 6c811ae..34b3706 100644
--- a/configure.ac
+++ b/configure.ac
@@ -548,8 +548,8 @@ EL_LOG_CONFIG([CONFIG_BROTLI], [[brotli]], [[$enable_brotli]])
EL_CONFIG_OPTIONAL_LIBRARY(CONFIG_LZMA, lzma, lzma.h, lzma, lzma_code,
[ --with-lzma enable lzma encoding support])
-EL_CONFIG_OPTIONAL_LIBRARY(CONFIG_IDN, idn, idna.h, idn, stringprep_check_version,
- [ --without-idn disable international domain names support])
+EL_CONFIG_OPTIONAL_LIBRARY(CONFIG_IDN2, idn2, idn2.h, idn2, idn2_lookup_ul,
+ [ --without-idn2 disable international domain names support])
# ===================================================================
# Check for GSSAPI, optional even if installed.
diff --git a/src/osdep/win32/win32.c b/src/osdep/win32/win32.c
index 02b1834..f4c148d 100644
--- a/src/osdep/win32/win32.c
+++ b/src/osdep/win32/win32.c
@@ -44,7 +44,7 @@ init_osdep(void)
}
#endif
setlocale(LC_ALL, "");
-#ifdef CONFIG_IDN
+#ifdef CONFIG_IDN2
{
char buf[60];
UINT cp = GetACP();
diff --git a/src/protocol/uri.c b/src/protocol/uri.c
index 8c4fd76..05ef50f 100644
--- a/src/protocol/uri.c
+++ b/src/protocol/uri.c
@@ -6,8 +6,8 @@
#include <ctype.h>
#include <errno.h>
-#ifdef HAVE_IDNA_H
-#include <idna.h>
+#ifdef HAVE_IDN2_H
+#include <idn2.h>
#endif
#include <stdio.h>
#include <stdlib.h>
@@ -531,24 +531,20 @@ add_uri_to_string(struct string *string, const struct uri *uri,
* --pasky */
if (uri->ipv6 && wants(URI_PORT)) add_char_to_string(string, '[');
#endif
-#ifdef CONFIG_IDN
+#ifdef CONFIG_IDN2
/* Support for the GNU International Domain Name library.
*
- * http://www.gnu.org/software/libidn/manual/html_node/IDNA-Functions.html
- *
- * Now it is probably not perfect because idna_to_ascii_lz()
- * will be using a ``zero terminated input string encoded in
- * the current locale's character set''. Anyway I don't know
- * how to convert anything to UTF-8 or Unicode. --jonas */
+ * http://www.gnu.org/software/libidn/libidn2/manual/libidn2.html
+ */
if (wants(URI_IDN)) {
char *host = memacpy(uri->host, uri->hostlen);
if (host) {
char *idname;
- int code = idna_to_ascii_lz(host, &idname, 0);
+ int code = idn2_lookup_ul(host, &idname, 0);
/* FIXME: Return NULL if it coughed? --jonas */
- if (code == IDNA_SUCCESS) {
+ if (code == IDN2_OK) {
add_to_string(string, idname);
free(idname);
add_host = 0;
--
2.34.1

View File

@ -1,69 +0,0 @@
From 0d49b8bf16b0ef992e331764ebae17d676115990 Mon Sep 17 00:00:00 2001
From: Kamil Dudka <kdudka@redhat.com>
Date: Tue, 6 Nov 2018 18:35:19 +0100
Subject: [PATCH] elinks: fix programming mistakes detected by static analysis
---
src/intl/gettext/loadmsgcat.c | 13 +++++++++++--
src/scripting/lua/core.c | 8 ++++++--
2 files changed, 17 insertions(+), 4 deletions(-)
diff --git a/src/intl/gettext/loadmsgcat.c b/src/intl/gettext/loadmsgcat.c
index 0d66152..5e62a5d 100644
--- a/src/intl/gettext/loadmsgcat.c
+++ b/src/intl/gettext/loadmsgcat.c
@@ -312,8 +312,10 @@ source_success:
char *read_ptr;
data = (struct mo_file_header *) malloc(size);
- if (data == NULL)
+ if (data == NULL) {
+ close(fd);
return;
+ }
to_read = size;
read_ptr = (char *) data;
@@ -346,8 +348,15 @@ source_success:
}
domain = (struct loaded_domain *) malloc(sizeof(struct loaded_domain));
- if (domain == NULL)
+ if (domain == NULL) {
+#ifdef LOADMSGCAT_USE_MMAP
+ if (use_mmap)
+ munmap((void *) data, size);
+ else
+#endif
+ free(data);
return;
+ }
domain_file->data = domain;
domain->data = (char *) data;
diff --git a/src/scripting/lua/core.c b/src/scripting/lua/core.c
index f0c9bc8..1c4636e 100644
--- a/src/scripting/lua/core.c
+++ b/src/scripting/lua/core.c
@@ -227,12 +227,16 @@ l_pipe_read(LS)
if (l > 0) {
char *news = mem_realloc(s, len + l);
- if (!news) goto lua_error;
+ if (!news) {
+ pclose(fp);
+ goto lua_error;
+ }
s = news;
memcpy(s + len, buf, l);
len += l;
- } else if (l < 0) {
+ } else {
+ pclose(fp);
goto lua_error;
}
}
--
2.34.1

View File

@ -1,12 +0,0 @@
diff -urNp elinks-0.12pre3-orig/src/config/options.inc elinks-0.12pre3/src/config/options.inc
--- elinks-0.12pre3-orig/src/config/options.inc
+++ elinks-0.12pre3/src/config/options.inc
@@ -920,7 +920,7 @@ static struct option_info config_options
* not defined, it should not be possible to set UTF-8 as "codepage";
* please report any such possibilities as bugs.) */
INIT_OPT_BOOL("terminal._template_", N_("UTF-8 I/O"),
- "utf_8_io", 0, 0,
+ "utf_8_io", 0, 1,
N_("Enable I/O in UTF-8 for Unicode terminals. "
"Note that currently, only the subset of UTF-8 according to "
"terminal codepage is used. ELinks ignores this option "

View File

@ -1,16 +0,0 @@
src/encoding/encoding.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/src/encoding/encoding.c b/src/encoding/encoding.c
index d019dab..9648da3 100644
--- a/src/encoding/encoding.c
+++ b/src/encoding/encoding.c
@@ -124,7 +124,7 @@ open_encoded(int fd, enum stream_encoding encoding)
if (!stream) return NULL;
stream->encoding = encoding;
- if (decoding_backends[stream->encoding]->open(stream, fd) >= 0)
+ if ((decoding_backends[stream->encoding]->open)(stream, fd) >= 0)
return stream;
mem_free(stream);

View File

@ -1,7 +1,7 @@
Name: elinks
Summary: A text-mode Web browser
Version: 0.15.0
Release: 2%{?dist}
Version: 0.15.1
Release: 1%{?dist}
License: GPLv2
URL: https://github.com/rkd77/elinks
Source: https://github.com/rkd77/elinks/releases/download/v%{version}/elinks-%{version}.tar.xz
@ -33,7 +33,7 @@ Provides: text-www-browser
Patch0: 0000-elinks-0.15.0-ssl-noegd.patch
# UTF-8 by default
Patch1: elinks-0.10.1-utf_8_io-default.patch
Patch1: 0001-elinks-0.15.1-utf_8_io-default.patch
# Make getaddrinfo call use AI_ADDRCONFIG.
Patch3: elinks-0.11.0-getaddrinfo.patch
@ -44,18 +44,9 @@ Patch4: 0004-elinks-0.15.0-sysname.patch
# Fix xterm terminal: "Linux" driver seems better than "VT100" (#128105)
Patch5: 0005-elinks-0.15.0-xterm.patch
# fix for open macro in new glibc
Patch7: elinks-0.11.3-macropen.patch
# let list_is_singleton() return false for an empty list (#1075415)
Patch15: elinks-0.12pre6-list_is_singleton.patch
# add support for GNU Libidn2, patch by Robert Scheck (#1098789)
Patch17: 0017-elinks-0.15.0-libidn2.patch
# fix programming mistakes detected by static analysis
Patch20: 0020-elinks-0.15.0-static-analysis.patch
%description
Elinks is a text-based Web browser. Elinks does not display any images,
but it does support frames, tables and most other HTML tags. Elinks'
@ -135,6 +126,9 @@ exit 0
%{_mandir}/man5/*
%changelog
* Mon Aug 01 2022 Kamil Dudka <kdudka@redhat.com> - 0.15.1-1
- new upstream release
* Thu Jul 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 0.15.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild

View File

@ -1 +1 @@
SHA512 (elinks-0.15.0.tar.xz) = 550f7a1a94334c6c28c8874cb9fbc2ed76d9e4a86c521845e7355f6505f2b7f842a4e250a02b4bb238ea1fa8322e2c12214c53d8df3a211c56869e86bfcc7f2b
SHA512 (elinks-0.15.1.tar.xz) = 677eeeeab3fc24dcfe4e7248a9c1a8e07083ebd13bd9923d89702a04dbe1c3e4d4038029c095881183d7f11ae2c5317ff7e5458320644fde0c176378b89068d8