pidgin/pidgin

Implement SNI support for the gnutls SSL plugin.
release-2.x.y
2019-12-16, Mihai Moldovan
6dba8046e1b1
Implement SNI support for the gnutls SSL plugin.

Note that gnutls is picky in regard to what it accepts as the server name - it
MUST be a domain name. IP addresses are not supported according to the
documentation.

Hence, filter out IP addresses and hope that whatever is not recognized as
such an address is actually a domain name. This will probably fail for more
exotic addresses (especially in IPv6 realm), but wiring up a full-blown parser
is too much effort and SSL plugins are not part of purple-3 anyway.

Fixes #17300
/*
* untar.h
*
* Author: Herman Bloggs <hermanator12002@yahoo.com>
* Date: April, 2003
* Description: untar.c header
*/
#ifndef _UNTAR_H_
#define _UNTAR_H_
#ifdef __cplusplus
extern "C" {
#endif /* __cplusplus */
typedef enum _untar_opt {
UNTAR_LISTING = (1 << 0),
UNTAR_QUIET = (1 << 1),
UNTAR_VERBOSE = (1 << 2),
UNTAR_FORCE = (1 << 3),
UNTAR_ABSPATH = (1 << 4),
UNTAR_CONVERT = (1 << 5)
} untar_opt;
int untar(const char *filename, const char *destdir, untar_opt options);
#ifdef __cplusplus
}
#endif /* __cplusplus */
#endif