1
0
mirror of https://github.com/rkd77/elinks.git synced 2024-09-26 02:46:13 -04:00

Merge pull request #206 from kdudka/idn2

Port ELinks to libidn2
This commit is contained in:
rkd77 2023-01-02 10:36:49 +01:00 committed by GitHub
commit 1cf5593928
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 10 additions and 10 deletions

View File

@ -139,7 +139,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@

View File

@ -556,8 +556,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.

View File

@ -44,7 +44,7 @@ init_osdep(void)
}
#endif
setlocale(LC_ALL, "");
#ifdef CONFIG_IDN
#ifdef CONFIG_IDN2
{
char buf[60];
UINT cp = GetACP();

View File

@ -9,8 +9,8 @@
#ifdef HAVE_ICONV
#include <iconv.h>
#endif
#ifdef HAVE_IDNA_H
#include <idna.h>
#ifdef HAVE_IDN2_H
#include <idn2.h>
#endif
#include <stdio.h>
#include <stdlib.h>
@ -535,10 +535,10 @@ 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
* http://www.gnu.org/software/libidn/libidn2/manual/libidn2.html
*/
if (wants(URI_IDN)) {
char *host = NULL;
@ -556,10 +556,10 @@ add_uri_to_string(struct string *string, const struct uri *uri,
if (host) {
char *idname;
int code = idna_to_ascii_8z(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;