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
#
# Makefile.mingw
#
# Description: Makefile for win32 (mingw) version of Pidgin pixmaps
#
PIDGIN_TREE_TOP := ../..
include $(PIDGIN_TREE_TOP)/libpurple/win32/global.mak
datadir := $(PIDGIN_INSTALL_DIR)
-include ./Makefile.am.mingw
.PHONY: install clean
install: ./Makefile.am.mingw
if test '$(SUBDIRS)'; then \
list='$(SUBDIRS)'; for subdir in $$list; do \
$(MAKE) -C $$subdir -f $(MINGW_MAKEFILE) install || exit 1 ;\
done; \
fi;
if test '$(nobase_dist_pidginpixmap_DATA)'; then \
list='$(nobase_dist_pidginpixmap_DATA)'; for file in $$list; do \
dir=`dirname $$file`; \
mkdir -p $(pidginpixmapdir)/$$dir; \
cp $$file $(pidginpixmapdir)/$$dir/; \
done; \
fi;
if test '$(pidginbuttonpix_DATA)'; then \
mkdir -p $(pidginbuttonpixdir); \
cp $(pidginbuttonpix_DATA) $(pidginbuttonpixdir); \
fi;
if test '$(pidgindistpix_DATA)'; then \
mkdir -p $(pidgindistpixdir); \
cp $(pidgindistpix_DATA) $(pidgindistpixdir); \
fi;
clean: ./Makefile.am.mingw
if test '$(SUBDIRS)'; then \
list='$(SUBDIRS)'; for subdir in $$list; do \
$(MAKE) -C $$subdir -f $(MINGW_MAKEFILE) clean;\
done; \
fi;
rm -f ./Makefile.am.mingw
./Makefile.am.mingw: ./Makefile.am ./Makefile.mingw
sed \
-e 's/^if\ INSTALL_PIXMAPS/ifeq (\$$(INSTALL_PIXMAPS), 1)/' \
-e 's/^if\ ENABLE_TRAYCOMPAT/ifeq (\$$(ENABLE_TRAYCOMPAT), 1)/' \
$< > $@
include $@