Update to version 2.39.3
authorRusty Lynch <rusty.lynch@intel.com>
Fri, 6 Jul 2012 05:47:37 +0000 (22:47 -0700)
committerRusty Lynch <rusty.lynch@intel.com>
Fri, 6 Jul 2012 05:47:37 +0000 (22:47 -0700)
72 files changed:
Makefile.am
Makefile.in [new file with mode: 0644]
NEWS
aclocal.m4
configure
configure.ac
data/effective_tld_names.dat [new file with mode: 0644]
docs/reference/html/SoupAddress.html
docs/reference/html/SoupCookieJar.html
docs/reference/html/SoupMessage.html
docs/reference/html/SoupMessageHeaders.html
docs/reference/html/SoupMultipart.html
docs/reference/html/SoupProxyResolverDefault.html
docs/reference/html/SoupProxyURIResolver.html
docs/reference/html/SoupRequest.html
docs/reference/html/SoupRequestData.html
docs/reference/html/SoupRequestFile.html
docs/reference/html/SoupRequestHTTP.html
docs/reference/html/SoupServer.html
docs/reference/html/SoupSession.html
docs/reference/html/SoupSocket.html
docs/reference/html/SoupURI.html
docs/reference/html/ch01.html
docs/reference/html/ch02.html
docs/reference/html/ch03.html
docs/reference/html/ch04.html
docs/reference/html/ch05.html
docs/reference/html/ch06.html
docs/reference/html/ch07.html
docs/reference/html/index.html
docs/reference/html/index.sgml
docs/reference/html/ix01.html
docs/reference/html/libsoup-2.4-Soup-Miscellaneous-Utilities.html
docs/reference/html/libsoup-2.4-Top-Level-Domain-utils.html [new file with mode: 0644]
docs/reference/html/libsoup-2.4-soup-method.html
docs/reference/html/libsoup-2.4-soup-status.html
docs/reference/html/libsoup-2.4.devhelp2
docs/reference/html/libsoup-build-howto.html
docs/reference/html/libsoup-client-howto.html
docs/reference/html/libsoup-server-howto.html
docs/reference/libsoup-2.4-docs.sgml
docs/reference/libsoup-2.4-sections.txt
docs/reference/tmpl/soup-cookie-jar.sgml
docs/reference/tmpl/soup-tld.sgml [new file with mode: 0644]
gtk-doc.make
libsoup/Makefile.am
libsoup/Makefile.in
libsoup/soup-cookie-jar.c
libsoup/soup-cookie-jar.h
libsoup/soup-enum-types.c
libsoup/soup-enum-types.h
libsoup/soup-message-headers.c
libsoup/soup-tld-private.h [new file with mode: 0644]
libsoup/soup-tld.c [new file with mode: 0644]
libsoup/soup-tld.h [new file with mode: 0644]
libsoup/soup.h
libsoup/tld-parser.c [new file with mode: 0644]
libsoup/tld_data.inc [new file with mode: 0644]
packaging/libsoup2.4.changes
packaging/libsoup2.4.spec
po/LINGUAS
po/POTFILES.in
po/be.po
po/el.po
po/es.po
po/gl.po
po/sl.po
po/te.po [new file with mode: 0644]
tests/Makefile.am
tests/Makefile.in
tests/date.c
tests/tld-test.c [new file with mode: 0644]

index 9e75f98..18bf80a 100644 (file)
@@ -3,11 +3,13 @@ ACLOCAL_AMFLAGS = -I m4 ${ACLOCAL_FLAGS}
 
 SUBDIRS = libsoup po tests docs
 
-EXTRA_DIST =                   \
-       libsoup-2.4.pc.in       \
-       libsoup-gnome-2.4.pc.in \
-       libsoup-zip.in          \
-       m4/introspection.m4     \
+EXTRA_DIST =                           \
+       data/effective_tld_names.dat    \
+       libsoup-2.4.pc.in               \
+       libsoup-gnome-2.4.pc.in         \
+       gtk-doc.make                    \
+       libsoup-zip.in                  \
+       m4/introspection.m4             \
        Makefile.glib
 
 DISTCHECK_CONFIGURE_FLAGS = --enable-gtk-doc --enable-introspection
diff --git a/Makefile.in b/Makefile.in
new file mode 100644 (file)
index 0000000..243c1f3
--- /dev/null
@@ -0,0 +1,898 @@
+# Makefile.in generated by automake 1.11.3 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
+# Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+@BUILD_LIBSOUP_GNOME_TRUE@am__append_1 = libsoup-gnome-2.4.pc
+subdir = .
+DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \
+       $(srcdir)/Makefile.in $(srcdir)/config.h.in \
+       $(srcdir)/libsoup-2.4.pc.in $(srcdir)/libsoup-gnome-2.4.pc.in \
+       $(srcdir)/libsoup-zip.in $(top_srcdir)/configure AUTHORS \
+       COPYING NEWS config.guess config.sub depcomp install-sh \
+       ltmain.sh missing mkinstalldirs
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/gtk-doc.m4 \
+       $(top_srcdir)/m4/intltool.m4 $(top_srcdir)/m4/introspection.m4 \
+       $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \
+       $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \
+       $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+       $(ACLOCAL_M4)
+am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
+ configure.lineno config.status.lineno
+mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+CONFIG_HEADER = config.h
+CONFIG_CLEAN_FILES = libsoup-2.4.pc libsoup-gnome-2.4.pc libsoup-zip
+CONFIG_CLEAN_VPATH_FILES =
+AM_V_GEN = $(am__v_GEN_@AM_V@)
+am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
+am__v_GEN_0 = @echo "  GEN   " $@;
+AM_V_at = $(am__v_at_@AM_V@)
+am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
+am__v_at_0 = @
+SOURCES =
+DIST_SOURCES =
+RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
+       html-recursive info-recursive install-data-recursive \
+       install-dvi-recursive install-exec-recursive \
+       install-html-recursive install-info-recursive \
+       install-pdf-recursive install-ps-recursive install-recursive \
+       installcheck-recursive installdirs-recursive pdf-recursive \
+       ps-recursive uninstall-recursive
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
+am__uninstall_files_from_dir = { \
+  test -z "$$files" \
+    || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
+    || { echo " ( cd '$$dir' && rm -f" $$files ")"; \
+         $(am__cd) "$$dir" && rm -f $$files; }; \
+  }
+am__installdirs = "$(DESTDIR)$(pkgconfigdir)"
+DATA = $(pkgconfig_DATA)
+RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive        \
+  distclean-recursive maintainer-clean-recursive
+AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
+       $(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
+       distdir dist dist-all distcheck
+ETAGS = etags
+CTAGS = ctags
+DIST_SUBDIRS = $(SUBDIRS)
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+distdir = $(PACKAGE)-$(VERSION)
+top_distdir = $(distdir)
+am__remove_distdir = \
+  if test -d "$(distdir)"; then \
+    find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \
+      && rm -rf "$(distdir)" \
+      || { sleep 5 && rm -rf "$(distdir)"; }; \
+  else :; fi
+am__relativize = \
+  dir0=`pwd`; \
+  sed_first='s,^\([^/]*\)/.*$$,\1,'; \
+  sed_rest='s,^[^/]*/*,,'; \
+  sed_last='s,^.*/\([^/]*\)$$,\1,'; \
+  sed_butlast='s,/*[^/]*$$,,'; \
+  while test -n "$$dir1"; do \
+    first=`echo "$$dir1" | sed -e "$$sed_first"`; \
+    if test "$$first" != "."; then \
+      if test "$$first" = ".."; then \
+        dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
+        dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
+      else \
+        first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
+        if test "$$first2" = "$$first"; then \
+          dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
+        else \
+          dir2="../$$dir2"; \
+        fi; \
+        dir0="$$dir0"/"$$first"; \
+      fi; \
+    fi; \
+    dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
+  done; \
+  reldir="$$dir2"
+GZIP_ENV = --best
+DIST_ARCHIVES = $(distdir).tar.xz
+distuninstallcheck_listfiles = find . -type f -print
+am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \
+  | sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$'
+distcleancheck_listfiles = find . -type f -print
+ACLOCAL = @ACLOCAL@
+ALL_LINGUAS = @ALL_LINGUAS@
+AMTAR = @AMTAR@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
+APACHE_HTTPD = @APACHE_HTTPD@
+APACHE_MODULE_DIR = @APACHE_MODULE_DIR@
+APACHE_PHP_MODULE = @APACHE_PHP_MODULE@
+APACHE_PHP_MODULE_DIR = @APACHE_PHP_MODULE_DIR@
+APACHE_SSL_MODULE_DIR = @APACHE_SSL_MODULE_DIR@
+AR = @AR@
+AS = @AS@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CATALOGS = @CATALOGS@
+CATOBJEXT = @CATOBJEXT@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CURL = @CURL@
+CYGPATH_W = @CYGPATH_W@
+DATADIRNAME = @DATADIRNAME@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DLLTOOL = @DLLTOOL@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+GETTEXT_PACKAGE = @GETTEXT_PACKAGE@
+GLIB_CFLAGS = @GLIB_CFLAGS@
+GLIB_COMPILE_RESOURCES = @GLIB_COMPILE_RESOURCES@
+GLIB_GENMARSHAL = @GLIB_GENMARSHAL@
+GLIB_LIBS = @GLIB_LIBS@
+GLIB_MAKEFILE = @GLIB_MAKEFILE@
+GLIB_MKENUMS = @GLIB_MKENUMS@
+GMOFILES = @GMOFILES@
+GMSGFMT = @GMSGFMT@
+GNOME_KEYRING_CFLAGS = @GNOME_KEYRING_CFLAGS@
+GNOME_KEYRING_LIBS = @GNOME_KEYRING_LIBS@
+GOBJECT_QUERY = @GOBJECT_QUERY@
+GREP = @GREP@
+GTKDOC_CHECK = @GTKDOC_CHECK@
+GTKDOC_DEPS_CFLAGS = @GTKDOC_DEPS_CFLAGS@
+GTKDOC_DEPS_LIBS = @GTKDOC_DEPS_LIBS@
+GTKDOC_MKPDF = @GTKDOC_MKPDF@
+GTKDOC_REBASE = @GTKDOC_REBASE@
+HAVE_GNOME = @HAVE_GNOME@
+HTML_DIR = @HTML_DIR@
+IF_HAVE_PHP = @IF_HAVE_PHP@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+INSTOBJEXT = @INSTOBJEXT@
+INTLLIBS = @INTLLIBS@
+INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
+INTLTOOL_MERGE = @INTLTOOL_MERGE@
+INTLTOOL_PERL = @INTLTOOL_PERL@
+INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
+INTLTOOL_V_MERGE = @INTLTOOL_V_MERGE@
+INTLTOOL_V_MERGE_OPTIONS = @INTLTOOL_V_MERGE_OPTIONS@
+INTLTOOL__v_MERGE_ = @INTLTOOL__v_MERGE_@
+INTLTOOL__v_MERGE_0 = @INTLTOOL__v_MERGE_0@
+INTROSPECTION_CFLAGS = @INTROSPECTION_CFLAGS@
+INTROSPECTION_COMPILER = @INTROSPECTION_COMPILER@
+INTROSPECTION_GENERATE = @INTROSPECTION_GENERATE@
+INTROSPECTION_GIRDIR = @INTROSPECTION_GIRDIR@
+INTROSPECTION_LIBS = @INTROSPECTION_LIBS@
+INTROSPECTION_MAKEFILE = @INTROSPECTION_MAKEFILE@
+INTROSPECTION_SCANNER = @INTROSPECTION_SCANNER@
+INTROSPECTION_TYPELIBDIR = @INTROSPECTION_TYPELIBDIR@
+LD = @LD@
+LDFLAGS = @LDFLAGS@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+MANIFEST_TOOL = @MANIFEST_TOOL@
+MISSING_REGRESSION_TEST_PACKAGES = @MISSING_REGRESSION_TEST_PACKAGES@
+MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
+MSGFMT = @MSGFMT@
+MSGFMT_OPTS = @MSGFMT_OPTS@
+MSGMERGE = @MSGMERGE@
+NM = @NM@
+NMEDIT = @NMEDIT@
+OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+PHP = @PHP@
+PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
+POFILES = @POFILES@
+POSUB = @POSUB@
+PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
+PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+SOUP_AGE = @SOUP_AGE@
+SOUP_API_VERSION = @SOUP_API_VERSION@
+SOUP_CURRENT = @SOUP_CURRENT@
+SOUP_DEBUG_FLAGS = @SOUP_DEBUG_FLAGS@
+SOUP_MAINTAINER_FLAGS = @SOUP_MAINTAINER_FLAGS@
+SOUP_REVISION = @SOUP_REVISION@
+SQLITE_CFLAGS = @SQLITE_CFLAGS@
+SQLITE_LIBS = @SQLITE_LIBS@
+STRIP = @STRIP@
+USE_NLS = @USE_NLS@
+VERSION = @VERSION@
+XGETTEXT = @XGETTEXT@
+XML_CFLAGS = @XML_CFLAGS@
+XML_LIBS = @XML_LIBS@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+builddir = @builddir@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+intltool__v_merge_options_ = @intltool__v_merge_options_@
+intltool__v_merge_options_0 = @intltool__v_merge_options_0@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localedir = @localedir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+ntlm_auth = @ntlm_auth@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+ACLOCAL_AMFLAGS = -I m4 ${ACLOCAL_FLAGS}
+SUBDIRS = libsoup po tests docs
+EXTRA_DIST = \
+       data/effective_tld_names.dat    \
+       libsoup-2.4.pc.in               \
+       libsoup-gnome-2.4.pc.in         \
+       gtk-doc.make                    \
+       libsoup-zip.in                  \
+       m4/introspection.m4             \
+       Makefile.glib
+
+DISTCHECK_CONFIGURE_FLAGS = --enable-gtk-doc --enable-introspection
+pkgconfigdir = $(libdir)/pkgconfig
+pkgconfig_DATA = libsoup-2.4.pc $(am__append_1)
+all: config.h
+       $(MAKE) $(AM_MAKEFLAGS) all-recursive
+
+.SUFFIXES:
+am--refresh: Makefile
+       @:
+$(srcdir)/Makefile.in:  $(srcdir)/Makefile.am  $(am__configure_deps)
+       @for dep in $?; do \
+         case '$(am__configure_deps)' in \
+           *$$dep*) \
+             echo ' cd $(srcdir) && $(AUTOMAKE) --foreign'; \
+             $(am__cd) $(srcdir) && $(AUTOMAKE) --foreign \
+               && exit 0; \
+             exit 1;; \
+         esac; \
+       done; \
+       echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign Makefile'; \
+       $(am__cd) $(top_srcdir) && \
+         $(AUTOMAKE) --foreign Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+       @case '$?' in \
+         *config.status*) \
+           echo ' $(SHELL) ./config.status'; \
+           $(SHELL) ./config.status;; \
+         *) \
+           echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \
+           cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \
+       esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+       $(SHELL) ./config.status --recheck
+
+$(top_srcdir)/configure:  $(am__configure_deps)
+       $(am__cd) $(srcdir) && $(AUTOCONF)
+$(ACLOCAL_M4):  $(am__aclocal_m4_deps)
+       $(am__cd) $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
+$(am__aclocal_m4_deps):
+
+config.h: stamp-h1
+       @if test ! -f $@; then rm -f stamp-h1; else :; fi
+       @if test ! -f $@; then $(MAKE) $(AM_MAKEFLAGS) stamp-h1; else :; fi
+
+stamp-h1: $(srcdir)/config.h.in $(top_builddir)/config.status
+       @rm -f stamp-h1
+       cd $(top_builddir) && $(SHELL) ./config.status config.h
+$(srcdir)/config.h.in:  $(am__configure_deps) 
+       ($(am__cd) $(top_srcdir) && $(AUTOHEADER))
+       rm -f stamp-h1
+       touch $@
+
+distclean-hdr:
+       -rm -f config.h stamp-h1
+libsoup-2.4.pc: $(top_builddir)/config.status $(srcdir)/libsoup-2.4.pc.in
+       cd $(top_builddir) && $(SHELL) ./config.status $@
+libsoup-gnome-2.4.pc: $(top_builddir)/config.status $(srcdir)/libsoup-gnome-2.4.pc.in
+       cd $(top_builddir) && $(SHELL) ./config.status $@
+libsoup-zip: $(top_builddir)/config.status $(srcdir)/libsoup-zip.in
+       cd $(top_builddir) && $(SHELL) ./config.status $@
+
+mostlyclean-libtool:
+       -rm -f *.lo
+
+clean-libtool:
+       -rm -rf .libs _libs
+
+distclean-libtool:
+       -rm -f libtool config.lt
+install-pkgconfigDATA: $(pkgconfig_DATA)
+       @$(NORMAL_INSTALL)
+       test -z "$(pkgconfigdir)" || $(MKDIR_P) "$(DESTDIR)$(pkgconfigdir)"
+       @list='$(pkgconfig_DATA)'; test -n "$(pkgconfigdir)" || list=; \
+       for p in $$list; do \
+         if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+         echo "$$d$$p"; \
+       done | $(am__base_list) | \
+       while read files; do \
+         echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(pkgconfigdir)'"; \
+         $(INSTALL_DATA) $$files "$(DESTDIR)$(pkgconfigdir)" || exit $$?; \
+       done
+
+uninstall-pkgconfigDATA:
+       @$(NORMAL_UNINSTALL)
+       @list='$(pkgconfig_DATA)'; test -n "$(pkgconfigdir)" || list=; \
+       files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
+       dir='$(DESTDIR)$(pkgconfigdir)'; $(am__uninstall_files_from_dir)
+
+# This directory's subdirectories are mostly independent; you can cd
+# into them and run `make' without going through this Makefile.
+# To change the values of `make' variables: instead of editing Makefiles,
+# (1) if the variable is set in `config.status', edit `config.status'
+#     (which will cause the Makefiles to be regenerated when you run `make');
+# (2) otherwise, pass the desired values on the `make' command line.
+$(RECURSIVE_TARGETS):
+       @fail= failcom='exit 1'; \
+       for f in x $$MAKEFLAGS; do \
+         case $$f in \
+           *=* | --[!k]*);; \
+           *k*) failcom='fail=yes';; \
+         esac; \
+       done; \
+       dot_seen=no; \
+       target=`echo $@ | sed s/-recursive//`; \
+       list='$(SUBDIRS)'; for subdir in $$list; do \
+         echo "Making $$target in $$subdir"; \
+         if test "$$subdir" = "."; then \
+           dot_seen=yes; \
+           local_target="$$target-am"; \
+         else \
+           local_target="$$target"; \
+         fi; \
+         ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+         || eval $$failcom; \
+       done; \
+       if test "$$dot_seen" = "no"; then \
+         $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
+       fi; test -z "$$fail"
+
+$(RECURSIVE_CLEAN_TARGETS):
+       @fail= failcom='exit 1'; \
+       for f in x $$MAKEFLAGS; do \
+         case $$f in \
+           *=* | --[!k]*);; \
+           *k*) failcom='fail=yes';; \
+         esac; \
+       done; \
+       dot_seen=no; \
+       case "$@" in \
+         distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
+         *) list='$(SUBDIRS)' ;; \
+       esac; \
+       rev=''; for subdir in $$list; do \
+         if test "$$subdir" = "."; then :; else \
+           rev="$$subdir $$rev"; \
+         fi; \
+       done; \
+       rev="$$rev ."; \
+       target=`echo $@ | sed s/-recursive//`; \
+       for subdir in $$rev; do \
+         echo "Making $$target in $$subdir"; \
+         if test "$$subdir" = "."; then \
+           local_target="$$target-am"; \
+         else \
+           local_target="$$target"; \
+         fi; \
+         ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+         || eval $$failcom; \
+       done && test -z "$$fail"
+tags-recursive:
+       list='$(SUBDIRS)'; for subdir in $$list; do \
+         test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
+       done
+ctags-recursive:
+       list='$(SUBDIRS)'; for subdir in $$list; do \
+         test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
+       done
+
+ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
+       list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+       unique=`for i in $$list; do \
+           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+         done | \
+         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+             END { if (nonempty) { for (i in files) print i; }; }'`; \
+       mkid -fID $$unique
+tags: TAGS
+
+TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
+               $(TAGS_FILES) $(LISP)
+       set x; \
+       here=`pwd`; \
+       if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
+         include_option=--etags-include; \
+         empty_fix=.; \
+       else \
+         include_option=--include; \
+         empty_fix=; \
+       fi; \
+       list='$(SUBDIRS)'; for subdir in $$list; do \
+         if test "$$subdir" = .; then :; else \
+           test ! -f $$subdir/TAGS || \
+             set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
+         fi; \
+       done; \
+       list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \
+       unique=`for i in $$list; do \
+           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+         done | \
+         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+             END { if (nonempty) { for (i in files) print i; }; }'`; \
+       shift; \
+       if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
+         test -n "$$unique" || unique=$$empty_fix; \
+         if test $$# -gt 0; then \
+           $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+             "$$@" $$unique; \
+         else \
+           $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+             $$unique; \
+         fi; \
+       fi
+ctags: CTAGS
+CTAGS: ctags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
+               $(TAGS_FILES) $(LISP)
+       list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \
+       unique=`for i in $$list; do \
+           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+         done | \
+         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+             END { if (nonempty) { for (i in files) print i; }; }'`; \
+       test -z "$(CTAGS_ARGS)$$unique" \
+         || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
+            $$unique
+
+GTAGS:
+       here=`$(am__cd) $(top_builddir) && pwd` \
+         && $(am__cd) $(top_srcdir) \
+         && gtags -i $(GTAGS_ARGS) "$$here"
+
+distclean-tags:
+       -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
+
+distdir: $(DISTFILES)
+       $(am__remove_distdir)
+       test -d "$(distdir)" || mkdir "$(distdir)"
+       @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+       topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+       list='$(DISTFILES)'; \
+         dist_files=`for file in $$list; do echo $$file; done | \
+         sed -e "s|^$$srcdirstrip/||;t" \
+             -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+       case $$dist_files in \
+         */*) $(MKDIR_P) `echo "$$dist_files" | \
+                          sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+                          sort -u` ;; \
+       esac; \
+       for file in $$dist_files; do \
+         if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+         if test -d $$d/$$file; then \
+           dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+           if test -d "$(distdir)/$$file"; then \
+             find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+           fi; \
+           if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+             cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+             find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+           fi; \
+           cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
+         else \
+           test -f "$(distdir)/$$file" \
+           || cp -p $$d/$$file "$(distdir)/$$file" \
+           || exit 1; \
+         fi; \
+       done
+       @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
+         if test "$$subdir" = .; then :; else \
+           test -d "$(distdir)/$$subdir" \
+           || $(MKDIR_P) "$(distdir)/$$subdir" \
+           || exit 1; \
+         fi; \
+       done
+       @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
+         if test "$$subdir" = .; then :; else \
+           dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
+           $(am__relativize); \
+           new_distdir=$$reldir; \
+           dir1=$$subdir; dir2="$(top_distdir)"; \
+           $(am__relativize); \
+           new_top_distdir=$$reldir; \
+           echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
+           echo "     am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
+           ($(am__cd) $$subdir && \
+             $(MAKE) $(AM_MAKEFLAGS) \
+               top_distdir="$$new_top_distdir" \
+               distdir="$$new_distdir" \
+               am__remove_distdir=: \
+               am__skip_length_check=: \
+               am__skip_mode_fix=: \
+               distdir) \
+             || exit 1; \
+         fi; \
+       done
+       -test -n "$(am__skip_mode_fix)" \
+       || find "$(distdir)" -type d ! -perm -755 \
+               -exec chmod u+rwx,go+rx {} \; -o \
+         ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \
+         ! -type d ! -perm -400 -exec chmod a+r {} \; -o \
+         ! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \
+       || chmod -R a+r "$(distdir)"
+dist-gzip: distdir
+       tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
+       $(am__remove_distdir)
+
+dist-bzip2: distdir
+       tardir=$(distdir) && $(am__tar) | BZIP2=$${BZIP2--9} bzip2 -c >$(distdir).tar.bz2
+       $(am__remove_distdir)
+
+dist-lzip: distdir
+       tardir=$(distdir) && $(am__tar) | lzip -c $${LZIP_OPT--9} >$(distdir).tar.lz
+       $(am__remove_distdir)
+
+dist-lzma: distdir
+       tardir=$(distdir) && $(am__tar) | lzma -9 -c >$(distdir).tar.lzma
+       $(am__remove_distdir)
+dist-xz: distdir
+       tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c >$(distdir).tar.xz
+       $(am__remove_distdir)
+
+dist-tarZ: distdir
+       tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
+       $(am__remove_distdir)
+
+dist-shar: distdir
+       shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
+       $(am__remove_distdir)
+
+dist-zip: distdir
+       -rm -f $(distdir).zip
+       zip -rq $(distdir).zip $(distdir)
+       $(am__remove_distdir)
+
+dist dist-all: distdir
+       tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c >$(distdir).tar.xz
+       $(am__remove_distdir)
+
+# This target untars the dist file and tries a VPATH configuration.  Then
+# it guarantees that the distribution is self-contained by making another
+# tarfile.
+distcheck: dist
+       case '$(DIST_ARCHIVES)' in \
+       *.tar.gz*) \
+         GZIP=$(GZIP_ENV) gzip -dc $(distdir).tar.gz | $(am__untar) ;;\
+       *.tar.bz2*) \
+         bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\
+       *.tar.lzma*) \
+         lzma -dc $(distdir).tar.lzma | $(am__untar) ;;\
+       *.tar.lz*) \
+         lzip -dc $(distdir).tar.lz | $(am__untar) ;;\
+       *.tar.xz*) \
+         xz -dc $(distdir).tar.xz | $(am__untar) ;;\
+       *.tar.Z*) \
+         uncompress -c $(distdir).tar.Z | $(am__untar) ;;\
+       *.shar.gz*) \
+         GZIP=$(GZIP_ENV) gzip -dc $(distdir).shar.gz | unshar ;;\
+       *.zip*) \
+         unzip $(distdir).zip ;;\
+       esac
+       chmod -R a-w $(distdir); chmod a+w $(distdir)
+       mkdir $(distdir)/_build
+       mkdir $(distdir)/_inst
+       chmod a-w $(distdir)
+       test -d $(distdir)/_build || exit 0; \
+       dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
+         && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
+         && am__cwd=`pwd` \
+         && $(am__cd) $(distdir)/_build \
+         && ../configure --srcdir=.. --prefix="$$dc_install_base" \
+           $(AM_DISTCHECK_CONFIGURE_FLAGS) \
+           $(DISTCHECK_CONFIGURE_FLAGS) \
+         && $(MAKE) $(AM_MAKEFLAGS) \
+         && $(MAKE) $(AM_MAKEFLAGS) dvi \
+         && $(MAKE) $(AM_MAKEFLAGS) check \
+         && $(MAKE) $(AM_MAKEFLAGS) install \
+         && $(MAKE) $(AM_MAKEFLAGS) installcheck \
+         && $(MAKE) $(AM_MAKEFLAGS) uninstall \
+         && $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \
+               distuninstallcheck \
+         && chmod -R a-w "$$dc_install_base" \
+         && ({ \
+              (cd ../.. && umask 077 && mkdir "$$dc_destdir") \
+              && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \
+              && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \
+              && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \
+                   distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \
+             } || { rm -rf "$$dc_destdir"; exit 1; }) \
+         && rm -rf "$$dc_destdir" \
+         && $(MAKE) $(AM_MAKEFLAGS) dist \
+         && rm -rf $(DIST_ARCHIVES) \
+         && $(MAKE) $(AM_MAKEFLAGS) distcleancheck \
+         && cd "$$am__cwd" \
+         || exit 1
+       $(am__remove_distdir)
+       @(echo "$(distdir) archives ready for distribution: "; \
+         list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \
+         sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x'
+distuninstallcheck:
+       @test -n '$(distuninstallcheck_dir)' || { \
+         echo 'ERROR: trying to run $@ with an empty' \
+              '$$(distuninstallcheck_dir)' >&2; \
+         exit 1; \
+       }; \
+       $(am__cd) '$(distuninstallcheck_dir)' || { \
+         echo 'ERROR: cannot chdir into $(distuninstallcheck_dir)' >&2; \
+         exit 1; \
+       }; \
+       test `$(am__distuninstallcheck_listfiles) | wc -l` -eq 0 \
+          || { echo "ERROR: files left after uninstall:" ; \
+               if test -n "$(DESTDIR)"; then \
+                 echo "  (check DESTDIR support)"; \
+               fi ; \
+               $(distuninstallcheck_listfiles) ; \
+               exit 1; } >&2
+distcleancheck: distclean
+       @if test '$(srcdir)' = . ; then \
+         echo "ERROR: distcleancheck can only run from a VPATH build" ; \
+         exit 1 ; \
+       fi
+       @test `$(distcleancheck_listfiles) | wc -l` -eq 0 \
+         || { echo "ERROR: files left in build directory after distclean:" ; \
+              $(distcleancheck_listfiles) ; \
+              exit 1; } >&2
+check-am: all-am
+check: check-recursive
+all-am: Makefile $(DATA) config.h
+installdirs: installdirs-recursive
+installdirs-am:
+       for dir in "$(DESTDIR)$(pkgconfigdir)"; do \
+         test -z "$$dir" || $(MKDIR_P) "$$dir"; \
+       done
+install: install-recursive
+install-exec: install-exec-recursive
+install-data: install-data-recursive
+uninstall: uninstall-recursive
+
+install-am: all-am
+       @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-recursive
+install-strip:
+       if test -z '$(STRIP)'; then \
+         $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+           install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+             install; \
+       else \
+         $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+           install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+           "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+       fi
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+       -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+       -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+
+maintainer-clean-generic:
+       @echo "This command is intended for maintainers to use"
+       @echo "it deletes files that may require special tools to rebuild."
+clean: clean-recursive
+
+clean-am: clean-generic clean-libtool mostlyclean-am
+
+distclean: distclean-recursive
+       -rm -f $(am__CONFIG_DISTCLEAN_FILES)
+       -rm -f Makefile
+distclean-am: clean-am distclean-generic distclean-hdr \
+       distclean-libtool distclean-tags
+
+dvi: dvi-recursive
+
+dvi-am:
+
+html: html-recursive
+
+html-am:
+
+info: info-recursive
+
+info-am:
+
+install-data-am: install-pkgconfigDATA
+
+install-dvi: install-dvi-recursive
+
+install-dvi-am:
+
+install-exec-am:
+
+install-html: install-html-recursive
+
+install-html-am:
+
+install-info: install-info-recursive
+
+install-info-am:
+
+install-man:
+
+install-pdf: install-pdf-recursive
+
+install-pdf-am:
+
+install-ps: install-ps-recursive
+
+install-ps-am:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-recursive
+       -rm -f $(am__CONFIG_DISTCLEAN_FILES)
+       -rm -rf $(top_srcdir)/autom4te.cache
+       -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-recursive
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+pdf: pdf-recursive
+
+pdf-am:
+
+ps: ps-recursive
+
+ps-am:
+
+uninstall-am: uninstall-pkgconfigDATA
+
+.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) all \
+       ctags-recursive install-am install-strip tags-recursive
+
+.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
+       all all-am am--refresh check check-am clean clean-generic \
+       clean-libtool ctags ctags-recursive dist dist-all dist-bzip2 \
+       dist-gzip dist-lzip dist-lzma dist-shar dist-tarZ dist-xz \
+       dist-zip distcheck distclean distclean-generic distclean-hdr \
+       distclean-libtool distclean-tags distcleancheck distdir \
+       distuninstallcheck dvi dvi-am html html-am info info-am \
+       install install-am install-data install-data-am install-dvi \
+       install-dvi-am install-exec install-exec-am install-html \
+       install-html-am install-info install-info-am install-man \
+       install-pdf install-pdf-am install-pkgconfigDATA install-ps \
+       install-ps-am install-strip installcheck installcheck-am \
+       installdirs installdirs-am maintainer-clean \
+       maintainer-clean-generic mostlyclean mostlyclean-generic \
+       mostlyclean-libtool pdf pdf-am ps ps-am tags tags-recursive \
+       uninstall uninstall-am uninstall-pkgconfigDATA
+
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/NEWS b/NEWS
index 272d295..5072f47 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,22 @@
+Changes in libsoup from 2.39.2 to 2.39.3:
+
+       * Added new functions for comparing domains against the
+          "public suffix" list (http://publicsuffix.org/), and in
+          particular fixed SoupCookieJar to not allow setting cookies
+          in "public" domains (eg, ".co.uk"). [#673802, Sergio]
+
+       * Added two new SoupCookieJar APIs
+          (soup_cookie_jar_get_cookies() and
+          soup_cookie_jar_set_cookie_with_first_party()) as part of
+         fixing the handling of HttpOnly cookies in WebKitGTK.
+         [#677922, Christophe Dumez]
+
+       * Fixed g-i annotation of
+          soup_message_headers_get_content_type(). [#677002, Dan]
+
+       * Updated translations:
+         Galician, Greek, Slovenian, Spanish, Telugu
+
 Changes in libsoup from 2.39.1 to 2.39.2:
 
        * Fixed several bugs that resulted from the I/O code rewrite
index 7ac4d2d..7f049b2 100644 (file)
@@ -1869,6 +1869,7 @@ sed 's/^/| /' conftest.foo >&AS_MESSAGE_LOG_FD
 fi])
 
 
+m4_include([m4/gtk-doc.m4])
 m4_include([m4/intltool.m4])
 m4_include([m4/introspection.m4])
 m4_include([m4/libtool.m4])
index 86dc5d5..4cd0121 100755 (executable)
--- a/configure
+++ b/configure
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.68 for libsoup 2.39.2.
+# Generated by GNU Autoconf 2.68 for libsoup 2.39.3.
 #
 # Report bugs to <http://bugzilla.gnome.org/enter_bug.cgi?product=libsoup>.
 #
@@ -571,8 +571,8 @@ MAKEFLAGS=
 # Identity of this package.
 PACKAGE_NAME='libsoup'
 PACKAGE_TARNAME='libsoup'
-PACKAGE_VERSION='2.39.2'
-PACKAGE_STRING='libsoup 2.39.2'
+PACKAGE_VERSION='2.39.3'
+PACKAGE_STRING='libsoup 2.39.3'
 PACKAGE_BUGREPORT='http://bugzilla.gnome.org/enter_bug.cgi?product=libsoup'
 PACKAGE_URL=''
 
@@ -1438,7 +1438,7 @@ if test "$ac_init_help" = "long"; then
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures libsoup 2.39.2 to adapt to many kinds of systems.
+\`configure' configures libsoup 2.39.3 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1508,7 +1508,7 @@ fi
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of libsoup 2.39.2:";;
+     short | recursive ) echo "Configuration of libsoup 2.39.3:";;
    esac
   cat <<\_ACEOF
 
@@ -1647,7 +1647,7 @@ fi
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-libsoup configure 2.39.2
+libsoup configure 2.39.3
 generated by GNU Autoconf 2.68
 
 Copyright (C) 2010 Free Software Foundation, Inc.
@@ -2016,7 +2016,7 @@ cat >config.log <<_ACEOF
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by libsoup $as_me 2.39.2, which was
+It was created by libsoup $as_me 2.39.3, which was
 generated by GNU Autoconf 2.68.  Invocation command line was
 
   $ $0 $@
@@ -2834,7 +2834,7 @@ fi
 
 # Define the identity of the package.
  PACKAGE='libsoup'
- VERSION='2.39.2'
+ VERSION='2.39.3'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -15288,7 +15288,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by libsoup $as_me 2.39.2, which was
+This file was extended by libsoup $as_me 2.39.3, which was
 generated by GNU Autoconf 2.68.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -15354,7 +15354,7 @@ _ACEOF
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
 ac_cs_version="\\
-libsoup config.status 2.39.2
+libsoup config.status 2.39.3
 configured by $0, generated by GNU Autoconf 2.68,
   with options \\"\$ac_cs_config\\"
 
index c1a61b4..59ee43c 100644 (file)
@@ -3,7 +3,7 @@ dnl *** Initialize automake and set version ***
 dnl *******************************************
 
 AC_PREREQ(2.63)
-AC_INIT([libsoup],[2.39.2],[http://bugzilla.gnome.org/enter_bug.cgi?product=libsoup])
+AC_INIT([libsoup],[2.39.3],[http://bugzilla.gnome.org/enter_bug.cgi?product=libsoup])
 AC_CONFIG_SRCDIR([libsoup-2.4.pc.in])
 AC_CONFIG_MACRO_DIR([m4])
 
@@ -159,7 +159,7 @@ AC_SUBST(SQLITE_LIBS)
 dnl ***************
 dnl *** gtk-doc ***
 dnl ***************
-dnl GTK_DOC_CHECK([1.10])
+GTK_DOC_CHECK([1.10])
 
 dnl *****************************
 dnl *** gobject-introspection ***
diff --git a/data/effective_tld_names.dat b/data/effective_tld_names.dat
new file mode 100644 (file)
index 0000000..0df8800
--- /dev/null
@@ -0,0 +1,5229 @@
+// ***** BEGIN LICENSE BLOCK *****
+// Version: MPL 1.1/GPL 2.0/LGPL 2.1
+// 
+// The contents of this file are subject to the Mozilla Public License Version 
+// 1.1 (the "License"); you may not use this file except in compliance with 
+// the License. You may obtain a copy of the License at 
+// http://www.mozilla.org/MPL/
+// 
+// Software distributed under the License is distributed on an "AS IS" basis,
+// WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+// for the specific language governing rights and limitations under the
+// License.
+// 
+// The Original Code is the Public Suffix List.
+// 
+// The Initial Developer of the Original Code is
+// Jo Hermans <jo.hermans@gmail.com>.
+// Portions created by the Initial Developer are Copyright (C) 2007
+// the Initial Developer. All Rights Reserved.
+// 
+// Contributor(s):
+//   Ruben Arakelyan <ruben@rubenarakelyan.com>
+//   Gervase Markham <gerv@gerv.net>
+//   Pamela Greene <pamg.bugs@gmail.com>
+//   David Triendl <david@triendl.name>
+//   Jothan Frakes <jothan@gmail.com>
+//   The kind representatives of many TLD registries
+// 
+// Alternatively, the contents of this file may be used under the terms of
+// either the GNU General Public License Version 2 or later (the "GPL"), or
+// the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
+// in which case the provisions of the GPL or the LGPL are applicable instead
+// of those above. If you wish to allow use of your version of this file only
+// under the terms of either the GPL or the LGPL, and not to allow others to
+// use your version of this file under the terms of the MPL, indicate your
+// decision by deleting the provisions above and replace them with the notice
+// and other provisions required by the GPL or the LGPL. If you do not delete
+// the provisions above, a recipient may use your version of this file under
+// the terms of any one of the MPL, the GPL or the LGPL.
+// 
+// ***** END LICENSE BLOCK *****
+
+// ===BEGIN ICANN DOMAINS===
+
+// ac : http://en.wikipedia.org/wiki/.ac
+ac
+com.ac
+edu.ac
+gov.ac
+net.ac
+mil.ac
+org.ac
+
+// ad : http://en.wikipedia.org/wiki/.ad
+ad
+nom.ad
+
+// ae : http://en.wikipedia.org/wiki/.ae
+// see also: "Domain Name Eligibility Policy" at http://www.aeda.ae/eng/aepolicy.php
+ae
+co.ae
+net.ae
+org.ae
+sch.ae
+ac.ae
+gov.ae
+mil.ae
+
+// aero : see http://www.information.aero/index.php?id=66
+aero
+accident-investigation.aero
+accident-prevention.aero
+aerobatic.aero
+aeroclub.aero
+aerodrome.aero
+agents.aero
+aircraft.aero
+airline.aero
+airport.aero
+air-surveillance.aero
+airtraffic.aero
+air-traffic-control.aero
+ambulance.aero
+amusement.aero
+association.aero
+author.aero
+ballooning.aero
+broker.aero
+caa.aero
+cargo.aero
+catering.aero
+certification.aero
+championship.aero
+charter.aero
+civilaviation.aero
+club.aero
+conference.aero
+consultant.aero
+consulting.aero
+control.aero
+council.aero
+crew.aero
+design.aero
+dgca.aero
+educator.aero
+emergency.aero
+engine.aero
+engineer.aero
+entertainment.aero
+equipment.aero
+exchange.aero
+express.aero
+federation.aero
+flight.aero
+freight.aero
+fuel.aero
+gliding.aero
+government.aero
+groundhandling.aero
+group.aero
+hanggliding.aero
+homebuilt.aero
+insurance.aero
+journal.aero
+journalist.aero
+leasing.aero
+logistics.aero
+magazine.aero
+maintenance.aero
+marketplace.aero
+media.aero
+microlight.aero
+modelling.aero
+navigation.aero
+parachuting.aero
+paragliding.aero
+passenger-association.aero
+pilot.aero
+press.aero
+production.aero
+recreation.aero
+repbody.aero
+res.aero
+research.aero
+rotorcraft.aero
+safety.aero
+scientist.aero
+services.aero
+show.aero
+skydiving.aero
+software.aero
+student.aero
+taxi.aero
+trader.aero
+trading.aero
+trainer.aero
+union.aero
+workinggroup.aero
+works.aero
+
+// af : http://www.nic.af/help.jsp
+af
+gov.af
+com.af
+org.af
+net.af
+edu.af
+
+// ag : http://www.nic.ag/prices.htm
+ag
+com.ag
+org.ag
+net.ag
+co.ag
+nom.ag
+
+// ai : http://nic.com.ai/
+ai
+off.ai
+com.ai
+net.ai
+org.ai
+
+// al : http://www.ert.gov.al/ert_alb/faq_det.html?Id=31
+al
+com.al
+edu.al
+gov.al
+mil.al
+net.al
+org.al
+
+// am : http://en.wikipedia.org/wiki/.am
+am
+
+// an : http://www.una.an/an_domreg/default.asp
+an
+com.an
+net.an
+org.an
+edu.an
+
+// ao : http://en.wikipedia.org/wiki/.ao
+// http://www.dns.ao/REGISTR.DOC
+ao
+ed.ao
+gv.ao
+og.ao
+co.ao
+pb.ao
+it.ao
+
+// aq : http://en.wikipedia.org/wiki/.aq
+aq
+
+// ar : http://en.wikipedia.org/wiki/.ar
+*.ar
+!congresodelalengua3.ar
+!educ.ar
+!gobiernoelectronico.ar
+!mecon.ar
+!nacion.ar
+!nic.ar
+!promocion.ar
+!retina.ar
+!uba.ar
+
+// arpa : http://en.wikipedia.org/wiki/.arpa
+// Confirmed by registry <iana-questions@icann.org> 2008-06-18
+e164.arpa
+in-addr.arpa
+ip6.arpa
+iris.arpa
+uri.arpa
+urn.arpa
+
+// as : http://en.wikipedia.org/wiki/.as
+as
+gov.as
+
+// asia : http://en.wikipedia.org/wiki/.asia
+asia
+
+// at : http://en.wikipedia.org/wiki/.at
+// Confirmed by registry <it@nic.at> 2008-06-17
+at
+ac.at
+co.at
+gv.at
+or.at
+
+// au : http://en.wikipedia.org/wiki/.au
+// http://www.auda.org.au/
+// 2LDs
+com.au\r
+net.au\r
+org.au\r
+edu.au\r
+gov.au\r
+csiro.au\r
+asn.au\r
+id.au\r
+// Historic 2LDs (closed to new registration, but sites still exist)\r
+info.au\r
+conf.au\r
+oz.au\r
+// CGDNs - http://www.cgdn.org.au/
+act.au
+nsw.au
+nt.au
+qld.au
+sa.au
+tas.au
+vic.au
+wa.au
+// 3LDs
+act.edu.au
+nsw.edu.au
+nt.edu.au
+qld.edu.au
+sa.edu.au
+tas.edu.au
+vic.edu.au
+wa.edu.au
+act.gov.au
+// Removed at request of Shae.Donelan@services.nsw.gov.au, 2010-03-04
+// nsw.gov.au
+nt.gov.au
+qld.gov.au
+sa.gov.au
+tas.gov.au
+vic.gov.au
+wa.gov.au
+
+// aw : http://en.wikipedia.org/wiki/.aw
+aw
+com.aw
+
+// ax : http://en.wikipedia.org/wiki/.ax
+ax
+
+// az : http://en.wikipedia.org/wiki/.az
+az
+com.az
+net.az
+int.az
+gov.az
+org.az
+edu.az
+info.az
+pp.az
+mil.az
+name.az
+pro.az
+biz.az
+
+// ba : http://en.wikipedia.org/wiki/.ba
+ba
+org.ba
+net.ba
+edu.ba
+gov.ba
+mil.ba
+unsa.ba
+unbi.ba
+co.ba
+com.ba
+rs.ba
+
+// bb : http://en.wikipedia.org/wiki/.bb
+bb
+biz.bb
+com.bb
+edu.bb
+gov.bb
+info.bb
+net.bb
+org.bb
+store.bb
+
+// bd : http://en.wikipedia.org/wiki/.bd
+*.bd
+
+// be : http://en.wikipedia.org/wiki/.be
+// Confirmed by registry <tech@dns.be> 2008-06-08
+be
+ac.be
+
+// bf : http://en.wikipedia.org/wiki/.bf
+bf
+gov.bf
+
+// bg : http://en.wikipedia.org/wiki/.bg
+// https://www.register.bg/user/static/rules/en/index.html
+bg
+a.bg
+b.bg
+c.bg
+d.bg
+e.bg
+f.bg
+g.bg
+h.bg
+i.bg
+j.bg
+k.bg
+l.bg
+m.bg
+n.bg
+o.bg
+p.bg
+q.bg
+r.bg
+s.bg
+t.bg
+u.bg
+v.bg
+w.bg
+x.bg
+y.bg
+z.bg
+0.bg
+1.bg
+2.bg
+3.bg
+4.bg
+5.bg
+6.bg
+7.bg
+8.bg
+9.bg                   
+
+// bh : http://en.wikipedia.org/wiki/.bh
+bh
+com.bh
+edu.bh
+net.bh
+org.bh
+gov.bh
+
+// bi : http://en.wikipedia.org/wiki/.bi
+// http://whois.nic.bi/
+bi
+co.bi
+com.bi
+edu.bi
+or.bi
+org.bi
+
+// biz : http://en.wikipedia.org/wiki/.biz
+biz
+
+// bj : http://en.wikipedia.org/wiki/.bj
+bj
+asso.bj
+barreau.bj
+gouv.bj
+
+// bm : http://www.bermudanic.bm/dnr-text.txt
+bm
+com.bm
+edu.bm
+gov.bm
+net.bm
+org.bm
+
+// bn : http://en.wikipedia.org/wiki/.bn
+*.bn
+
+// bo : http://www.nic.bo/
+bo
+com.bo
+edu.bo
+gov.bo
+gob.bo
+int.bo
+org.bo
+net.bo
+mil.bo
+tv.bo
+
+// br : http://registro.br/dominio/dpn.html
+// Updated by registry <fneves@registro.br> 2011-03-01
+br
+adm.br
+adv.br
+agr.br
+am.br
+arq.br
+art.br
+ato.br
+b.br
+bio.br
+blog.br
+bmd.br
+can.br
+cim.br
+cng.br
+cnt.br
+com.br
+coop.br
+ecn.br
+edu.br
+emp.br
+eng.br
+esp.br
+etc.br
+eti.br
+far.br
+flog.br
+fm.br
+fnd.br
+fot.br
+fst.br
+g12.br
+ggf.br
+gov.br
+imb.br
+ind.br
+inf.br
+jor.br
+jus.br
+lel.br
+mat.br
+med.br
+mil.br
+mus.br
+net.br
+nom.br
+not.br
+ntr.br
+odo.br
+org.br
+ppg.br
+pro.br
+psc.br
+psi.br
+qsl.br
+radio.br
+rec.br
+slg.br
+srv.br
+taxi.br
+teo.br
+tmp.br
+trd.br
+tur.br
+tv.br
+vet.br
+vlog.br
+wiki.br
+zlg.br
+
+// bs : http://www.nic.bs/rules.html
+bs
+com.bs
+net.bs
+org.bs
+edu.bs
+gov.bs
+
+// bt : http://en.wikipedia.org/wiki/.bt
+bt
+com.bt
+edu.bt
+gov.bt
+net.bt
+org.bt
+
+// bv : No registrations at this time.
+// Submitted by registry <jarle@uninett.no> 2006-06-16
+
+// bw : http://en.wikipedia.org/wiki/.bw
+// http://www.gobin.info/domainname/bw.doc
+// list of other 2nd level tlds ?
+bw
+co.bw
+org.bw
+
+// by : http://en.wikipedia.org/wiki/.by
+// http://tld.by/rules_2006_en.html
+// list of other 2nd level tlds ?
+by
+gov.by
+mil.by
+// Official information does not indicate that com.by is a reserved
+// second-level domain, but it's being used as one (see www.google.com.by and
+// www.yahoo.com.by, for example), so we list it here for safety's sake.
+com.by
+
+// http://hoster.by/
+of.by
+
+// bz : http://en.wikipedia.org/wiki/.bz
+// http://www.belizenic.bz/
+bz
+com.bz
+net.bz
+org.bz
+edu.bz
+gov.bz
+
+// ca : http://en.wikipedia.org/wiki/.ca
+ca
+// ca geographical names
+ab.ca
+bc.ca
+mb.ca
+nb.ca
+nf.ca
+nl.ca
+ns.ca
+nt.ca
+nu.ca
+on.ca
+pe.ca
+qc.ca
+sk.ca
+yk.ca
+// gc.ca: http://en.wikipedia.org/wiki/.gc.ca
+// see also: http://registry.gc.ca/en/SubdomainFAQ
+gc.ca
+
+// cat : http://en.wikipedia.org/wiki/.cat
+cat
+
+// cc : http://en.wikipedia.org/wiki/.cc
+cc
+
+// cd : http://en.wikipedia.org/wiki/.cd
+// see also: https://www.nic.cd/domain/insertDomain_2.jsp?act=1
+cd
+gov.cd
+
+// cf : http://en.wikipedia.org/wiki/.cf
+cf
+
+// cg : http://en.wikipedia.org/wiki/.cg
+cg
+
+// ch : http://en.wikipedia.org/wiki/.ch
+ch
+
+// ci : http://en.wikipedia.org/wiki/.ci
+// http://www.nic.ci/index.php?page=charte
+ci
+org.ci
+or.ci
+com.ci
+co.ci
+edu.ci
+ed.ci
+ac.ci
+net.ci
+go.ci
+asso.ci
+aéroport.ci
+int.ci
+presse.ci
+md.ci
+gouv.ci
+
+// ck : http://en.wikipedia.org/wiki/.ck
+*.ck
+!www.ck
+
+// cl : http://en.wikipedia.org/wiki/.cl
+cl
+gov.cl
+gob.cl
+co.cl
+mil.cl
+
+// cm : http://en.wikipedia.org/wiki/.cm
+cm
+gov.cm
+
+// cn : http://en.wikipedia.org/wiki/.cn
+// Submitted by registry <tanyaling@cnnic.cn> 2008-06-11
+cn
+ac.cn
+com.cn
+edu.cn
+gov.cn
+net.cn
+org.cn
+mil.cn
+公司.cn
+网络.cn
+網絡.cn
+// cn geographic names
+ah.cn
+bj.cn
+cq.cn
+fj.cn
+gd.cn
+gs.cn
+gz.cn
+gx.cn
+ha.cn
+hb.cn
+he.cn
+hi.cn
+hl.cn
+hn.cn
+jl.cn
+js.cn
+jx.cn
+ln.cn
+nm.cn
+nx.cn
+qh.cn
+sc.cn
+sd.cn
+sh.cn
+sn.cn
+sx.cn
+tj.cn
+xj.cn
+xz.cn
+yn.cn
+zj.cn
+hk.cn
+mo.cn
+tw.cn
+
+// co : http://en.wikipedia.org/wiki/.co
+// Submitted by registry <tecnico@uniandes.edu.co> 2008-06-11
+co
+arts.co
+com.co
+edu.co
+firm.co
+gov.co
+info.co
+int.co
+mil.co
+net.co
+nom.co
+org.co
+rec.co
+web.co
+
+// com : http://en.wikipedia.org/wiki/.com
+com
+
+// coop : http://en.wikipedia.org/wiki/.coop
+coop
+
+// cr : http://www.nic.cr/niccr_publico/showRegistroDominiosScreen.do
+cr
+ac.cr
+co.cr
+ed.cr
+fi.cr
+go.cr
+or.cr
+sa.cr
+
+// cu : http://en.wikipedia.org/wiki/.cu
+cu
+com.cu
+edu.cu
+org.cu
+net.cu
+gov.cu
+inf.cu
+
+// cv : http://en.wikipedia.org/wiki/.cv
+cv
+
+// cx : http://en.wikipedia.org/wiki/.cx
+// list of other 2nd level tlds ?
+cx
+gov.cx
+
+// cy : http://en.wikipedia.org/wiki/.cy
+*.cy
+
+// cz : http://en.wikipedia.org/wiki/.cz
+cz
+
+// de : http://en.wikipedia.org/wiki/.de
+// Confirmed by registry <ops@denic.de> (with technical
+// reservations) 2008-07-01
+de
+
+// dj : http://en.wikipedia.org/wiki/.dj
+dj
+
+// dk : http://en.wikipedia.org/wiki/.dk
+// Confirmed by registry <robert@dk-hostmaster.dk> 2008-06-17
+dk
+
+// dm : http://en.wikipedia.org/wiki/.dm
+dm
+com.dm
+net.dm
+org.dm
+edu.dm
+gov.dm
+
+// do : http://en.wikipedia.org/wiki/.do
+do
+art.do
+com.do
+edu.do
+gob.do
+gov.do
+mil.do
+net.do
+org.do
+sld.do
+web.do
+
+// dz : http://en.wikipedia.org/wiki/.dz
+dz
+com.dz
+org.dz
+net.dz
+gov.dz
+edu.dz
+asso.dz
+pol.dz
+art.dz
+
+// ec : http://www.nic.ec/reg/paso1.asp
+// Submitted by registry <vabboud@nic.ec> 2008-07-04
+ec
+com.ec
+info.ec
+net.ec
+fin.ec
+k12.ec
+med.ec
+pro.ec
+org.ec
+edu.ec
+gov.ec
+gob.ec
+mil.ec
+
+// edu : http://en.wikipedia.org/wiki/.edu
+edu
+
+// ee : http://www.eenet.ee/EENet/dom_reeglid.html#lisa_B
+ee
+edu.ee
+gov.ee
+riik.ee
+lib.ee
+med.ee
+com.ee
+pri.ee
+aip.ee
+org.ee
+fie.ee
+
+// eg : http://en.wikipedia.org/wiki/.eg
+eg  
+com.eg
+edu.eg
+eun.eg
+gov.eg
+mil.eg
+name.eg
+net.eg
+org.eg
+sci.eg
+
+// er : http://en.wikipedia.org/wiki/.er
+*.er
+
+// es : https://www.nic.es/site_ingles/ingles/dominios/index.html
+es
+com.es
+nom.es
+org.es
+gob.es
+edu.es
+
+// et : http://en.wikipedia.org/wiki/.et
+*.et
+
+// eu : http://en.wikipedia.org/wiki/.eu
+eu
+
+// fi : http://en.wikipedia.org/wiki/.fi
+fi
+// aland.fi : http://en.wikipedia.org/wiki/.ax
+// This domain is being phased out in favor of .ax. As there are still many
+// domains under aland.fi, we still keep it on the list until aland.fi is
+// completely removed.
+// TODO: Check for updates (expected to be phased out around Q1/2009)
+aland.fi
+
+// fj : http://en.wikipedia.org/wiki/.fj
+*.fj
+
+// fk : http://en.wikipedia.org/wiki/.fk
+*.fk
+
+// fm : http://en.wikipedia.org/wiki/.fm
+fm
+
+// fo : http://en.wikipedia.org/wiki/.fo
+fo
+
+// fr : http://www.afnic.fr/
+// domaines descriptifs : http://www.afnic.fr/obtenir/chartes/nommage-fr/annexe-descriptifs
+fr
+com.fr
+asso.fr
+nom.fr
+prd.fr
+presse.fr
+tm.fr
+// domaines sectoriels : http://www.afnic.fr/obtenir/chartes/nommage-fr/annexe-sectoriels
+aeroport.fr
+assedic.fr
+avocat.fr
+avoues.fr
+cci.fr
+chambagri.fr
+chirurgiens-dentistes.fr
+experts-comptables.fr
+geometre-expert.fr
+gouv.fr
+greta.fr
+huissier-justice.fr
+medecin.fr
+notaires.fr
+pharmacien.fr
+port.fr
+veterinaire.fr
+
+// ga : http://en.wikipedia.org/wiki/.ga
+ga
+
+// gb : This registry is effectively dormant
+// Submitted by registry <Damien.Shaw@ja.net> 2008-06-12
+
+// gd : http://en.wikipedia.org/wiki/.gd
+gd
+
+// ge : http://www.nic.net.ge/policy_en.pdf
+ge
+com.ge
+edu.ge
+gov.ge
+org.ge
+mil.ge
+net.ge
+pvt.ge
+
+// gf : http://en.wikipedia.org/wiki/.gf
+gf
+
+// gg : http://www.channelisles.net/applic/avextn.shtml
+gg
+co.gg
+org.gg
+net.gg
+sch.gg
+gov.gg
+
+// gh : http://en.wikipedia.org/wiki/.gh
+// see also: http://www.nic.gh/reg_now.php
+// Although domains directly at second level are not possible at the moment,
+// they have been possible for some time and may come back.
+gh
+com.gh
+edu.gh
+gov.gh
+org.gh
+mil.gh
+
+// gi : http://www.nic.gi/rules.html
+gi
+com.gi
+ltd.gi
+gov.gi
+mod.gi
+edu.gi
+org.gi
+
+// gl : http://en.wikipedia.org/wiki/.gl
+// http://nic.gl
+gl
+
+// gm : http://www.nic.gm/htmlpages%5Cgm-policy.htm
+gm
+
+// gn : http://psg.com/dns/gn/gn.txt
+// Submitted by registry <randy@psg.com> 2008-06-17
+ac.gn
+com.gn
+edu.gn
+gov.gn
+org.gn
+net.gn
+
+// gov : http://en.wikipedia.org/wiki/.gov
+gov
+
+// gp : http://www.nic.gp/index.php?lang=en
+gp
+com.gp
+net.gp
+mobi.gp
+edu.gp
+org.gp
+asso.gp
+
+// gq : http://en.wikipedia.org/wiki/.gq
+gq
+
+// gr : https://grweb.ics.forth.gr/english/1617-B-2005.html
+// Submitted by registry <segred@ics.forth.gr> 2008-06-09
+gr
+com.gr
+edu.gr
+net.gr
+org.gr
+gov.gr
+
+// gs : http://en.wikipedia.org/wiki/.gs
+gs
+
+// gt : http://www.gt/politicas.html
+*.gt
+!www.gt
+
+// gu : http://gadao.gov.gu/registration.txt
+*.gu
+
+// gw : http://en.wikipedia.org/wiki/.gw
+gw
+
+// gy : http://en.wikipedia.org/wiki/.gy
+// http://registry.gy/
+gy
+co.gy
+com.gy
+net.gy
+
+// hk : https://www.hkdnr.hk
+// Submitted by registry <hk.tech@hkirc.hk> 2008-06-11
+hk
+com.hk
+edu.hk
+gov.hk
+idv.hk
+net.hk
+org.hk
+公司.hk
+教育.hk
+敎育.hk
+政府.hk
+個人.hk
+个人.hk
+箇人.hk
+網络.hk
+网络.hk
+组織.hk
+網絡.hk
+网絡.hk
+组织.hk
+組織.hk
+組织.hk 
+
+// hm : http://en.wikipedia.org/wiki/.hm
+hm
+
+// hn : http://www.nic.hn/politicas/ps02,,05.html
+hn
+com.hn
+edu.hn
+org.hn
+net.hn
+mil.hn
+gob.hn
+
+// hr : http://www.dns.hr/documents/pdf/HRTLD-regulations.pdf
+hr
+iz.hr
+from.hr
+name.hr
+com.hr
+
+// ht : http://www.nic.ht/info/charte.cfm
+ht
+com.ht
+shop.ht
+firm.ht
+info.ht
+adult.ht
+net.ht
+pro.ht
+org.ht
+med.ht
+art.ht
+coop.ht
+pol.ht
+asso.ht
+edu.ht
+rel.ht
+gouv.ht
+perso.ht
+
+// hu : http://www.domain.hu/domain/English/sld.html
+// Confirmed by registry <pasztor@iszt.hu> 2008-06-12
+hu
+co.hu
+info.hu
+org.hu
+priv.hu
+sport.hu
+tm.hu
+2000.hu
+agrar.hu
+bolt.hu
+casino.hu
+city.hu
+erotica.hu
+erotika.hu
+film.hu
+forum.hu
+games.hu
+hotel.hu
+ingatlan.hu
+jogasz.hu
+konyvelo.hu
+lakas.hu
+media.hu
+news.hu
+reklam.hu
+sex.hu
+shop.hu
+suli.hu
+szex.hu
+tozsde.hu
+utazas.hu
+video.hu
+
+// id : http://en.wikipedia.org/wiki/.id
+// see also: https://register.pandi.or.id/
+id
+ac.id
+co.id
+go.id
+mil.id
+net.id
+or.id
+sch.id
+web.id
+
+// ie : http://en.wikipedia.org/wiki/.ie
+ie
+gov.ie
+
+// il : http://en.wikipedia.org/wiki/.il
+*.il
+
+// im : https://www.nic.im/pdfs/imfaqs.pdf
+im
+co.im
+ltd.co.im
+plc.co.im
+net.im
+gov.im
+org.im
+nic.im
+ac.im
+
+// in : http://en.wikipedia.org/wiki/.in
+// see also: http://www.inregistry.in/policies/
+// Please note, that nic.in is not an offical eTLD, but used by most
+// government institutions.
+in
+co.in
+firm.in
+net.in
+org.in
+gen.in
+ind.in
+nic.in
+ac.in
+edu.in
+res.in
+gov.in
+mil.in
+
+// info : http://en.wikipedia.org/wiki/.info
+info
+
+// int : http://en.wikipedia.org/wiki/.int
+// Confirmed by registry <iana-questions@icann.org> 2008-06-18
+int
+eu.int
+
+// io : http://www.nic.io/rules.html
+// list of other 2nd level tlds ?
+io
+com.io
+
+// iq : http://www.cmc.iq/english/iq/iqregister1.htm
+iq
+gov.iq
+edu.iq
+mil.iq
+com.iq
+org.iq
+net.iq
+
+// ir : http://www.nic.ir/Terms_and_Conditions_ir,_Appendix_1_Domain_Rules
+// Also see http://www.nic.ir/Internationalized_Domain_Names
+// Two <iran>.ir entries added at request of <tech-team@nic.ir>, 2010-04-16
+ir
+ac.ir
+co.ir
+gov.ir
+id.ir
+net.ir
+org.ir
+sch.ir
+// xn--mgba3a4f16a.ir (<iran>.ir, Persian YEH)
+ایران.ir
+// xn--mgba3a4fra.ir (<iran>.ir, Arabic YEH)
+ايران.ir
+
+// is : http://www.isnic.is/domain/rules.php
+// Confirmed by registry <marius@isgate.is> 2008-12-06
+is
+net.is
+com.is
+edu.is
+gov.is
+org.is
+int.is
+
+// it : http://en.wikipedia.org/wiki/.it
+it
+gov.it
+edu.it
+// list of reserved geo-names : 
+// http://www.nic.it/documenti/regolamenti-e-linee-guida/regolamento-assegnazione-versione-6.0.pdf
+// (There is also a list of reserved geo-names corresponding to Italian 
+// municipalities : http://www.nic.it/documenti/appendice-c.pdf , but it is
+// not included here.)
+agrigento.it
+ag.it
+alessandria.it
+al.it
+ancona.it
+an.it
+aosta.it
+aoste.it
+ao.it
+arezzo.it
+ar.it
+ascoli-piceno.it
+ascolipiceno.it
+ap.it
+asti.it
+at.it
+avellino.it
+av.it
+bari.it
+ba.it
+andria-barletta-trani.it
+andriabarlettatrani.it
+trani-barletta-andria.it
+tranibarlettaandria.it
+barletta-trani-andria.it
+barlettatraniandria.it
+andria-trani-barletta.it
+andriatranibarletta.it
+trani-andria-barletta.it
+traniandriabarletta.it
+bt.it
+belluno.it
+bl.it
+benevento.it
+bn.it
+bergamo.it
+bg.it
+biella.it
+bi.it
+bologna.it
+bo.it
+bolzano.it
+bozen.it
+balsan.it
+alto-adige.it
+altoadige.it
+suedtirol.it
+bz.it
+brescia.it
+bs.it
+brindisi.it
+br.it
+cagliari.it
+ca.it
+caltanissetta.it
+cl.it
+campobasso.it
+cb.it
+carboniaiglesias.it
+carbonia-iglesias.it
+iglesias-carbonia.it
+iglesiascarbonia.it
+ci.it
+caserta.it
+ce.it
+catania.it
+ct.it
+catanzaro.it
+cz.it
+chieti.it
+ch.it
+como.it
+co.it
+cosenza.it
+cs.it
+cremona.it
+cr.it
+crotone.it
+kr.it
+cuneo.it
+cn.it
+dell-ogliastra.it
+dellogliastra.it
+ogliastra.it
+og.it
+enna.it
+en.it
+ferrara.it
+fe.it
+fermo.it
+fm.it
+firenze.it
+florence.it
+fi.it
+foggia.it
+fg.it
+forli-cesena.it
+forlicesena.it
+cesena-forli.it
+cesenaforli.it
+fc.it
+frosinone.it
+fr.it
+genova.it
+genoa.it
+ge.it
+gorizia.it
+go.it
+grosseto.it
+gr.it
+imperia.it
+im.it
+isernia.it
+is.it
+laquila.it
+aquila.it
+aq.it
+la-spezia.it
+laspezia.it
+sp.it
+latina.it
+lt.it
+lecce.it
+le.it
+lecco.it
+lc.it
+livorno.it
+li.it
+lodi.it
+lo.it
+lucca.it
+lu.it
+macerata.it
+mc.it
+mantova.it
+mn.it
+massa-carrara.it
+massacarrara.it
+carrara-massa.it
+carraramassa.it
+ms.it
+matera.it
+mt.it
+medio-campidano.it
+mediocampidano.it
+campidano-medio.it
+campidanomedio.it
+vs.it
+messina.it
+me.it
+milano.it
+milan.it
+mi.it
+modena.it
+mo.it
+monza.it
+monza-brianza.it
+monzabrianza.it
+monzaebrianza.it
+monzaedellabrianza.it
+monza-e-della-brianza.it
+mb.it
+napoli.it
+naples.it
+na.it
+novara.it
+no.it
+nuoro.it
+nu.it
+oristano.it
+or.it
+padova.it
+padua.it
+pd.it
+palermo.it
+pa.it
+parma.it
+pr.it
+pavia.it
+pv.it
+perugia.it
+pg.it
+pescara.it
+pe.it
+pesaro-urbino.it
+pesarourbino.it
+urbino-pesaro.it
+urbinopesaro.it
+pu.it
+piacenza.it
+pc.it
+pisa.it
+pi.it
+pistoia.it
+pt.it
+pordenone.it
+pn.it
+potenza.it
+pz.it
+prato.it
+po.it
+ragusa.it
+rg.it
+ravenna.it
+ra.it
+reggio-calabria.it
+reggiocalabria.it
+rc.it
+reggio-emilia.it
+reggioemilia.it
+re.it
+rieti.it
+ri.it
+rimini.it
+rn.it
+roma.it
+rome.it
+rm.it
+rovigo.it
+ro.it
+salerno.it
+sa.it
+sassari.it
+ss.it
+savona.it
+sv.it
+siena.it
+si.it
+siracusa.it
+sr.it
+sondrio.it
+so.it
+taranto.it
+ta.it
+tempio-olbia.it
+tempioolbia.it
+olbia-tempio.it
+olbiatempio.it
+ot.it
+teramo.it
+te.it
+terni.it
+tr.it
+torino.it
+turin.it
+to.it
+trapani.it
+tp.it
+trento.it
+trentino.it
+tn.it
+treviso.it
+tv.it
+trieste.it
+ts.it
+udine.it
+ud.it
+varese.it
+va.it
+venezia.it
+venice.it
+ve.it
+verbania.it
+vb.it
+vercelli.it
+vc.it
+verona.it
+vr.it
+vibo-valentia.it
+vibovalentia.it
+vv.it
+vicenza.it
+vi.it
+viterbo.it
+vt.it
+
+// je : http://www.channelisles.net/applic/avextn.shtml
+je
+co.je
+org.je
+net.je
+sch.je
+gov.je
+
+// jm : http://www.com.jm/register.html
+*.jm
+
+// jo : http://www.dns.jo/Registration_policy.aspx
+jo
+com.jo
+org.jo
+net.jo
+edu.jo
+sch.jo
+gov.jo
+mil.jo
+name.jo
+
+// jobs : http://en.wikipedia.org/wiki/.jobs
+jobs
+
+// jp : http://en.wikipedia.org/wiki/.jp
+// http://jprs.co.jp/en/jpdomain.html
+// Submitted by registry <yone@jprs.co.jp> 2008-06-11
+// Updated by registry <yone@jprs.co.jp> 2008-12-04
+jp
+// jp organizational type names 
+ac.jp
+ad.jp
+co.jp
+ed.jp
+go.jp
+gr.jp
+lg.jp
+ne.jp
+or.jp
+// jp geographic type names
+// http://jprs.jp/doc/rule/saisoku-1.html
+*.aichi.jp
+*.akita.jp
+*.aomori.jp
+*.chiba.jp
+*.ehime.jp
+*.fukui.jp
+*.fukuoka.jp
+*.fukushima.jp
+*.gifu.jp
+*.gunma.jp
+*.hiroshima.jp
+*.hokkaido.jp
+*.hyogo.jp
+*.ibaraki.jp
+*.ishikawa.jp
+*.iwate.jp
+*.kagawa.jp
+*.kagoshima.jp
+*.kanagawa.jp
+*.kawasaki.jp
+*.kitakyushu.jp
+*.kobe.jp
+*.kochi.jp
+*.kumamoto.jp
+*.kyoto.jp
+*.mie.jp
+*.miyagi.jp
+*.miyazaki.jp
+*.nagano.jp
+*.nagasaki.jp
+*.nagoya.jp
+*.nara.jp
+*.niigata.jp
+*.oita.jp
+*.okayama.jp
+*.okinawa.jp
+*.osaka.jp
+*.saga.jp
+*.saitama.jp
+*.sapporo.jp
+*.sendai.jp
+*.shiga.jp
+*.shimane.jp
+*.shizuoka.jp
+*.tochigi.jp
+*.tokushima.jp
+*.tokyo.jp
+*.tottori.jp
+*.toyama.jp
+*.wakayama.jp
+*.yamagata.jp
+*.yamaguchi.jp
+*.yamanashi.jp
+*.yokohama.jp
+!metro.tokyo.jp
+!pref.aichi.jp
+!pref.akita.jp
+!pref.aomori.jp
+!pref.chiba.jp
+!pref.ehime.jp
+!pref.fukui.jp
+!pref.fukuoka.jp
+!pref.fukushima.jp
+!pref.gifu.jp
+!pref.gunma.jp
+!pref.hiroshima.jp
+!pref.hokkaido.jp
+!pref.hyogo.jp
+!pref.ibaraki.jp
+!pref.ishikawa.jp
+!pref.iwate.jp
+!pref.kagawa.jp
+!pref.kagoshima.jp
+!pref.kanagawa.jp
+!pref.kochi.jp
+!pref.kumamoto.jp
+!pref.kyoto.jp
+!pref.mie.jp
+!pref.miyagi.jp
+!pref.miyazaki.jp
+!pref.nagano.jp
+!pref.nagasaki.jp
+!pref.nara.jp
+!pref.niigata.jp
+!pref.oita.jp
+!pref.okayama.jp
+!pref.okinawa.jp
+!pref.osaka.jp
+!pref.saga.jp
+!pref.saitama.jp
+!pref.shiga.jp
+!pref.shimane.jp
+!pref.shizuoka.jp
+!pref.tochigi.jp
+!pref.tokushima.jp
+!pref.tottori.jp
+!pref.toyama.jp
+!pref.wakayama.jp
+!pref.yamagata.jp
+!pref.yamaguchi.jp
+!pref.yamanashi.jp
+!city.chiba.jp
+!city.fukuoka.jp
+!city.hiroshima.jp
+!city.kawasaki.jp
+!city.kitakyushu.jp
+!city.kobe.jp
+!city.kyoto.jp
+!city.nagoya.jp
+!city.niigata.jp
+!city.okayama.jp
+!city.osaka.jp
+!city.saitama.jp
+!city.sapporo.jp
+!city.sendai.jp
+!city.shizuoka.jp
+!city.yokohama.jp
+
+// ke : http://www.kenic.or.ke/index.php?option=com_content&task=view&id=117&Itemid=145
+*.ke
+
+// kg : http://www.domain.kg/dmn_n.html
+kg
+org.kg
+net.kg
+com.kg
+edu.kg
+gov.kg
+mil.kg
+
+// kh : http://www.mptc.gov.kh/dns_registration.htm
+*.kh
+
+// ki : http://www.ki/dns/index.html
+ki
+edu.ki
+biz.ki
+net.ki
+org.ki
+gov.ki
+info.ki
+com.ki
+
+// km : http://en.wikipedia.org/wiki/.km
+// http://www.domaine.km/documents/charte.doc
+km
+org.km
+nom.km
+gov.km
+prd.km
+tm.km
+edu.km
+mil.km
+ass.km
+com.km
+// These are only mentioned as proposed suggestions at domaine.km, but
+// http://en.wikipedia.org/wiki/.km says they're available for registration:
+coop.km
+asso.km
+presse.km
+medecin.km
+notaires.km
+pharmaciens.km
+veterinaire.km
+gouv.km
+
+// kn : http://en.wikipedia.org/wiki/.kn
+// http://www.dot.kn/domainRules.html
+kn
+net.kn
+org.kn
+edu.kn
+gov.kn
+
+// kp : http://www.kcce.kp/en_index.php
+com.kp
+edu.kp
+gov.kp
+org.kp
+rep.kp
+tra.kp
+
+// kr : http://en.wikipedia.org/wiki/.kr
+// see also: http://domain.nida.or.kr/eng/registration.jsp
+kr
+ac.kr
+co.kr
+es.kr
+go.kr
+hs.kr
+kg.kr
+mil.kr
+ms.kr
+ne.kr
+or.kr
+pe.kr
+re.kr
+sc.kr
+// kr geographical names
+busan.kr
+chungbuk.kr
+chungnam.kr
+daegu.kr
+daejeon.kr
+gangwon.kr
+gwangju.kr
+gyeongbuk.kr
+gyeonggi.kr
+gyeongnam.kr
+incheon.kr
+jeju.kr
+jeonbuk.kr
+jeonnam.kr
+seoul.kr
+ulsan.kr
+
+// kw : http://en.wikipedia.org/wiki/.kw
+*.kw
+
+// ky : http://www.icta.ky/da_ky_reg_dom.php
+// Confirmed by registry <kysupport@perimeterusa.com> 2008-06-17
+ky
+edu.ky
+gov.ky
+com.ky
+org.ky
+net.ky
+
+// kz : http://en.wikipedia.org/wiki/.kz
+// see also: http://www.nic.kz/rules/index.jsp
+kz
+org.kz
+edu.kz
+net.kz
+gov.kz
+mil.kz
+com.kz
+
+// la : http://en.wikipedia.org/wiki/.la
+// Submitted by registry <gavin.brown@nic.la> 2008-06-10
+la
+int.la
+net.la
+info.la
+edu.la
+gov.la
+per.la
+com.la
+org.la
+
+// lb : http://en.wikipedia.org/wiki/.lb
+// Submitted by registry <randy@psg.com> 2008-06-17
+com.lb
+edu.lb
+gov.lb
+net.lb
+org.lb
+
+// lc : http://en.wikipedia.org/wiki/.lc
+// see also: http://www.nic.lc/rules.htm
+lc
+com.lc
+net.lc
+co.lc
+org.lc
+edu.lc
+gov.lc
+
+// li : http://en.wikipedia.org/wiki/.li
+li
+
+// lk : http://www.nic.lk/seclevpr.html
+lk
+gov.lk
+sch.lk
+net.lk
+int.lk
+com.lk
+org.lk
+edu.lk
+ngo.lk
+soc.lk
+web.lk
+ltd.lk
+assn.lk
+grp.lk
+hotel.lk
+
+// lr : http://psg.com/dns/lr/lr.txt
+// Submitted by registry <randy@psg.com> 2008-06-17
+com.lr
+edu.lr
+gov.lr
+org.lr
+net.lr
+
+// ls : http://en.wikipedia.org/wiki/.ls
+ls
+co.ls
+org.ls
+
+// lt : http://en.wikipedia.org/wiki/.lt
+lt
+// gov.lt : http://www.gov.lt/index_en.php
+gov.lt
+
+// lu : http://www.dns.lu/en/
+lu
+
+// lv : http://www.nic.lv/DNS/En/generic.php
+lv
+com.lv
+edu.lv
+gov.lv
+org.lv
+mil.lv
+id.lv
+net.lv
+asn.lv
+conf.lv
+
+// ly : http://www.nic.ly/regulations.php
+ly
+com.ly
+net.ly
+gov.ly
+plc.ly
+edu.ly
+sch.ly
+med.ly
+org.ly
+id.ly
+
+// ma : http://en.wikipedia.org/wiki/.ma
+// http://www.anrt.ma/fr/admin/download/upload/file_fr782.pdf
+ma
+co.ma
+net.ma
+gov.ma
+org.ma
+ac.ma
+press.ma
+
+// mc : http://www.nic.mc/
+mc
+tm.mc
+asso.mc
+
+// md : http://en.wikipedia.org/wiki/.md
+md
+
+// me : http://en.wikipedia.org/wiki/.me
+me
+co.me
+net.me
+org.me
+edu.me
+ac.me
+gov.me
+its.me
+priv.me
+
+// mg : http://www.nic.mg/tarif.htm
+mg
+org.mg
+nom.mg
+gov.mg
+prd.mg
+tm.mg
+edu.mg
+mil.mg
+com.mg
+
+// mh : http://en.wikipedia.org/wiki/.mh
+mh
+
+// mil : http://en.wikipedia.org/wiki/.mil
+mil
+
+// mk : http://en.wikipedia.org/wiki/.mk
+// see also: http://dns.marnet.net.mk/postapka.php
+mk
+com.mk
+org.mk
+net.mk
+edu.mk
+gov.mk
+inf.mk
+name.mk
+
+// ml : http://www.gobin.info/domainname/ml-template.doc
+// see also: http://en.wikipedia.org/wiki/.ml
+ml
+com.ml
+edu.ml
+gouv.ml
+gov.ml
+net.ml
+org.ml
+presse.ml
+
+// mm : http://en.wikipedia.org/wiki/.mm
+*.mm
+
+// mn : http://en.wikipedia.org/wiki/.mn
+mn
+gov.mn
+edu.mn
+org.mn
+
+// mo : http://www.monic.net.mo/
+mo
+com.mo
+net.mo
+org.mo
+edu.mo
+gov.mo
+
+// mobi : http://en.wikipedia.org/wiki/.mobi
+mobi
+
+// mp : http://www.dot.mp/
+// Confirmed by registry <dcamacho@saipan.com> 2008-06-17
+mp
+
+// mq : http://en.wikipedia.org/wiki/.mq
+mq
+
+// mr : http://en.wikipedia.org/wiki/.mr
+mr
+gov.mr
+
+// ms : http://en.wikipedia.org/wiki/.ms
+ms
+
+// mt : https://www.nic.org.mt/dotmt/
+*.mt
+
+// mu : http://en.wikipedia.org/wiki/.mu
+mu
+com.mu
+net.mu
+org.mu
+gov.mu
+ac.mu
+co.mu
+or.mu
+
+// museum : http://about.museum/naming/
+// http://index.museum/
+museum
+academy.museum
+agriculture.museum
+air.museum
+airguard.museum
+alabama.museum
+alaska.museum
+amber.museum
+ambulance.museum
+american.museum
+americana.museum
+americanantiques.museum
+americanart.museum
+amsterdam.museum
+and.museum
+annefrank.museum
+anthro.museum
+anthropology.museum
+antiques.museum
+aquarium.museum
+arboretum.museum
+archaeological.museum
+archaeology.museum
+architecture.museum
+art.museum
+artanddesign.museum
+artcenter.museum
+artdeco.museum
+arteducation.museum
+artgallery.museum
+arts.museum
+artsandcrafts.museum
+asmatart.museum
+assassination.museum
+assisi.museum
+association.museum
+astronomy.museum
+atlanta.museum
+austin.museum
+australia.museum
+automotive.museum
+aviation.museum
+axis.museum
+badajoz.museum
+baghdad.museum
+bahn.museum
+bale.museum
+baltimore.museum
+barcelona.museum
+baseball.museum
+basel.museum
+baths.museum
+bauern.museum
+beauxarts.museum
+beeldengeluid.museum
+bellevue.museum
+bergbau.museum
+berkeley.museum
+berlin.museum
+bern.museum
+bible.museum
+bilbao.museum
+bill.museum
+birdart.museum
+birthplace.museum
+bonn.museum
+boston.museum
+botanical.museum
+botanicalgarden.museum
+botanicgarden.museum
+botany.museum
+brandywinevalley.museum
+brasil.museum
+bristol.museum
+british.museum
+britishcolumbia.museum
+broadcast.museum
+brunel.museum
+brussel.museum
+brussels.museum
+bruxelles.museum
+building.museum
+burghof.museum
+bus.museum
+bushey.museum
+cadaques.museum
+california.museum
+cambridge.museum
+can.museum
+canada.museum
+capebreton.museum
+carrier.museum
+cartoonart.museum
+casadelamoneda.museum
+castle.museum
+castres.museum
+celtic.museum
+center.museum
+chattanooga.museum
+cheltenham.museum
+chesapeakebay.museum
+chicago.museum
+children.museum
+childrens.museum
+childrensgarden.museum
+chiropractic.museum
+chocolate.museum
+christiansburg.museum
+cincinnati.museum
+cinema.museum
+circus.museum
+civilisation.museum
+civilization.museum
+civilwar.museum
+clinton.museum
+clock.museum
+coal.museum
+coastaldefence.museum
+cody.museum
+coldwar.museum
+collection.museum
+colonialwilliamsburg.museum
+coloradoplateau.museum
+columbia.museum
+columbus.museum
+communication.museum
+communications.museum
+community.museum
+computer.museum
+computerhistory.museum
+comunicações.museum
+contemporary.museum
+contemporaryart.museum
+convent.museum
+copenhagen.museum
+corporation.museum
+correios-e-telecomunicações.museum
+corvette.museum
+costume.museum
+countryestate.museum
+county.museum
+crafts.museum
+cranbrook.museum
+creation.museum
+cultural.museum
+culturalcenter.museum
+culture.museum
+cyber.museum
+cymru.museum
+dali.museum
+dallas.museum
+database.museum
+ddr.museum
+decorativearts.museum
+delaware.museum
+delmenhorst.museum
+denmark.museum
+depot.museum
+design.museum
+detroit.museum
+dinosaur.museum
+discovery.museum
+dolls.museum
+donostia.museum
+durham.museum
+eastafrica.museum
+eastcoast.museum
+education.museum
+educational.museum
+egyptian.museum
+eisenbahn.museum
+elburg.museum
+elvendrell.museum
+embroidery.museum
+encyclopedic.museum
+england.museum
+entomology.museum
+environment.museum
+environmentalconservation.museum
+epilepsy.museum
+essex.museum
+estate.museum
+ethnology.museum
+exeter.museum
+exhibition.museum
+family.museum
+farm.museum
+farmequipment.museum
+farmers.museum
+farmstead.museum
+field.museum
+figueres.museum
+filatelia.museum
+film.museum
+fineart.museum
+finearts.museum
+finland.museum
+flanders.museum
+florida.museum
+force.museum
+fortmissoula.museum
+fortworth.museum
+foundation.museum
+francaise.museum
+frankfurt.museum
+franziskaner.museum
+freemasonry.museum
+freiburg.museum
+fribourg.museum
+frog.museum
+fundacio.museum
+furniture.museum
+gallery.museum
+garden.museum
+gateway.museum
+geelvinck.museum
+gemological.museum
+geology.museum
+georgia.museum
+giessen.museum
+glas.museum
+glass.museum
+gorge.museum
+grandrapids.museum
+graz.museum
+guernsey.museum
+halloffame.museum
+hamburg.museum
+handson.museum
+harvestcelebration.museum
+hawaii.museum
+health.museum
+heimatunduhren.museum
+hellas.museum
+helsinki.museum
+hembygdsforbund.museum
+heritage.museum
+histoire.museum
+historical.museum
+historicalsociety.museum
+historichouses.museum
+historisch.museum
+historisches.museum
+history.museum
+historyofscience.museum
+horology.museum
+house.museum
+humanities.museum
+illustration.museum
+imageandsound.museum
+indian.museum
+indiana.museum
+indianapolis.museum
+indianmarket.museum
+intelligence.museum
+interactive.museum
+iraq.museum
+iron.museum
+isleofman.museum
+jamison.museum
+jefferson.museum
+jerusalem.museum
+jewelry.museum
+jewish.museum
+jewishart.museum
+jfk.museum
+journalism.museum
+judaica.museum
+judygarland.museum
+juedisches.museum
+juif.museum
+karate.museum
+karikatur.museum
+kids.museum
+koebenhavn.museum
+koeln.museum
+kunst.museum
+kunstsammlung.museum
+kunstunddesign.museum
+labor.museum
+labour.museum
+lajolla.museum
+lancashire.museum
+landes.museum
+lans.museum
+läns.museum
+larsson.museum
+lewismiller.museum
+lincoln.museum
+linz.museum
+living.museum
+livinghistory.museum
+localhistory.museum
+london.museum
+losangeles.museum
+louvre.museum
+loyalist.museum
+lucerne.museum
+luxembourg.museum
+luzern.museum
+mad.museum
+madrid.museum
+mallorca.museum
+manchester.museum
+mansion.museum
+mansions.museum
+manx.museum
+marburg.museum
+maritime.museum
+maritimo.museum
+maryland.museum
+marylhurst.museum
+media.museum
+medical.museum
+medizinhistorisches.museum
+meeres.museum
+memorial.museum
+mesaverde.museum
+michigan.museum
+midatlantic.museum
+military.museum
+mill.museum
+miners.museum
+mining.museum
+minnesota.museum
+missile.museum
+missoula.museum
+modern.museum
+moma.museum
+money.museum
+monmouth.museum
+monticello.museum
+montreal.museum
+moscow.museum
+motorcycle.museum
+muenchen.museum
+muenster.museum
+mulhouse.museum
+muncie.museum
+museet.museum
+museumcenter.museum
+museumvereniging.museum
+music.museum
+national.museum
+nationalfirearms.museum
+nationalheritage.museum
+nativeamerican.museum
+naturalhistory.museum
+naturalhistorymuseum.museum
+naturalsciences.museum
+nature.museum
+naturhistorisches.museum
+natuurwetenschappen.museum
+naumburg.museum
+naval.museum
+nebraska.museum
+neues.museum
+newhampshire.museum
+newjersey.museum
+newmexico.museum
+newport.museum
+newspaper.museum
+newyork.museum
+niepce.museum
+norfolk.museum
+north.museum
+nrw.museum
+nuernberg.museum
+nuremberg.museum
+nyc.museum
+nyny.museum
+oceanographic.museum
+oceanographique.museum
+omaha.museum
+online.museum
+ontario.museum
+openair.museum
+oregon.museum
+oregontrail.museum
+otago.museum
+oxford.museum
+pacific.museum
+paderborn.museum
+palace.museum
+paleo.museum
+palmsprings.museum
+panama.museum
+paris.museum
+pasadena.museum
+pharmacy.museum
+philadelphia.museum
+philadelphiaarea.museum
+philately.museum
+phoenix.museum
+photography.museum
+pilots.museum
+pittsburgh.museum
+planetarium.museum
+plantation.museum
+plants.museum
+plaza.museum
+portal.museum
+portland.museum
+portlligat.museum
+posts-and-telecommunications.museum
+preservation.museum
+presidio.museum
+press.museum
+project.museum
+public.museum
+pubol.museum
+quebec.museum
+railroad.museum
+railway.museum
+research.museum
+resistance.museum
+riodejaneiro.museum
+rochester.museum
+rockart.museum
+roma.museum
+russia.museum
+saintlouis.museum
+salem.museum
+salvadordali.museum
+salzburg.museum
+sandiego.museum
+sanfrancisco.museum
+santabarbara.museum
+santacruz.museum
+santafe.museum
+saskatchewan.museum
+satx.museum
+savannahga.museum
+schlesisches.museum
+schoenbrunn.museum
+schokoladen.museum
+school.museum
+schweiz.museum
+science.museum
+scienceandhistory.museum
+scienceandindustry.museum
+sciencecenter.museum
+sciencecenters.museum
+science-fiction.museum
+sciencehistory.museum
+sciences.museum
+sciencesnaturelles.museum
+scotland.museum
+seaport.museum
+settlement.museum
+settlers.museum
+shell.museum
+sherbrooke.museum
+sibenik.museum
+silk.museum
+ski.museum
+skole.museum
+society.museum
+sologne.museum
+soundandvision.museum
+southcarolina.museum
+southwest.museum
+space.museum
+spy.museum
+square.museum
+stadt.museum
+stalbans.museum
+starnberg.museum
+state.museum
+stateofdelaware.museum
+station.museum
+steam.museum
+steiermark.museum
+stjohn.museum
+stockholm.museum
+stpetersburg.museum
+stuttgart.museum
+suisse.museum
+surgeonshall.museum
+surrey.museum
+svizzera.museum
+sweden.museum
+sydney.museum
+tank.museum
+tcm.museum
+technology.museum
+telekommunikation.museum
+television.museum
+texas.museum
+textile.museum
+theater.museum
+time.museum
+timekeeping.museum
+topology.museum
+torino.museum
+touch.museum
+town.museum
+transport.museum
+tree.museum
+trolley.museum
+trust.museum
+trustee.museum
+uhren.museum
+ulm.museum
+undersea.museum
+university.museum
+usa.museum
+usantiques.museum
+usarts.museum
+uscountryestate.museum
+usculture.museum
+usdecorativearts.museum
+usgarden.museum
+ushistory.museum
+ushuaia.museum
+uslivinghistory.museum
+utah.museum
+uvic.museum
+valley.museum
+vantaa.museum
+versailles.museum
+viking.museum
+village.museum
+virginia.museum
+virtual.museum
+virtuel.museum
+vlaanderen.museum
+volkenkunde.museum
+wales.museum
+wallonie.museum
+war.museum
+washingtondc.museum
+watchandclock.museum
+watch-and-clock.museum
+western.museum
+westfalen.museum
+whaling.museum
+wildlife.museum
+williamsburg.museum
+windmill.museum
+workshop.museum
+york.museum
+yorkshire.museum
+yosemite.museum
+youth.museum
+zoological.museum
+zoology.museum
+ירושלים.museum
+иком.museum
+
+// mv : http://en.wikipedia.org/wiki/.mv
+// "mv" included because, contra Wikipedia, google.mv exists.
+mv
+aero.mv
+biz.mv
+com.mv
+coop.mv
+edu.mv
+gov.mv
+info.mv
+int.mv
+mil.mv
+museum.mv
+name.mv
+net.mv
+org.mv
+pro.mv
+
+// mw : http://www.registrar.mw/
+mw
+ac.mw
+biz.mw
+co.mw
+com.mw
+coop.mw
+edu.mw
+gov.mw
+int.mw
+museum.mw
+net.mw
+org.mw
+
+// mx : http://www.nic.mx/
+// Submitted by registry <farias@nic.mx> 2008-06-19
+mx
+com.mx
+org.mx
+gob.mx
+edu.mx
+net.mx
+
+// my : http://www.mynic.net.my/
+my
+com.my
+net.my
+org.my
+gov.my
+edu.my
+mil.my
+name.my
+
+// mz : http://www.gobin.info/domainname/mz-template.doc
+*.mz
+
+// na : http://www.na-nic.com.na/
+// http://www.info.na/domain/
+na
+info.na
+pro.na
+name.na
+school.na
+or.na
+dr.na
+us.na
+mx.na
+ca.na
+in.na
+cc.na
+tv.na
+ws.na
+mobi.na
+co.na
+com.na
+org.na
+
+// name : has 2nd-level tlds, but there's no list of them
+name
+
+// nc : http://www.cctld.nc/
+nc
+asso.nc
+
+// ne : http://en.wikipedia.org/wiki/.ne
+ne
+
+// net : http://en.wikipedia.org/wiki/.net
+net
+
+// nf : http://en.wikipedia.org/wiki/.nf
+nf
+com.nf
+net.nf
+per.nf
+rec.nf
+web.nf
+arts.nf
+firm.nf
+info.nf
+other.nf
+store.nf
+
+// ng : http://psg.com/dns/ng/
+// Submitted by registry <randy@psg.com> 2008-06-17
+ac.ng
+com.ng
+edu.ng
+gov.ng
+net.ng
+org.ng
+
+// ni : http://www.nic.ni/dominios.htm
+*.ni
+
+// nl : http://www.domain-registry.nl/ace.php/c,728,122,,,,Home.html
+// Confirmed by registry <Antoin.Verschuren@sidn.nl> (with technical
+// reservations) 2008-06-08
+nl
+
+// BV.nl will be a registry for dutch BV's (besloten vennootschap)
+bv.nl
+
+// no : http://www.norid.no/regelverk/index.en.html
+// The Norwegian registry has declined to notify us of updates. The web pages
+// referenced below are the official source of the data. There is also an
+// announce mailing list: 
+// https://postlister.uninett.no/sympa/info/norid-diskusjon
+no
+// Norid generic domains : http://www.norid.no/regelverk/vedlegg-c.en.html
+fhs.no
+vgs.no
+fylkesbibl.no
+folkebibl.no
+museum.no
+idrett.no
+priv.no
+// Non-Norid generic domains : http://www.norid.no/regelverk/vedlegg-d.en.html
+mil.no
+stat.no
+dep.no
+kommune.no
+herad.no
+// no geographical names : http://www.norid.no/regelverk/vedlegg-b.en.html
+// counties
+aa.no
+ah.no
+bu.no
+fm.no
+hl.no
+hm.no
+jan-mayen.no
+mr.no
+nl.no
+nt.no
+of.no
+ol.no
+oslo.no
+rl.no
+sf.no
+st.no
+svalbard.no
+tm.no
+tr.no
+va.no
+vf.no
+// primary and lower secondary schools per county
+gs.aa.no
+gs.ah.no
+gs.bu.no
+gs.fm.no
+gs.hl.no
+gs.hm.no
+gs.jan-mayen.no
+gs.mr.no
+gs.nl.no
+gs.nt.no
+gs.of.no
+gs.ol.no
+gs.oslo.no
+gs.rl.no
+gs.sf.no
+gs.st.no
+gs.svalbard.no
+gs.tm.no
+gs.tr.no
+gs.va.no
+gs.vf.no
+// cities
+akrehamn.no
+åkrehamn.no
+algard.no
+ålgård.no
+arna.no
+brumunddal.no
+bryne.no
+bronnoysund.no
+brønnøysund.no
+drobak.no
+drøbak.no
+egersund.no
+fetsund.no
+floro.no
+florø.no
+fredrikstad.no
+hokksund.no
+honefoss.no
+hønefoss.no
+jessheim.no
+jorpeland.no
+jørpeland.no
+kirkenes.no
+kopervik.no
+krokstadelva.no
+langevag.no
+langevåg.no
+leirvik.no
+mjondalen.no
+mjøndalen.no
+mo-i-rana.no
+mosjoen.no
+mosjøen.no
+nesoddtangen.no
+orkanger.no
+osoyro.no
+osøyro.no
+raholt.no
+råholt.no
+sandnessjoen.no
+sandnessjøen.no
+skedsmokorset.no
+slattum.no
+spjelkavik.no
+stathelle.no
+stavern.no
+stjordalshalsen.no
+stjørdalshalsen.no
+tananger.no
+tranby.no
+vossevangen.no
+// communities
+afjord.no
+åfjord.no
+agdenes.no
+al.no
+ål.no
+alesund.no
+ålesund.no
+alstahaug.no
+alta.no
+áltá.no
+alaheadju.no
+álaheadju.no
+alvdal.no
+amli.no
+åmli.no
+amot.no
+åmot.no
+andebu.no
+andoy.no
+andøy.no
+andasuolo.no
+ardal.no
+årdal.no
+aremark.no
+arendal.no
+ås.no
+aseral.no
+åseral.no
+asker.no
+askim.no
+askvoll.no
+askoy.no
+askøy.no
+asnes.no
+åsnes.no
+audnedaln.no
+aukra.no
+aure.no
+aurland.no
+aurskog-holand.no
+aurskog-høland.no
+austevoll.no
+austrheim.no
+averoy.no
+averøy.no
+balestrand.no
+ballangen.no
+balat.no
+bálát.no
+balsfjord.no
+bahccavuotna.no
+báhccavuotna.no
+bamble.no
+bardu.no
+beardu.no
+beiarn.no
+bajddar.no
+bájddar.no
+baidar.no
+báidár.no
+berg.no
+bergen.no
+berlevag.no
+berlevåg.no
+bearalvahki.no
+bearalváhki.no
+bindal.no
+birkenes.no
+bjarkoy.no
+bjarkøy.no
+bjerkreim.no
+bjugn.no
+bodo.no
+bodø.no
+badaddja.no
+bådåddjå.no
+budejju.no
+bokn.no
+bremanger.no
+bronnoy.no
+brønnøy.no
+bygland.no
+bykle.no
+barum.no
+bærum.no
+bo.telemark.no
+bø.telemark.no
+bo.nordland.no
+bø.nordland.no
+bievat.no
+bievát.no
+bomlo.no
+bømlo.no
+batsfjord.no
+båtsfjord.no
+bahcavuotna.no
+báhcavuotna.no
+dovre.no
+drammen.no
+drangedal.no
+dyroy.no
+dyrøy.no
+donna.no
+dønna.no
+eid.no
+eidfjord.no
+eidsberg.no
+eidskog.no
+eidsvoll.no
+eigersund.no
+elverum.no
+enebakk.no
+engerdal.no
+etne.no
+etnedal.no
+evenes.no
+evenassi.no
+evenášši.no
+evje-og-hornnes.no
+farsund.no
+fauske.no
+fuossko.no
+fuoisku.no
+fedje.no
+fet.no
+finnoy.no
+finnøy.no
+fitjar.no
+fjaler.no
+fjell.no
+flakstad.no
+flatanger.no
+flekkefjord.no
+flesberg.no
+flora.no
+fla.no
+flå.no
+folldal.no
+forsand.no
+fosnes.no
+frei.no
+frogn.no
+froland.no
+frosta.no
+frana.no
+fræna.no
+froya.no
+frøya.no
+fusa.no
+fyresdal.no
+forde.no
+førde.no
+gamvik.no
+gangaviika.no
+gáŋgaviika.no
+gaular.no
+gausdal.no
+gildeskal.no
+gildeskål.no
+giske.no
+gjemnes.no
+gjerdrum.no
+gjerstad.no
+gjesdal.no
+gjovik.no
+gjøvik.no
+gloppen.no
+gol.no
+gran.no
+grane.no
+granvin.no
+gratangen.no
+grimstad.no
+grong.no
+kraanghke.no
+kråanghke.no
+grue.no
+gulen.no
+hadsel.no
+halden.no
+halsa.no
+hamar.no
+hamaroy.no
+habmer.no
+hábmer.no
+hapmir.no
+hápmir.no
+hammerfest.no
+hammarfeasta.no
+hámmárfeasta.no
+haram.no
+hareid.no
+harstad.no
+hasvik.no
+aknoluokta.no
+ákŋoluokta.no
+hattfjelldal.no
+aarborte.no
+haugesund.no
+hemne.no
+hemnes.no
+hemsedal.no
+heroy.more-og-romsdal.no
+herøy.møre-og-romsdal.no
+heroy.nordland.no
+herøy.nordland.no
+hitra.no
+hjartdal.no
+hjelmeland.no
+hobol.no
+hobøl.no
+hof.no
+hol.no
+hole.no
+holmestrand.no
+holtalen.no
+holtålen.no
+hornindal.no
+horten.no
+hurdal.no
+hurum.no
+hvaler.no
+hyllestad.no
+hagebostad.no
+hægebostad.no
+hoyanger.no
+høyanger.no
+hoylandet.no
+høylandet.no
+ha.no
+hå.no
+ibestad.no
+inderoy.no
+inderøy.no
+iveland.no
+jevnaker.no
+jondal.no
+jolster.no
+jølster.no
+karasjok.no
+karasjohka.no
+kárášjohka.no
+karlsoy.no
+galsa.no
+gálsá.no
+karmoy.no
+karmøy.no
+kautokeino.no
+guovdageaidnu.no
+klepp.no
+klabu.no
+klæbu.no
+kongsberg.no
+kongsvinger.no
+kragero.no
+kragerø.no
+kristiansand.no
+kristiansund.no
+krodsherad.no
+krødsherad.no
+kvalsund.no
+rahkkeravju.no
+ráhkkerávju.no
+kvam.no
+kvinesdal.no
+kvinnherad.no
+kviteseid.no
+kvitsoy.no
+kvitsøy.no
+kvafjord.no
+kvæfjord.no
+giehtavuoatna.no
+kvanangen.no
+kvænangen.no
+navuotna.no
+návuotna.no
+kafjord.no
+kåfjord.no
+gaivuotna.no
+gáivuotna.no
+larvik.no
+lavangen.no
+lavagis.no
+loabat.no
+loabát.no
+lebesby.no
+davvesiida.no
+leikanger.no
+leirfjord.no
+leka.no
+leksvik.no
+lenvik.no
+leangaviika.no
+leaŋgaviika.no
+lesja.no
+levanger.no
+lier.no
+lierne.no
+lillehammer.no
+lillesand.no
+lindesnes.no
+lindas.no
+lindås.no
+lom.no
+loppa.no
+lahppi.no
+láhppi.no
+lund.no
+lunner.no
+luroy.no
+lurøy.no
+luster.no
+lyngdal.no
+lyngen.no
+ivgu.no
+lardal.no
+lerdal.no
+lærdal.no
+lodingen.no
+lødingen.no
+lorenskog.no
+lørenskog.no
+loten.no
+løten.no
+malvik.no
+masoy.no
+måsøy.no
+muosat.no
+muosát.no
+mandal.no
+marker.no
+marnardal.no
+masfjorden.no
+meland.no
+meldal.no
+melhus.no
+meloy.no
+meløy.no
+meraker.no
+meråker.no
+moareke.no
+moåreke.no
+midsund.no
+midtre-gauldal.no
+modalen.no
+modum.no
+molde.no
+moskenes.no
+moss.no
+mosvik.no
+malselv.no
+målselv.no
+malatvuopmi.no
+málatvuopmi.no
+namdalseid.no
+aejrie.no
+namsos.no
+namsskogan.no
+naamesjevuemie.no
+nååmesjevuemie.no
+laakesvuemie.no
+nannestad.no
+narvik.no
+narviika.no
+naustdal.no
+nedre-eiker.no
+nes.akershus.no
+nes.buskerud.no
+nesna.no
+nesodden.no
+nesseby.no
+unjarga.no
+unjárga.no
+nesset.no
+nissedal.no
+nittedal.no
+nord-aurdal.no
+nord-fron.no
+nord-odal.no
+norddal.no
+nordkapp.no
+davvenjarga.no
+davvenjárga.no
+nordre-land.no
+nordreisa.no
+raisa.no
+ráisa.no
+nore-og-uvdal.no
+notodden.no
+naroy.no
+nærøy.no
+notteroy.no
+nøtterøy.no
+odda.no
+oksnes.no
+øksnes.no
+oppdal.no
+oppegard.no
+oppegård.no
+orkdal.no
+orland.no
+ørland.no
+orskog.no
+ørskog.no
+orsta.no
+ørsta.no
+os.hedmark.no
+os.hordaland.no
+osen.no
+osteroy.no
+osterøy.no
+ostre-toten.no
+østre-toten.no
+overhalla.no
+ovre-eiker.no
+øvre-eiker.no
+oyer.no
+øyer.no
+oygarden.no
+øygarden.no
+oystre-slidre.no
+øystre-slidre.no
+porsanger.no
+porsangu.no
+porsáŋgu.no
+porsgrunn.no
+radoy.no
+radøy.no
+rakkestad.no
+rana.no
+ruovat.no
+randaberg.no
+rauma.no
+rendalen.no
+rennebu.no
+rennesoy.no
+rennesøy.no
+rindal.no
+ringebu.no
+ringerike.no
+ringsaker.no
+rissa.no
+risor.no
+risør.no
+roan.no
+rollag.no
+rygge.no
+ralingen.no
+rælingen.no
+rodoy.no
+rødøy.no
+romskog.no
+rømskog.no
+roros.no
+røros.no
+rost.no
+røst.no
+royken.no
+røyken.no
+royrvik.no
+røyrvik.no
+rade.no
+råde.no
+salangen.no
+siellak.no
+saltdal.no
+salat.no
+sálát.no
+sálat.no
+samnanger.no
+sande.more-og-romsdal.no
+sande.møre-og-romsdal.no
+sande.vestfold.no
+sandefjord.no
+sandnes.no
+sandoy.no
+sandøy.no
+sarpsborg.no
+sauda.no
+sauherad.no
+sel.no
+selbu.no
+selje.no
+seljord.no
+sigdal.no
+siljan.no
+sirdal.no
+skaun.no
+skedsmo.no
+ski.no
+skien.no
+skiptvet.no
+skjervoy.no
+skjervøy.no
+skierva.no
+skiervá.no
+skjak.no
+skjåk.no
+skodje.no
+skanland.no
+skånland.no
+skanit.no
+skánit.no
+smola.no
+smøla.no
+snillfjord.no
+snasa.no
+snåsa.no
+snoasa.no
+snaase.no
+snåase.no
+sogndal.no
+sokndal.no
+sola.no
+solund.no
+songdalen.no
+sortland.no
+spydeberg.no
+stange.no
+stavanger.no
+steigen.no
+steinkjer.no
+stjordal.no
+stjørdal.no
+stokke.no
+stor-elvdal.no
+stord.no
+stordal.no
+storfjord.no
+omasvuotna.no
+strand.no
+stranda.no
+stryn.no
+sula.no
+suldal.no
+sund.no
+sunndal.no
+surnadal.no
+sveio.no
+svelvik.no
+sykkylven.no
+sogne.no
+søgne.no
+somna.no
+sømna.no
+sondre-land.no
+søndre-land.no
+sor-aurdal.no
+sør-aurdal.no
+sor-fron.no
+sør-fron.no
+sor-odal.no
+sør-odal.no
+sor-varanger.no
+sør-varanger.no
+matta-varjjat.no
+mátta-várjjat.no
+sorfold.no
+sørfold.no
+sorreisa.no
+sørreisa.no
+sorum.no
+sørum.no
+tana.no
+deatnu.no
+time.no
+tingvoll.no
+tinn.no
+tjeldsund.no
+dielddanuorri.no
+tjome.no
+tjøme.no
+tokke.no
+tolga.no
+torsken.no
+tranoy.no
+tranøy.no
+tromso.no
+tromsø.no
+tromsa.no
+romsa.no
+trondheim.no
+troandin.no
+trysil.no
+trana.no
+træna.no
+trogstad.no
+trøgstad.no
+tvedestrand.no
+tydal.no
+tynset.no
+tysfjord.no
+divtasvuodna.no
+divttasvuotna.no
+tysnes.no
+tysvar.no
+tysvær.no
+tonsberg.no
+tønsberg.no
+ullensaker.no
+ullensvang.no
+ulvik.no
+utsira.no
+vadso.no
+vadsø.no
+cahcesuolo.no
+čáhcesuolo.no
+vaksdal.no
+valle.no
+vang.no
+vanylven.no
+vardo.no
+vardø.no
+varggat.no
+várggát.no
+vefsn.no
+vaapste.no
+vega.no
+vegarshei.no
+vegårshei.no
+vennesla.no
+verdal.no
+verran.no
+vestby.no
+vestnes.no
+vestre-slidre.no
+vestre-toten.no
+vestvagoy.no
+vestvågøy.no
+vevelstad.no
+vik.no
+vikna.no
+vindafjord.no
+volda.no
+voss.no
+varoy.no
+værøy.no
+vagan.no
+vågan.no
+voagat.no
+vagsoy.no
+vågsøy.no
+vaga.no
+vågå.no
+valer.ostfold.no
+våler.østfold.no
+valer.hedmark.no
+våler.hedmark.no
+
+// np : http://www.mos.com.np/register.html
+*.np
+
+// nr : http://cenpac.net.nr/dns/index.html
+// Confirmed by registry <technician@cenpac.net.nr> 2008-06-17
+nr
+biz.nr
+info.nr
+gov.nr
+edu.nr
+org.nr
+net.nr
+com.nr
+
+// nu : http://en.wikipedia.org/wiki/.nu
+nu
+
+// nz : http://en.wikipedia.org/wiki/.nz
+*.nz
+
+// om : http://en.wikipedia.org/wiki/.om
+*.om
+!mediaphone.om
+!nawrastelecom.om
+!nawras.om
+!omanmobile.om
+!omanpost.om
+!omantel.om
+!rakpetroleum.om
+!siemens.om
+!songfest.om
+!statecouncil.om
+
+// org : http://en.wikipedia.org/wiki/.org
+org
+
+// pa : http://www.nic.pa/
+// Some additional second level "domains" resolve directly as hostnames, such as
+// pannet.pa, so we add a rule for "pa".
+pa
+ac.pa
+gob.pa
+com.pa
+org.pa
+sld.pa
+edu.pa
+net.pa
+ing.pa
+abo.pa
+med.pa
+nom.pa
+
+// pe : https://www.nic.pe/InformeFinalComision.pdf
+pe
+edu.pe
+gob.pe
+nom.pe
+mil.pe
+org.pe
+com.pe
+net.pe
+
+// pf : http://www.gobin.info/domainname/formulaire-pf.pdf
+pf
+com.pf
+org.pf
+edu.pf
+
+// pg : http://en.wikipedia.org/wiki/.pg
+*.pg
+
+// ph : http://www.domains.ph/FAQ2.asp
+// Submitted by registry <jed@email.com.ph> 2008-06-13
+ph
+com.ph
+net.ph
+org.ph
+gov.ph
+edu.ph
+ngo.ph
+mil.ph
+i.ph
+
+// pk : http://pk5.pknic.net.pk/pk5/msgNamepk.PK
+pk
+com.pk
+net.pk
+edu.pk
+org.pk
+fam.pk
+biz.pk
+web.pk
+gov.pk
+gob.pk
+gok.pk
+gon.pk
+gop.pk
+gos.pk
+info.pk
+
+// pl : http://www.dns.pl/english/
+pl
+// NASK functional domains (nask.pl / dns.pl) : http://www.dns.pl/english/dns-funk.html
+aid.pl
+agro.pl
+atm.pl
+auto.pl
+biz.pl
+com.pl
+edu.pl
+gmina.pl
+gsm.pl
+info.pl
+mail.pl
+miasta.pl
+media.pl
+mil.pl
+net.pl
+nieruchomosci.pl
+nom.pl
+org.pl
+pc.pl
+powiat.pl
+priv.pl
+realestate.pl
+rel.pl
+sex.pl
+shop.pl
+sklep.pl
+sos.pl
+szkola.pl
+targi.pl
+tm.pl
+tourism.pl
+travel.pl
+turystyka.pl
+// ICM functional domains (icm.edu.pl)
+6bone.pl
+art.pl
+mbone.pl
+// Government domains (administred by ippt.gov.pl)
+gov.pl
+uw.gov.pl
+um.gov.pl
+ug.gov.pl
+upow.gov.pl
+starostwo.gov.pl
+so.gov.pl
+sr.gov.pl
+po.gov.pl
+pa.gov.pl
+// other functional domains
+ngo.pl
+irc.pl
+usenet.pl
+// NASK geographical domains : http://www.dns.pl/english/dns-regiony.html
+augustow.pl
+babia-gora.pl
+bedzin.pl
+beskidy.pl
+bialowieza.pl
+bialystok.pl
+bielawa.pl
+bieszczady.pl
+boleslawiec.pl
+bydgoszcz.pl
+bytom.pl
+cieszyn.pl
+czeladz.pl
+czest.pl
+dlugoleka.pl
+elblag.pl
+elk.pl
+glogow.pl
+gniezno.pl
+gorlice.pl
+grajewo.pl
+ilawa.pl
+jaworzno.pl
+jelenia-gora.pl
+jgora.pl
+kalisz.pl
+kazimierz-dolny.pl
+karpacz.pl
+kartuzy.pl
+kaszuby.pl
+katowice.pl
+kepno.pl
+ketrzyn.pl
+klodzko.pl
+kobierzyce.pl
+kolobrzeg.pl
+konin.pl
+konskowola.pl
+kutno.pl
+lapy.pl
+lebork.pl
+legnica.pl
+lezajsk.pl
+limanowa.pl
+lomza.pl
+lowicz.pl
+lubin.pl
+lukow.pl
+malbork.pl
+malopolska.pl
+mazowsze.pl
+mazury.pl
+mielec.pl
+mielno.pl
+mragowo.pl
+naklo.pl
+nowaruda.pl
+nysa.pl
+olawa.pl
+olecko.pl
+olkusz.pl
+olsztyn.pl
+opoczno.pl
+opole.pl
+ostroda.pl
+ostroleka.pl
+ostrowiec.pl
+ostrowwlkp.pl
+pila.pl
+pisz.pl
+podhale.pl
+podlasie.pl
+polkowice.pl
+pomorze.pl
+pomorskie.pl
+prochowice.pl
+pruszkow.pl
+przeworsk.pl
+pulawy.pl
+radom.pl
+rawa-maz.pl
+rybnik.pl
+rzeszow.pl
+sanok.pl
+sejny.pl
+siedlce.pl
+slask.pl
+slupsk.pl
+sosnowiec.pl
+stalowa-wola.pl
+skoczow.pl
+starachowice.pl
+stargard.pl
+suwalki.pl
+swidnica.pl
+swiebodzin.pl
+swinoujscie.pl
+szczecin.pl
+szczytno.pl
+tarnobrzeg.pl
+tgory.pl
+turek.pl
+tychy.pl
+ustka.pl
+walbrzych.pl
+warmia.pl
+warszawa.pl
+waw.pl
+wegrow.pl
+wielun.pl
+wlocl.pl
+wloclawek.pl
+wodzislaw.pl
+wolomin.pl
+wroclaw.pl
+zachpomor.pl
+zagan.pl
+zarow.pl
+zgora.pl
+zgorzelec.pl
+// TASK geographical domains (www.task.gda.pl/uslugi/dns)
+gda.pl
+gdansk.pl
+gdynia.pl
+med.pl
+sopot.pl
+// other geographical domains
+gliwice.pl
+krakow.pl
+poznan.pl
+wroc.pl
+zakopane.pl
+
+// pm : http://www.afnic.fr/medias/documents/AFNIC-naming-policy2012.pdf
+pm
+
+// pn : http://www.government.pn/PnRegistry/policies.htm
+pn
+gov.pn
+co.pn
+org.pn
+edu.pn
+net.pn
+
+// pr : http://www.nic.pr/index.asp?f=1
+pr
+com.pr
+net.pr
+org.pr
+gov.pr
+edu.pr
+isla.pr
+pro.pr
+biz.pr
+info.pr
+name.pr
+// these aren't mentioned on nic.pr, but on http://en.wikipedia.org/wiki/.pr
+est.pr
+prof.pr
+ac.pr
+
+// pro : http://www.nic.pro/support_faq.htm
+pro
+aca.pro
+bar.pro
+cpa.pro
+jur.pro
+law.pro
+med.pro
+eng.pro
+
+// ps : http://en.wikipedia.org/wiki/.ps
+// http://www.nic.ps/registration/policy.html#reg
+ps
+edu.ps
+gov.ps
+sec.ps
+plo.ps
+com.ps
+org.ps
+net.ps
+
+// pt : http://online.dns.pt/dns/start_dns
+pt
+net.pt
+gov.pt
+org.pt
+edu.pt
+int.pt
+publ.pt
+com.pt
+nome.pt
+
+// pw : http://en.wikipedia.org/wiki/.pw
+pw
+co.pw
+ne.pw
+or.pw
+ed.pw
+go.pw
+belau.pw
+
+// py : http://www.nic.py/faq_a.html#faq_b
+*.py
+
+// qa : http://domains.qa/en/
+qa
+com.qa
+edu.qa
+gov.qa
+mil.qa
+name.qa
+net.qa
+org.qa
+sch.qa
+
+// re : http://www.afnic.re/obtenir/chartes/nommage-re/annexe-descriptifs
+re
+com.re
+asso.re
+nom.re
+
+// ro : http://www.rotld.ro/
+ro
+com.ro
+org.ro
+tm.ro
+nt.ro
+nom.ro
+info.ro
+rec.ro
+arts.ro
+firm.ro
+store.ro
+www.ro
+
+// rs : http://en.wikipedia.org/wiki/.rs
+rs
+co.rs
+org.rs
+edu.rs
+ac.rs
+gov.rs
+in.rs
+
+// ru : http://www.cctld.ru/ru/docs/aktiv_8.php
+// Industry domains
+ru
+ac.ru
+com.ru
+edu.ru
+int.ru
+net.ru
+org.ru
+pp.ru
+// Geographical domains
+adygeya.ru
+altai.ru
+amur.ru
+arkhangelsk.ru
+astrakhan.ru
+bashkiria.ru
+belgorod.ru
+bir.ru
+bryansk.ru
+buryatia.ru
+cbg.ru
+chel.ru
+chelyabinsk.ru
+chita.ru
+chukotka.ru
+chuvashia.ru
+dagestan.ru
+dudinka.ru
+e-burg.ru
+grozny.ru
+irkutsk.ru
+ivanovo.ru
+izhevsk.ru
+jar.ru
+joshkar-ola.ru
+kalmykia.ru
+kaluga.ru
+kamchatka.ru
+karelia.ru
+kazan.ru
+kchr.ru
+kemerovo.ru
+khabarovsk.ru
+khakassia.ru
+khv.ru
+kirov.ru
+koenig.ru
+komi.ru
+kostroma.ru
+krasnoyarsk.ru
+kuban.ru
+kurgan.ru
+kursk.ru
+lipetsk.ru
+magadan.ru
+mari.ru
+mari-el.ru
+marine.ru
+mordovia.ru
+mosreg.ru
+msk.ru
+murmansk.ru
+nalchik.ru
+nnov.ru
+nov.ru
+novosibirsk.ru
+nsk.ru
+omsk.ru
+orenburg.ru
+oryol.ru
+palana.ru
+penza.ru
+perm.ru
+pskov.ru
+ptz.ru
+rnd.ru
+ryazan.ru
+sakhalin.ru
+samara.ru
+saratov.ru
+simbirsk.ru
+smolensk.ru
+spb.ru
+stavropol.ru
+stv.ru
+surgut.ru
+tambov.ru
+tatarstan.ru
+tom.ru
+tomsk.ru
+tsaritsyn.ru
+tsk.ru
+tula.ru
+tuva.ru
+tver.ru
+tyumen.ru
+udm.ru
+udmurtia.ru
+ulan-ude.ru
+vladikavkaz.ru
+vladimir.ru
+vladivostok.ru
+volgograd.ru
+vologda.ru
+voronezh.ru
+vrn.ru
+vyatka.ru
+yakutia.ru
+yamal.ru
+yaroslavl.ru
+yekaterinburg.ru
+yuzhno-sakhalinsk.ru
+// More geographical domains
+amursk.ru
+baikal.ru
+cmw.ru
+fareast.ru
+jamal.ru
+kms.ru
+k-uralsk.ru
+kustanai.ru
+kuzbass.ru
+magnitka.ru
+mytis.ru
+nakhodka.ru
+nkz.ru
+norilsk.ru
+oskol.ru
+pyatigorsk.ru
+rubtsovsk.ru
+snz.ru
+syzran.ru
+vdonsk.ru
+zgrad.ru
+// State domains
+gov.ru
+mil.ru
+// Technical domains
+test.ru
+
+// rw : http://www.nic.rw/cgi-bin/policy.pl
+rw
+gov.rw
+net.rw
+edu.rw
+ac.rw
+com.rw
+co.rw
+int.rw
+mil.rw
+gouv.rw
+
+// sa : http://www.nic.net.sa/
+sa
+com.sa
+net.sa
+org.sa
+gov.sa
+med.sa
+pub.sa
+edu.sa
+sch.sa
+
+// sb : http://www.sbnic.net.sb/
+// Submitted by registry <lee.humphries@telekom.com.sb> 2008-06-08
+sb
+com.sb
+edu.sb
+gov.sb
+net.sb
+org.sb
+
+// sc : http://www.nic.sc/
+sc
+com.sc
+gov.sc
+net.sc
+org.sc
+edu.sc
+
+// sd : http://www.isoc.sd/sudanic.isoc.sd/billing_pricing.htm
+// Submitted by registry <admin@isoc.sd> 2008-06-17
+sd
+com.sd
+net.sd
+org.sd
+edu.sd
+med.sd
+gov.sd
+info.sd
+
+// se : http://en.wikipedia.org/wiki/.se
+// Submitted by registry <Patrik.Wallstrom@iis.se> 2008-06-24
+se
+a.se
+ac.se
+b.se
+bd.se
+brand.se
+c.se
+d.se
+e.se
+f.se
+fh.se
+fhsk.se
+fhv.se
+g.se
+h.se
+i.se
+k.se
+komforb.se
+kommunalforbund.se
+komvux.se
+l.se
+lanbib.se
+m.se
+n.se
+naturbruksgymn.se
+o.se
+org.se
+p.se
+parti.se
+pp.se
+press.se
+r.se
+s.se
+sshn.se
+t.se
+tm.se
+u.se
+w.se
+x.se
+y.se
+z.se
+
+// sg : http://www.nic.net.sg/sub_policies_agreement/2ld.html
+sg
+com.sg
+net.sg
+org.sg
+gov.sg
+edu.sg
+per.sg
+
+// sh : http://www.nic.sh/rules.html
+// list of 2nd level domains ?
+sh
+
+// si : http://en.wikipedia.org/wiki/.si
+si
+
+// sj : No registrations at this time.
+// Submitted by registry <jarle@uninett.no> 2008-06-16
+
+// sk : http://en.wikipedia.org/wiki/.sk
+// list of 2nd level domains ?
+sk
+
+// sl : http://www.nic.sl
+// Submitted by registry <adam@neoip.com> 2008-06-12
+sl
+com.sl
+net.sl
+edu.sl
+gov.sl
+org.sl
+
+// sm : http://en.wikipedia.org/wiki/.sm
+sm
+
+// sn : http://en.wikipedia.org/wiki/.sn
+sn
+art.sn
+com.sn
+edu.sn
+gouv.sn
+org.sn
+perso.sn
+univ.sn
+
+// so : http://www.soregistry.com/
+so
+com.so
+net.so
+org.so
+
+// sr : http://en.wikipedia.org/wiki/.sr
+sr
+
+// st : http://www.nic.st/html/policyrules/
+st
+co.st
+com.st
+consulado.st
+edu.st
+embaixada.st
+gov.st
+mil.st
+net.st
+org.st
+principe.st
+saotome.st
+store.st
+
+// su : http://en.wikipedia.org/wiki/.su
+su
+
+// sv : http://www.svnet.org.sv/svpolicy.html
+*.sv
+
+// sy : http://en.wikipedia.org/wiki/.sy
+// see also: http://www.gobin.info/domainname/sy.doc
+sy
+edu.sy
+gov.sy
+net.sy
+mil.sy
+com.sy
+org.sy
+
+// sz : http://en.wikipedia.org/wiki/.sz
+// http://www.sispa.org.sz/
+sz
+co.sz
+ac.sz
+org.sz
+
+// tc : http://en.wikipedia.org/wiki/.tc
+tc
+
+// td : http://en.wikipedia.org/wiki/.td
+td
+
+// tel: http://en.wikipedia.org/wiki/.tel
+// http://www.telnic.org/
+tel
+
+// tf : http://en.wikipedia.org/wiki/.tf
+tf
+
+// tg : http://en.wikipedia.org/wiki/.tg
+// http://www.nic.tg/nictg/index.php implies no reserved 2nd-level domains,
+// although this contradicts wikipedia.
+tg
+
+// th : http://en.wikipedia.org/wiki/.th
+// Submitted by registry <krit@thains.co.th> 2008-06-17
+th
+ac.th
+co.th
+go.th
+in.th
+mi.th
+net.th
+or.th
+
+// tj : http://www.nic.tj/policy.htm
+tj
+ac.tj
+biz.tj
+co.tj
+com.tj
+edu.tj
+go.tj
+gov.tj
+int.tj
+mil.tj
+name.tj
+net.tj
+nic.tj
+org.tj
+test.tj
+web.tj
+
+// tk : http://en.wikipedia.org/wiki/.tk
+tk
+
+// tl : http://en.wikipedia.org/wiki/.tl
+tl
+gov.tl
+
+// tm : http://www.nic.tm/rules.html
+// list of 2nd level tlds ?
+tm
+
+// tn : http://en.wikipedia.org/wiki/.tn
+// http://whois.ati.tn/
+tn
+com.tn
+ens.tn
+fin.tn
+gov.tn
+ind.tn
+intl.tn
+nat.tn
+net.tn
+org.tn
+info.tn
+perso.tn
+tourism.tn
+edunet.tn
+rnrt.tn
+rns.tn
+rnu.tn
+mincom.tn
+agrinet.tn
+defense.tn
+turen.tn
+
+// to : http://en.wikipedia.org/wiki/.to
+// Submitted by registry <egullich@colo.to> 2008-06-17
+to
+com.to
+gov.to
+net.to
+org.to
+edu.to
+mil.to
+
+// tr : http://en.wikipedia.org/wiki/.tr
+*.tr
+!nic.tr
+// Used by government in the TRNC
+// http://en.wikipedia.org/wiki/.nc.tr
+gov.nc.tr
+
+// travel : http://en.wikipedia.org/wiki/.travel
+travel
+
+// tt : http://www.nic.tt/
+tt
+co.tt
+com.tt
+org.tt
+net.tt
+biz.tt
+info.tt
+pro.tt
+int.tt
+coop.tt
+jobs.tt
+mobi.tt
+travel.tt
+museum.tt
+aero.tt
+name.tt
+gov.tt
+edu.tt
+
+// tv : http://en.wikipedia.org/wiki/.tv
+// Not listing any 2LDs as reserved since none seem to exist in practice,
+// Wikipedia notwithstanding.
+tv
+
+// tw : http://en.wikipedia.org/wiki/.tw
+tw
+edu.tw
+gov.tw
+mil.tw
+com.tw
+net.tw
+org.tw
+idv.tw
+game.tw
+ebiz.tw
+club.tw
+網路.tw
+組織.tw
+商業.tw
+
+// tz : http://en.wikipedia.org/wiki/.tz
+// Submitted by registry <randy@psg.com> 2008-06-17
+// Updated from http://www.tznic.or.tz/index.php/domains.html 2010-10-25
+ac.tz
+co.tz
+go.tz
+mil.tz
+ne.tz
+or.tz
+sc.tz
+
+// ua : http://www.nic.net.ua/
+ua
+com.ua
+edu.ua
+gov.ua
+in.ua
+net.ua
+org.ua
+// ua geo-names
+cherkassy.ua
+chernigov.ua
+chernovtsy.ua
+ck.ua
+cn.ua
+crimea.ua
+cv.ua
+dn.ua
+dnepropetrovsk.ua
+donetsk.ua
+dp.ua
+if.ua
+ivano-frankivsk.ua
+kh.ua
+kharkov.ua
+kherson.ua
+khmelnitskiy.ua
+kiev.ua
+kirovograd.ua
+km.ua
+kr.ua
+ks.ua
+kv.ua
+lg.ua
+lugansk.ua
+lutsk.ua
+lviv.ua
+mk.ua
+nikolaev.ua
+od.ua
+odessa.ua
+pl.ua
+poltava.ua
+rovno.ua
+rv.ua
+sebastopol.ua
+sumy.ua
+te.ua
+ternopil.ua
+uzhgorod.ua
+vinnica.ua
+vn.ua
+zaporizhzhe.ua
+zp.ua
+zhitomir.ua
+zt.ua
+
+// Private registries in .ua
+co.ua
+pp.ua
+
+// ug : http://www.registry.co.ug/
+ug
+co.ug
+ac.ug
+sc.ug
+go.ug
+ne.ug
+or.ug
+
+// uk : http://en.wikipedia.org/wiki/.uk
+*.uk
+*.sch.uk
+!bl.uk
+!british-library.uk
+!icnet.uk
+!jet.uk
+!mod.uk
+!nel.uk
+!nhs.uk
+!nic.uk
+!nls.uk
+!national-library-scotland.uk
+!parliament.uk
+!police.uk
+
+// us : http://en.wikipedia.org/wiki/.us
+us
+dni.us
+fed.us
+isa.us
+kids.us
+nsn.us
+// us geographic names
+ak.us
+al.us
+ar.us
+as.us
+az.us
+ca.us
+co.us
+ct.us
+dc.us
+de.us
+fl.us
+ga.us
+gu.us
+hi.us
+ia.us
+id.us
+il.us
+in.us
+ks.us
+ky.us
+la.us
+ma.us
+md.us
+me.us
+mi.us
+mn.us
+mo.us
+ms.us
+mt.us
+nc.us
+nd.us
+ne.us
+nh.us
+nj.us
+nm.us
+nv.us
+ny.us
+oh.us
+ok.us
+or.us
+pa.us
+pr.us
+ri.us
+sc.us
+sd.us
+tn.us
+tx.us
+ut.us
+vi.us
+vt.us
+va.us
+wa.us
+wi.us
+wv.us
+wy.us
+// The registrar notes several more specific domains available in each state,
+// such as state.*.us, dst.*.us, etc., but resolution of these is somewhat
+// haphazard; in some states these domains resolve as addresses, while in others
+// only subdomains are available, or even nothing at all. We include the
+// most common ones where it's clear that different sites are different
+// entities.
+k12.ak.us
+k12.al.us
+k12.ar.us
+k12.as.us
+k12.az.us
+k12.ca.us
+k12.co.us
+k12.ct.us
+k12.dc.us
+k12.de.us
+k12.fl.us
+k12.ga.us
+k12.gu.us
+// k12.hi.us  Hawaii has a state-wide DOE login: bug 614565
+k12.ia.us
+k12.id.us
+k12.il.us
+k12.in.us
+k12.ks.us
+k12.ky.us
+k12.la.us
+k12.ma.us
+k12.md.us
+k12.me.us
+k12.mi.us
+k12.mn.us
+k12.mo.us
+k12.ms.us
+k12.mt.us
+k12.nc.us
+k12.nd.us
+k12.ne.us
+k12.nh.us
+k12.nj.us
+k12.nm.us
+k12.nv.us
+k12.ny.us
+k12.oh.us
+k12.ok.us
+k12.or.us
+k12.pa.us
+k12.pr.us
+k12.ri.us
+k12.sc.us
+k12.sd.us
+k12.tn.us
+k12.tx.us
+k12.ut.us
+k12.vi.us
+k12.vt.us
+k12.va.us
+k12.wa.us
+k12.wi.us
+k12.wv.us
+k12.wy.us
+
+cc.ak.us
+cc.al.us
+cc.ar.us
+cc.as.us
+cc.az.us
+cc.ca.us
+cc.co.us
+cc.ct.us
+cc.dc.us
+cc.de.us
+cc.fl.us
+cc.ga.us
+cc.gu.us
+cc.hi.us
+cc.ia.us
+cc.id.us
+cc.il.us
+cc.in.us
+cc.ks.us
+cc.ky.us
+cc.la.us
+cc.ma.us
+cc.md.us
+cc.me.us
+cc.mi.us
+cc.mn.us
+cc.mo.us
+cc.ms.us
+cc.mt.us
+cc.nc.us
+cc.nd.us
+cc.ne.us
+cc.nh.us
+cc.nj.us
+cc.nm.us
+cc.nv.us
+cc.ny.us
+cc.oh.us
+cc.ok.us
+cc.or.us
+cc.pa.us
+cc.pr.us
+cc.ri.us
+cc.sc.us
+cc.sd.us
+cc.tn.us
+cc.tx.us
+cc.ut.us
+cc.vi.us
+cc.vt.us
+cc.va.us
+cc.wa.us
+cc.wi.us
+cc.wv.us
+cc.wy.us
+
+lib.ak.us
+lib.al.us
+lib.ar.us
+lib.as.us
+lib.az.us
+lib.ca.us
+lib.co.us
+lib.ct.us
+lib.dc.us
+lib.de.us
+lib.fl.us
+lib.ga.us
+lib.gu.us
+lib.hi.us
+lib.ia.us
+lib.id.us
+lib.il.us
+lib.in.us
+lib.ks.us
+lib.ky.us
+lib.la.us
+lib.ma.us
+lib.md.us
+lib.me.us
+lib.mi.us
+lib.mn.us
+lib.mo.us
+lib.ms.us
+lib.mt.us
+lib.nc.us
+lib.nd.us
+lib.ne.us
+lib.nh.us
+lib.nj.us
+lib.nm.us
+lib.nv.us
+lib.ny.us
+lib.oh.us
+lib.ok.us
+lib.or.us
+lib.pa.us
+lib.pr.us
+lib.ri.us
+lib.sc.us
+lib.sd.us
+lib.tn.us
+lib.tx.us
+lib.ut.us
+lib.vi.us
+lib.vt.us
+lib.va.us
+lib.wa.us
+lib.wi.us
+lib.wv.us
+lib.wy.us
+
+// k12.ma.us contains school districts in Massachusetts. The 4LDs are 
+//  managed indepedently except for private (PVT), charter (CHTR) and
+//  parochial (PAROCH) schools.  Those are delegated dorectly to the 
+//  5LD operators.   <k12-ma-hostmaster _ at _ rsuc.gweep.net>
+pvt.k12.ma.us
+chtr.k12.ma.us
+paroch.k12.ma.us
+
+// uy : http://www.antel.com.uy/
+*.uy
+
+// uz : http://www.reg.uz/registerr.html
+// are there other 2nd level tlds ?
+uz
+com.uz
+co.uz
+
+// va : http://en.wikipedia.org/wiki/.va
+va
+
+// vc : http://en.wikipedia.org/wiki/.vc
+// Submitted by registry <kshah@ca.afilias.info> 2008-06-13
+vc
+com.vc
+net.vc
+org.vc
+gov.vc
+mil.vc
+edu.vc
+
+// ve : http://registro.nic.ve/nicve/registro/index.html
+*.ve
+
+// vg : http://en.wikipedia.org/wiki/.vg
+vg
+
+// vi : http://www.nic.vi/newdomainform.htm
+// http://www.nic.vi/Domain_Rules/body_domain_rules.html indicates some other
+// TLDs are "reserved", such as edu.vi and gov.vi, but doesn't actually say they
+// are available for registration (which they do not seem to be).
+vi
+co.vi
+com.vi
+k12.vi
+net.vi
+org.vi
+
+// vn : https://www.dot.vn/vnnic/vnnic/domainregistration.jsp
+vn
+com.vn
+net.vn
+org.vn
+edu.vn
+gov.vn
+int.vn
+ac.vn
+biz.vn
+info.vn
+name.vn
+pro.vn
+health.vn
+
+// vu : http://en.wikipedia.org/wiki/.vu
+// list of 2nd level tlds ?
+vu
+
+// wf : http://www.afnic.fr/medias/documents/AFNIC-naming-policy2012.pdf
+wf
+
+// ws : http://en.wikipedia.org/wiki/.ws
+// http://samoanic.ws/index.dhtml
+ws
+com.ws
+net.ws
+org.ws
+gov.ws
+edu.ws
+
+// yt : http://www.afnic.fr/medias/documents/AFNIC-naming-policy2012.pdf
+yt
+
+// IDN ccTLDs
+// Please sort by ISO 3166 ccTLD, then punicode string
+// when submitting patches and follow this format:
+// <Punicode> ("<english word>" <language>) : <ISO 3166 ccTLD>
+// [optional sponsoring org]
+// <URL>
+
+// xn--mgbaam7a8h ("Emerat" Arabic) : AE
+//http://nic.ae/english/arabicdomain/rules.jsp
+امارات
+
+// xn--54b7fta0cc ("Bangla" Bangla) : BD  
+বাংলা
+
+// xn--fiqs8s ("China" Chinese-Han-Simplified <.Zhonggou>) : CN 
+// CNNIC
+// http://cnnic.cn/html/Dir/2005/10/11/3218.htm
+中国
+
+// xn--fiqz9s ("China" Chinese-Han-Traditional <.Zhonggou>) : CN
+// CNNIC
+// http://cnnic.cn/html/Dir/2005/10/11/3218.htm
+中國
+
+// xn--lgbbat1ad8j ("Algeria / Al Jazair" Arabic) : DZ  
+الجزائر
+
+// xn--wgbh1c ("Egypt" Arabic .masr) : EG
+// http://www.dotmasr.eg/
+مصر
+
+// xn--node ("ge" Georgian (Mkhedruli)) : GE  
+გე
+
+// xn--j6w193g ("Hong Kong" Chinese-Han) : HK
+// https://www2.hkirc.hk/register/rules.jsp
+香港
+
+// xn--h2brj9c ("Bharat" Devanagari) : IN  
+// India
+भारत
+
+// xn--mgbbh1a71e ("Bharat" Arabic) : IN  
+// India
+بھارت
+
+// xn--fpcrj9c3d ("Bharat" Telugu) : IN  
+// India
+భారత్
+
+// xn--gecrj9c ("Bharat" Gujarati) : IN  
+// India
+ભારત
+
+// xn--s9brj9c ("Bharat" Gurmukhi) : IN  
+// India
+ਭਾਰਤ
+
+// xn--45brj9c ("Bharat" Bengali) : IN  
+// India
+ভারত
+
+// xn--xkc2dl3a5ee0h ("India" Tamil) : IN  
+// India
+இந்தியா
+
+// xn--mgba3a4f16a ("Iran" Persian) : IR  
+ایران
+
+// xn--mgba3a4fra ("Iran" Arabic) : IR  
+ايران
+
+//xn--mgbayh7gpa ("al-Ordon" Arabic) JO
+//National Information Technology Center (NITC) 
+//Royal Scientific Society, Al-Jubeiha
+الاردن
+
+// xn--3e0b707e ("Republic of Korea" Hangul) : KR  
+한국
+
+// xn--fzc2c9e2c ("Lanka" Sinhalese-Sinhala) : LK
+// http://nic.lk
+ලංකා
+
+// xn--xkc2al3hye2a ("Ilangai" Tamil) : LK
+// http://nic.lk
+இலங்கை
+
+// xn--mgbc0a9azcg ("Morocco / al-Maghrib" Arabic) : MA  
+المغرب
+
+// xn--mgb9awbf ("Oman" Arabic) : OM  
+عمان
+
+// xn--ygbi2ammx ("Falasteen" Arabic) : PS
+// The Palestinian National Internet Naming Authority (PNINA)
+// http://www.pnina.ps
+فلسطين
+
+// xn--90a3ac ("srb" Cyrillic) : RS  
+срб
+
+// xn--p1ai ("rf" Russian-Cyrillic) : RU
+// http://www.cctld.ru/en/docs/rulesrf.php
+рф
+
+// xn--wgbl6a ("Qatar" Arabic) : QA
+// http://www.ict.gov.qa/
+قطر
+
+// xn--mgberp4a5d4ar ("AlSaudiah" Arabic) : SA
+// http://www.nic.net.sa/
+السعودية
+
+// xn--mgberp4a5d4a87g ("AlSaudiah" Arabic) variant : SA  
+السعودیة
+
+// xn--mgbqly7c0a67fbc ("AlSaudiah" Arabic) variant : SA  
+السعودیۃ
+
+// xn--mgbqly7cvafr ("AlSaudiah" Arabic) variant : SA  
+السعوديه
+
+// xn--ogbpf8fl ("Syria" Arabic) : SY  
+سورية
+
+// xn--mgbtf8fl ("Syria" Arabic) variant : SY  
+سوريا
+
+// xn--yfro4i67o Singapore ("Singapore" Chinese-Han) : SG
+新加坡
+
+// xn--clchc0ea0b2g2a9gcd ("Singapore" Tamil) : SG
+சிங்கப்பூர்
+
+// xn--o3cw4h ("Thai" Thai) : TH
+// http://www.thnic.co.th
+ไทย
+
+// xn--pgbs0dh ("Tunis") : TN
+// http://nic.tn
+تونس
+
+// xn--kpry57d ("Taiwan" Chinese-Han-Traditional) : TW
+// http://www.twnic.net/english/dn/dn_07a.htm
+台灣
+
+// xn--kprw13d ("Taiwan" Chinese-Han-Simplified) : TW
+// http://www.twnic.net/english/dn/dn_07a.htm
+台湾
+
+// xn--nnx388a ("Taiwan") variant : TW  
+臺灣
+
+// xn--j1amh ("ukr" Cyrillic) : UA  
+укр
+
+// xn--mgb2ddes ("AlYemen" Arabic) : YE  
+اليمن
+
+// xxx : http://icmregistry.com
+xxx
+
+// ye : http://www.y.net.ye/services/domain_name.htm
+*.ye
+
+// za : http://www.zadna.org.za/slds.html
+*.za
+
+// zm : http://en.wikipedia.org/wiki/.zm
+*.zm
+
+// zw : http://en.wikipedia.org/wiki/.zw
+*.zw
+
+// ===END ICANN DOMAINS===
+// ===BEGIN PRIVATE DOMAINS===
+
+// info.at : http://www.info.at/
+biz.at
+info.at
+
+// priv.at : http://www.nic.priv.at/
+// Submitted by registry <lendl@nic.at> 2008-06-09
+priv.at
+
+// co.ca : http://registry.co.ca
+co.ca
+
+// CentralNic : http://www.centralnic.com/names/domains
+// Confirmed by registry <gavin.brown@centralnic.com> 2008-06-09
+ar.com
+br.com
+cn.com
+de.com
+eu.com
+gb.com
+gr.com
+hu.com
+jpn.com
+kr.com
+no.com
+qc.com
+ru.com
+sa.com
+se.com
+uk.com
+us.com
+uy.com
+za.com
+gb.net
+jp.net
+se.net
+uk.net
+ae.org
+us.org
+com.de
+
+// Opera Software, A.S.A.
+// Requested by Yngve Pettersen <yngve@opera.com> 2009-11-26
+operaunite.com
+
+// Google, Inc.
+// Requested by Eduardo Vela <evn@google.com> 2010-09-06
+appspot.com
+
+// iki.fi : Submitted by Hannu Aronsson <haa@iki.fi> 2009-11-05
+iki.fi
+
+// c.la : http://www.c.la/
+c.la
+
+// ZaNiC : http://www.za.net/
+// Confirmed by registry <hostmaster@nic.za.net> 2009-10-03
+za.net
+za.org
+
+// CoDNS B.V.
+// Added 2010-05-23.
+co.nl
+co.no
+
+// Mainseek Sp. z o.o. : http://www.co.pl/
+co.pl
+
+// DynDNS.com : http://www.dyndns.com/services/dns/dyndns/
+dyndns-at-home.com
+dyndns-at-work.com
+dyndns-blog.com
+dyndns-free.com
+dyndns-home.com
+dyndns-ip.com
+dyndns-mail.com
+dyndns-office.com
+dyndns-pics.com
+dyndns-remote.com
+dyndns-server.com
+dyndns-web.com
+dyndns-wiki.com
+dyndns-work.com
+dyndns.biz
+dyndns.info
+dyndns.org
+dyndns.tv
+at-band-camp.net
+ath.cx
+barrel-of-knowledge.info
+barrell-of-knowledge.info
+better-than.tv
+blogdns.com
+blogdns.net
+blogdns.org
+blogsite.org
+boldlygoingnowhere.org
+broke-it.net
+buyshouses.net
+cechire.com
+dnsalias.com
+dnsalias.net
+dnsalias.org
+dnsdojo.com
+dnsdojo.net
+dnsdojo.org
+does-it.net
+doesntexist.com
+doesntexist.org
+dontexist.com
+dontexist.net
+dontexist.org
+doomdns.com
+doomdns.org
+dvrdns.org
+dyn-o-saur.com
+dynalias.com
+dynalias.net
+dynalias.org
+dynathome.net
+dyndns.ws
+endofinternet.net
+endofinternet.org
+endoftheinternet.org
+est-a-la-maison.com
+est-a-la-masion.com
+est-le-patron.com
+est-mon-blogueur.com
+for-better.biz
+for-more.biz
+for-our.info
+for-some.biz
+for-the.biz
+forgot.her.name
+forgot.his.name
+from-ak.com
+from-al.com
+from-ar.com
+from-az.net
+from-ca.com
+from-co.net
+from-ct.com
+from-dc.com
+from-de.com
+from-fl.com
+from-ga.com
+from-hi.com
+from-ia.com
+from-id.com
+from-il.com
+from-in.com
+from-ks.com
+from-ky.com
+from-la.net
+from-ma.com
+from-md.com
+from-me.org
+from-mi.com
+from-mn.com
+from-mo.com
+from-ms.com
+from-mt.com
+from-nc.com
+from-nd.com
+from-ne.com
+from-nh.com
+from-nj.com
+from-nm.com
+from-nv.com
+from-ny.net
+from-oh.com
+from-ok.com
+from-or.com
+from-pa.com
+from-pr.com
+from-ri.com
+from-sc.com
+from-sd.com
+from-tn.com
+from-tx.com
+from-ut.com
+from-va.com
+from-vt.com
+from-wa.com
+from-wi.com
+from-wv.com
+from-wy.com
+ftpaccess.cc
+fuettertdasnetz.de
+game-host.org
+game-server.cc
+getmyip.com
+gets-it.net
+go.dyndns.org
+gotdns.com
+gotdns.org
+groks-the.info
+groks-this.info
+ham-radio-op.net
+here-for-more.info
+hobby-site.com
+hobby-site.org
+home.dyndns.org
+homedns.org
+homeftp.net
+homeftp.org
+homeip.net
+homelinux.com
+homelinux.net
+homelinux.org
+homeunix.com
+homeunix.net
+homeunix.org
+iamallama.com
+in-the-band.net
+is-a-anarchist.com
+is-a-blogger.com
+is-a-bookkeeper.com
+is-a-bruinsfan.org
+is-a-bulls-fan.com
+is-a-candidate.org
+is-a-caterer.com
+is-a-celticsfan.org
+is-a-chef.com
+is-a-chef.net
+is-a-chef.org
+is-a-conservative.com
+is-a-cpa.com
+is-a-cubicle-slave.com
+is-a-democrat.com
+is-a-designer.com
+is-a-doctor.com
+is-a-financialadvisor.com
+is-a-geek.com
+is-a-geek.net
+is-a-geek.org
+is-a-green.com
+is-a-guru.com
+is-a-hard-worker.com
+is-a-hunter.com
+is-a-knight.org
+is-a-landscaper.com
+is-a-lawyer.com
+is-a-liberal.com
+is-a-libertarian.com
+is-a-linux-user.org
+is-a-llama.com
+is-a-musician.com
+is-a-nascarfan.com
+is-a-nurse.com
+is-a-painter.com
+is-a-patsfan.org
+is-a-personaltrainer.com
+is-a-photographer.com
+is-a-player.com
+is-a-republican.com
+is-a-rockstar.com
+is-a-socialist.com
+is-a-soxfan.org
+is-a-student.com
+is-a-teacher.com
+is-a-techie.com
+is-a-therapist.com
+is-an-accountant.com
+is-an-actor.com
+is-an-actress.com
+is-an-anarchist.com
+is-an-artist.com
+is-an-engineer.com
+is-an-entertainer.com
+is-by.us
+is-certified.com
+is-found.org
+is-gone.com
+is-into-anime.com
+is-into-cars.com
+is-into-cartoons.com
+is-into-games.com
+is-leet.com
+is-lost.org
+is-not-certified.com
+is-saved.org
+is-slick.com
+is-uberleet.com
+is-very-bad.org
+is-very-evil.org
+is-very-good.org
+is-very-nice.org
+is-very-sweet.org
+is-with-theband.com
+isa-geek.com
+isa-geek.net
+isa-geek.org
+isa-hockeynut.com
+issmarterthanyou.com
+isteingeek.de
+istmein.de
+kicks-ass.net
+kicks-ass.org
+knowsitall.info
+land-4-sale.us
+lebtimnetz.de
+leitungsen.de
+likes-pie.com
+likescandy.com
+merseine.nu
+mine.nu
+misconfused.org
+mypets.ws
+myphotos.cc
+neat-url.com
+office-on-the.net
+on-the-web.tv
+podzone.net
+podzone.org
+readmyblog.org
+saves-the-whales.com
+scrapper-site.net
+scrapping.cc
+selfip.biz
+selfip.com
+selfip.info
+selfip.net
+selfip.org
+sells-for-less.com
+sells-for-u.com
+sells-it.net
+sellsyourhome.org
+servebbs.com
+servebbs.net
+servebbs.org
+serveftp.net
+serveftp.org
+servegame.org
+shacknet.nu
+simple-url.com
+space-to-rent.com
+stuff-4-sale.org
+stuff-4-sale.us
+teaches-yoga.com
+thruhere.net
+traeumtgerade.de
+webhop.biz
+webhop.info
+webhop.net
+webhop.org
+worse-than.tv
+writesthisblog.com
+
+// ===END PRIVATE DOMAINS===
index 86d3f06..b35975a 100644 (file)
@@ -61,17 +61,17 @@ enum                <a class="link" href="SoupAddress.html#SoupAddressFamily" ti
                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);
 <span class="returnvalue">void</span>                <a class="link" href="SoupAddress.html#soup-address-resolve-async" title="soup_address_resolve_async ()">soup_address_resolve_async</a>          (<em class="parameter"><code><a class="link" href="SoupAddress.html" title="SoupAddress"><span class="type">SoupAddress</span></a> *addr</code></em>,
                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-The-Main-Event-Loop.html#GMainContext"><span class="type">GMainContext</span></a> *async_context</code></em>,
-                                                         <em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
+                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/gio/unstable/GCancellable.html"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                          <em class="parameter"><code><a class="link" href="SoupAddress.html#SoupAddressCallback" title="SoupAddressCallback ()"><span class="type">SoupAddressCallback</span></a> callback</code></em>,
                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);
 <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>               <a class="link" href="SoupAddress.html#soup-address-resolve-sync" title="soup_address_resolve_sync ()">soup_address_resolve_sync</a>           (<em class="parameter"><code><a class="link" href="SoupAddress.html" title="SoupAddress"><span class="type">SoupAddress</span></a> *addr</code></em>,
-                                                         <em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>);
+                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/gio/unstable/GCancellable.html"><span class="type">GCancellable</span></a> *cancellable</code></em>);
 <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="SoupAddress.html#soup-address-is-resolved" title="soup_address_is_resolved ()">soup_address_is_resolved</a>            (<em class="parameter"><code><a class="link" href="SoupAddress.html" title="SoupAddress"><span class="type">SoupAddress</span></a> *addr</code></em>);
 
 const <span class="returnvalue">char</span> *        <a class="link" href="SoupAddress.html#soup-address-get-name" title="soup_address_get_name ()">soup_address_get_name</a>               (<em class="parameter"><code><a class="link" href="SoupAddress.html" title="SoupAddress"><span class="type">SoupAddress</span></a> *addr</code></em>);
 struct <span class="returnvalue">sockaddr</span> *   <a class="link" href="SoupAddress.html#soup-address-get-sockaddr" title="soup_address_get_sockaddr ()">soup_address_get_sockaddr</a>           (<em class="parameter"><code><a class="link" href="SoupAddress.html" title="SoupAddress"><span class="type">SoupAddress</span></a> *addr</code></em>,
                                                          <em class="parameter"><code><span class="type">int</span> *len</code></em>);
-<span class="returnvalue">GSocketAddress</span> *    <a class="link" href="SoupAddress.html#soup-address-get-gsockaddr" title="soup_address_get_gsockaddr ()">soup_address_get_gsockaddr</a>          (<em class="parameter"><code><a class="link" href="SoupAddress.html" title="SoupAddress"><span class="type">SoupAddress</span></a> *addr</code></em>);
+<a href="http://library.gnome.org/devel/gio/unstable/GSocketAddress.html"><span class="returnvalue">GSocketAddress</span></a> *    <a class="link" href="SoupAddress.html#soup-address-get-gsockaddr" title="soup_address_get_gsockaddr ()">soup_address_get_gsockaddr</a>          (<em class="parameter"><code><a class="link" href="SoupAddress.html" title="SoupAddress"><span class="type">SoupAddress</span></a> *addr</code></em>);
 const <span class="returnvalue">char</span> *        <a class="link" href="SoupAddress.html#soup-address-get-physical" title="soup_address_get_physical ()">soup_address_get_physical</a>           (<em class="parameter"><code><a class="link" href="SoupAddress.html" title="SoupAddress"><span class="type">SoupAddress</span></a> *addr</code></em>);
 <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>               <a class="link" href="SoupAddress.html#soup-address-get-port" title="soup_address_get_port ()">soup_address_get_port</a>               (<em class="parameter"><code><a class="link" href="SoupAddress.html" title="SoupAddress"><span class="type">SoupAddress</span></a> *addr</code></em>);
 
@@ -100,7 +100,7 @@ const <span class="returnvalue">char</span> *        <a class="link" href="SoupA
 <a name="SoupAddress.implemented-interfaces"></a><h2>Implemented Interfaces</h2>
 <p>
 SoupAddress implements
GSocketConnectable.</p>
<a href="http://library.gnome.org/devel/gio/unstable/GSocketConnectable.html">GSocketConnectable</a>.</p>
 </div>
 <div class="refsect1">
 <a name="SoupAddress.properties"></a><h2>Properties</h2>
@@ -298,7 +298,7 @@ The callback function passed to <a class="link" href="SoupAddress.html#soup-addr
 <a name="soup-address-resolve-async"></a><h3>soup_address_resolve_async ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>                soup_address_resolve_async          (<em class="parameter"><code><a class="link" href="SoupAddress.html" title="SoupAddress"><span class="type">SoupAddress</span></a> *addr</code></em>,
                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-The-Main-Event-Loop.html#GMainContext"><span class="type">GMainContext</span></a> *async_context</code></em>,
-                                                         <em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
+                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/gio/unstable/GCancellable.html"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                          <em class="parameter"><code><a class="link" href="SoupAddress.html#SoupAddressCallback" title="SoupAddressCallback ()"><span class="type">SoupAddressCallback</span></a> callback</code></em>,
                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
 <p>
@@ -334,7 +334,7 @@ mixed with calls to <a class="link" href="SoupAddress.html#soup-address-resolve-
 </tr>
 <tr>
 <td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
-<td>a <span class="type">GCancellable</span> object, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
+<td>a <a href="http://library.gnome.org/devel/gio/unstable/GCancellable.html"><span class="type">GCancellable</span></a> object, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
 </td>
 </tr>
 <tr>
@@ -354,7 +354,7 @@ mixed with calls to <a class="link" href="SoupAddress.html#soup-address-resolve-
 <div class="refsect2">
 <a name="soup-address-resolve-sync"></a><h3>soup_address_resolve_sync ()</h3>
 <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>               soup_address_resolve_sync           (<em class="parameter"><code><a class="link" href="SoupAddress.html" title="SoupAddress"><span class="type">SoupAddress</span></a> *addr</code></em>,
-                                                         <em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>);</pre>
+                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/gio/unstable/GCancellable.html"><span class="type">GCancellable</span></a> *cancellable</code></em>);</pre>
 <p>
 Synchronously resolves the missing half of <em class="parameter"><code>addr</code></em>, as with
 <a class="link" href="SoupAddress.html#soup-address-resolve-async" title="soup_address_resolve_async ()"><code class="function">soup_address_resolve_async()</code></a>.
@@ -380,7 +380,7 @@ threads, but it is not safe to mix calls to
 </tr>
 <tr>
 <td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
-<td>a <span class="type">GCancellable</span> object, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
+<td>a <a href="http://library.gnome.org/devel/gio/unstable/GCancellable.html"><span class="type">GCancellable</span></a> object, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
 </td>
 </tr>
 <tr>
@@ -484,9 +484,9 @@ is resolved before fetching its name or address.
 <hr>
 <div class="refsect2">
 <a name="soup-address-get-gsockaddr"></a><h3>soup_address_get_gsockaddr ()</h3>
-<pre class="programlisting"><span class="returnvalue">GSocketAddress</span> *    soup_address_get_gsockaddr          (<em class="parameter"><code><a class="link" href="SoupAddress.html" title="SoupAddress"><span class="type">SoupAddress</span></a> *addr</code></em>);</pre>
+<pre class="programlisting"><a href="http://library.gnome.org/devel/gio/unstable/GSocketAddress.html"><span class="returnvalue">GSocketAddress</span></a> *    soup_address_get_gsockaddr          (<em class="parameter"><code><a class="link" href="SoupAddress.html" title="SoupAddress"><span class="type">SoupAddress</span></a> *addr</code></em>);</pre>
 <p>
-Creates a new <span class="type">GSocketAddress</span> corresponding to <em class="parameter"><code>addr</code></em> (which is assumed
+Creates a new <a href="http://library.gnome.org/devel/gio/unstable/GSocketAddress.html"><span class="type">GSocketAddress</span></a> corresponding to <em class="parameter"><code>addr</code></em> (which is assumed
 to only have one socket address associated with it).
 </p>
 <div class="variablelist"><table border="0">
@@ -499,7 +499,7 @@ to only have one socket address associated with it).
 </tr>
 <tr>
 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>a new <span class="type">GSocketAddress</span>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+<td>a new <a href="http://library.gnome.org/devel/gio/unstable/GSocketAddress.html"><span class="type">GSocketAddress</span></a>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
 </td>
 </tr>
 </tbody>
index 5b0807a..a062bfd 100644 (file)
@@ -53,6 +53,9 @@
 <span class="returnvalue">char</span> *              <a class="link" href="SoupCookieJar.html#soup-cookie-jar-get-cookies" title="soup_cookie_jar_get_cookies ()">soup_cookie_jar_get_cookies</a>         (<em class="parameter"><code><a class="link" href="SoupCookieJar.html" title="SoupCookieJar"><span class="type">SoupCookieJar</span></a> *jar</code></em>,
                                                          <em class="parameter"><code><a class="link" href="SoupURI.html" title="SoupURI"><span class="type">SoupURI</span></a> *uri</code></em>,
                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> for_http</code></em>);
+<a href="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="returnvalue">GSList</span></a> *            <a class="link" href="SoupCookieJar.html#soup-cookie-jar-get-cookie-list" title="soup_cookie_jar_get_cookie_list ()">soup_cookie_jar_get_cookie_list</a>     (<em class="parameter"><code><a class="link" href="SoupCookieJar.html" title="SoupCookieJar"><span class="type">SoupCookieJar</span></a> *jar</code></em>,
+                                                         <em class="parameter"><code><a class="link" href="SoupURI.html" title="SoupURI"><span class="type">SoupURI</span></a> *uri</code></em>,
+                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> for_http</code></em>);
 <span class="returnvalue">void</span>                <a class="link" href="SoupCookieJar.html#soup-cookie-jar-set-cookie" title="soup_cookie_jar_set_cookie ()">soup_cookie_jar_set_cookie</a>          (<em class="parameter"><code><a class="link" href="SoupCookieJar.html" title="SoupCookieJar"><span class="type">SoupCookieJar</span></a> *jar</code></em>,
                                                          <em class="parameter"><code><a class="link" href="SoupURI.html" title="SoupURI"><span class="type">SoupURI</span></a> *uri</code></em>,
                                                          <em class="parameter"><code>const <span class="type">char</span> *cookie</code></em>);
 
 <span class="returnvalue">void</span>                <a class="link" href="SoupCookieJar.html#soup-cookie-jar-add-cookie" title="soup_cookie_jar_add_cookie ()">soup_cookie_jar_add_cookie</a>          (<em class="parameter"><code><a class="link" href="SoupCookieJar.html" title="SoupCookieJar"><span class="type">SoupCookieJar</span></a> *jar</code></em>,
                                                          <em class="parameter"><code><a class="link" href="SoupCookie.html" title="SoupCookie"><span class="type">SoupCookie</span></a> *cookie</code></em>);
+<span class="returnvalue">void</span>                <a class="link" href="SoupCookieJar.html#soup-cookie-jar-add-cookie-with-first-party" title="soup_cookie_jar_add_cookie_with_first_party ()">soup_cookie_jar_add_cookie_with_first_party</a>
+                                                        (<em class="parameter"><code><a class="link" href="SoupCookieJar.html" title="SoupCookieJar"><span class="type">SoupCookieJar</span></a> *jar</code></em>,
+                                                         <em class="parameter"><code><a class="link" href="SoupURI.html" title="SoupURI"><span class="type">SoupURI</span></a> *first_party</code></em>,
+                                                         <em class="parameter"><code><a class="link" href="SoupCookie.html" title="SoupCookie"><span class="type">SoupCookie</span></a> *cookie</code></em>);
 <span class="returnvalue">void</span>                <a class="link" href="SoupCookieJar.html#soup-cookie-jar-delete-cookie" title="soup_cookie_jar_delete_cookie ()">soup_cookie_jar_delete_cookie</a>       (<em class="parameter"><code><a class="link" href="SoupCookieJar.html" title="SoupCookieJar"><span class="type">SoupCookieJar</span></a> *jar</code></em>,
                                                          <em class="parameter"><code><a class="link" href="SoupCookie.html" title="SoupCookie"><span class="type">SoupCookie</span></a> *cookie</code></em>);
 <a href="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="returnvalue">GSList</span></a> *            <a class="link" href="SoupCookieJar.html#soup-cookie-jar-all-cookies" title="soup_cookie_jar_all_cookies ()">soup_cookie_jar_all_cookies</a>         (<em class="parameter"><code><a class="link" href="SoupCookieJar.html" title="SoupCookieJar"><span class="type">SoupCookieJar</span></a> *jar</code></em>);
@@ -196,6 +203,53 @@ cookies for <em class="parameter"><code>uri</code></em>.</td>
 </div>
 <hr>
 <div class="refsect2">
+<a name="soup-cookie-jar-get-cookie-list"></a><h3>soup_cookie_jar_get_cookie_list ()</h3>
+<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="returnvalue">GSList</span></a> *            soup_cookie_jar_get_cookie_list     (<em class="parameter"><code><a class="link" href="SoupCookieJar.html" title="SoupCookieJar"><span class="type">SoupCookieJar</span></a> *jar</code></em>,
+                                                         <em class="parameter"><code><a class="link" href="SoupURI.html" title="SoupURI"><span class="type">SoupURI</span></a> *uri</code></em>,
+                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> for_http</code></em>);</pre>
+<p>
+Retrieves the list of cookies that would be sent with a request to <em class="parameter"><code>uri</code></em>
+as a <a href="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> of <a class="link" href="SoupCookie.html" title="SoupCookie"><span class="type">SoupCookie</span></a> objects.
+</p>
+<p>
+If <em class="parameter"><code>for_http</code></em> is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, the return value will include cookies marked
+"HttpOnly" (that is, cookies that the server wishes to keep hidden
+from client-side scripting operations such as the JavaScript
+document.cookies property). Since <a class="link" href="SoupCookieJar.html" title="SoupCookieJar"><span class="type">SoupCookieJar</span></a> sets the Cookie
+header itself when making the actual HTTP request, you should
+almost certainly be setting <em class="parameter"><code>for_http</code></em> to <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if you are calling
+this.
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>jar</code></em> :</span></p></td>
+<td>a <a class="link" href="SoupCookieJar.html" title="SoupCookieJar"><span class="type">SoupCookieJar</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>uri</code></em> :</span></p></td>
+<td>a <a class="link" href="SoupURI.html" title="SoupURI"><span class="type">SoupURI</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>for_http</code></em> :</span></p></td>
+<td>whether or not the return value is being passed directly
+to an HTTP operation</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>a <a href="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a>
+with the cookies in the <em class="parameter"><code>jar</code></em> that would be sent with a request to <em class="parameter"><code>uri</code></em>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> Soup.Cookie]</span>
+</td>
+</tr>
+</tbody>
+</table></div>
+<p class="since">Since 2.40</p>
+</div>
+<hr>
+<div class="refsect2">
 <a name="soup-cookie-jar-set-cookie"></a><h3>soup_cookie_jar_set_cookie ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>                soup_cookie_jar_set_cookie          (<em class="parameter"><code><a class="link" href="SoupCookieJar.html" title="SoupCookieJar"><span class="type">SoupCookieJar</span></a> *jar</code></em>,
                                                          <em class="parameter"><code><a class="link" href="SoupURI.html" title="SoupURI"><span class="type">SoupURI</span></a> *uri</code></em>,
@@ -301,6 +355,46 @@ that the cookie's expire date is not in the past).
 </div>
 <hr>
 <div class="refsect2">
+<a name="soup-cookie-jar-add-cookie-with-first-party"></a><h3>soup_cookie_jar_add_cookie_with_first_party ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>                soup_cookie_jar_add_cookie_with_first_party
+                                                        (<em class="parameter"><code><a class="link" href="SoupCookieJar.html" title="SoupCookieJar"><span class="type">SoupCookieJar</span></a> *jar</code></em>,
+                                                         <em class="parameter"><code><a class="link" href="SoupURI.html" title="SoupURI"><span class="type">SoupURI</span></a> *first_party</code></em>,
+                                                         <em class="parameter"><code><a class="link" href="SoupCookie.html" title="SoupCookie"><span class="type">SoupCookie</span></a> *cookie</code></em>);</pre>
+<p>
+Adds <em class="parameter"><code>cookie</code></em> to <em class="parameter"><code>jar</code></em>, emitting the 'changed' signal if we are modifying
+an existing cookie or adding a valid new cookie ('valid' means
+that the cookie's expire date is not in the past).
+</p>
+<p>
+<em class="parameter"><code>first_party</code></em> will be used to reject cookies coming from third party
+resources in case such a security policy is set in the <em class="parameter"><code>jar</code></em>.
+</p>
+<p>
+<em class="parameter"><code>cookie</code></em> will be 'stolen' by the jar, so don't free it afterwards.
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>jar</code></em> :</span></p></td>
+<td>a <a class="link" href="SoupCookieJar.html" title="SoupCookieJar"><span class="type">SoupCookieJar</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>first_party</code></em> :</span></p></td>
+<td>the URI for the main document</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>cookie</code></em> :</span></p></td>
+<td>a <a class="link" href="SoupCookie.html" title="SoupCookie"><span class="type">SoupCookie</span></a>
+</td>
+</tr>
+</tbody>
+</table></div>
+<p class="since">Since 2.40</p>
+</div>
+<hr>
+<div class="refsect2">
 <a name="soup-cookie-jar-delete-cookie"></a><h3>soup_cookie_jar_delete_cookie ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>                soup_cookie_jar_delete_cookie       (<em class="parameter"><code><a class="link" href="SoupCookieJar.html" title="SoupCookieJar"><span class="type">SoupCookieJar</span></a> *jar</code></em>,
                                                          <em class="parameter"><code><a class="link" href="SoupCookie.html" title="SoupCookie"><span class="type">SoupCookie</span></a> *cookie</code></em>);</pre>
index 5a7ee66..457a8c4 100644 (file)
@@ -82,8 +82,8 @@ enum                <a class="link" href="SoupMessage.html#SoupHTTPVersion" titl
                                                          <em class="parameter"><code>const <span class="type">char</span> *redirect_uri</code></em>);
 <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="SoupMessage.html#soup-message-is-keepalive" title="soup_message_is_keepalive ()">soup_message_is_keepalive</a>           (<em class="parameter"><code><a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> *msg</code></em>);
 <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="SoupMessage.html#soup-message-get-https-status" title="soup_message_get_https_status ()">soup_message_get_https_status</a>       (<em class="parameter"><code><a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> *msg</code></em>,
-                                                         <em class="parameter"><code><span class="type">GTlsCertificate</span> **certificate</code></em>,
-                                                         <em class="parameter"><code><span class="type">GTlsCertificateFlags</span> *errors</code></em>);
+                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/gio/unstable/GTlsCertificate.html"><span class="type">GTlsCertificate</span></a> **certificate</code></em>,
+                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/gio/unstable/gio-TLS-Overview.html#GTlsCertificateFlags"><span class="type">GTlsCertificateFlags</span></a> *errors</code></em>);
 
 <span class="returnvalue">void</span>                <a class="link" href="SoupMessage.html#soup-message-set-first-party" title="soup_message_set_first_party ()">soup_message_set_first_party</a>        (<em class="parameter"><code><a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> *msg</code></em>,
                                                          <em class="parameter"><code><a class="link" href="SoupURI.html" title="SoupURI"><span class="type">SoupURI</span></a> *first_party</code></em>);
@@ -153,8 +153,8 @@ enum                <a class="link" href="SoupMessage.html#SoupMessageFlags" tit
   "<a class="link" href="SoupMessage.html#SoupMessage--response-headers" title='The "response-headers" property'>response-headers</a>"         <a class="link" href="SoupMessageHeaders.html" title="SoupMessageHeaders"><span class="type">SoupMessageHeaders</span></a>*   : Read
   "<a class="link" href="SoupMessage.html#SoupMessage--server-side" title='The "server-side" property'>server-side</a>"              <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a>              : Read / Write / Construct Only
   "<a class="link" href="SoupMessage.html#SoupMessage--status-code" title='The "status-code" property'>status-code</a>"              <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a>                 : Read / Write
-  "<a class="link" href="SoupMessage.html#SoupMessage--tls-certificate" title='The "tls-certificate" property'>tls-certificate</a>"          <span class="type">GTlsCertificate</span>*      : Read / Write
-  "<a class="link" href="SoupMessage.html#SoupMessage--tls-errors" title='The "tls-errors" property'>tls-errors</a>"               <span class="type">GTlsCertificateFlags</span>  : Read / Write
+  "<a class="link" href="SoupMessage.html#SoupMessage--tls-certificate" title='The "tls-certificate" property'>tls-certificate</a>"          <a href="http://library.gnome.org/devel/gio/unstable/GTlsCertificate.html"><span class="type">GTlsCertificate</span></a>*      : Read / Write
+  "<a class="link" href="SoupMessage.html#SoupMessage--tls-errors" title='The "tls-errors" property'>tls-errors</a>"               <a href="http://library.gnome.org/devel/gio/unstable/gio-TLS-Overview.html#GTlsCertificateFlags"><span class="type">GTlsCertificateFlags</span></a>  : Read / Write
   "<a class="link" href="SoupMessage.html#SoupMessage--uri" title='The "uri" property'>uri</a>"                      <a class="link" href="SoupURI.html" title="SoupURI"><span class="type">SoupURI</span></a>*              : Read / Write
 </pre>
 </div>
@@ -696,11 +696,11 @@ Connection header, etc.
 <div class="refsect2">
 <a name="soup-message-get-https-status"></a><h3>soup_message_get_https_status ()</h3>
 <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            soup_message_get_https_status       (<em class="parameter"><code><a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a> *msg</code></em>,
-                                                         <em class="parameter"><code><span class="type">GTlsCertificate</span> **certificate</code></em>,
-                                                         <em class="parameter"><code><span class="type">GTlsCertificateFlags</span> *errors</code></em>);</pre>
+                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/gio/unstable/GTlsCertificate.html"><span class="type">GTlsCertificate</span></a> **certificate</code></em>,
+                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/gio/unstable/gio-TLS-Overview.html#GTlsCertificateFlags"><span class="type">GTlsCertificateFlags</span></a> *errors</code></em>);</pre>
 <p>
-If <em class="parameter"><code>msg</code></em> is using https, this retrieves the <span class="type">GTlsCertificate</span>
-associated with its connection, and the <span class="type">GTlsCertificateFlags</span> showing
+If <em class="parameter"><code>msg</code></em> is using https, this retrieves the <a href="http://library.gnome.org/devel/gio/unstable/GTlsCertificate.html"><span class="type">GTlsCertificate</span></a>
+associated with its connection, and the <a href="http://library.gnome.org/devel/gio/unstable/gio-TLS-Overview.html#GTlsCertificateFlags"><span class="type">GTlsCertificateFlags</span></a> showing
 what problems, if any, have been found with that certificate.
 </p>
 <div class="variablelist"><table border="0">
@@ -1375,16 +1375,16 @@ queued.
 <hr>
 <div class="refsect2">
 <a name="SoupMessage--tls-certificate"></a><h3>The <code class="literal">"tls-certificate"</code> property</h3>
-<pre class="programlisting">  "tls-certificate"          <span class="type">GTlsCertificate</span>*      : Read / Write</pre>
+<pre class="programlisting">  "tls-certificate"          <a href="http://library.gnome.org/devel/gio/unstable/GTlsCertificate.html"><span class="type">GTlsCertificate</span></a>*      : Read / Write</pre>
 <p>
-The <span class="type">GTlsCertificate</span> associated with the message
+The <a href="http://library.gnome.org/devel/gio/unstable/GTlsCertificate.html"><span class="type">GTlsCertificate</span></a> associated with the message
 </p>
 <p class="since">Since 2.34</p>
 </div>
 <hr>
 <div class="refsect2">
 <a name="SoupMessage--tls-errors"></a><h3>The <code class="literal">"tls-errors"</code> property</h3>
-<pre class="programlisting">  "tls-errors"               <span class="type">GTlsCertificateFlags</span>  : Read / Write</pre>
+<pre class="programlisting">  "tls-errors"               <a href="http://library.gnome.org/devel/gio/unstable/gio-TLS-Overview.html#GTlsCertificateFlags"><span class="type">GTlsCertificateFlags</span></a>  : Read / Write</pre>
 <p>
 The verification errors on <a class="link" href="SoupMessage.html#SoupMessage--tls-certificate" title='The "tls-certificate" property'><span class="type">"tls-certificate"</span></a>
 </p>
@@ -1617,13 +1617,13 @@ emission finished, and <em class="parameter"><code>msg</code></em>'s connection
 <div class="refsect2">
 <a name="SoupMessage-network-event"></a><h3>The <code class="literal">"network-event"</code> signal</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>                user_function                      (<a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a>       *msg,
-                                                        <span class="type">GSocketClientEvent</span> event,
-                                                        <span class="type">GIOStream</span>         *connection,
+                                                        <a href="http://library.gnome.org/devel/gio/unstable/GSocketClient.html#GSocketClientEvent"><span class="type">GSocketClientEvent</span></a> event,
+                                                        <a href="http://library.gnome.org/devel/gio/unstable/GIOStream.html"><span class="type">GIOStream</span></a>         *connection,
                                                         <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>           user_data)       : <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-RUN-FIRST:CAPS"><code class="literal">Run First</code></a></pre>
 <p>
 Emitted to indicate that some network-related event
 related to <em class="parameter"><code>msg</code></em> has occurred. This essentially proxies the
-<span class="type">"event"</span> signal, but only for events that
+<a href="http://library.gnome.org/devel/gio/unstable/GSocketClient.html#GSocketClient-event"><span class="type">"event"</span></a> signal, but only for events that
 occur while <em class="parameter"><code>msg</code></em> "owns" the connection; if <em class="parameter"><code>msg</code></em> is sent on
 an existing persistent connection, then this signal will
 not be emitted. (If you want to force the message to be
@@ -1631,7 +1631,7 @@ sent on a new connection, set the
 <a class="link" href="SoupMessage.html#SOUP-MESSAGE-NEW-CONNECTION:CAPS"><code class="literal">SOUP_MESSAGE_NEW_CONNECTION</code></a> flag on it.)
 </p>
 <p>
-See <span class="type">"event"</span> for more information on what
+See <a href="http://library.gnome.org/devel/gio/unstable/GSocketClient.html#GSocketClient-event"><span class="type">"event"</span></a> for more information on what
 the different values of <em class="parameter"><code>event</code></em> correspond to, and what
 <em class="parameter"><code>connection</code></em> will be in each case.
 </p>
index 3e5b658..035f993 100644 (file)
@@ -910,8 +910,8 @@ are only interested in the content type itself.
 </tr>
 <tr>
 <td><p><span class="term"><em class="parameter"><code>params</code></em> :</span></p></td>
-<td>return location for
-the Content-Type parameters (eg, "charset"), or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. <span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+<td>return location for the Content-Type parameters (eg, "charset"), or
+<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. <span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> utf8 utf8][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
 </td>
 </tr>
 <tr>
index 25c0a98..a5294e0 100644 (file)
@@ -6,7 +6,7 @@
 <meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="index.html" title="libsoup Reference Manual">
 <link rel="up" href="ch02.html" title="Core API">
-<link rel="prev" href="libsoup-2.4-soup-method.html" title="soup-method">
+<link rel="prev" href="libsoup-2.4-Soup-Miscellaneous-Utilities.html" title="Soup Miscellaneous Utilities">
 <link rel="next" href="SoupServer.html" title="SoupServer">
 <meta name="generator" content="GTK-Doc V1.18 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
@@ -14,7 +14,7 @@
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
 <table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
 <tr valign="middle">
-<td><a accesskey="p" href="libsoup-2.4-soup-method.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
+<td><a accesskey="p" href="libsoup-2.4-Soup-Miscellaneous-Utilities.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
 <td><a accesskey="u" href="ch02.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
 <th width="100%" align="center">libsoup Reference Manual</th>
index 33d0775..be862fa 100644 (file)
@@ -65,7 +65,7 @@ SoupProxyResolverDefault implements
 <div class="refsect1">
 <a name="SoupProxyResolverDefault.properties"></a><h2>Properties</h2>
 <pre class="synopsis">
-  "<a class="link" href="SoupProxyResolverDefault.html#SoupProxyResolverDefault--gproxy-resolver" title='The "gproxy-resolver" property'>gproxy-resolver</a>"          <span class="type">GProxyResolver</span>*       : Write
+  "<a class="link" href="SoupProxyResolverDefault.html#SoupProxyResolverDefault--gproxy-resolver" title='The "gproxy-resolver" property'>gproxy-resolver</a>"          <a href="http://library.gnome.org/devel/gio/unstable/GProxyResolver.html"><span class="type">GProxyResolver</span></a>*       : Write
 </pre>
 </div>
 <div class="refsect1">
@@ -80,7 +80,7 @@ SoupProxyResolverDefault implements
 <pre class="programlisting">typedef struct _SoupProxyResolverDefault SoupProxyResolverDefault;</pre>
 <p>
 A <a class="link" href="SoupProxyURIResolver.html" title="SoupProxyURIResolver"><span class="type">SoupProxyURIResolver</span></a> implementation that uses the default gio
-<span class="type">GProxyResolver</span> to resolve proxies.
+<a href="http://library.gnome.org/devel/gio/unstable/GProxyResolver.html"><span class="type">GProxyResolver</span></a> to resolve proxies.
 </p>
 <p class="since">Since 2.34</p>
 </div>
@@ -89,7 +89,7 @@ A <a class="link" href="SoupProxyURIResolver.html" title="SoupProxyURIResolver">
 <a name="SoupProxyResolverDefault.property-details"></a><h2>Property Details</h2>
 <div class="refsect2">
 <a name="SoupProxyResolverDefault--gproxy-resolver"></a><h3>The <code class="literal">"gproxy-resolver"</code> property</h3>
-<pre class="programlisting">  "gproxy-resolver"          <span class="type">GProxyResolver</span>*       : Write</pre>
+<pre class="programlisting">  "gproxy-resolver"          <a href="http://library.gnome.org/devel/gio/unstable/GProxyResolver.html"><span class="type">GProxyResolver</span></a>*       : Write</pre>
 <p>The underlying GProxyResolver.</p>
 </div>
 </div>
index 3277462..5305b5c 100644 (file)
                                                         (<em class="parameter"><code><a class="link" href="SoupProxyURIResolver.html" title="SoupProxyURIResolver"><span class="type">SoupProxyURIResolver</span></a> *proxy_uri_resolver</code></em>,
                                                          <em class="parameter"><code><a class="link" href="SoupURI.html" title="SoupURI"><span class="type">SoupURI</span></a> *uri</code></em>,
                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-The-Main-Event-Loop.html#GMainContext"><span class="type">GMainContext</span></a> *async_context</code></em>,
-                                                         <em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
+                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/gio/unstable/GCancellable.html"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                          <em class="parameter"><code><a class="link" href="SoupProxyURIResolver.html#SoupProxyURIResolverCallback" title="SoupProxyURIResolverCallback ()"><span class="type">SoupProxyURIResolverCallback</span></a> callback</code></em>,
                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);
 <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>               <a class="link" href="SoupProxyURIResolver.html#soup-proxy-uri-resolver-get-proxy-uri-sync" title="soup_proxy_uri_resolver_get_proxy_uri_sync ()">soup_proxy_uri_resolver_get_proxy_uri_sync</a>
                                                         (<em class="parameter"><code><a class="link" href="SoupProxyURIResolver.html" title="SoupProxyURIResolver"><span class="type">SoupProxyURIResolver</span></a> *proxy_uri_resolver</code></em>,
                                                          <em class="parameter"><code><a class="link" href="SoupURI.html" title="SoupURI"><span class="type">SoupURI</span></a> *uri</code></em>,
-                                                         <em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
+                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/gio/unstable/GCancellable.html"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                          <em class="parameter"><code><a class="link" href="SoupURI.html" title="SoupURI"><span class="type">SoupURI</span></a> **proxy_uri</code></em>);
 </pre>
 </div>
@@ -140,7 +140,7 @@ Callback for <a class="link" href="SoupProxyURIResolver.html#soup-proxy-uri-reso
                                                         (<em class="parameter"><code><a class="link" href="SoupProxyURIResolver.html" title="SoupProxyURIResolver"><span class="type">SoupProxyURIResolver</span></a> *proxy_uri_resolver</code></em>,
                                                          <em class="parameter"><code><a class="link" href="SoupURI.html" title="SoupURI"><span class="type">SoupURI</span></a> *uri</code></em>,
                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-The-Main-Event-Loop.html#GMainContext"><span class="type">GMainContext</span></a> *async_context</code></em>,
-                                                         <em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
+                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/gio/unstable/GCancellable.html"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                          <em class="parameter"><code><a class="link" href="SoupProxyURIResolver.html#SoupProxyURIResolverCallback" title="SoupProxyURIResolverCallback ()"><span class="type">SoupProxyURIResolverCallback</span></a> callback</code></em>,
                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
 <p>
@@ -166,7 +166,7 @@ Asynchronously determines a proxy URI to use for <em class="parameter"><code>msg
 </tr>
 <tr>
 <td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
-<td>a <span class="type">GCancellable</span>, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
+<td>a <a href="http://library.gnome.org/devel/gio/unstable/GCancellable.html"><span class="type">GCancellable</span></a>, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
 </td>
 </tr>
 <tr>
@@ -189,7 +189,7 @@ Asynchronously determines a proxy URI to use for <em class="parameter"><code>msg
 <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>               soup_proxy_uri_resolver_get_proxy_uri_sync
                                                         (<em class="parameter"><code><a class="link" href="SoupProxyURIResolver.html" title="SoupProxyURIResolver"><span class="type">SoupProxyURIResolver</span></a> *proxy_uri_resolver</code></em>,
                                                          <em class="parameter"><code><a class="link" href="SoupURI.html" title="SoupURI"><span class="type">SoupURI</span></a> *uri</code></em>,
-                                                         <em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
+                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/gio/unstable/GCancellable.html"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                          <em class="parameter"><code><a class="link" href="SoupURI.html" title="SoupURI"><span class="type">SoupURI</span></a> **proxy_uri</code></em>);</pre>
 <p>
 Synchronously determines a proxy URI to use for <em class="parameter"><code>uri</code></em>. If <em class="parameter"><code>uri</code></em>
@@ -210,7 +210,7 @@ proxy, else it will be set to <a href="http://library.gnome.org/devel/glib/unsta
 </tr>
 <tr>
 <td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
-<td>a <span class="type">GCancellable</span>, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
+<td>a <a href="http://library.gnome.org/devel/gio/unstable/GCancellable.html"><span class="type">GCancellable</span></a>, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
 </td>
 </tr>
 <tr>
index c0ed50e..9b4f9e9 100644 (file)
 #include &lt;libsoup/soup.h&gt;
 
 struct              <a class="link" href="SoupRequest.html#SoupRequest-struct" title="struct SoupRequest">SoupRequest</a>;
-<span class="returnvalue">GInputStream</span> *      <a class="link" href="SoupRequest.html#soup-request-send" title="soup_request_send ()">soup_request_send</a>                   (<em class="parameter"><code><a class="link" href="SoupRequest.html" title="SoupRequest"><span class="type">SoupRequest</span></a> *request</code></em>,
-                                                         <em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
+<a href="http://library.gnome.org/devel/gio/unstable/GInputStream.html"><span class="returnvalue">GInputStream</span></a> *      <a class="link" href="SoupRequest.html#soup-request-send" title="soup_request_send ()">soup_request_send</a>                   (<em class="parameter"><code><a class="link" href="SoupRequest.html" title="SoupRequest"><span class="type">SoupRequest</span></a> *request</code></em>,
+                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/gio/unstable/GCancellable.html"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
 <span class="returnvalue">void</span>                <a class="link" href="SoupRequest.html#soup-request-send-async" title="soup_request_send_async ()">soup_request_send_async</a>             (<em class="parameter"><code><a class="link" href="SoupRequest.html" title="SoupRequest"><span class="type">SoupRequest</span></a> *request</code></em>,
-                                                         <em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
-                                                         <em class="parameter"><code><span class="type">GAsyncReadyCallback</span> callback</code></em>,
+                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/gio/unstable/GCancellable.html"><span class="type">GCancellable</span></a> *cancellable</code></em>,
+                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/gio/unstable/GAsyncResult.html#GAsyncReadyCallback"><span class="type">GAsyncReadyCallback</span></a> callback</code></em>,
                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);
-<span class="returnvalue">GInputStream</span> *      <a class="link" href="SoupRequest.html#soup-request-send-finish" title="soup_request_send_finish ()">soup_request_send_finish</a>            (<em class="parameter"><code><a class="link" href="SoupRequest.html" title="SoupRequest"><span class="type">SoupRequest</span></a> *request</code></em>,
-                                                         <em class="parameter"><code><span class="type">GAsyncResult</span> *result</code></em>,
+<a href="http://library.gnome.org/devel/gio/unstable/GInputStream.html"><span class="returnvalue">GInputStream</span></a> *      <a class="link" href="SoupRequest.html#soup-request-send-finish" title="soup_request_send_finish ()">soup_request_send_finish</a>            (<em class="parameter"><code><a class="link" href="SoupRequest.html" title="SoupRequest"><span class="type">SoupRequest</span></a> *request</code></em>,
+                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/gio/unstable/GAsyncResult.html"><span class="type">GAsyncResult</span></a> *result</code></em>,
                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
 
 <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#goffset"><span class="returnvalue">goffset</span></a>             <a class="link" href="SoupRequest.html#soup-request-get-content-length" title="soup_request_get_content_length ()">soup_request_get_content_length</a>     (<em class="parameter"><code><a class="link" href="SoupRequest.html" title="SoupRequest"><span class="type">SoupRequest</span></a> *request</code></em>);
@@ -81,7 +81,7 @@ const <span class="returnvalue">char</span> *        <a class="link" href="SoupR
 <a name="SoupRequest.implemented-interfaces"></a><h2>Implemented Interfaces</h2>
 <p>
 SoupRequest implements
GInitable.</p>
<a href="http://library.gnome.org/devel/gio/unstable/GInitable.html">GInitable</a>.</p>
 </div>
 <div class="refsect1">
 <a name="SoupRequest.properties"></a><h2>Properties</h2>
@@ -110,12 +110,12 @@ A request to retrieve a particular URI.
 <hr>
 <div class="refsect2">
 <a name="soup-request-send"></a><h3>soup_request_send ()</h3>
-<pre class="programlisting"><span class="returnvalue">GInputStream</span> *      soup_request_send                   (<em class="parameter"><code><a class="link" href="SoupRequest.html" title="SoupRequest"><span class="type">SoupRequest</span></a> *request</code></em>,
-                                                         <em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
+<pre class="programlisting"><a href="http://library.gnome.org/devel/gio/unstable/GInputStream.html"><span class="returnvalue">GInputStream</span></a> *      soup_request_send                   (<em class="parameter"><code><a class="link" href="SoupRequest.html" title="SoupRequest"><span class="type">SoupRequest</span></a> *request</code></em>,
+                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/gio/unstable/GCancellable.html"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
 <p>
 Synchronously requests the URI pointed to by <em class="parameter"><code>request</code></em>, and returns
-a <span class="type">GInputStream</span> that can be used to read its contents.
+a <a href="http://library.gnome.org/devel/gio/unstable/GInputStream.html"><span class="type">GInputStream</span></a> that can be used to read its contents.
 </p>
 <div class="variablelist"><table border="0">
 <col align="left" valign="top">
@@ -127,7 +127,7 @@ a <span class="type">GInputStream</span> that can be used to read its contents.
 </tr>
 <tr>
 <td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
-<td>a <span class="type">GCancellable</span> or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
+<td>a <a href="http://library.gnome.org/devel/gio/unstable/GCancellable.html"><span class="type">GCancellable</span></a> or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
 </td>
 </tr>
 <tr>
@@ -137,7 +137,7 @@ a <span class="type">GInputStream</span> that can be used to read its contents.
 </tr>
 <tr>
 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>a <span class="type">GInputStream</span> that can be used to
+<td>a <a href="http://library.gnome.org/devel/gio/unstable/GInputStream.html"><span class="type">GInputStream</span></a> that can be used to
 read from the URI pointed to by <em class="parameter"><code>request</code></em>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
 </td>
 </tr>
@@ -149,8 +149,8 @@ read from the URI pointed to by <em class="parameter"><code>request</code></em>.
 <div class="refsect2">
 <a name="soup-request-send-async"></a><h3>soup_request_send_async ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>                soup_request_send_async             (<em class="parameter"><code><a class="link" href="SoupRequest.html" title="SoupRequest"><span class="type">SoupRequest</span></a> *request</code></em>,
-                                                         <em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
-                                                         <em class="parameter"><code><span class="type">GAsyncReadyCallback</span> callback</code></em>,
+                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/gio/unstable/GCancellable.html"><span class="type">GCancellable</span></a> *cancellable</code></em>,
+                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/gio/unstable/GAsyncResult.html#GAsyncReadyCallback"><span class="type">GAsyncReadyCallback</span></a> callback</code></em>,
                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
 <p>
 Begins an asynchronously request for the URI pointed to by
@@ -166,12 +166,12 @@ Begins an asynchronously request for the URI pointed to by
 </tr>
 <tr>
 <td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
-<td>a <span class="type">GCancellable</span> or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
+<td>a <a href="http://library.gnome.org/devel/gio/unstable/GCancellable.html"><span class="type">GCancellable</span></a> or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
 </td>
 </tr>
 <tr>
 <td><p><span class="term"><em class="parameter"><code>callback</code></em> :</span></p></td>
-<td>a <span class="type">GAsyncReadyCallback</span>
+<td>a <a href="http://library.gnome.org/devel/gio/unstable/GAsyncResult.html#GAsyncReadyCallback"><span class="type">GAsyncReadyCallback</span></a>
 </td>
 </tr>
 <tr>
@@ -186,8 +186,8 @@ Begins an asynchronously request for the URI pointed to by
 <hr>
 <div class="refsect2">
 <a name="soup-request-send-finish"></a><h3>soup_request_send_finish ()</h3>
-<pre class="programlisting"><span class="returnvalue">GInputStream</span> *      soup_request_send_finish            (<em class="parameter"><code><a class="link" href="SoupRequest.html" title="SoupRequest"><span class="type">SoupRequest</span></a> *request</code></em>,
-                                                         <em class="parameter"><code><span class="type">GAsyncResult</span> *result</code></em>,
+<pre class="programlisting"><a href="http://library.gnome.org/devel/gio/unstable/GInputStream.html"><span class="returnvalue">GInputStream</span></a> *      soup_request_send_finish            (<em class="parameter"><code><a class="link" href="SoupRequest.html" title="SoupRequest"><span class="type">SoupRequest</span></a> *request</code></em>,
+                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/gio/unstable/GAsyncResult.html"><span class="type">GAsyncResult</span></a> *result</code></em>,
                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
 <p>
 Gets the result of a <a class="link" href="SoupRequest.html#soup-request-send-async" title="soup_request_send_async ()"><code class="function">soup_request_send_async()</code></a>.
@@ -202,7 +202,7 @@ Gets the result of a <a class="link" href="SoupRequest.html#soup-request-send-as
 </tr>
 <tr>
 <td><p><span class="term"><em class="parameter"><code>result</code></em> :</span></p></td>
-<td>the <span class="type">GAsyncResult</span>
+<td>the <a href="http://library.gnome.org/devel/gio/unstable/GAsyncResult.html"><span class="type">GAsyncResult</span></a>
 </td>
 </tr>
 <tr>
@@ -212,7 +212,7 @@ Gets the result of a <a class="link" href="SoupRequest.html#soup-request-send-as
 </tr>
 <tr>
 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>a <span class="type">GInputStream</span> that can be used to
+<td>a <a href="http://library.gnome.org/devel/gio/unstable/GInputStream.html"><span class="type">GInputStream</span></a> that can be used to
 read from the URI pointed to by <em class="parameter"><code>request</code></em>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
 </td>
 </tr>
index bd72afe..98cddcd 100644 (file)
@@ -59,7 +59,7 @@
 <a name="SoupRequestData.implemented-interfaces"></a><h2>Implemented Interfaces</h2>
 <p>
 SoupRequestData implements
GInitable.</p>
<a href="http://library.gnome.org/devel/gio/unstable/GInitable.html">GInitable</a>.</p>
 </div>
 <div class="refsect1">
 <a name="SoupRequestData.description"></a><h2>Description</h2>
index 891a224..bf5e607 100644 (file)
@@ -45,7 +45,7 @@
 #include &lt;libsoup/soup.h&gt;
 
                     <a class="link" href="SoupRequestFile.html#SoupRequestFile-struct" title="SoupRequestFile">SoupRequestFile</a>;
-<span class="returnvalue">GFile</span> *             <a class="link" href="SoupRequestFile.html#soup-request-file-get-file" title="soup_request_file_get_file ()">soup_request_file_get_file</a>          (<em class="parameter"><code><a class="link" href="SoupRequestFile.html" title="SoupRequestFile"><span class="type">SoupRequestFile</span></a> *file</code></em>);
+<a href="http://library.gnome.org/devel/gio/unstable/GFile.html"><span class="returnvalue">GFile</span></a> *             <a class="link" href="SoupRequestFile.html#soup-request-file-get-file" title="soup_request_file_get_file ()">soup_request_file_get_file</a>          (<em class="parameter"><code><a class="link" href="SoupRequestFile.html" title="SoupRequestFile"><span class="type">SoupRequestFile</span></a> *file</code></em>);
 </pre>
 </div>
 <div class="refsect1">
@@ -60,7 +60,7 @@
 <a name="SoupRequestFile.implemented-interfaces"></a><h2>Implemented Interfaces</h2>
 <p>
 SoupRequestFile implements
GInitable.</p>
<a href="http://library.gnome.org/devel/gio/unstable/GInitable.html">GInitable</a>.</p>
 </div>
 <div class="refsect1">
 <a name="SoupRequestFile.description"></a><h2>Description</h2>
@@ -78,9 +78,9 @@ SoupRequestFile implements
 <hr>
 <div class="refsect2">
 <a name="soup-request-file-get-file"></a><h3>soup_request_file_get_file ()</h3>
-<pre class="programlisting"><span class="returnvalue">GFile</span> *             soup_request_file_get_file          (<em class="parameter"><code><a class="link" href="SoupRequestFile.html" title="SoupRequestFile"><span class="type">SoupRequestFile</span></a> *file</code></em>);</pre>
+<pre class="programlisting"><a href="http://library.gnome.org/devel/gio/unstable/GFile.html"><span class="returnvalue">GFile</span></a> *             soup_request_file_get_file          (<em class="parameter"><code><a class="link" href="SoupRequestFile.html" title="SoupRequestFile"><span class="type">SoupRequestFile</span></a> *file</code></em>);</pre>
 <p>
-Gets a <span class="type">GFile</span> corresponding to <em class="parameter"><code>file</code></em>'s URI
+Gets a <a href="http://library.gnome.org/devel/gio/unstable/GFile.html"><span class="type">GFile</span></a> corresponding to <em class="parameter"><code>file</code></em>'s URI
 </p>
 <div class="variablelist"><table border="0">
 <col align="left" valign="top">
@@ -92,7 +92,7 @@ Gets a <span class="type">GFile</span> corresponding to <em class="parameter"><c
 </tr>
 <tr>
 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>a <span class="type">GFile</span> corresponding to <em class="parameter"><code>file</code></em>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
+<td>a <a href="http://library.gnome.org/devel/gio/unstable/GFile.html"><span class="type">GFile</span></a> corresponding to <em class="parameter"><code>file</code></em>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
 </td>
 </tr>
 </tbody>
index 5458230..907512e 100644 (file)
@@ -60,7 +60,7 @@
 <a name="SoupRequestHTTP.implemented-interfaces"></a><h2>Implemented Interfaces</h2>
 <p>
 SoupRequestHTTP implements
GInitable.</p>
<a href="http://library.gnome.org/devel/gio/unstable/GInitable.html">GInitable</a>.</p>
 </div>
 <div class="refsect1">
 <a name="SoupRequestHTTP.description"></a><h2>Description</h2>
index ac2e96b..c57541b 100644 (file)
@@ -120,7 +120,7 @@ const <span class="returnvalue">char</span> *        <a class="link" href="SoupS
   "<a class="link" href="SoupServer.html#SoupServer--server-header" title='The "server-header" property'>server-header</a>"            <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a>*                : Read / Write / Construct
   "<a class="link" href="SoupServer.html#SoupServer--ssl-cert-file" title='The "ssl-cert-file" property'>ssl-cert-file</a>"            <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a>*                : Read / Write / Construct Only
   "<a class="link" href="SoupServer.html#SoupServer--ssl-key-file" title='The "ssl-key-file" property'>ssl-key-file</a>"             <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a>*                : Read / Write / Construct Only
-  "<a class="link" href="SoupServer.html#SoupServer--tls-certificate" title='The "tls-certificate" property'>tls-certificate</a>"          <span class="type">GTlsCertificate</span>*      : Read / Write / Construct Only
+  "<a class="link" href="SoupServer.html#SoupServer--tls-certificate" title='The "tls-certificate" property'>tls-certificate</a>"          <a href="http://library.gnome.org/devel/gio/unstable/GTlsCertificate.html"><span class="type">GTlsCertificate</span></a>*      : Read / Write / Construct Only
 </pre>
 </div>
 <div class="refsect1">
@@ -990,7 +990,7 @@ server will speak https rather than plain http.
 </p>
 <p>
 Alternatively, you can use <a class="link" href="SoupServer.html#SoupServer--tls-certificate" title='The "tls-certificate" property'><span class="type">"tls-certificate"</span></a>
-to provide an arbitrary <span class="type">GTlsCertificate</span>.
+to provide an arbitrary <a href="http://library.gnome.org/devel/gio/unstable/GTlsCertificate.html"><span class="type">GTlsCertificate</span></a>.
 </p>
 <p>Default value: NULL</p>
 </div>
@@ -1007,16 +1007,16 @@ a single file containing both the certificate and the key.
 </p>
 <p>
 Alternatively, you can use <a class="link" href="SoupServer.html#SoupServer--tls-certificate" title='The "tls-certificate" property'><span class="type">"tls-certificate"</span></a>
-to provide an arbitrary <span class="type">GTlsCertificate</span>.
+to provide an arbitrary <a href="http://library.gnome.org/devel/gio/unstable/GTlsCertificate.html"><span class="type">GTlsCertificate</span></a>.
 </p>
 <p>Default value: NULL</p>
 </div>
 <hr>
 <div class="refsect2">
 <a name="SoupServer--tls-certificate"></a><h3>The <code class="literal">"tls-certificate"</code> property</h3>
-<pre class="programlisting">  "tls-certificate"          <span class="type">GTlsCertificate</span>*      : Read / Write / Construct Only</pre>
+<pre class="programlisting">  "tls-certificate"          <a href="http://library.gnome.org/devel/gio/unstable/GTlsCertificate.html"><span class="type">GTlsCertificate</span></a>*      : Read / Write / Construct Only</pre>
 <p>
-A <span class="type">GTlsCertificate</span> that has a <span class="type">"private-key"</span>
+A <a href="http://library.gnome.org/devel/gio/unstable/GTlsCertificate.html"><span class="type">GTlsCertificate</span></a> that has a <a href="http://library.gnome.org/devel/gio/unstable/GTlsCertificate.html#GTlsCertificate--private-key"><span class="type">"private-key"</span></a>
 set. If this is set, then the server will speak https
 rather than plain http.
 </p>
index 71c1302..5ee2f90 100644 (file)
@@ -64,7 +64,7 @@
                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> status_code</code></em>);
 <span class="returnvalue">void</span>                <a class="link" href="SoupSession.html#soup-session-prefetch-dns" title="soup_session_prefetch_dns ()">soup_session_prefetch_dns</a>           (<em class="parameter"><code><a class="link" href="SoupSession.html" title="SoupSession"><span class="type">SoupSession</span></a> *session</code></em>,
                                                          <em class="parameter"><code>const <span class="type">char</span> *hostname</code></em>,
-                                                         <em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
+                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/gio/unstable/GCancellable.html"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                          <em class="parameter"><code><a class="link" href="SoupAddress.html#SoupAddressCallback" title="SoupAddressCallback ()"><span class="type">SoupAddressCallback</span></a> callback</code></em>,
                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);
 <span class="returnvalue">void</span>                <a class="link" href="SoupSession.html#soup-session-prepare-for-uri" title="soup_session_prepare_for_uri ()">soup_session_prepare_for_uri</a>        (<em class="parameter"><code><a class="link" href="SoupSession.html" title="SoupSession"><span class="type">SoupSession</span></a> *session</code></em>,
   "<a class="link" href="SoupSession.html#SoupSession--ssl-strict" title='The "ssl-strict" property'>ssl-strict</a>"               <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a>              : Read / Write
   "<a class="link" href="SoupSession.html#SoupSession--ssl-use-system-ca-file" title='The "ssl-use-system-ca-file" property'>ssl-use-system-ca-file</a>"   <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a>              : Read / Write
   "<a class="link" href="SoupSession.html#SoupSession--timeout" title='The "timeout" property'>timeout</a>"                  <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a>                 : Read / Write
-  "<a class="link" href="SoupSession.html#SoupSession--tls-database" title='The "tls-database" property'>tls-database</a>"             <span class="type">GTlsDatabase</span>*         : Read / Write
+  "<a class="link" href="SoupSession.html#SoupSession--tls-database" title='The "tls-database" property'>tls-database</a>"             <a href="http://library.gnome.org/devel/gio/unstable/GTlsDatabase.html"><span class="type">GTlsDatabase</span></a>*         : Read / Write
   "<a class="link" href="SoupSession.html#SoupSession--use-ntlm" title='The "use-ntlm" property'>use-ntlm</a>"                 <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a>              : Read / Write
   "<a class="link" href="SoupSession.html#SoupSession--use-thread-context" title='The "use-thread-context" property'>use-thread-context</a>"       <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a>              : Read / Write
   "<a class="link" href="SoupSession.html#SoupSession--user-agent" title='The "user-agent" property'>user-agent</a>"               <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a>*                : Read / Write
@@ -385,7 +385,7 @@ before <a class="link" href="SoupSession.html#soup-session-cancel-message" title
 <a name="soup-session-prefetch-dns"></a><h3>soup_session_prefetch_dns ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>                soup_session_prefetch_dns           (<em class="parameter"><code><a class="link" href="SoupSession.html" title="SoupSession"><span class="type">SoupSession</span></a> *session</code></em>,
                                                          <em class="parameter"><code>const <span class="type">char</span> *hostname</code></em>,
-                                                         <em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
+                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/gio/unstable/GCancellable.html"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                          <em class="parameter"><code><a class="link" href="SoupAddress.html#SoupAddressCallback" title="SoupAddressCallback ()"><span class="type">SoupAddressCallback</span></a> callback</code></em>,
                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
 <p>
@@ -418,7 +418,7 @@ not have a main loop running, then you can't use this method.
 </tr>
 <tr>
 <td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
-<td>a <span class="type">GCancellable</span> object, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
+<td>a <a href="http://library.gnome.org/devel/gio/unstable/GCancellable.html"><span class="type">GCancellable</span></a> object, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
 </td>
 </tr>
 <tr>
@@ -1298,15 +1298,15 @@ https certificate validation is handled.
 <hr>
 <div class="refsect2">
 <a name="SoupSession--tls-database"></a><h3>The <code class="literal">"tls-database"</code> property</h3>
-<pre class="programlisting">  "tls-database"             <span class="type">GTlsDatabase</span>*         : Read / Write</pre>
+<pre class="programlisting">  "tls-database"             <a href="http://library.gnome.org/devel/gio/unstable/GTlsDatabase.html"><span class="type">GTlsDatabase</span></a>*         : Read / Write</pre>
 <p>
-Sets the <span class="type">GTlsDatabase</span> to use for validating SSL/TLS
+Sets the <a href="http://library.gnome.org/devel/gio/unstable/GTlsDatabase.html"><span class="type">GTlsDatabase</span></a> to use for validating SSL/TLS
 certificates.
 </p>
 <p>
 Note that setting the <a class="link" href="SoupSession.html#SoupSession--ssl-ca-file" title='The "ssl-ca-file" property'><span class="type">"ssl-ca-file"</span></a> or
 <a class="link" href="SoupSession.html#SoupSession--ssl-use-system-ca-file" title='The "ssl-use-system-ca-file" property'><span class="type">"ssl-use-system-ca-file"</span></a> property will cause
-this property to be set to a <span class="type">GTlsDatabase</span> corresponding to
+this property to be set to a <a href="http://library.gnome.org/devel/gio/unstable/GTlsDatabase.html"><span class="type">GTlsDatabase</span></a> corresponding to
 the indicated file or system default.
 </p>
 <p>
index f489a06..eab64eb 100644 (file)
                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> status</code></em>,
                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);
 <span class="returnvalue">void</span>                <a class="link" href="SoupSocket.html#soup-socket-connect-async" title="soup_socket_connect_async ()">soup_socket_connect_async</a>           (<em class="parameter"><code><a class="link" href="SoupSocket.html" title="SoupSocket"><span class="type">SoupSocket</span></a> *sock</code></em>,
-                                                         <em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
+                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/gio/unstable/GCancellable.html"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                          <em class="parameter"><code><a class="link" href="SoupSocket.html#SoupSocketCallback" title="SoupSocketCallback ()"><span class="type">SoupSocketCallback</span></a> callback</code></em>,
                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);
 <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>               <a class="link" href="SoupSocket.html#soup-socket-connect-sync" title="soup_socket_connect_sync ()">soup_socket_connect_sync</a>            (<em class="parameter"><code><a class="link" href="SoupSocket.html" title="SoupSocket"><span class="type">SoupSocket</span></a> *sock</code></em>,
-                                                         <em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>);
+                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/gio/unstable/GCancellable.html"><span class="type">GCancellable</span></a> *cancellable</code></em>);
 
 <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="SoupSocket.html#soup-socket-listen" title="soup_socket_listen ()">soup_socket_listen</a>                  (<em class="parameter"><code><a class="link" href="SoupSocket.html" title="SoupSocket"><span class="type">SoupSocket</span></a> *sock</code></em>);
 
 <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="SoupSocket.html#soup-socket-start-ssl" title="soup_socket_start_ssl ()">soup_socket_start_ssl</a>               (<em class="parameter"><code><a class="link" href="SoupSocket.html" title="SoupSocket"><span class="type">SoupSocket</span></a> *sock</code></em>,
-                                                         <em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>);
+                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/gio/unstable/GCancellable.html"><span class="type">GCancellable</span></a> *cancellable</code></em>);
 <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="SoupSocket.html#soup-socket-start-proxy-ssl" title="soup_socket_start_proxy_ssl ()">soup_socket_start_proxy_ssl</a>         (<em class="parameter"><code><a class="link" href="SoupSocket.html" title="SoupSocket"><span class="type">SoupSocket</span></a> *sock</code></em>,
                                                          <em class="parameter"><code>const <span class="type">char</span> *ssl_host</code></em>,
-                                                         <em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>);
+                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/gio/unstable/GCancellable.html"><span class="type">GCancellable</span></a> *cancellable</code></em>);
 <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="SoupSocket.html#soup-socket-is-ssl" title="soup_socket_is_ssl ()">soup_socket_is_ssl</a>                  (<em class="parameter"><code><a class="link" href="SoupSocket.html" title="SoupSocket"><span class="type">SoupSocket</span></a> *sock</code></em>);
 
 <span class="returnvalue">void</span>                <a class="link" href="SoupSocket.html#soup-socket-disconnect" title="soup_socket_disconnect ()">soup_socket_disconnect</a>              (<em class="parameter"><code><a class="link" href="SoupSocket.html" title="SoupSocket"><span class="type">SoupSocket</span></a> *sock</code></em>);
@@ -80,7 +80,7 @@ enum                <a class="link" href="SoupSocket.html#SoupSocketIOStatus" ti
                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> buffer</code></em>,
                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gsize"><span class="type">gsize</span></a> len</code></em>,
                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gsize"><span class="type">gsize</span></a> *nread</code></em>,
-                                                         <em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
+                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/gio/unstable/GCancellable.html"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
 <a class="link" href="SoupSocket.html#SoupSocketIOStatus" title="enum SoupSocketIOStatus"><span class="returnvalue">SoupSocketIOStatus</span></a>  <a class="link" href="SoupSocket.html#soup-socket-read-until" title="soup_socket_read_until ()">soup_socket_read_until</a>              (<em class="parameter"><code><a class="link" href="SoupSocket.html" title="SoupSocket"><span class="type">SoupSocket</span></a> *sock</code></em>,
                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> buffer</code></em>,
@@ -89,13 +89,13 @@ enum                <a class="link" href="SoupSocket.html#SoupSocketIOStatus" ti
                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gsize"><span class="type">gsize</span></a> boundary_len</code></em>,
                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gsize"><span class="type">gsize</span></a> *nread</code></em>,
                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *got_boundary</code></em>,
-                                                         <em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
+                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/gio/unstable/GCancellable.html"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
 <a class="link" href="SoupSocket.html#SoupSocketIOStatus" title="enum SoupSocketIOStatus"><span class="returnvalue">SoupSocketIOStatus</span></a>  <a class="link" href="SoupSocket.html#soup-socket-write" title="soup_socket_write ()">soup_socket_write</a>                   (<em class="parameter"><code><a class="link" href="SoupSocket.html" title="SoupSocket"><span class="type">SoupSocket</span></a> *sock</code></em>,
                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gconstpointer"><span class="type">gconstpointer</span></a> buffer</code></em>,
                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gsize"><span class="type">gsize</span></a> len</code></em>,
                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gsize"><span class="type">gsize</span></a> *nwrote</code></em>,
-                                                         <em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
+                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/gio/unstable/GCancellable.html"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
 
 #define             <a class="link" href="SoupSocket.html#SOUP-SOCKET-LOCAL-ADDRESS:CAPS" title="SOUP_SOCKET_LOCAL_ADDRESS">SOUP_SOCKET_LOCAL_ADDRESS</a>
@@ -133,8 +133,8 @@ enum                <a class="link" href="SoupSocket.html#SoupSocketIOStatus" ti
   "<a class="link" href="SoupSocket.html#SoupSocket--ssl-fallback" title='The "ssl-fallback" property'>ssl-fallback</a>"             <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a>              : Read / Write / Construct Only
   "<a class="link" href="SoupSocket.html#SoupSocket--ssl-strict" title='The "ssl-strict" property'>ssl-strict</a>"               <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a>              : Read / Write / Construct Only
   "<a class="link" href="SoupSocket.html#SoupSocket--timeout" title='The "timeout" property'>timeout</a>"                  <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a>                 : Read / Write
-  "<a class="link" href="SoupSocket.html#SoupSocket--tls-certificate" title='The "tls-certificate" property'>tls-certificate</a>"          <span class="type">GTlsCertificate</span>*      : Read
-  "<a class="link" href="SoupSocket.html#SoupSocket--tls-errors" title='The "tls-errors" property'>tls-errors</a>"               <span class="type">GTlsCertificateFlags</span>  : Read
+  "<a class="link" href="SoupSocket.html#SoupSocket--tls-certificate" title='The "tls-certificate" property'>tls-certificate</a>"          <a href="http://library.gnome.org/devel/gio/unstable/GTlsCertificate.html"><span class="type">GTlsCertificate</span></a>*      : Read
+  "<a class="link" href="SoupSocket.html#SoupSocket--tls-errors" title='The "tls-errors" property'>tls-errors</a>"               <a href="http://library.gnome.org/devel/gio/unstable/gio-TLS-Overview.html#GTlsCertificateFlags"><span class="type">GTlsCertificateFlags</span></a>  : Read
   "<a class="link" href="SoupSocket.html#SoupSocket--trusted-certificate" title='The "trusted-certificate" property'>trusted-certificate</a>"      <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a>              : Read
   "<a class="link" href="SoupSocket.html#SoupSocket--use-proxy" title='The "use-proxy" property'>use-proxy</a>"                <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a>              : Read / Write / Construct Only
   "<a class="link" href="SoupSocket.html#SoupSocket--use-thread-context" title='The "use-thread-context" property'>use-thread-context</a>"       <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a>              : Read / Write / Construct Only
@@ -226,7 +226,7 @@ The callback function passed to <a class="link" href="SoupSocket.html#soup-socke
 <div class="refsect2">
 <a name="soup-socket-connect-async"></a><h3>soup_socket_connect_async ()</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>                soup_socket_connect_async           (<em class="parameter"><code><a class="link" href="SoupSocket.html" title="SoupSocket"><span class="type">SoupSocket</span></a> *sock</code></em>,
-                                                         <em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
+                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/gio/unstable/GCancellable.html"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                          <em class="parameter"><code><a class="link" href="SoupSocket.html#SoupSocketCallback" title="SoupSocketCallback ()"><span class="type">SoupSocketCallback</span></a> callback</code></em>,
                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
 <p>
@@ -248,7 +248,7 @@ status of <a class="link" href="libsoup-2.4-soup-status.html#SOUP-STATUS-CANCELL
 </tr>
 <tr>
 <td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
-<td>a <span class="type">GCancellable</span>, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
+<td>a <a href="http://library.gnome.org/devel/gio/unstable/GCancellable.html"><span class="type">GCancellable</span></a>, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
 </td>
 </tr>
 <tr>
@@ -268,7 +268,7 @@ status of <a class="link" href="libsoup-2.4-soup-status.html#SOUP-STATUS-CANCELL
 <div class="refsect2">
 <a name="soup-socket-connect-sync"></a><h3>soup_socket_connect_sync ()</h3>
 <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>               soup_socket_connect_sync            (<em class="parameter"><code><a class="link" href="SoupSocket.html" title="SoupSocket"><span class="type">SoupSocket</span></a> *sock</code></em>,
-                                                         <em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>);</pre>
+                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/gio/unstable/GCancellable.html"><span class="type">GCancellable</span></a> *cancellable</code></em>);</pre>
 <p>
 Attempt to synchronously connect <em class="parameter"><code>sock</code></em> to its remote address.
 </p>
@@ -286,7 +286,7 @@ connection, in which case <a class="link" href="SoupSocket.html#soup-socket-conn
 </tr>
 <tr>
 <td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
-<td>a <span class="type">GCancellable</span>, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
+<td>a <a href="http://library.gnome.org/devel/gio/unstable/GCancellable.html"><span class="type">GCancellable</span></a>, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
 </td>
 </tr>
 <tr>
@@ -323,7 +323,7 @@ listening)</td>
 <div class="refsect2">
 <a name="soup-socket-start-ssl"></a><h3>soup_socket_start_ssl ()</h3>
 <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            soup_socket_start_ssl               (<em class="parameter"><code><a class="link" href="SoupSocket.html" title="SoupSocket"><span class="type">SoupSocket</span></a> *sock</code></em>,
-                                                         <em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>);</pre>
+                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/gio/unstable/GCancellable.html"><span class="type">GCancellable</span></a> *cancellable</code></em>);</pre>
 <p>
 Starts using SSL on <em class="parameter"><code>socket</code></em>.
 </p>
@@ -336,7 +336,7 @@ Starts using SSL on <em class="parameter"><code>socket</code></em>.
 </tr>
 <tr>
 <td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
-<td>a <span class="type">GCancellable</span>
+<td>a <a href="http://library.gnome.org/devel/gio/unstable/GCancellable.html"><span class="type">GCancellable</span></a>
 </td>
 </tr>
 <tr>
@@ -351,7 +351,7 @@ Starts using SSL on <em class="parameter"><code>socket</code></em>.
 <a name="soup-socket-start-proxy-ssl"></a><h3>soup_socket_start_proxy_ssl ()</h3>
 <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            soup_socket_start_proxy_ssl         (<em class="parameter"><code><a class="link" href="SoupSocket.html" title="SoupSocket"><span class="type">SoupSocket</span></a> *sock</code></em>,
                                                          <em class="parameter"><code>const <span class="type">char</span> *ssl_host</code></em>,
-                                                         <em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>);</pre>
+                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/gio/unstable/GCancellable.html"><span class="type">GCancellable</span></a> *cancellable</code></em>);</pre>
 <p>
 Starts using SSL on <em class="parameter"><code>socket</code></em>, expecting to find a host named
 <em class="parameter"><code>ssl_host</code></em>.
@@ -369,7 +369,7 @@ Starts using SSL on <em class="parameter"><code>socket</code></em>, expecting to
 </tr>
 <tr>
 <td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
-<td>a <span class="type">GCancellable</span>
+<td>a <a href="http://library.gnome.org/devel/gio/unstable/GCancellable.html"><span class="type">GCancellable</span></a>
 </td>
 </tr>
 <tr>
@@ -534,7 +534,7 @@ Return value from the <a class="link" href="SoupSocket.html" title="SoupSocket">
                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> buffer</code></em>,
                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gsize"><span class="type">gsize</span></a> len</code></em>,
                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gsize"><span class="type">gsize</span></a> *nread</code></em>,
-                                                         <em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
+                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/gio/unstable/GCancellable.html"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
 <p>
 Attempts to read up to <em class="parameter"><code>len</code></em> bytes from <em class="parameter"><code>sock</code></em> into <em class="parameter"><code>buffer</code></em>. If some
@@ -573,7 +573,7 @@ emitted once. See the documentation for <a class="link" href="SoupSocket.html#So
 </tr>
 <tr>
 <td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
-<td>a <span class="type">GCancellable</span>, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
+<td>a <a href="http://library.gnome.org/devel/gio/unstable/GCancellable.html"><span class="type">GCancellable</span></a>, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
 </td>
 </tr>
 <tr>
@@ -600,7 +600,7 @@ also be set).</td>
                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gsize"><span class="type">gsize</span></a> boundary_len</code></em>,
                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gsize"><span class="type">gsize</span></a> *nread</code></em>,
                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *got_boundary</code></em>,
-                                                         <em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
+                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/gio/unstable/GCancellable.html"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
 <p>
 Like <a class="link" href="SoupSocket.html#soup-socket-read" title="soup_socket_read ()"><code class="function">soup_socket_read()</code></a>, but reads no further than the first
@@ -652,7 +652,7 @@ ends with the boundary string</td>
 </tr>
 <tr>
 <td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
-<td>a <span class="type">GCancellable</span>, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
+<td>a <a href="http://library.gnome.org/devel/gio/unstable/GCancellable.html"><span class="type">GCancellable</span></a>, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
 </td>
 </tr>
 <tr>
@@ -674,7 +674,7 @@ ends with the boundary string</td>
                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gconstpointer"><span class="type">gconstpointer</span></a> buffer</code></em>,
                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gsize"><span class="type">gsize</span></a> len</code></em>,
                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gsize"><span class="type">gsize</span></a> *nwrote</code></em>,
-                                                         <em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
+                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/gio/unstable/GCancellable.html"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
 <p>
 Attempts to write <em class="parameter"><code>len</code></em> bytes from <em class="parameter"><code>buffer</code></em> to <em class="parameter"><code>sock</code></em>. If some data is
@@ -713,7 +713,7 @@ and it is only emitted once. See the documentation for
 </tr>
 <tr>
 <td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
-<td>a <span class="type">GCancellable</span>, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
+<td>a <a href="http://library.gnome.org/devel/gio/unstable/GCancellable.html"><span class="type">GCancellable</span></a>, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
 </td>
 </tr>
 <tr>
@@ -958,13 +958,13 @@ code that handles that case just won't get used for them.
 <hr>
 <div class="refsect2">
 <a name="SoupSocket--tls-certificate"></a><h3>The <code class="literal">"tls-certificate"</code> property</h3>
-<pre class="programlisting">  "tls-certificate"          <span class="type">GTlsCertificate</span>*      : Read</pre>
+<pre class="programlisting">  "tls-certificate"          <a href="http://library.gnome.org/devel/gio/unstable/GTlsCertificate.html"><span class="type">GTlsCertificate</span></a>*      : Read</pre>
 <p>The peer's TLS certificate.</p>
 </div>
 <hr>
 <div class="refsect2">
 <a name="SoupSocket--tls-errors"></a><h3>The <code class="literal">"tls-errors"</code> property</h3>
-<pre class="programlisting">  "tls-errors"               <span class="type">GTlsCertificateFlags</span>  : Read</pre>
+<pre class="programlisting">  "tls-errors"               <a href="http://library.gnome.org/devel/gio/unstable/gio-TLS-Overview.html#GTlsCertificateFlags"><span class="type">GTlsCertificateFlags</span></a>  : Read</pre>
 <p>Errors with the peer's TLS certificate.</p>
 </div>
 <hr>
@@ -1020,12 +1020,12 @@ reason.
 <div class="refsect2">
 <a name="SoupSocket-event"></a><h3>The <code class="literal">"event"</code> signal</h3>
 <pre class="programlisting"><span class="returnvalue">void</span>                user_function                      (<a class="link" href="SoupSocket.html" title="SoupSocket"><span class="type">SoupSocket</span></a>        *sock,
-                                                        <span class="type">GSocketClientEvent</span> event,
-                                                        <span class="type">GIOStream</span>         *connection,
+                                                        <a href="http://library.gnome.org/devel/gio/unstable/GSocketClient.html#GSocketClientEvent"><span class="type">GSocketClientEvent</span></a> event,
+                                                        <a href="http://library.gnome.org/devel/gio/unstable/GIOStream.html"><span class="type">GIOStream</span></a>         *connection,
                                                         <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>           user_data)       : <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS"><code class="literal">Run Last</code></a></pre>
 <p>
 Emitted when a network-related event occurs. See
-<span class="type">"event"</span> for more details.
+<a href="http://library.gnome.org/devel/gio/unstable/GSocketClient.html#GSocketClient-event"><span class="type">"event"</span></a> for more details.
 </p>
 <div class="variablelist"><table border="0">
 <col align="left" valign="top">
index c090a1a..a108355 100644 (file)
@@ -6,19 +6,19 @@
 <meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="index.html" title="libsoup Reference Manual">
 <link rel="up" href="ch02.html" title="Core API">
-<link rel="prev" href="libsoup-2.4-soup-status.html" title="soup-status">
-<link rel="next" href="libsoup-2.4-Soup-Miscellaneous-Utilities.html" title="Soup Miscellaneous Utilities">
+<link rel="prev" href="libsoup-2.4-Top-Level-Domain-utils.html" title="Top Level Domain utils">
+<link rel="next" href="ch03.html" title="Additional Features">
 <meta name="generator" content="GTK-Doc V1.18 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
 <table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
 <tr valign="middle">
-<td><a accesskey="p" href="libsoup-2.4-soup-status.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
+<td><a accesskey="p" href="libsoup-2.4-Top-Level-Domain-utils.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
 <td><a accesskey="u" href="ch02.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
 <th width="100%" align="center">libsoup Reference Manual</th>
-<td><a accesskey="n" href="libsoup-2.4-Soup-Miscellaneous-Utilities.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
+<td><a accesskey="n" href="ch03.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
 </tr>
 <tr><td colspan="5" class="shortcuts">
 <a href="#SoupURI.synopsis" class="shortcut">Top</a>
index 7ab0c70..65e3589 100644 (file)
@@ -21,7 +21,7 @@
 </tr></table>
 <div class="chapter">
 <div class="titlepage"><div><div><h2 class="title">
-<a name="id388250"></a>Tutorial</h2></div></div></div>
+<a name="id528469"></a>Tutorial</h2></div></div></div>
 <div class="toc"><dl>
 <dt>
 <span class="refentrytitle"><a href="libsoup-build-howto.html">Compiling with libsoup</a></span><span class="refpurpose"> — Notes on compiling</span>
index 55a473b..e0086fc 100644 (file)
@@ -21,7 +21,7 @@
 </tr></table>
 <div class="chapter">
 <div class="titlepage"><div><div><h2 class="title">
-<a name="id388267"></a>Core API</h2></div></div></div>
+<a name="id528487"></a>Core API</h2></div></div></div>
 <div class="toc"><dl>
 <dt>
 <span class="refentrytitle"><a href="SoupAuth.html">SoupAuth</a></span><span class="refpurpose"> — HTTP client-side authentication support</span>
@@ -51,6 +51,9 @@
 <span class="refentrytitle"><a href="libsoup-2.4-soup-method.html">soup-method</a></span><span class="refpurpose"> — HTTP method definitions</span>
 </dt>
 <dt>
+<span class="refentrytitle"><a href="libsoup-2.4-Soup-Miscellaneous-Utilities.html">Soup Miscellaneous Utilities</a></span><span class="refpurpose"> — Miscellaneous functions</span>
+</dt>
+<dt>
 <span class="refentrytitle"><a href="SoupMultipart.html">SoupMultipart</a></span><span class="refpurpose"> — multipart HTTP message bodies</span>
 </dt>
 <dt>
@@ -70,10 +73,10 @@ programs.</span>
 <span class="refentrytitle"><a href="libsoup-2.4-soup-status.html">soup-status</a></span><span class="refpurpose"> — HTTP (and libsoup) status codes</span>
 </dt>
 <dt>
-<span class="refentrytitle"><a href="SoupURI.html">SoupURI</a></span><span class="refpurpose"> — URIs</span>
+<span class="refentrytitle"><a href="libsoup-2.4-Top-Level-Domain-utils.html">Top Level Domain utils</a></span><span class="refpurpose"></span>
 </dt>
 <dt>
-<span class="refentrytitle"><a href="libsoup-2.4-Soup-Miscellaneous-Utilities.html">Soup Miscellaneous Utilities</a></span><span class="refpurpose"> — Miscellaneous functions</span>
+<span class="refentrytitle"><a href="SoupURI.html">SoupURI</a></span><span class="refpurpose"> — URIs</span>
 </dt>
 </dl></div>
 </div>
index 2e89aa8..c424a08 100644 (file)
@@ -6,14 +6,14 @@
 <meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="index.html" title="libsoup Reference Manual">
 <link rel="up" href="index.html" title="libsoup Reference Manual">
-<link rel="prev" href="libsoup-2.4-Soup-Miscellaneous-Utilities.html" title="Soup Miscellaneous Utilities">
+<link rel="prev" href="SoupURI.html" title="SoupURI">
 <link rel="next" href="SoupSessionFeature.html" title="SoupSessionFeature">
 <meta name="generator" content="GTK-Doc V1.18 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
 <table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="libsoup-2.4-Soup-Miscellaneous-Utilities.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
+<td><a accesskey="p" href="SoupURI.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
 <td> </td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
 <th width="100%" align="center">libsoup Reference Manual</th>
@@ -21,7 +21,7 @@
 </tr></table>
 <div class="chapter">
 <div class="titlepage"><div><div><h2 class="title">
-<a name="id418031"></a>Additional Features</h2></div></div></div>
+<a name="id558255"></a>Additional Features</h2></div></div></div>
 <div class="toc"><dl>
 <dt>
 <span class="refentrytitle"><a href="SoupSessionFeature.html">SoupSessionFeature</a></span><span class="refpurpose"> — Interface for miscellaneous session features</span>
index ebe2cc0..cc6431a 100644 (file)
@@ -21,7 +21,7 @@
 </tr></table>
 <div class="chapter">
 <div class="titlepage"><div><div><h2 class="title">
-<a name="id418074"></a>Web Services APIs</h2></div></div></div>
+<a name="id558298"></a>Web Services APIs</h2></div></div></div>
 <div class="toc"><dl>
 <dt>
 <span class="refentrytitle"><a href="libsoup-2.4-HTML-Form-Support.html">HTML Form Support</a></span><span class="refpurpose"> — HTML form handling</span>
index aa8c988..d3c75d5 100644 (file)
@@ -21,7 +21,7 @@
 </tr></table>
 <div class="chapter">
 <div class="titlepage"><div><div><h2 class="title">
-<a name="id418094"></a>GNOME integration</h2></div></div></div>
+<a name="id558318"></a>GNOME integration</h2></div></div></div>
 <div class="toc"><dl>
 <dt>
 <span class="refentrytitle"><a href="libsoup-2.4-soup-gnome-features.html">soup-gnome-features</a></span><span class="refpurpose"></span>
index e6b19e5..d91fcc2 100644 (file)
@@ -21,7 +21,7 @@
 </tr></table>
 <div class="chapter">
 <div class="titlepage"><div><div><h2 class="title">
-<a name="id418110"></a>Low-level Networking API</h2></div></div></div>
+<a name="id558334"></a>Low-level Networking API</h2></div></div></div>
 <div class="toc"><dl>
 <dt>
 <span class="refentrytitle"><a href="SoupAddress.html">SoupAddress</a></span><span class="refpurpose"> — DNS support</span>
index fda08fa..f3e0842 100644 (file)
@@ -21,7 +21,7 @@
 </tr></table>
 <div class="chapter">
 <div class="titlepage"><div><div><h2 class="title">
-<a name="id387432"></a>Experimental streaming API</h2></div></div></div>
+<a name="id527656"></a>Experimental streaming API</h2></div></div></div>
 <div class="toc"><dl>
 <dt>
 <span class="refentrytitle"><a href="SoupRequester.html">SoupRequester</a></span><span class="refpurpose"></span>
index 4498c96..b902e98 100644 (file)
@@ -58,6 +58,9 @@
 <span class="refentrytitle"><a href="libsoup-2.4-soup-method.html">soup-method</a></span><span class="refpurpose"> — HTTP method definitions</span>
 </dt>
 <dt>
+<span class="refentrytitle"><a href="libsoup-2.4-Soup-Miscellaneous-Utilities.html">Soup Miscellaneous Utilities</a></span><span class="refpurpose"> — Miscellaneous functions</span>
+</dt>
+<dt>
 <span class="refentrytitle"><a href="SoupMultipart.html">SoupMultipart</a></span><span class="refpurpose"> — multipart HTTP message bodies</span>
 </dt>
 <dt>
@@ -77,10 +80,10 @@ programs.</span>
 <span class="refentrytitle"><a href="libsoup-2.4-soup-status.html">soup-status</a></span><span class="refpurpose"> — HTTP (and libsoup) status codes</span>
 </dt>
 <dt>
-<span class="refentrytitle"><a href="SoupURI.html">SoupURI</a></span><span class="refpurpose"> — URIs</span>
+<span class="refentrytitle"><a href="libsoup-2.4-Top-Level-Domain-utils.html">Top Level Domain utils</a></span><span class="refpurpose"></span>
 </dt>
 <dt>
-<span class="refentrytitle"><a href="libsoup-2.4-Soup-Miscellaneous-Utilities.html">Soup Miscellaneous Utilities</a></span><span class="refpurpose"> — Miscellaneous functions</span>
+<span class="refentrytitle"><a href="SoupURI.html">SoupURI</a></span><span class="refpurpose"> — URIs</span>
 </dt>
 </dl></dd>
 <dt><span class="chapter"><a href="ch03.html">Additional Features</a></span></dt>
index 9b16ddc..d11ab78 100644 (file)
 <ANCHOR id="SOUP-METHOD-MOVE:CAPS" href="libsoup-2.4/libsoup-2.4-soup-method.html#SOUP-METHOD-MOVE:CAPS">
 <ANCHOR id="SOUP-METHOD-LOCK:CAPS" href="libsoup-2.4/libsoup-2.4-soup-method.html#SOUP-METHOD-LOCK:CAPS">
 <ANCHOR id="SOUP-METHOD-UNLOCK:CAPS" href="libsoup-2.4/libsoup-2.4-soup-method.html#SOUP-METHOD-UNLOCK:CAPS">
+<ANCHOR id="libsoup-2.4-Soup-Miscellaneous-Utilities" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html">
+<ANCHOR id="libsoup-2.4-Soup-Miscellaneous-Utilities.synopsis" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#libsoup-2.4-Soup-Miscellaneous-Utilities.synopsis">
+<ANCHOR id="SoupDate" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#SoupDate">
+<ANCHOR id="libsoup-2.4-Soup-Miscellaneous-Utilities.object-hierarchy" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#libsoup-2.4-Soup-Miscellaneous-Utilities.object-hierarchy">
+<ANCHOR id="libsoup-2.4-Soup-Miscellaneous-Utilities.description" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#libsoup-2.4-Soup-Miscellaneous-Utilities.description">
+<ANCHOR id="libsoup-2.4-Soup-Miscellaneous-Utilities.details" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#libsoup-2.4-Soup-Miscellaneous-Utilities.details">
+<ANCHOR id="SoupDate-struct" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#SoupDate-struct">
+<ANCHOR id="SoupDateFormat" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#SoupDateFormat">
+<ANCHOR id="SOUP-DATE-HTTP:CAPS" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#SOUP-DATE-HTTP:CAPS">
+<ANCHOR id="SOUP-DATE-COOKIE:CAPS" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#SOUP-DATE-COOKIE:CAPS">
+<ANCHOR id="SOUP-DATE-RFC2822:CAPS" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#SOUP-DATE-RFC2822:CAPS">
+<ANCHOR id="SOUP-DATE-ISO8601-COMPACT:CAPS" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#SOUP-DATE-ISO8601-COMPACT:CAPS">
+<ANCHOR id="SOUP-DATE-ISO8601-FULL:CAPS" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#SOUP-DATE-ISO8601-FULL:CAPS">
+<ANCHOR id="SOUP-DATE-ISO8601:CAPS" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#SOUP-DATE-ISO8601:CAPS">
+<ANCHOR id="SOUP-DATE-ISO8601-XMLRPC:CAPS" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#SOUP-DATE-ISO8601-XMLRPC:CAPS">
+<ANCHOR id="soup-date-new" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-new">
+<ANCHOR id="soup-date-new-from-string" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-new-from-string">
+<ANCHOR id="soup-date-new-from-time-t" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-new-from-time-t">
+<ANCHOR id="soup-date-new-from-now" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-new-from-now">
+<ANCHOR id="soup-date-to-string" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-to-string">
+<ANCHOR id="soup-date-to-time-t" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-to-time-t">
+<ANCHOR id="soup-date-to-timeval" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-to-timeval">
+<ANCHOR id="soup-date-is-past" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-is-past">
+<ANCHOR id="soup-date-get-day" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-get-day">
+<ANCHOR id="soup-date-get-hour" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-get-hour">
+<ANCHOR id="soup-date-get-minute" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-get-minute">
+<ANCHOR id="soup-date-get-month" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-get-month">
+<ANCHOR id="soup-date-get-offset" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-get-offset">
+<ANCHOR id="soup-date-get-second" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-get-second">
+<ANCHOR id="soup-date-get-utc" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-get-utc">
+<ANCHOR id="soup-date-get-year" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-get-year">
+<ANCHOR id="soup-date-free" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-free">
+<ANCHOR id="soup-headers-parse-request" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-headers-parse-request">
+<ANCHOR id="soup-headers-parse-response" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-headers-parse-response">
+<ANCHOR id="soup-headers-parse-status-line" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-headers-parse-status-line">
+<ANCHOR id="soup-headers-parse" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-headers-parse">
+<ANCHOR id="soup-header-parse-list" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-header-parse-list">
+<ANCHOR id="soup-header-parse-quality-list" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-header-parse-quality-list">
+<ANCHOR id="soup-header-free-list" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-header-free-list">
+<ANCHOR id="soup-header-contains" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-header-contains">
+<ANCHOR id="soup-header-parse-param-list" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-header-parse-param-list">
+<ANCHOR id="soup-header-parse-semi-param-list" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-header-parse-semi-param-list">
+<ANCHOR id="soup-header-free-param-list" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-header-free-param-list">
+<ANCHOR id="soup-header-g-string-append-param" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-header-g-string-append-param">
+<ANCHOR id="soup-header-g-string-append-param-quoted" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-header-g-string-append-param-quoted">
+<ANCHOR id="soup-str-case-equal" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-str-case-equal">
+<ANCHOR id="soup-str-case-hash" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-str-case-hash">
+<ANCHOR id="soup-add-completion" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-add-completion">
+<ANCHOR id="soup-add-idle" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-add-idle">
+<ANCHOR id="soup-add-io-watch" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-add-io-watch">
+<ANCHOR id="soup-add-timeout" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-add-timeout">
+<ANCHOR id="soup-ssl-supported" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-ssl-supported">
 <ANCHOR id="SoupMultipart" href="libsoup-2.4/SoupMultipart.html">
 <ANCHOR id="SoupMultipart.synopsis" href="libsoup-2.4/SoupMultipart.html#SoupMultipart.synopsis">
 <ANCHOR id="SoupMultipart.object-hierarchy" href="libsoup-2.4/SoupMultipart.html#SoupMultipart.object-hierarchy">
 <ANCHOR id="soup-status-get-phrase" href="libsoup-2.4/libsoup-2.4-soup-status.html#soup-status-get-phrase">
 <ANCHOR id="soup-status-proxify" href="libsoup-2.4/libsoup-2.4-soup-status.html#soup-status-proxify">
 <ANCHOR id="SOUP-HTTP-ERROR:CAPS" href="libsoup-2.4/libsoup-2.4-soup-status.html#SOUP-HTTP-ERROR:CAPS">
+<ANCHOR id="libsoup-2.4-Top-Level-Domain-utils" href="libsoup-2.4/libsoup-2.4-Top-Level-Domain-utils.html">
+<ANCHOR id="libsoup-2.4-Top-Level-Domain-utils.synopsis" href="libsoup-2.4/libsoup-2.4-Top-Level-Domain-utils.html#libsoup-2.4-Top-Level-Domain-utils.synopsis">
+<ANCHOR id="libsoup-2.4-Top-Level-Domain-utils.description" href="libsoup-2.4/libsoup-2.4-Top-Level-Domain-utils.html#libsoup-2.4-Top-Level-Domain-utils.description">
+<ANCHOR id="libsoup-2.4-Top-Level-Domain-utils.details" href="libsoup-2.4/libsoup-2.4-Top-Level-Domain-utils.html#libsoup-2.4-Top-Level-Domain-utils.details">
+<ANCHOR id="soup-tld-get-base-domain" href="libsoup-2.4/libsoup-2.4-Top-Level-Domain-utils.html#soup-tld-get-base-domain">
+<ANCHOR id="soup-tld-domain-is-public-suffix" href="libsoup-2.4/libsoup-2.4-Top-Level-Domain-utils.html#soup-tld-domain-is-public-suffix">
+<ANCHOR id="SOUP-TLD-ERROR:CAPS" href="libsoup-2.4/libsoup-2.4-Top-Level-Domain-utils.html#SOUP-TLD-ERROR:CAPS">
+<ANCHOR id="SoupTLDError" href="libsoup-2.4/libsoup-2.4-Top-Level-Domain-utils.html#SoupTLDError">
 <ANCHOR id="SoupURI" href="libsoup-2.4/SoupURI.html">
 <ANCHOR id="SoupURI.synopsis" href="libsoup-2.4/SoupURI.html#SoupURI.synopsis">
 <ANCHOR id="SoupURI.object-hierarchy" href="libsoup-2.4/SoupURI.html#SoupURI.object-hierarchy">
 <ANCHOR id="soup-uri-get-query" href="libsoup-2.4/SoupURI.html#soup-uri-get-query">
 <ANCHOR id="soup-uri-set-fragment" href="libsoup-2.4/SoupURI.html#soup-uri-set-fragment">
 <ANCHOR id="soup-uri-get-fragment" href="libsoup-2.4/SoupURI.html#soup-uri-get-fragment">
-<ANCHOR id="libsoup-2.4-Soup-Miscellaneous-Utilities" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html">
-<ANCHOR id="libsoup-2.4-Soup-Miscellaneous-Utilities.synopsis" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#libsoup-2.4-Soup-Miscellaneous-Utilities.synopsis">
-<ANCHOR id="SoupDate" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#SoupDate">
-<ANCHOR id="libsoup-2.4-Soup-Miscellaneous-Utilities.object-hierarchy" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#libsoup-2.4-Soup-Miscellaneous-Utilities.object-hierarchy">
-<ANCHOR id="libsoup-2.4-Soup-Miscellaneous-Utilities.description" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#libsoup-2.4-Soup-Miscellaneous-Utilities.description">
-<ANCHOR id="libsoup-2.4-Soup-Miscellaneous-Utilities.details" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#libsoup-2.4-Soup-Miscellaneous-Utilities.details">
-<ANCHOR id="SoupDate-struct" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#SoupDate-struct">
-<ANCHOR id="SoupDateFormat" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#SoupDateFormat">
-<ANCHOR id="SOUP-DATE-HTTP:CAPS" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#SOUP-DATE-HTTP:CAPS">
-<ANCHOR id="SOUP-DATE-COOKIE:CAPS" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#SOUP-DATE-COOKIE:CAPS">
-<ANCHOR id="SOUP-DATE-RFC2822:CAPS" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#SOUP-DATE-RFC2822:CAPS">
-<ANCHOR id="SOUP-DATE-ISO8601-COMPACT:CAPS" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#SOUP-DATE-ISO8601-COMPACT:CAPS">
-<ANCHOR id="SOUP-DATE-ISO8601-FULL:CAPS" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#SOUP-DATE-ISO8601-FULL:CAPS">
-<ANCHOR id="SOUP-DATE-ISO8601:CAPS" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#SOUP-DATE-ISO8601:CAPS">
-<ANCHOR id="SOUP-DATE-ISO8601-XMLRPC:CAPS" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#SOUP-DATE-ISO8601-XMLRPC:CAPS">
-<ANCHOR id="soup-date-new" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-new">
-<ANCHOR id="soup-date-new-from-string" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-new-from-string">
-<ANCHOR id="soup-date-new-from-time-t" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-new-from-time-t">
-<ANCHOR id="soup-date-new-from-now" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-new-from-now">
-<ANCHOR id="soup-date-to-string" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-to-string">
-<ANCHOR id="soup-date-to-time-t" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-to-time-t">
-<ANCHOR id="soup-date-to-timeval" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-to-timeval">
-<ANCHOR id="soup-date-is-past" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-is-past">
-<ANCHOR id="soup-date-get-day" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-get-day">
-<ANCHOR id="soup-date-get-hour" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-get-hour">
-<ANCHOR id="soup-date-get-minute" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-get-minute">
-<ANCHOR id="soup-date-get-month" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-get-month">
-<ANCHOR id="soup-date-get-offset" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-get-offset">
-<ANCHOR id="soup-date-get-second" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-get-second">
-<ANCHOR id="soup-date-get-utc" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-get-utc">
-<ANCHOR id="soup-date-get-year" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-get-year">
-<ANCHOR id="soup-date-free" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-free">
-<ANCHOR id="soup-headers-parse-request" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-headers-parse-request">
-<ANCHOR id="soup-headers-parse-response" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-headers-parse-response">
-<ANCHOR id="soup-headers-parse-status-line" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-headers-parse-status-line">
-<ANCHOR id="soup-headers-parse" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-headers-parse">
-<ANCHOR id="soup-header-parse-list" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-header-parse-list">
-<ANCHOR id="soup-header-parse-quality-list" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-header-parse-quality-list">
-<ANCHOR id="soup-header-free-list" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-header-free-list">
-<ANCHOR id="soup-header-contains" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-header-contains">
-<ANCHOR id="soup-header-parse-param-list" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-header-parse-param-list">
-<ANCHOR id="soup-header-parse-semi-param-list" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-header-parse-semi-param-list">
-<ANCHOR id="soup-header-free-param-list" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-header-free-param-list">
-<ANCHOR id="soup-header-g-string-append-param" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-header-g-string-append-param">
-<ANCHOR id="soup-header-g-string-append-param-quoted" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-header-g-string-append-param-quoted">
-<ANCHOR id="soup-str-case-equal" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-str-case-equal">
-<ANCHOR id="soup-str-case-hash" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-str-case-hash">
-<ANCHOR id="soup-add-completion" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-add-completion">
-<ANCHOR id="soup-add-idle" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-add-idle">
-<ANCHOR id="soup-add-io-watch" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-add-io-watch">
-<ANCHOR id="soup-add-timeout" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-add-timeout">
-<ANCHOR id="soup-ssl-supported" href="libsoup-2.4/libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-ssl-supported">
 <ANCHOR id="SoupSessionFeature" href="libsoup-2.4/SoupSessionFeature.html">
 <ANCHOR id="SoupSessionFeature.synopsis" href="libsoup-2.4/SoupSessionFeature.html#SoupSessionFeature.synopsis">
 <ANCHOR id="SoupSessionFeature.object-hierarchy" href="libsoup-2.4/SoupSessionFeature.html#SoupSessionFeature.object-hierarchy">
 <ANCHOR id="SoupCookieJar-struct" href="libsoup-2.4/SoupCookieJar.html#SoupCookieJar-struct">
 <ANCHOR id="soup-cookie-jar-new" href="libsoup-2.4/SoupCookieJar.html#soup-cookie-jar-new">
 <ANCHOR id="soup-cookie-jar-get-cookies" href="libsoup-2.4/SoupCookieJar.html#soup-cookie-jar-get-cookies">
+<ANCHOR id="soup-cookie-jar-get-cookie-list" href="libsoup-2.4/SoupCookieJar.html#soup-cookie-jar-get-cookie-list">
 <ANCHOR id="soup-cookie-jar-set-cookie" href="libsoup-2.4/SoupCookieJar.html#soup-cookie-jar-set-cookie">
 <ANCHOR id="soup-cookie-jar-set-cookie-with-first-party" href="libsoup-2.4/SoupCookieJar.html#soup-cookie-jar-set-cookie-with-first-party">
 <ANCHOR id="soup-cookie-jar-add-cookie" href="libsoup-2.4/SoupCookieJar.html#soup-cookie-jar-add-cookie">
+<ANCHOR id="soup-cookie-jar-add-cookie-with-first-party" href="libsoup-2.4/SoupCookieJar.html#soup-cookie-jar-add-cookie-with-first-party">
 <ANCHOR id="soup-cookie-jar-delete-cookie" href="libsoup-2.4/SoupCookieJar.html#soup-cookie-jar-delete-cookie">
 <ANCHOR id="soup-cookie-jar-all-cookies" href="libsoup-2.4/SoupCookieJar.html#soup-cookie-jar-all-cookies">
 <ANCHOR id="SoupCookieJarAcceptPolicy" href="libsoup-2.4/SoupCookieJar.html#SoupCookieJarAcceptPolicy">
index 2cba315..face9d7 100644 (file)
@@ -21,7 +21,7 @@
 </tr></table>
 <div class="index">
 <div class="titlepage"><div><div><h2 class="title">
-<a name="id387465"></a>Index</h2></div></div></div>
+<a name="id527689"></a>Index</h2></div></div></div>
 <div class="index"><div class="indexdiv">
 <h3>S</h3>
 <dl>
 </dt>
 <dt>SoupSocketIOStatus, <a class="indexterm" href="SoupSocket.html#SoupSocketIOStatus">enum SoupSocketIOStatus</a>
 </dt>
+<dt>SoupTLDError, <a class="indexterm" href="libsoup-2.4-Top-Level-Domain-utils.html#SoupTLDError">enum SoupTLDError</a>
+</dt>
 <dt>SoupURI, <a class="indexterm" href="SoupURI.html#SoupURI-struct">SoupURI</a>
 </dt>
 <dt>SoupXMLRPCFault, <a class="indexterm" href="libsoup-2.4-XMLRPC-Support.html#SoupXMLRPCFault">enum SoupXMLRPCFault</a>
 </dt>
 <dt>soup_cookie_jar_add_cookie, <a class="indexterm" href="SoupCookieJar.html#soup-cookie-jar-add-cookie">soup_cookie_jar_add_cookie ()</a>
 </dt>
+<dt>soup_cookie_jar_add_cookie_with_first_party, <a class="indexterm" href="SoupCookieJar.html#soup-cookie-jar-add-cookie-with-first-party">soup_cookie_jar_add_cookie_with_first_party ()</a>
+</dt>
 <dt>soup_cookie_jar_all_cookies, <a class="indexterm" href="SoupCookieJar.html#soup-cookie-jar-all-cookies">soup_cookie_jar_all_cookies ()</a>
 </dt>
 <dt>soup_cookie_jar_delete_cookie, <a class="indexterm" href="SoupCookieJar.html#soup-cookie-jar-delete-cookie">soup_cookie_jar_delete_cookie ()</a>
 </dt>
 <dt>soup_cookie_jar_get_cookies, <a class="indexterm" href="SoupCookieJar.html#soup-cookie-jar-get-cookies">soup_cookie_jar_get_cookies ()</a>
 </dt>
+<dt>soup_cookie_jar_get_cookie_list, <a class="indexterm" href="SoupCookieJar.html#soup-cookie-jar-get-cookie-list">soup_cookie_jar_get_cookie_list ()</a>
+</dt>
 <dt>soup_cookie_jar_is_persistent, <a class="indexterm" href="SoupCookieJar.html#soup-cookie-jar-is-persistent">soup_cookie_jar_is_persistent ()</a>
 </dt>
 <dt>soup_cookie_jar_new, <a class="indexterm" href="SoupCookieJar.html#soup-cookie-jar-new">soup_cookie_jar_new ()</a>
 </dt>
 <dt>soup_str_case_hash, <a class="indexterm" href="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-str-case-hash">soup_str_case_hash ()</a>
 </dt>
+<dt>soup_tld_domain_is_public_suffix, <a class="indexterm" href="libsoup-2.4-Top-Level-Domain-utils.html#soup-tld-domain-is-public-suffix">soup_tld_domain_is_public_suffix ()</a>
+</dt>
+<dt>SOUP_TLD_ERROR, <a class="indexterm" href="libsoup-2.4-Top-Level-Domain-utils.html#SOUP-TLD-ERROR:CAPS">SOUP_TLD_ERROR</a>
+</dt>
+<dt>soup_tld_get_base_domain, <a class="indexterm" href="libsoup-2.4-Top-Level-Domain-utils.html#soup-tld-get-base-domain">soup_tld_get_base_domain ()</a>
+</dt>
 <dt>SOUP_TYPE_AUTH_BASIC, <a class="indexterm" href="SoupAuth.html#SOUP-TYPE-AUTH-BASIC:CAPS">SOUP_TYPE_AUTH_BASIC</a>
 </dt>
 <dt>SOUP_TYPE_AUTH_DIGEST, <a class="indexterm" href="SoupAuth.html#SOUP-TYPE-AUTH-DIGEST:CAPS">SOUP_TYPE_AUTH_DIGEST</a>
index 756c5fc..d77e1ab 100644 (file)
@@ -6,19 +6,19 @@
 <meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
 <link rel="home" href="index.html" title="libsoup Reference Manual">
 <link rel="up" href="ch02.html" title="Core API">
-<link rel="prev" href="SoupURI.html" title="SoupURI">
-<link rel="next" href="ch03.html" title="Additional Features">
+<link rel="prev" href="libsoup-2.4-soup-method.html" title="soup-method">
+<link rel="next" href="SoupMultipart.html" title="SoupMultipart">
 <meta name="generator" content="GTK-Doc V1.18 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
 <table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
 <tr valign="middle">
-<td><a accesskey="p" href="SoupURI.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
+<td><a accesskey="p" href="libsoup-2.4-soup-method.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
 <td><a accesskey="u" href="ch02.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
 <th width="100%" align="center">libsoup Reference Manual</th>
-<td><a accesskey="n" href="ch03.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
+<td><a accesskey="n" href="SoupMultipart.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
 </tr>
 <tr><td colspan="5" class="shortcuts">
 <a href="#libsoup-2.4-Soup-Miscellaneous-Utilities.synopsis" class="shortcut">Top</a>
diff --git a/docs/reference/html/libsoup-2.4-Top-Level-Domain-utils.html b/docs/reference/html/libsoup-2.4-Top-Level-Domain-utils.html
new file mode 100644 (file)
index 0000000..133db8d
--- /dev/null
@@ -0,0 +1,149 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Top Level Domain utils</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
+<link rel="home" href="index.html" title="libsoup Reference Manual">
+<link rel="up" href="ch02.html" title="Core API">
+<link rel="prev" href="libsoup-2.4-soup-status.html" title="soup-status">
+<link rel="next" href="SoupURI.html" title="SoupURI">
+<meta name="generator" content="GTK-Doc V1.18 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
+<tr valign="middle">
+<td><a accesskey="p" href="libsoup-2.4-soup-status.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
+<td><a accesskey="u" href="ch02.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
+<th width="100%" align="center">libsoup Reference Manual</th>
+<td><a accesskey="n" href="SoupURI.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
+</tr>
+<tr><td colspan="5" class="shortcuts">
+<a href="#libsoup-2.4-Top-Level-Domain-utils.synopsis" class="shortcut">Top</a>
+                   | 
+                  <a href="#libsoup-2.4-Top-Level-Domain-utils.description" class="shortcut">Description</a>
+</td></tr>
+</table>
+<div class="refentry">
+<a name="libsoup-2.4-Top-Level-Domain-utils"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="libsoup-2.4-Top-Level-Domain-utils.top_of_page"></a>Top Level Domain utils</span></h2>
+<p>Top Level Domain utils</p>
+</td>
+<td valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsynopsisdiv">
+<a name="libsoup-2.4-Top-Level-Domain-utils.synopsis"></a><h2>Synopsis</h2>
+<pre class="synopsis">
+#include &lt;libsoup/soup.h&gt;
+
+const <span class="returnvalue">char</span> *        <a class="link" href="libsoup-2.4-Top-Level-Domain-utils.html#soup-tld-get-base-domain" title="soup_tld_get_base_domain ()">soup_tld_get_base_domain</a>            (<em class="parameter"><code>const <span class="type">char</span> *hostname</code></em>,
+                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
+<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="libsoup-2.4-Top-Level-Domain-utils.html#soup-tld-domain-is-public-suffix" title="soup_tld_domain_is_public_suffix ()">soup_tld_domain_is_public_suffix</a>    (<em class="parameter"><code>const <span class="type">char</span> *domain</code></em>);
+
+#define             <a class="link" href="libsoup-2.4-Top-Level-Domain-utils.html#SOUP-TLD-ERROR:CAPS" title="SOUP_TLD_ERROR">SOUP_TLD_ERROR</a>
+enum                <a class="link" href="libsoup-2.4-Top-Level-Domain-utils.html#SoupTLDError" title="enum SoupTLDError">SoupTLDError</a>;
+</pre>
+</div>
+<div class="refsect1">
+<a name="libsoup-2.4-Top-Level-Domain-utils.description"></a><h2>Description</h2>
+<p>
+</p>
+</div>
+<div class="refsect1">
+<a name="libsoup-2.4-Top-Level-Domain-utils.details"></a><h2>Details</h2>
+<div class="refsect2">
+<a name="soup-tld-get-base-domain"></a><h3>soup_tld_get_base_domain ()</h3>
+<pre class="programlisting">const <span class="returnvalue">char</span> *        soup_tld_get_base_domain            (<em class="parameter"><code>const <span class="type">char</span> *hostname</code></em>,
+                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
+<p>
+Finds the base domain for a given <em class="parameter"><code>hostname</code></em>. The base domain is
+composed by the top level domain (such as .org, .com, .co.uk, etc)
+plus the second level domain, for example for myhost.mydomain.com
+it will return mydomain.com.
+</p>
+<p>
+This method only works for valid UTF-8 hostnames in their canonical
+representation form, so you should use <a href="http://library.gnome.org/devel/glib/unstable/glib-Hostname-Utilities.html#g-hostname-to-unicode"><code class="function">g_hostname_to_unicode()</code></a> to
+get the canonical representation if that is not the case.
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>hostname</code></em> :</span></p></td>
+<td>a UTF-8 hostname in its canonical representation form</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
+<td>return location for a <a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore
+errors. See <a class="link" href="libsoup-2.4-Top-Level-Domain-utils.html#SoupTLDError" title="enum SoupTLDError"><span class="type">SoupTLDError</span></a> for the available error codes</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>a pointer to the start of the base domain in <em class="parameter"><code>hostname</code></em>. If
+an error occurs, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> will be returned and <em class="parameter"><code>error</code></em> set.</td>
+</tr>
+</tbody>
+</table></div>
+<p class="since">Since 2.40</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="soup-tld-domain-is-public-suffix"></a><h3>soup_tld_domain_is_public_suffix ()</h3>
+<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            soup_tld_domain_is_public_suffix    (<em class="parameter"><code>const <span class="type">char</span> *domain</code></em>);</pre>
+<p>
+Looks whether the <em class="parameter"><code>domain</code></em> passed as argument is a public domain
+suffix (.org, .com, .co.uk, etc) or not.
+</p>
+<p>
+This method only works for valid UTF-8 domains in their canonical
+representation form, so you should use <a href="http://library.gnome.org/devel/glib/unstable/glib-Hostname-Utilities.html#g-hostname-to-unicode"><code class="function">g_hostname_to_unicode()</code></a> to
+get the canonical representation if that is not the case.
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>domain</code></em> :</span></p></td>
+<td>a UTF-8 domain in its canonical representation form</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if it is a public domain, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</td>
+</tr>
+</tbody>
+</table></div>
+<p class="since">Since 2.40</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="SOUP-TLD-ERROR:CAPS"></a><h3>SOUP_TLD_ERROR</h3>
+<pre class="programlisting">#define SOUP_TLD_ERROR soup_tld_error_quark()
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="SoupTLDError"></a><h3>enum SoupTLDError</h3>
+<pre class="programlisting">typedef enum {
+       SOUP_TLD_ERROR_INVALID_HOSTNAME,
+       SOUP_TLD_ERROR_IS_IP_ADDRESS,
+       SOUP_TLD_ERROR_NOT_ENOUGH_DOMAINS
+} SoupTLDError;
+</pre>
+<p>
+</p>
+</div>
+</div>
+</div>
+<div class="footer">
+<hr>
+          Generated by GTK-Doc V1.18</div>
+</body>
+</html>
\ No newline at end of file
index f49ae4b..b1a5530 100644 (file)
@@ -7,7 +7,7 @@
 <link rel="home" href="index.html" title="libsoup Reference Manual">
 <link rel="up" href="ch02.html" title="Core API">
 <link rel="prev" href="SoupMessageBody.html" title="SoupMessageBody">
-<link rel="next" href="SoupMultipart.html" title="SoupMultipart">
+<link rel="next" href="libsoup-2.4-Soup-Miscellaneous-Utilities.html" title="Soup Miscellaneous Utilities">
 <meta name="generator" content="GTK-Doc V1.18 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
@@ -18,7 +18,7 @@
 <td><a accesskey="u" href="ch02.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
 <th width="100%" align="center">libsoup Reference Manual</th>
-<td><a accesskey="n" href="SoupMultipart.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
+<td><a accesskey="n" href="libsoup-2.4-Soup-Miscellaneous-Utilities.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
 </tr>
 <tr><td colspan="5" class="shortcuts">
 <a href="#libsoup-2.4-soup-method.synopsis" class="shortcut">Top</a>
index 6badfef..c08522d 100644 (file)
@@ -7,7 +7,7 @@
 <link rel="home" href="index.html" title="libsoup Reference Manual">
 <link rel="up" href="ch02.html" title="Core API">
 <link rel="prev" href="SoupSessionSync.html" title="SoupSessionSync">
-<link rel="next" href="SoupURI.html" title="SoupURI">
+<link rel="next" href="libsoup-2.4-Top-Level-Domain-utils.html" title="Top Level Domain utils">
 <meta name="generator" content="GTK-Doc V1.18 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
@@ -18,7 +18,7 @@
 <td><a accesskey="u" href="ch02.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
 <th width="100%" align="center">libsoup Reference Manual</th>
-<td><a accesskey="n" href="SoupURI.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
+<td><a accesskey="n" href="libsoup-2.4-Top-Level-Domain-utils.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
 </tr>
 <tr><td colspan="5" class="shortcuts">
 <a href="#libsoup-2.4-soup-status.synopsis" class="shortcut">Top</a>
index c508f0b..0fe2867 100644 (file)
       <sub name="SoupMessageHeaders" link="SoupMessageHeaders.html"/>
       <sub name="SoupMessageBody" link="SoupMessageBody.html"/>
       <sub name="soup-method" link="libsoup-2.4-soup-method.html"/>
+      <sub name="Soup Miscellaneous Utilities" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html"/>
       <sub name="SoupMultipart" link="SoupMultipart.html"/>
       <sub name="SoupServer" link="SoupServer.html"/>
       <sub name="SoupSession" link="SoupSession.html"/>
       <sub name="SoupSessionAsync" link="SoupSessionAsync.html"/>
       <sub name="SoupSessionSync" link="SoupSessionSync.html"/>
       <sub name="soup-status" link="libsoup-2.4-soup-status.html"/>
+      <sub name="Top Level Domain utils" link="libsoup-2.4-Top-Level-Domain-utils.html"/>
       <sub name="SoupURI" link="SoupURI.html"/>
-      <sub name="Soup Miscellaneous Utilities" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html"/>
     </sub>
     <sub name="Additional Features" link="ch03.html">
       <sub name="SoupSessionFeature" link="SoupSessionFeature.html"/>
     <sub name="Annotation Glossary" link="annotation-glossary.html"/>
   </chapters>
   <functions>
-    <keyword type="" name="Using pkg-config" link="libsoup-build-howto.html#id450853"/>
-    <keyword type="" name="Headers" link="libsoup-build-howto.html#id387507"/>
-    <keyword type="" name="Creating a SoupSession" link="libsoup-client-howto.html#id459158"/>
+    <keyword type="" name="Using pkg-config" link="libsoup-build-howto.html#id591078"/>
+    <keyword type="" name="Headers" link="libsoup-build-howto.html#id527732"/>
+    <keyword type="" name="Creating a SoupSession" link="libsoup-client-howto.html#id599256"/>
     <keyword type="" name="Session features" link="libsoup-client-howto.html#session-features"/>
-    <keyword type="" name="Creating and Sending SoupMessages" link="libsoup-client-howto.html#id427412"/>
-    <keyword type="" name="Processing the Response" link="libsoup-client-howto.html#id427690"/>
-    <keyword type="" name="Intermediate/Automatic Processing" link="libsoup-client-howto.html#id427798"/>
-    <keyword type="" name="Handling Authentication" link="libsoup-client-howto.html#id427880"/>
-    <keyword type="" name="Multi-threaded usage" link="libsoup-client-howto.html#id428015"/>
-    <keyword type="" name="Sample Programs" link="libsoup-client-howto.html#id428105"/>
-    <keyword type="" name="Creating a SoupSession" link="libsoup-server-howto.html#id444239"/>
-    <keyword type="" name="Adding Handlers" link="libsoup-server-howto.html#id441651"/>
-    <keyword type="" name="Responding to Requests" link="libsoup-server-howto.html#id432902"/>
-    <keyword type="" name="Handling Authentication" link="libsoup-server-howto.html#id445966"/>
+    <keyword type="" name="Creating and Sending SoupMessages" link="libsoup-client-howto.html#id571155"/>
+    <keyword type="" name="Processing the Response" link="libsoup-client-howto.html#id571432"/>
+    <keyword type="" name="Intermediate/Automatic Processing" link="libsoup-client-howto.html#id571540"/>
+    <keyword type="" name="Handling Authentication" link="libsoup-client-howto.html#id571622"/>
+    <keyword type="" name="Multi-threaded usage" link="libsoup-client-howto.html#id571758"/>
+    <keyword type="" name="Sample Programs" link="libsoup-client-howto.html#id571847"/>
+    <keyword type="" name="Creating a SoupSession" link="libsoup-server-howto.html#id594915"/>
+    <keyword type="" name="Adding Handlers" link="libsoup-server-howto.html#id583451"/>
+    <keyword type="" name="Responding to Requests" link="libsoup-server-howto.html#id602580"/>
+    <keyword type="" name="Handling Authentication" link="libsoup-server-howto.html#id572201"/>
     <keyword type="struct" name="SoupAuth" link="SoupAuth.html#SoupAuth-struct"/>
     <keyword type="function" name="soup_auth_new ()" link="SoupAuth.html#soup-auth-new"/>
     <keyword type="function" name="soup_auth_update ()" link="SoupAuth.html#soup-auth-update"/>
     <keyword type="macro" name="SOUP_METHOD_MOVE" link="libsoup-2.4-soup-method.html#SOUP-METHOD-MOVE:CAPS"/>
     <keyword type="macro" name="SOUP_METHOD_LOCK" link="libsoup-2.4-soup-method.html#SOUP-METHOD-LOCK:CAPS"/>
     <keyword type="macro" name="SOUP_METHOD_UNLOCK" link="libsoup-2.4-soup-method.html#SOUP-METHOD-UNLOCK:CAPS"/>
+    <keyword type="struct" name="SoupDate" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#SoupDate-struct"/>
+    <keyword type="enum" name="enum SoupDateFormat" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#SoupDateFormat"/>
+    <keyword type="function" name="soup_date_new ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-new"/>
+    <keyword type="function" name="soup_date_new_from_string ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-new-from-string"/>
+    <keyword type="function" name="soup_date_new_from_time_t ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-new-from-time-t"/>
+    <keyword type="function" name="soup_date_new_from_now ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-new-from-now"/>
+    <keyword type="function" name="soup_date_to_string ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-to-string"/>
+    <keyword type="function" name="soup_date_to_time_t ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-to-time-t"/>
+    <keyword type="function" name="soup_date_to_timeval ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-to-timeval" since="2.24"/>
+    <keyword type="function" name="soup_date_is_past ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-is-past" since="2.24"/>
+    <keyword type="function" name="soup_date_get_day ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-get-day" since="2.32"/>
+    <keyword type="function" name="soup_date_get_hour ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-get-hour" since="2.32"/>
+    <keyword type="function" name="soup_date_get_minute ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-get-minute" since="2.32"/>
+    <keyword type="function" name="soup_date_get_month ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-get-month" since="2.32"/>
+    <keyword type="function" name="soup_date_get_offset ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-get-offset" since="2.32"/>
+    <keyword type="function" name="soup_date_get_second ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-get-second" since="2.32"/>
+    <keyword type="function" name="soup_date_get_utc ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-get-utc" since="2.32"/>
+    <keyword type="function" name="soup_date_get_year ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-get-year" since="2.32"/>
+    <keyword type="function" name="soup_date_free ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-free"/>
+    <keyword type="function" name="soup_headers_parse_request ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-headers-parse-request"/>
+    <keyword type="function" name="soup_headers_parse_response ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-headers-parse-response"/>
+    <keyword type="function" name="soup_headers_parse_status_line ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-headers-parse-status-line"/>
+    <keyword type="function" name="soup_headers_parse ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-headers-parse" since="2.26"/>
+    <keyword type="function" name="soup_header_parse_list ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-header-parse-list"/>
+    <keyword type="function" name="soup_header_parse_quality_list ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-header-parse-quality-list"/>
+    <keyword type="function" name="soup_header_free_list ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-header-free-list"/>
+    <keyword type="function" name="soup_header_contains ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-header-contains"/>
+    <keyword type="function" name="soup_header_parse_param_list ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-header-parse-param-list"/>
+    <keyword type="function" name="soup_header_parse_semi_param_list ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-header-parse-semi-param-list" since="2.24"/>
+    <keyword type="function" name="soup_header_free_param_list ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-header-free-param-list"/>
+    <keyword type="function" name="soup_header_g_string_append_param ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-header-g-string-append-param" since="2.26"/>
+    <keyword type="function" name="soup_header_g_string_append_param_quoted ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-header-g-string-append-param-quoted" since="2.30"/>
+    <keyword type="function" name="soup_str_case_equal ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-str-case-equal"/>
+    <keyword type="function" name="soup_str_case_hash ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-str-case-hash"/>
+    <keyword type="function" name="soup_add_completion ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-add-completion" since="2.24"/>
+    <keyword type="function" name="soup_add_idle ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-add-idle"/>
+    <keyword type="function" name="soup_add_io_watch ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-add-io-watch"/>
+    <keyword type="function" name="soup_add_timeout ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-add-timeout"/>
+    <keyword type="variable" name="soup_ssl_supported" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-ssl-supported"/>
     <keyword type="typedef" name="SoupMultipart" link="SoupMultipart.html#SoupMultipart" since="2.26"/>
     <keyword type="function" name="soup_multipart_new ()" link="SoupMultipart.html#soup-multipart-new" since="2.26"/>
     <keyword type="function" name="soup_multipart_new_from_message ()" link="SoupMultipart.html#soup-multipart-new-from-message" since="2.26"/>
     <keyword type="function" name="soup_status_get_phrase ()" link="libsoup-2.4-soup-status.html#soup-status-get-phrase"/>
     <keyword type="function" name="soup_status_proxify ()" link="libsoup-2.4-soup-status.html#soup-status-proxify" since="2.26"/>
     <keyword type="macro" name="SOUP_HTTP_ERROR" link="libsoup-2.4-soup-status.html#SOUP-HTTP-ERROR:CAPS"/>
+    <keyword type="function" name="soup_tld_get_base_domain ()" link="libsoup-2.4-Top-Level-Domain-utils.html#soup-tld-get-base-domain" since="2.40"/>
+    <keyword type="function" name="soup_tld_domain_is_public_suffix ()" link="libsoup-2.4-Top-Level-Domain-utils.html#soup-tld-domain-is-public-suffix" since="2.40"/>
+    <keyword type="macro" name="SOUP_TLD_ERROR" link="libsoup-2.4-Top-Level-Domain-utils.html#SOUP-TLD-ERROR:CAPS"/>
+    <keyword type="enum" name="enum SoupTLDError" link="libsoup-2.4-Top-Level-Domain-utils.html#SoupTLDError"/>
     <keyword type="struct" name="SoupURI" link="SoupURI.html#SoupURI-struct"/>
     <keyword type="function" name="soup_uri_new_with_base ()" link="SoupURI.html#soup-uri-new-with-base"/>
     <keyword type="function" name="soup_uri_new ()" link="SoupURI.html#soup-uri-new"/>
     <keyword type="function" name="soup_uri_get_query ()" link="SoupURI.html#soup-uri-get-query" since="2.32"/>
     <keyword type="function" name="soup_uri_set_fragment ()" link="SoupURI.html#soup-uri-set-fragment"/>
     <keyword type="function" name="soup_uri_get_fragment ()" link="SoupURI.html#soup-uri-get-fragment" since="2.32"/>
-    <keyword type="struct" name="SoupDate" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#SoupDate-struct"/>
-    <keyword type="enum" name="enum SoupDateFormat" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#SoupDateFormat"/>
-    <keyword type="function" name="soup_date_new ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-new"/>
-    <keyword type="function" name="soup_date_new_from_string ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-new-from-string"/>
-    <keyword type="function" name="soup_date_new_from_time_t ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-new-from-time-t"/>
-    <keyword type="function" name="soup_date_new_from_now ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-new-from-now"/>
-    <keyword type="function" name="soup_date_to_string ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-to-string"/>
-    <keyword type="function" name="soup_date_to_time_t ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-to-time-t"/>
-    <keyword type="function" name="soup_date_to_timeval ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-to-timeval" since="2.24"/>
-    <keyword type="function" name="soup_date_is_past ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-is-past" since="2.24"/>
-    <keyword type="function" name="soup_date_get_day ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-get-day" since="2.32"/>
-    <keyword type="function" name="soup_date_get_hour ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-get-hour" since="2.32"/>
-    <keyword type="function" name="soup_date_get_minute ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-get-minute" since="2.32"/>
-    <keyword type="function" name="soup_date_get_month ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-get-month" since="2.32"/>
-    <keyword type="function" name="soup_date_get_offset ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-get-offset" since="2.32"/>
-    <keyword type="function" name="soup_date_get_second ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-get-second" since="2.32"/>
-    <keyword type="function" name="soup_date_get_utc ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-get-utc" since="2.32"/>
-    <keyword type="function" name="soup_date_get_year ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-get-year" since="2.32"/>
-    <keyword type="function" name="soup_date_free ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-date-free"/>
-    <keyword type="function" name="soup_headers_parse_request ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-headers-parse-request"/>
-    <keyword type="function" name="soup_headers_parse_response ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-headers-parse-response"/>
-    <keyword type="function" name="soup_headers_parse_status_line ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-headers-parse-status-line"/>
-    <keyword type="function" name="soup_headers_parse ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-headers-parse" since="2.26"/>
-    <keyword type="function" name="soup_header_parse_list ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-header-parse-list"/>
-    <keyword type="function" name="soup_header_parse_quality_list ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-header-parse-quality-list"/>
-    <keyword type="function" name="soup_header_free_list ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-header-free-list"/>
-    <keyword type="function" name="soup_header_contains ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-header-contains"/>
-    <keyword type="function" name="soup_header_parse_param_list ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-header-parse-param-list"/>
-    <keyword type="function" name="soup_header_parse_semi_param_list ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-header-parse-semi-param-list" since="2.24"/>
-    <keyword type="function" name="soup_header_free_param_list ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-header-free-param-list"/>
-    <keyword type="function" name="soup_header_g_string_append_param ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-header-g-string-append-param" since="2.26"/>
-    <keyword type="function" name="soup_header_g_string_append_param_quoted ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-header-g-string-append-param-quoted" since="2.30"/>
-    <keyword type="function" name="soup_str_case_equal ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-str-case-equal"/>
-    <keyword type="function" name="soup_str_case_hash ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-str-case-hash"/>
-    <keyword type="function" name="soup_add_completion ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-add-completion" since="2.24"/>
-    <keyword type="function" name="soup_add_idle ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-add-idle"/>
-    <keyword type="function" name="soup_add_io_watch ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-add-io-watch"/>
-    <keyword type="function" name="soup_add_timeout ()" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-add-timeout"/>
-    <keyword type="variable" name="soup_ssl_supported" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#soup-ssl-supported"/>
     <keyword type="struct" name="SoupSessionFeature" link="SoupSessionFeature.html#SoupSessionFeature-struct"/>
     <keyword type="struct" name="SoupSessionFeatureInterface" link="SoupSessionFeature.html#SoupSessionFeatureInterface" since="2.24"/>
     <keyword type="struct" name="SoupContentDecoder" link="SoupContentDecoder.html#SoupContentDecoder-struct"/>
     <keyword type="struct" name="SoupCookieJar" link="SoupCookieJar.html#SoupCookieJar-struct"/>
     <keyword type="function" name="soup_cookie_jar_new ()" link="SoupCookieJar.html#soup-cookie-jar-new" since="2.24"/>
     <keyword type="function" name="soup_cookie_jar_get_cookies ()" link="SoupCookieJar.html#soup-cookie-jar-get-cookies" since="2.24"/>
+    <keyword type="function" name="soup_cookie_jar_get_cookie_list ()" link="SoupCookieJar.html#soup-cookie-jar-get-cookie-list" since="2.40"/>
     <keyword type="function" name="soup_cookie_jar_set_cookie ()" link="SoupCookieJar.html#soup-cookie-jar-set-cookie" since="2.24"/>
     <keyword type="function" name="soup_cookie_jar_set_cookie_with_first_party ()" link="SoupCookieJar.html#soup-cookie-jar-set-cookie-with-first-party" since="2.30"/>
     <keyword type="function" name="soup_cookie_jar_add_cookie ()" link="SoupCookieJar.html#soup-cookie-jar-add-cookie" since="2.26"/>
+    <keyword type="function" name="soup_cookie_jar_add_cookie_with_first_party ()" link="SoupCookieJar.html#soup-cookie-jar-add-cookie-with-first-party" since="2.40"/>
     <keyword type="function" name="soup_cookie_jar_delete_cookie ()" link="SoupCookieJar.html#soup-cookie-jar-delete-cookie" since="2.26"/>
     <keyword type="function" name="soup_cookie_jar_all_cookies ()" link="SoupCookieJar.html#soup-cookie-jar-all-cookies" since="2.26"/>
     <keyword type="enum" name="enum SoupCookieJarAcceptPolicy" link="SoupCookieJar.html#SoupCookieJarAcceptPolicy" since="2.30"/>
     <keyword type="constant" name="SOUP_MEMORY_TAKE" link="SoupMessageBody.html#SOUP-MEMORY-TAKE:CAPS"/>
     <keyword type="constant" name="SOUP_MEMORY_COPY" link="SoupMessageBody.html#SOUP-MEMORY-COPY:CAPS"/>
     <keyword type="constant" name="SOUP_MEMORY_TEMPORARY" link="SoupMessageBody.html#SOUP-MEMORY-TEMPORARY:CAPS"/>
+    <keyword type="constant" name="SOUP_DATE_HTTP" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#SOUP-DATE-HTTP:CAPS"/>
+    <keyword type="constant" name="SOUP_DATE_COOKIE" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#SOUP-DATE-COOKIE:CAPS"/>
+    <keyword type="constant" name="SOUP_DATE_RFC2822" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#SOUP-DATE-RFC2822:CAPS"/>
+    <keyword type="constant" name="SOUP_DATE_ISO8601_COMPACT" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#SOUP-DATE-ISO8601-COMPACT:CAPS"/>
+    <keyword type="constant" name="SOUP_DATE_ISO8601_FULL" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#SOUP-DATE-ISO8601-FULL:CAPS"/>
+    <keyword type="constant" name="SOUP_DATE_ISO8601" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#SOUP-DATE-ISO8601:CAPS"/>
+    <keyword type="constant" name="SOUP_DATE_ISO8601_XMLRPC" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#SOUP-DATE-ISO8601-XMLRPC:CAPS"/>
     <keyword type="constant" name="SOUP_STATUS_NONE" link="libsoup-2.4-soup-status.html#SOUP-STATUS-NONE:CAPS"/>
     <keyword type="constant" name="SOUP_STATUS_CANCELLED" link="libsoup-2.4-soup-status.html#SOUP-STATUS-CANCELLED:CAPS"/>
     <keyword type="constant" name="SOUP_STATUS_CANT_RESOLVE" link="libsoup-2.4-soup-status.html#SOUP-STATUS-CANT-RESOLVE:CAPS"/>
     <keyword type="constant" name="SOUP_STATUS_HTTP_VERSION_NOT_SUPPORTED" link="libsoup-2.4-soup-status.html#SOUP-STATUS-HTTP-VERSION-NOT-SUPPORTED:CAPS"/>
     <keyword type="constant" name="SOUP_STATUS_INSUFFICIENT_STORAGE" link="libsoup-2.4-soup-status.html#SOUP-STATUS-INSUFFICIENT-STORAGE:CAPS"/>
     <keyword type="constant" name="SOUP_STATUS_NOT_EXTENDED" link="libsoup-2.4-soup-status.html#SOUP-STATUS-NOT-EXTENDED:CAPS"/>
-    <keyword type="constant" name="SOUP_DATE_HTTP" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#SOUP-DATE-HTTP:CAPS"/>
-    <keyword type="constant" name="SOUP_DATE_COOKIE" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#SOUP-DATE-COOKIE:CAPS"/>
-    <keyword type="constant" name="SOUP_DATE_RFC2822" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#SOUP-DATE-RFC2822:CAPS"/>
-    <keyword type="constant" name="SOUP_DATE_ISO8601_COMPACT" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#SOUP-DATE-ISO8601-COMPACT:CAPS"/>
-    <keyword type="constant" name="SOUP_DATE_ISO8601_FULL" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#SOUP-DATE-ISO8601-FULL:CAPS"/>
-    <keyword type="constant" name="SOUP_DATE_ISO8601" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#SOUP-DATE-ISO8601:CAPS"/>
-    <keyword type="constant" name="SOUP_DATE_ISO8601_XMLRPC" link="libsoup-2.4-Soup-Miscellaneous-Utilities.html#SOUP-DATE-ISO8601-XMLRPC:CAPS"/>
     <keyword type="constant" name="SOUP_COOKIE_JAR_ACCEPT_ALWAYS" link="SoupCookieJar.html#SOUP-COOKIE-JAR-ACCEPT-ALWAYS:CAPS"/>
     <keyword type="constant" name="SOUP_COOKIE_JAR_ACCEPT_NEVER" link="SoupCookieJar.html#SOUP-COOKIE-JAR-ACCEPT-NEVER:CAPS"/>
     <keyword type="constant" name="SOUP_COOKIE_JAR_ACCEPT_NO_THIRD_PARTY" link="SoupCookieJar.html#SOUP-COOKIE-JAR-ACCEPT-NO-THIRD-PARTY:CAPS"/>
index 8ab9b8f..f5571dc 100644 (file)
@@ -29,7 +29,7 @@
 <td valign="top" align="right"></td>
 </tr></table></div>
 <div class="refsect2">
-<a name="id450853"></a><h3>Using pkg-config</h3>
+<a name="id591078"></a><h3>Using pkg-config</h3>
 <p>
 Like other GNOME libraries, <span class="application">libsoup</span> uses
 <span class="application">pkg-config</span> to provide compiler options. The
@@ -117,7 +117,7 @@ preprocessor symbol <code class="literal">HAVE_LIBSOUP_GNOME</code> if
 </div>
 <hr>
 <div class="refsect2">
-<a name="id387507"></a><h3>Headers</h3>
+<a name="id527732"></a><h3>Headers</h3>
 <p>
 Code using <span class="application">libsoup</span> should do:
 </p>
index 8241219..6d26cec 100644 (file)
@@ -29,7 +29,7 @@
 <td valign="top" align="right"></td>
 </tr></table></div>
 <div class="refsect2">
-<a name="id459158"></a><h3>Creating a <span class="type">SoupSession</span>
+<a name="id599256"></a><h3>Creating a <span class="type">SoupSession</span>
 </h3>
 <p>
 The first step in using the client API is to create a <a class="link" href="SoupSession.html" title="SoupSession"><span class="type">SoupSession</span></a>. The session object
@@ -230,7 +230,7 @@ application might do something like the following:
 </div>
 <hr>
 <div class="refsect2">
-<a name="id427412"></a><h3>Creating and Sending SoupMessages</h3>
+<a name="id571155"></a><h3>Creating and Sending SoupMessages</h3>
 <p>
 Once you have a session, you do HTTP traffic using <a class="link" href="SoupMessage.html" title="SoupMessage"><span class="type">SoupMessage</span></a>. In the simplest
 case, you only need to create the message and it's ready to send:
@@ -290,7 +290,7 @@ yourself, you can set the <a class="link" href="SoupMessage.html#SOUP-MESSAGE-NO
 flag.
 </p>
 <div class="refsect3">
-<a name="id427516"></a><h4>Sending a Message Synchronously</h4>
+<a name="id571258"></a><h4>Sending a Message Synchronously</h4>
 <p>
 To send a message and wait for the response, use <a class="link" href="SoupSession.html#soup-session-send-message" title="soup_session_send_message ()"><code class="function">soup_session_send_message</code></a>:
 </p>
@@ -324,7 +324,7 @@ response to the message. (The status is also available as
 </p>
 </div>
 <div class="refsect3">
-<a name="id427585"></a><h4>Sending a Message Asynchronously</h4>
+<a name="id571327"></a><h4>Sending a Message Asynchronously</h4>
 <p>
 To send a message asynchronously, use <a class="link" href="SoupSession.html#soup-session-queue-message" title="soup_session_queue_message ()"><code class="function">soup_session_queue_message</code></a>:
 </p>
@@ -385,7 +385,7 @@ being invoked in the session's <a class="link" href="SoupSession.html#SOUP-SESSI
 </div>
 <hr>
 <div class="refsect2">
-<a name="id427690"></a><h3>Processing the Response</h3>
+<a name="id571432"></a><h3>Processing the Response</h3>
 <p>
 Once you have received the response from the server, synchronously or
 asynchronously, you can look at the response fields in the
@@ -414,7 +414,7 @@ headers much better than functions like
 </div>
 <hr>
 <div class="refsect2">
-<a name="id427798"></a><h3>Intermediate/Automatic Processing</h3>
+<a name="id571540"></a><h3>Intermediate/Automatic Processing</h3>
 <p>
 You can also connect to various <span class="type">SoupMessage</span> signals to do
 processing at intermediate stages of HTTP I/O. Eg, the <a class="link" href="SoupMessage.html#SoupMessage-got-chunk" title='The "got-chunk" signal'><code class="literal">got-chunk</code></a>
@@ -440,7 +440,7 @@ signal, and add handlers to each message from there.
 </div>
 <hr>
 <div class="refsect2">
-<a name="id427880"></a><h3>Handling Authentication</h3>
+<a name="id571622"></a><h3>Handling Authentication</h3>
 <p>
 <span class="type">SoupSession</span> handles most of the details of HTTP
 authentication for you. If it receives a 401 ("Unauthorized") or 407
@@ -482,7 +482,7 @@ to resume the paused message.
 </div>
 <hr>
 <div class="refsect2">
-<a name="id428015"></a><h3>Multi-threaded usage</h3>
+<a name="id571758"></a><h3>Multi-threaded usage</h3>
 <p>
 The only explicitly thread-safe operations in
 <span class="application">libsoup</span> are <a class="link" href="SoupSessionSync.html" title="SoupSessionSync"><span class="type">SoupSessionSync</span></a>'s
@@ -506,7 +506,7 @@ which that <span class="type">GMainContext</span> is running.)
 </div>
 <hr>
 <div class="refsect2">
-<a name="id428105"></a><h3>Sample Programs</h3>
+<a name="id571847"></a><h3>Sample Programs</h3>
 <p>
 A few sample programs are available in the
 <span class="application">libsoup</span> sources:
index fef4eb8..cac489e 100644 (file)
@@ -29,7 +29,7 @@
 <td valign="top" align="right"></td>
 </tr></table></div>
 <div class="refsect2">
-<a name="id444239"></a><h3>Creating a SoupSession</h3>
+<a name="id594915"></a><h3>Creating a SoupSession</h3>
 <p>
 As with the client API, there is a single object that will encapsulate
 most of your interactions with libsoup. In this case, <a class="link" href="SoupServer.html" title="SoupServer"><span class="type">SoupServer</span></a>.
@@ -99,7 +99,7 @@ various additional options:
 </div>
 <hr>
 <div class="refsect2">
-<a name="id441651"></a><h3>Adding Handlers</h3>
+<a name="id583451"></a><h3>Adding Handlers</h3>
 <p>
 By default, <a class="link" href="SoupServer.html" title="SoupServer"><span class="type">SoupServer</span></a>
 returns "404 Not Found" in response to all requests (except ones that
@@ -138,7 +138,7 @@ match any other handler.
 </div>
 <hr>
 <div class="refsect2">
-<a name="id432902"></a><h3>Responding to Requests</h3>
+<a name="id602580"></a><h3>Responding to Requests</h3>
 <p>
 A handler callback looks something like this:
 </p>
@@ -201,7 +201,7 @@ If the response requires a body, you must decide whether to use
 <code class="literal">chunked</code> encoding.
 </p>
 <div class="refsect3">
-<a name="id445778"></a><h4>Responding with <code class="literal">Content-Length</code>
+<a name="id572012"></a><h4>Responding with <code class="literal">Content-Length</code>
 Encoding</h4>
 <p>
 This is the simpler way to set a response body, if you have all of the
@@ -280,7 +280,7 @@ data available at once.
 
 </div>
 <div class="refsect3">
-<a name="id445810"></a><h4>Responding with <code class="literal">chunked</code> Encoding</h4>
+<a name="id572044"></a><h4>Responding with <code class="literal">chunked</code> Encoding</h4>
 <p>
 If you want to supply the response body in chunks as it becomes
 available, use <code class="literal">chunked</code> encoding instead. In this
@@ -314,7 +314,7 @@ using <code class="literal">chunked</code> encoding.
 </div>
 <hr>
 <div class="refsect2">
-<a name="id445966"></a><h3>Handling Authentication</h3>
+<a name="id572201"></a><h3>Handling Authentication</h3>
 <p>
 To have <a class="link" href="SoupServer.html" title="SoupServer"><span class="type">SoupServer</span></a>
 handle HTTP authentication for you, create a <a class="link" href="SoupAuthDomainBasic.html" title="SoupAuthDomainBasic"><span class="type">SoupAuthDomainBasic</span></a>
index 7370bc4..21e19ea 100644 (file)
     <xi:include href="xml/soup-message-headers.xml"/>
     <xi:include href="xml/soup-message-body.xml"/>
     <xi:include href="xml/soup-method.xml"/>
+    <xi:include href="xml/soup-misc.xml"/>
     <xi:include href="xml/soup-multipart.xml"/>
     <xi:include href="xml/soup-server.xml"/>
     <xi:include href="xml/soup-session.xml"/>
     <xi:include href="xml/soup-session-async.xml"/>
     <xi:include href="xml/soup-session-sync.xml"/>
     <xi:include href="xml/soup-status.xml"/>
+    <xi:include href="xml/soup-tld.xml"/>
     <xi:include href="xml/soup-uri.xml"/>
-    <xi:include href="xml/soup-misc.xml"/>
   </chapter>
 
   <chapter>
index 87633c7..39e8288 100644 (file)
@@ -878,10 +878,12 @@ soup_cookie_equal
 SoupCookieJar
 soup_cookie_jar_new
 soup_cookie_jar_get_cookies
+soup_cookie_jar_get_cookie_list
 soup_cookie_jar_set_cookie
 soup_cookie_jar_set_cookie_with_first_party
 <SUBSECTION>
 soup_cookie_jar_add_cookie
+soup_cookie_jar_add_cookie_with_first_party
 soup_cookie_jar_delete_cookie
 soup_cookie_jar_all_cookies
 <SUBSECTION>
@@ -1172,3 +1174,15 @@ SoupRequestHTTPPrivate
 soup_request_http_get_type
 </SECTION>
 
+<SECTION>
+<FILE>soup-tld</FILE>
+<TITLE>Top Level Domain utils</TITLE>
+<SUBSECTION>
+soup_tld_get_base_domain
+soup_tld_domain_is_public_suffix
+<SUBSECTION>
+SOUP_TLD_ERROR
+SoupTLDError
+<SUBSECTION Private>
+soup_tld_error_quark
+</SECTION>
index 547f813..b93f49a 100644 (file)
@@ -67,6 +67,17 @@ SoupCookieJar
 @Returns: 
 
 
+<!-- ##### FUNCTION soup_cookie_jar_get_cookie_list ##### -->
+<para>
+
+</para>
+
+@jar: 
+@uri: 
+@for_http: 
+@Returns: 
+
+
 <!-- ##### FUNCTION soup_cookie_jar_set_cookie ##### -->
 <para>
 
@@ -97,6 +108,16 @@ SoupCookieJar
 @cookie: 
 
 
+<!-- ##### FUNCTION soup_cookie_jar_add_cookie_with_first_party ##### -->
+<para>
+
+</para>
+
+@jar: 
+@first_party: 
+@cookie: 
+
+
 <!-- ##### FUNCTION soup_cookie_jar_delete_cookie ##### -->
 <para>
 
diff --git a/docs/reference/tmpl/soup-tld.sgml b/docs/reference/tmpl/soup-tld.sgml
new file mode 100644 (file)
index 0000000..6abd520
--- /dev/null
@@ -0,0 +1,59 @@
+<!-- ##### SECTION Title ##### -->
+Top Level Domain utils
+
+<!-- ##### SECTION Short_Description ##### -->
+
+
+<!-- ##### SECTION Long_Description ##### -->
+<para>
+
+</para>
+
+
+<!-- ##### SECTION See_Also ##### -->
+<para>
+
+</para>
+
+
+<!-- ##### SECTION Stability_Level ##### -->
+
+
+<!-- ##### SECTION Image ##### -->
+
+
+<!-- ##### FUNCTION soup_tld_get_base_domain ##### -->
+<para>
+
+</para>
+
+@hostname: 
+@error: 
+@Returns: 
+
+
+<!-- ##### FUNCTION soup_tld_domain_is_public_suffix ##### -->
+<para>
+
+</para>
+
+@domain: 
+@Returns: 
+
+
+<!-- ##### MACRO SOUP_TLD_ERROR ##### -->
+<para>
+
+</para>
+
+
+
+<!-- ##### ENUM SoupTLDError ##### -->
+<para>
+
+</para>
+
+@SOUP_TLD_ERROR_INVALID_HOSTNAME: 
+@SOUP_TLD_ERROR_IS_IP_ADDRESS: 
+@SOUP_TLD_ERROR_NOT_ENOUGH_DOMAINS: 
+
index e69de29..1f75dfd 100644 (file)
@@ -0,0 +1,280 @@
+# -*- mode: makefile -*-
+
+####################################
+# Everything below here is generic #
+####################################
+
+if GTK_DOC_USE_LIBTOOL
+GTKDOC_CC = $(LIBTOOL) --tag=CC --mode=compile $(CC) $(INCLUDES) $(GTKDOC_DEPS_CFLAGS) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+GTKDOC_LD = $(LIBTOOL) --tag=CC --mode=link $(CC) $(GTKDOC_DEPS_LIBS) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS)
+GTKDOC_RUN = $(LIBTOOL) --mode=execute
+else
+GTKDOC_CC = $(CC) $(INCLUDES) $(GTKDOC_DEPS_CFLAGS) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+GTKDOC_LD = $(CC) $(GTKDOC_DEPS_LIBS) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS)
+GTKDOC_RUN =
+endif
+
+# We set GPATH here; this gives us semantics for GNU make
+# which are more like other make's VPATH, when it comes to
+# whether a source that is a target of one rule is then
+# searched for in VPATH/GPATH.
+#
+GPATH = $(srcdir)
+
+TARGET_DIR=$(HTML_DIR)/$(DOC_MODULE)
+
+SETUP_FILES = \
+       $(content_files)                \
+       $(DOC_MAIN_SGML_FILE)           \
+       $(DOC_MODULE)-sections.txt      \
+       $(DOC_MODULE)-overrides.txt
+
+EXTRA_DIST =                           \
+       $(HTML_IMAGES)                  \
+       $(SETUP_FILES)
+
+DOC_STAMPS=setup-build.stamp scan-build.stamp tmpl-build.stamp sgml-build.stamp \
+       html-build.stamp pdf-build.stamp \
+       tmpl.stamp sgml.stamp html.stamp pdf.stamp
+
+SCANOBJ_FILES =                 \
+       $(DOC_MODULE).args       \
+       $(DOC_MODULE).hierarchy  \
+       $(DOC_MODULE).interfaces \
+       $(DOC_MODULE).prerequisites \
+       $(DOC_MODULE).signals
+
+REPORT_FILES = \
+       $(DOC_MODULE)-undocumented.txt \
+       $(DOC_MODULE)-undeclared.txt \
+       $(DOC_MODULE)-unused.txt
+
+CLEANFILES = $(SCANOBJ_FILES) $(REPORT_FILES) $(DOC_STAMPS)
+
+if ENABLE_GTK_DOC
+if GTK_DOC_BUILD_HTML
+HTML_BUILD_STAMP=html-build.stamp
+else
+HTML_BUILD_STAMP=
+endif
+if GTK_DOC_BUILD_PDF
+PDF_BUILD_STAMP=pdf-build.stamp
+else
+PDF_BUILD_STAMP=
+endif
+
+all-local: $(HTML_BUILD_STAMP) $(PDF_BUILD_STAMP)
+else
+all-local:
+endif
+
+docs: $(HTML_BUILD_STAMP) $(PDF_BUILD_STAMP)
+
+$(REPORT_FILES): sgml-build.stamp
+
+#### setup ####
+
+setup-build.stamp:
+       -@if test "$(abs_srcdir)" != "$(abs_builddir)" ; then \
+           echo '  DOC   Preparing build'; \
+           files=`echo $(SETUP_FILES) $(expand_content_files) $(DOC_MODULE).types`; \
+           if test "x$$files" != "x" ; then \
+               for file in $$files ; do \
+                   test -f $(abs_srcdir)/$$file && \
+                       cp -pu $(abs_srcdir)/$$file $(abs_builddir)/ || true; \
+               done; \
+           fi; \
+           test -d $(abs_srcdir)/tmpl && \
+               { cp -rp $(abs_srcdir)/tmpl $(abs_builddir)/; \
+               chmod -R u+w $(abs_builddir)/tmpl; } \
+       fi
+       @touch setup-build.stamp
+
+#### scan ####
+
+scan-build.stamp: $(HFILE_GLOB) $(CFILE_GLOB)
+       @echo '  DOC   Scanning header files'
+       @_source_dir='' ; \
+       for i in $(DOC_SOURCE_DIR) ; do \
+           _source_dir="$${_source_dir} --source-dir=$$i" ; \
+       done ; \
+       gtkdoc-scan --module=$(DOC_MODULE) --ignore-headers="$(IGNORE_HFILES)" $${_source_dir} $(SCAN_OPTIONS) $(EXTRA_HFILES)
+       @if grep -l '^..*$$' $(DOC_MODULE).types > /dev/null 2>&1 ; then \
+           echo "  DOC   Introspecting gobjects"; \
+           scanobj_options=""; \
+           gtkdoc-scangobj 2>&1 --help | grep  >/dev/null "\-\-verbose"; \
+           if test "$(?)" = "0"; then \
+               if test "x$(V)" = "x1"; then \
+                   scanobj_options="--verbose"; \
+               fi; \
+           fi; \
+           CC="$(GTKDOC_CC)" LD="$(GTKDOC_LD)" RUN="$(GTKDOC_RUN)" CFLAGS="$(GTKDOC_CFLAGS) $(CFLAGS)" LDFLAGS="$(GTKDOC_LIBS) $(LDFLAGS)" \
+           gtkdoc-scangobj $(SCANGOBJ_OPTIONS) $$scanobj_options --module=$(DOC_MODULE); \
+       else \
+           for i in $(SCANOBJ_FILES) ; do \
+               test -f $$i || touch $$i ; \
+           done \
+       fi
+       @touch scan-build.stamp
+
+$(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt: scan-build.stamp
+       @true
+
+#### templates ####
+
+tmpl-build.stamp: setup-build.stamp $(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt
+       @echo '  DOC   Rebuilding template files'
+       @gtkdoc-mktmpl --module=$(DOC_MODULE) $(MKTMPL_OPTIONS)
+       @if test "$(abs_srcdir)" != "$(abs_builddir)" ; then \
+         if test -w $(abs_srcdir) ; then \
+           cp -rp $(abs_builddir)/tmpl $(abs_srcdir)/; \
+         fi \
+       fi
+       @touch tmpl-build.stamp
+
+tmpl.stamp: tmpl-build.stamp
+       @true
+
+$(srcdir)/tmpl/*.sgml:
+       @true
+
+#### xml ####
+
+sgml-build.stamp: tmpl.stamp $(DOC_MODULE)-sections.txt $(srcdir)/tmpl/*.sgml $(expand_content_files)
+       @echo '  DOC   Building XML'
+       @-chmod -R u+w $(srcdir)
+       @_source_dir='' ; \
+       for i in $(DOC_SOURCE_DIR) ; do \
+           _source_dir="$${_source_dir} --source-dir=$$i" ; \
+       done ; \
+       gtkdoc-mkdb --module=$(DOC_MODULE) --output-format=xml --expand-content-files="$(expand_content_files)" --main-sgml-file=$(DOC_MAIN_SGML_FILE) $${_source_dir} $(MKDB_OPTIONS)
+       @touch sgml-build.stamp
+
+sgml.stamp: sgml-build.stamp
+       @true
+
+#### html ####
+
+html-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE) $(content_files)
+       @echo '  DOC   Building HTML'
+       @rm -rf html
+       @mkdir html
+       @mkhtml_options=""; \
+       gtkdoc-mkhtml 2>&1 --help | grep  >/dev/null "\-\-verbose"; \
+       if test "$(?)" = "0"; then \
+         if test "x$(V)" = "x1"; then \
+           mkhtml_options="$$mkhtml_options --verbose"; \
+         fi; \
+       fi; \
+       gtkdoc-mkhtml 2>&1 --help | grep  >/dev/null "\-\-path"; \
+       if test "$(?)" = "0"; then \
+         mkhtml_options="$$mkhtml_options --path=\"$(abs_srcdir)\""; \
+       fi; \
+       cd html && gtkdoc-mkhtml $$mkhtml_options $(MKHTML_OPTIONS) $(DOC_MODULE) ../$(DOC_MAIN_SGML_FILE)
+       -@test "x$(HTML_IMAGES)" = "x" || \
+       for file in $(HTML_IMAGES) ; do \
+         if test -f $(abs_srcdir)/$$file ; then \
+           cp $(abs_srcdir)/$$file $(abs_builddir)/html; \
+         fi; \
+         if test -f $(abs_builddir)/$$file ; then \
+           cp $(abs_builddir)/$$file $(abs_builddir)/html; \
+         fi; \
+       done;
+       @echo '  DOC   Fixing cross-references'
+       @gtkdoc-fixxref --module=$(DOC_MODULE) --module-dir=html --html-dir=$(HTML_DIR) $(FIXXREF_OPTIONS)
+       @touch html-build.stamp
+
+#### pdf ####
+
+pdf-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE) $(content_files)
+       @echo '  DOC   Building PDF'
+       @rm -f $(DOC_MODULE).pdf
+       @mkpdf_options=""; \
+       gtkdoc-mkpdf 2>&1 --help | grep  >/dev/null "\-\-verbose"; \
+       if test "$(?)" = "0"; then \
+         if test "x$(V)" = "x1"; then \
+           mkpdf_options="$$mkpdf_options --verbose"; \
+         fi; \
+       fi; \
+       if test "x$(HTML_IMAGES)" != "x"; then \
+         for img in $(HTML_IMAGES); do \
+           part=`dirname $$img`; \
+           echo $$mkpdf_options | grep >/dev/null "\-\-imgdir=$$part "; \
+           if test $$? != 0; then \
+             mkpdf_options="$$mkpdf_options --imgdir=$$part"; \
+           fi; \
+         done; \
+       fi; \
+       gtkdoc-mkpdf --path="$(abs_srcdir)" $$mkpdf_options $(DOC_MODULE) $(DOC_MAIN_SGML_FILE) $(MKPDF_OPTIONS)
+       @touch pdf-build.stamp
+
+##############
+
+clean-local:
+       @rm -f *~ *.bak
+       @rm -rf .libs
+
+distclean-local:
+       @rm -rf xml html $(REPORT_FILES) $(DOC_MODULE).pdf \
+           $(DOC_MODULE)-decl-list.txt $(DOC_MODULE)-decl.txt
+       @if test "$(abs_srcdir)" != "$(abs_builddir)" ; then \
+           rm -f $(SETUP_FILES) $(expand_content_files) $(DOC_MODULE).types; \
+           rm -rf tmpl; \
+       fi
+
+maintainer-clean-local: clean
+       @rm -rf xml html
+
+install-data-local:
+       @installfiles=`echo $(builddir)/html/*`; \
+       if test "$$installfiles" = '$(builddir)/html/*'; \
+       then echo 1>&2 'Nothing to install' ; \
+       else \
+         if test -n "$(DOC_MODULE_VERSION)"; then \
+           installdir="$(DESTDIR)$(TARGET_DIR)-$(DOC_MODULE_VERSION)"; \
+         else \
+           installdir="$(DESTDIR)$(TARGET_DIR)"; \
+         fi; \
+         $(mkinstalldirs) $${installdir} ; \
+         for i in $$installfiles; do \
+           echo ' $(INSTALL_DATA) '$$i ; \
+           $(INSTALL_DATA) $$i $${installdir}; \
+         done; \
+         if test -n "$(DOC_MODULE_VERSION)"; then \
+           mv -f $${installdir}/$(DOC_MODULE).devhelp2 \
+             $${installdir}/$(DOC_MODULE)-$(DOC_MODULE_VERSION).devhelp2; \
+         fi; \
+         $(GTKDOC_REBASE) --relative --dest-dir=$(DESTDIR) --html-dir=$${installdir}; \
+       fi
+
+uninstall-local:
+       @if test -n "$(DOC_MODULE_VERSION)"; then \
+         installdir="$(DESTDIR)$(TARGET_DIR)-$(DOC_MODULE_VERSION)"; \
+       else \
+         installdir="$(DESTDIR)$(TARGET_DIR)"; \
+       fi; \
+       rm -rf $${installdir}
+
+#
+# Require gtk-doc when making dist
+#
+if ENABLE_GTK_DOC
+dist-check-gtkdoc:
+else
+dist-check-gtkdoc:
+       @echo "*** gtk-doc must be installed and enabled in order to make dist"
+       @false
+endif
+
+dist-hook: dist-check-gtkdoc dist-hook-local
+       @mkdir $(distdir)/tmpl
+       @mkdir $(distdir)/html
+       @-cp ./tmpl/*.sgml $(distdir)/tmpl
+       @cp ./html/* $(distdir)/html
+       @-cp ./$(DOC_MODULE).pdf $(distdir)/
+       @-cp ./$(DOC_MODULE).types $(distdir)/
+       @-cp ./$(DOC_MODULE)-sections.txt $(distdir)/
+       @cd $(distdir) && rm -f $(DISTCLEANFILES)
+       @$(GTKDOC_REBASE) --online --relative --html-dir=$(distdir)/html
+
+.PHONY : dist-hook-local docs
index 36831ee..c337b7f 100644 (file)
@@ -59,6 +59,7 @@ soup_headers =                        \
        soup-session-sync.h     \
        soup-socket.h           \
        soup-status.h           \
+       soup-tld.h              \
        soup-types.h            \
        soup-uri.h              \
        soup-value-utils.h      \
@@ -80,6 +81,7 @@ libsoup_2_4_la_LIBADD =                       \
        $(LIBWS2_32)
 
 libsoup_2_4_la_SOURCES =               \
+       tld_data.inc                    \
        soup-address.c                  \
        soup-auth.c                     \
        soup-auth-basic.h               \
@@ -162,10 +164,25 @@ libsoup_2_4_la_SOURCES =          \
        soup-session-sync.c             \
        soup-socket.c                   \
        soup-status.c                   \
+       soup-tld.c                      \
+       soup-tld-private.h              \
        soup-uri.c                      \
        soup-value-utils.c              \
        soup-xmlrpc.c
 
+# TLD rules
+noinst_PROGRAMS =      \
+       tld-parser
+
+tld_parser_SOURCES = tld-parser.c
+tld_parser_CFLAGS = $(GLIB_CFLAGS)
+tld_parser_LDADD = $(GLIB_LIBS)
+
+TLD_DATA_FILE=$(top_srcdir)/data/effective_tld_names.dat
+
+tld_data.inc: $(TLD_DATA_FILE)
+       $(builddir)/tld-parser $(TLD_DATA_FILE) $(srcdir)/tld_data.inc
+
 if BUILD_LIBSOUP_GNOME
 
 if OS_WIN32
@@ -204,7 +221,9 @@ endif
 
 GLIB_GENERATED = soup-marshal.c soup-marshal.h
 GLIB_GENERATED += soup-enum-types.c soup-enum-types.h
-BUILT_SOURCES = $(GLIB_GENERATED)
+BUILT_SOURCES = \
+       $(GLIB_GENERATED)   \
+       tld_data.inc
 
 soup_marshal_sources = $(libsoup_2_4_la_SOURCES) $(libsoup_gnome_2_4_la_SOURCES)
 soup_enum_types_sources = $(libsoupinclude_HEADERS) $(libsoupgnomeinclude_HEADERS)
@@ -268,6 +287,6 @@ gir_DATA = $(INTROSPECTION_GIRS)
 typelibdir = $(libdir)/girepository-1.0
 typelib_DATA = $(INTROSPECTION_GIRS:.gir=.typelib)
 
-CLEANFILES = $(gir_DATA) $(typelib_DATA)
+CLEANFILES = $(gir_DATA) $(typelib_DATA) $(BUILT_SOURCES)
 
 endif
index c8521d7..9f3d3e9 100644 (file)
@@ -17,6 +17,7 @@
 
 
 
+
 VPATH = @srcdir@
 pkgdatadir = $(datadir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
@@ -36,6 +37,7 @@ PRE_UNINSTALL = :
 POST_UNINSTALL = :
 build_triplet = @build@
 host_triplet = @host@
+noinst_PROGRAMS = tld-parser$(EXEEXT)
 @BUILD_LIBSOUP_GNOME_TRUE@am__append_1 = libsoup-gnome-2.4.la
 @HAVE_INTROSPECTION_TRUE@am__append_2 = Soup-2.4.gir
 @BUILD_LIBSOUP_GNOME_TRUE@@HAVE_INTROSPECTION_TRUE@am__append_3 = SoupGNOME-2.4.gir
@@ -113,8 +115,8 @@ am_libsoup_2_4_la_OBJECTS = soup-address.lo soup-auth.lo \
        soup-request-data.lo soup-request-file.lo soup-request-http.lo \
        soup-requester.lo soup-server.lo soup-session.lo \
        soup-session-async.lo soup-session-feature.lo \
-       soup-session-sync.lo soup-socket.lo soup-status.lo soup-uri.lo \
-       soup-value-utils.lo soup-xmlrpc.lo
+       soup-session-sync.lo soup-socket.lo soup-status.lo soup-tld.lo \
+       soup-uri.lo soup-value-utils.lo soup-xmlrpc.lo
 libsoup_2_4_la_OBJECTS = $(am_libsoup_2_4_la_OBJECTS)
 AM_V_lt = $(am__v_lt_@AM_V@)
 am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
@@ -144,6 +146,13 @@ libsoup_gnome_2_4_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \
        $(LDFLAGS) -o $@
 @BUILD_LIBSOUP_GNOME_TRUE@am_libsoup_gnome_2_4_la_rpath = -rpath \
 @BUILD_LIBSOUP_GNOME_TRUE@     $(libdir)
+PROGRAMS = $(noinst_PROGRAMS)
+am_tld_parser_OBJECTS = tld_parser-tld-parser.$(OBJEXT)
+tld_parser_OBJECTS = $(am_tld_parser_OBJECTS)
+tld_parser_DEPENDENCIES = $(am__DEPENDENCIES_1)
+tld_parser_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
+       $(LIBTOOLFLAGS) --mode=link $(CCLD) $(tld_parser_CFLAGS) \
+       $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
 DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
 depcomp = $(SHELL) $(top_srcdir)/depcomp
 am__depfiles_maybe = depfiles
@@ -170,9 +179,10 @@ am__v_CCLD_0 = @echo "  CCLD  " $@;
 AM_V_GEN = $(am__v_GEN_@AM_V@)
 am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
 am__v_GEN_0 = @echo "  GEN   " $@;
-SOURCES = $(libsoup_2_4_la_SOURCES) $(libsoup_gnome_2_4_la_SOURCES)
+SOURCES = $(libsoup_2_4_la_SOURCES) $(libsoup_gnome_2_4_la_SOURCES) \
+       $(tld_parser_SOURCES)
 DIST_SOURCES = $(libsoup_2_4_la_SOURCES) \
-       $(am__libsoup_gnome_2_4_la_SOURCES_DIST)
+       $(am__libsoup_gnome_2_4_la_SOURCES_DIST) $(tld_parser_SOURCES)
 DATA = $(gir_DATA) $(typelib_DATA)
 am__libsoupgnomeinclude_HEADERS_DIST = soup-cookie-jar-sqlite.h \
        soup-gnome.h soup-gnome-features.h
@@ -424,6 +434,7 @@ soup_headers = \
        soup-session-sync.h     \
        soup-socket.h           \
        soup-status.h           \
+       soup-tld.h              \
        soup-types.h            \
        soup-uri.h              \
        soup-value-utils.h      \
@@ -444,6 +455,7 @@ libsoup_2_4_la_LIBADD = \
        $(LIBWS2_32)
 
 libsoup_2_4_la_SOURCES = \
+       tld_data.inc                    \
        soup-address.c                  \
        soup-auth.c                     \
        soup-auth-basic.h               \
@@ -526,10 +538,16 @@ libsoup_2_4_la_SOURCES = \
        soup-session-sync.c             \
        soup-socket.c                   \
        soup-status.c                   \
+       soup-tld.c                      \
+       soup-tld-private.h              \
        soup-uri.c                      \
        soup-value-utils.c              \
        soup-xmlrpc.c
 
+tld_parser_SOURCES = tld-parser.c
+tld_parser_CFLAGS = $(GLIB_CFLAGS)
+tld_parser_LDADD = $(GLIB_LIBS)
+TLD_DATA_FILE = $(top_srcdir)/data/effective_tld_names.dat
 @BUILD_LIBSOUP_GNOME_TRUE@@OS_WIN32_FALSE@soup_password_manager_gnome_files = \
 @BUILD_LIBSOUP_GNOME_TRUE@@OS_WIN32_FALSE@     soup-password-manager-gnome.h   \
 @BUILD_LIBSOUP_GNOME_TRUE@@OS_WIN32_FALSE@     soup-password-manager-gnome.c
@@ -557,7 +575,10 @@ libsoup_2_4_la_SOURCES = \
 
 GLIB_GENERATED = soup-marshal.c soup-marshal.h soup-enum-types.c \
        soup-enum-types.h
-BUILT_SOURCES = $(GLIB_GENERATED)
+BUILT_SOURCES = \
+       $(GLIB_GENERATED)   \
+       tld_data.inc
+
 soup_marshal_sources = $(libsoup_2_4_la_SOURCES) $(libsoup_gnome_2_4_la_SOURCES)
 soup_enum_types_sources = $(libsoupinclude_HEADERS) $(libsoupgnomeinclude_HEADERS)
 soup_enum_types_MKENUMS_C_FLAGS = --fhead "\#define LIBSOUP_USE_UNSTABLE_REQUEST_API"
@@ -603,7 +624,7 @@ INTROSPECTION_COMPILER_ARGS = --includedir=.
 @HAVE_INTROSPECTION_TRUE@gir_DATA = $(INTROSPECTION_GIRS)
 @HAVE_INTROSPECTION_TRUE@typelibdir = $(libdir)/girepository-1.0
 @HAVE_INTROSPECTION_TRUE@typelib_DATA = $(INTROSPECTION_GIRS:.gir=.typelib)
-@HAVE_INTROSPECTION_TRUE@CLEANFILES = $(gir_DATA) $(typelib_DATA)
+@HAVE_INTROSPECTION_TRUE@CLEANFILES = $(gir_DATA) $(typelib_DATA) $(BUILT_SOURCES)
 all: $(BUILT_SOURCES)
        $(MAKE) $(AM_MAKEFLAGS) all-am
 
@@ -675,6 +696,18 @@ libsoup-2.4.la: $(libsoup_2_4_la_OBJECTS) $(libsoup_2_4_la_DEPENDENCIES) $(EXTRA
 libsoup-gnome-2.4.la: $(libsoup_gnome_2_4_la_OBJECTS) $(libsoup_gnome_2_4_la_DEPENDENCIES) $(EXTRA_libsoup_gnome_2_4_la_DEPENDENCIES) 
        $(AM_V_CCLD)$(libsoup_gnome_2_4_la_LINK) $(am_libsoup_gnome_2_4_la_rpath) $(libsoup_gnome_2_4_la_OBJECTS) $(libsoup_gnome_2_4_la_LIBADD) $(LIBS)
 
+clean-noinstPROGRAMS:
+       @list='$(noinst_PROGRAMS)'; test -n "$$list" || exit 0; \
+       echo " rm -f" $$list; \
+       rm -f $$list || exit $$?; \
+       test -n "$(EXEEXT)" || exit 0; \
+       list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
+       echo " rm -f" $$list; \
+       rm -f $$list
+tld-parser$(EXEEXT): $(tld_parser_OBJECTS) $(tld_parser_DEPENDENCIES) $(EXTRA_tld_parser_DEPENDENCIES) 
+       @rm -f tld-parser$(EXEEXT)
+       $(AM_V_CCLD)$(tld_parser_LINK) $(tld_parser_OBJECTS) $(tld_parser_LDADD) $(LIBS)
+
 mostlyclean-compile:
        -rm -f *.$(OBJEXT)
 
@@ -744,9 +777,11 @@ distclean-compile:
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/soup-session.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/soup-socket.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/soup-status.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/soup-tld.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/soup-uri.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/soup-value-utils.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/soup-xmlrpc.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/tld_parser-tld-parser.Po@am__quote@
 
 .c.o:
 @am__fastdepCC_TRUE@   $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@@ -769,6 +804,20 @@ distclean-compile:
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $<
 
+tld_parser-tld-parser.o: tld-parser.c
+@am__fastdepCC_TRUE@   $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tld_parser_CFLAGS) $(CFLAGS) -MT tld_parser-tld-parser.o -MD -MP -MF $(DEPDIR)/tld_parser-tld-parser.Tpo -c -o tld_parser-tld-parser.o `test -f 'tld-parser.c' || echo '$(srcdir)/'`tld-parser.c
+@am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) $(DEPDIR)/tld_parser-tld-parser.Tpo $(DEPDIR)/tld_parser-tld-parser.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='tld-parser.c' object='tld_parser-tld-parser.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tld_parser_CFLAGS) $(CFLAGS) -c -o tld_parser-tld-parser.o `test -f 'tld-parser.c' || echo '$(srcdir)/'`tld-parser.c
+
+tld_parser-tld-parser.obj: tld-parser.c
+@am__fastdepCC_TRUE@   $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tld_parser_CFLAGS) $(CFLAGS) -MT tld_parser-tld-parser.obj -MD -MP -MF $(DEPDIR)/tld_parser-tld-parser.Tpo -c -o tld_parser-tld-parser.obj `if test -f 'tld-parser.c'; then $(CYGPATH_W) 'tld-parser.c'; else $(CYGPATH_W) '$(srcdir)/tld-parser.c'; fi`
+@am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) $(DEPDIR)/tld_parser-tld-parser.Tpo $(DEPDIR)/tld_parser-tld-parser.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='tld-parser.c' object='tld_parser-tld-parser.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tld_parser_CFLAGS) $(CFLAGS) -c -o tld_parser-tld-parser.obj `if test -f 'tld-parser.c'; then $(CYGPATH_W) 'tld-parser.c'; else $(CYGPATH_W) '$(srcdir)/tld-parser.c'; fi`
+
 mostlyclean-libtool:
        -rm -f *.lo
 
@@ -932,7 +981,7 @@ distdir: $(DISTFILES)
 check-am: all-am
 check: $(BUILT_SOURCES)
        $(MAKE) $(AM_MAKEFLAGS) check-am
-all-am: Makefile $(LTLIBRARIES) $(DATA) $(HEADERS)
+all-am: Makefile $(LTLIBRARIES) $(PROGRAMS) $(DATA) $(HEADERS)
 installdirs:
        for dir in "$(DESTDIR)$(libdir)" "$(DESTDIR)$(girdir)" "$(DESTDIR)$(typelibdir)" "$(DESTDIR)$(libsoupgnomeincludedir)" "$(DESTDIR)$(libsoupincludedir)"; do \
          test -z "$$dir" || $(MKDIR_P) "$$dir"; \
@@ -973,7 +1022,7 @@ maintainer-clean-generic:
 clean: clean-am
 
 clean-am: clean-generic clean-libLTLIBRARIES clean-libtool \
-       mostlyclean-am
+       clean-noinstPROGRAMS mostlyclean-am
 
 distclean: distclean-am
        -rm -rf ./$(DEPDIR)
@@ -1047,13 +1096,14 @@ uninstall-am: uninstall-girDATA uninstall-libLTLIBRARIES \
 .MAKE: all check install install-am install-strip
 
 .PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
-       clean-libLTLIBRARIES clean-libtool ctags distclean \
-       distclean-compile distclean-generic distclean-libtool \
-       distclean-tags distdir dvi dvi-am html html-am info info-am \
-       install install-am install-data install-data-am install-dvi \
-       install-dvi-am install-exec install-exec-am install-girDATA \
-       install-html install-html-am install-info install-info-am \
-       install-libLTLIBRARIES install-libsoupgnomeincludeHEADERS \
+       clean-libLTLIBRARIES clean-libtool clean-noinstPROGRAMS ctags \
+       distclean distclean-compile distclean-generic \
+       distclean-libtool distclean-tags distdir dvi dvi-am html \
+       html-am info info-am install install-am install-data \
+       install-data-am install-dvi install-dvi-am install-exec \
+       install-exec-am install-girDATA install-html install-html-am \
+       install-info install-info-am install-libLTLIBRARIES \
+       install-libsoupgnomeincludeHEADERS \
        install-libsoupincludeHEADERS install-man install-pdf \
        install-pdf-am install-ps install-ps-am install-strip \
        install-typelibDATA installcheck installcheck-am installdirs \
@@ -1067,6 +1117,9 @@ uninstall-am: uninstall-girDATA uninstall-libLTLIBRARIES \
 
 include $(GLIB_MAKEFILE)
 
+tld_data.inc: $(TLD_DATA_FILE)
+       $(builddir)/tld-parser $(TLD_DATA_FILE) $(srcdir)/tld_data.inc
+
 #
 # Introspection support
 #
index 6d95cf0..ab5a803 100644 (file)
@@ -19,6 +19,7 @@
 #include "soup-marshal.h"
 #include "soup-message.h"
 #include "soup-session-feature.h"
+#include "soup-tld.h"
 #include "soup-uri.h"
 
 /**
@@ -320,41 +321,15 @@ compare_cookies (gconstpointer a, gconstpointer b, gpointer jar)
        return aserial - bserial;
 }
 
-/**
- * soup_cookie_jar_get_cookies:
- * @jar: a #SoupCookieJar
- * @uri: a #SoupURI
- * @for_http: whether or not the return value is being passed directly
- * to an HTTP operation
- *
- * Retrieves (in Cookie-header form) the list of cookies that would
- * be sent with a request to @uri.
- *
- * If @for_http is %TRUE, the return value will include cookies marked
- * "HttpOnly" (that is, cookies that the server wishes to keep hidden
- * from client-side scripting operations such as the JavaScript
- * document.cookies property). Since #SoupCookieJar sets the Cookie
- * header itself when making the actual HTTP request, you should
- * almost certainly be setting @for_http to %FALSE if you are calling
- * this.
- *
- * Return value: the cookies, in string form, or %NULL if there are no
- * cookies for @uri.
- *
- * Since: 2.24
- **/
-char *
-soup_cookie_jar_get_cookies (SoupCookieJar *jar, SoupURI *uri,
-                            gboolean for_http)
+static GSList *
+get_cookies (SoupCookieJar *jar, SoupURI *uri, gboolean for_http, gboolean copy_cookies)
 {
        SoupCookieJarPrivate *priv;
        GSList *cookies, *domain_cookies;
-       char *domain, *cur, *next_domain, *result;
+       char *domain, *cur, *next_domain;
        GSList *new_head, *cookies_to_remove = NULL, *p;
 
-       g_return_val_if_fail (SOUP_IS_COOKIE_JAR (jar), NULL);
        priv = SOUP_COOKIE_JAR_GET_PRIVATE (jar);
-       g_return_val_if_fail (uri != NULL, NULL);
 
        if (!uri->host)
                return NULL;
@@ -382,7 +357,7 @@ soup_cookie_jar_get_cookies (SoupCookieJar *jar, SoupURI *uri,
                                                     new_head);
                        } else if (soup_cookie_applies_to_uri (cookie, uri) &&
                                   (for_http || !cookie->http_only))
-                               cookies = g_slist_append (cookies, cookie);
+                               cookies = g_slist_append (cookies, copy_cookies ? soup_cookie_copy (cookie) : cookie);
 
                        domain_cookies = next;
                }
@@ -400,9 +375,45 @@ soup_cookie_jar_get_cookies (SoupCookieJar *jar, SoupURI *uri,
        }
        g_slist_free (cookies_to_remove);
 
+       return g_slist_sort_with_data (cookies, compare_cookies, jar);
+}
+
+/**
+ * soup_cookie_jar_get_cookies:
+ * @jar: a #SoupCookieJar
+ * @uri: a #SoupURI
+ * @for_http: whether or not the return value is being passed directly
+ * to an HTTP operation
+ *
+ * Retrieves (in Cookie-header form) the list of cookies that would
+ * be sent with a request to @uri.
+ *
+ * If @for_http is %TRUE, the return value will include cookies marked
+ * "HttpOnly" (that is, cookies that the server wishes to keep hidden
+ * from client-side scripting operations such as the JavaScript
+ * document.cookies property). Since #SoupCookieJar sets the Cookie
+ * header itself when making the actual HTTP request, you should
+ * almost certainly be setting @for_http to %FALSE if you are calling
+ * this.
+ *
+ * Return value: the cookies, in string form, or %NULL if there are no
+ * cookies for @uri.
+ *
+ * Since: 2.24
+ **/
+char *
+soup_cookie_jar_get_cookies (SoupCookieJar *jar, SoupURI *uri,
+                            gboolean for_http)
+{
+       GSList *cookies;
+
+       g_return_val_if_fail (SOUP_IS_COOKIE_JAR (jar), NULL);
+       g_return_val_if_fail (uri != NULL, NULL);
+
+       cookies = get_cookies (jar, uri, for_http, FALSE);
+
        if (cookies) {
-               cookies = g_slist_sort_with_data (cookies, compare_cookies, jar);
-               result = soup_cookies_to_cookie_header (cookies);
+               char *result = soup_cookies_to_cookie_header (cookies);
                g_slist_free (cookies);
 
                if (!*result) {
@@ -415,6 +426,38 @@ soup_cookie_jar_get_cookies (SoupCookieJar *jar, SoupURI *uri,
 }
 
 /**
+ * soup_cookie_jar_get_cookie_list:
+ * @jar: a #SoupCookieJar
+ * @uri: a #SoupURI
+ * @for_http: whether or not the return value is being passed directly
+ * to an HTTP operation
+ *
+ * Retrieves the list of cookies that would be sent with a request to @uri
+ * as a #GSList of #SoupCookie objects.
+ *
+ * If @for_http is %TRUE, the return value will include cookies marked
+ * "HttpOnly" (that is, cookies that the server wishes to keep hidden
+ * from client-side scripting operations such as the JavaScript
+ * document.cookies property). Since #SoupCookieJar sets the Cookie
+ * header itself when making the actual HTTP request, you should
+ * almost certainly be setting @for_http to %FALSE if you are calling
+ * this.
+ *
+ * Return value: (transfer full) (element-type Soup.Cookie): a #GSList
+ * with the cookies in the @jar that would be sent with a request to @uri.
+ *
+ * Since: 2.40
+ **/
+GSList *
+soup_cookie_jar_get_cookie_list (SoupCookieJar *jar, SoupURI *uri, gboolean for_http)
+{
+       g_return_val_if_fail (SOUP_IS_COOKIE_JAR (jar), NULL);
+       g_return_val_if_fail (uri != NULL, NULL);
+
+       return get_cookies (jar, uri, for_http, TRUE);
+}
+
+/**
  * soup_cookie_jar_add_cookie:
  * @jar: a #SoupCookieJar
  * @cookie: a #SoupCookie
@@ -437,6 +480,13 @@ soup_cookie_jar_add_cookie (SoupCookieJar *jar, SoupCookie *cookie)
        g_return_if_fail (SOUP_IS_COOKIE_JAR (jar));
        g_return_if_fail (cookie != NULL);
 
+       /* Never accept cookies for public domains. */
+       if (!g_hostname_is_ip_address (cookie->domain) &&
+           soup_tld_domain_is_public_suffix (cookie->domain)) {
+               soup_cookie_free (cookie);
+               return;
+       }
+
        priv = SOUP_COOKIE_JAR_GET_PRIVATE (jar);
        old_cookies = g_hash_table_lookup (priv->domains, cookie->domain);
        for (oc = old_cookies; oc; oc = oc->next) {
@@ -485,6 +535,47 @@ soup_cookie_jar_add_cookie (SoupCookieJar *jar, SoupCookie *cookie)
 }
 
 /**
+ * soup_cookie_jar_add_cookie_with_first_party:
+ * @jar: a #SoupCookieJar
+ * @first_party: the URI for the main document
+ * @cookie: a #SoupCookie
+ *
+ * Adds @cookie to @jar, emitting the 'changed' signal if we are modifying
+ * an existing cookie or adding a valid new cookie ('valid' means
+ * that the cookie's expire date is not in the past).
+ *
+ * @first_party will be used to reject cookies coming from third party
+ * resources in case such a security policy is set in the @jar.
+ *
+ * @cookie will be 'stolen' by the jar, so don't free it afterwards.
+ *
+ * Since: 2.40
+ **/
+void
+soup_cookie_jar_add_cookie_with_first_party (SoupCookieJar *jar, SoupURI *first_party, SoupCookie *cookie)
+{
+       SoupCookieJarPrivate *priv;
+
+       g_return_if_fail (SOUP_IS_COOKIE_JAR (jar));
+       g_return_if_fail (first_party != NULL);
+       g_return_if_fail (cookie != NULL);
+
+       priv = SOUP_COOKIE_JAR_GET_PRIVATE (jar);
+       if (priv->accept_policy == SOUP_COOKIE_JAR_ACCEPT_NEVER) {
+               soup_cookie_free (cookie);
+               return;
+       }
+
+       if (priv->accept_policy == SOUP_COOKIE_JAR_ACCEPT_ALWAYS ||
+           soup_cookie_domain_matches (cookie, first_party->host)) {
+               /* will steal or free soup_cookie */
+               soup_cookie_jar_add_cookie (jar, cookie);
+       } else {
+               soup_cookie_free (cookie);
+       }
+}
+
+/**
  * soup_cookie_jar_set_cookie:
  * @jar: a #SoupCookieJar
  * @uri: the URI setting the cookie
@@ -549,7 +640,6 @@ soup_cookie_jar_set_cookie_with_first_party (SoupCookieJar *jar,
                                             const char *cookie)
 {
        SoupCookie *soup_cookie;
-       SoupCookieJarPrivate *priv;
 
        g_return_if_fail (SOUP_IS_COOKIE_JAR (jar));
        g_return_if_fail (uri != NULL);
@@ -559,20 +649,9 @@ soup_cookie_jar_set_cookie_with_first_party (SoupCookieJar *jar,
        if (!uri->host)
                return;
 
-       priv = SOUP_COOKIE_JAR_GET_PRIVATE (jar);
-       if (priv->accept_policy == SOUP_COOKIE_JAR_ACCEPT_NEVER)
-               return;
-
        soup_cookie = soup_cookie_parse (cookie, uri);
-       if (soup_cookie) {
-               if (priv->accept_policy == SOUP_COOKIE_JAR_ACCEPT_ALWAYS ||
-                   soup_cookie_domain_matches (soup_cookie, first_party->host)) {
-                       /* will steal or free soup_cookie */
-                       soup_cookie_jar_add_cookie (jar, soup_cookie);
-               } else {
-                       soup_cookie_free (soup_cookie);
-               }
-       }
+       if (soup_cookie)
+               soup_cookie_jar_add_cookie_with_first_party (jar, first_party, soup_cookie);
 }
 
 static void
index 091b5e4..7ef0506 100644 (file)
@@ -55,6 +55,9 @@ void                      soup_cookie_jar_save                        (SoupCooki
 char          *           soup_cookie_jar_get_cookies                 (SoupCookieJar             *jar,
                                                                       SoupURI                   *uri,
                                                                       gboolean                   for_http);
+GSList        *           soup_cookie_jar_get_cookie_list             (SoupCookieJar             *jar,
+                                                                      SoupURI                   *uri,
+                                                                      gboolean                   for_http);
 void                      soup_cookie_jar_set_cookie                  (SoupCookieJar             *jar,
                                                                       SoupURI                   *uri,
                                                                       const char                *cookie);
@@ -64,6 +67,9 @@ void                      soup_cookie_jar_set_cookie_with_first_party (SoupCooki
                                                                       const char                *cookie);
 void                      soup_cookie_jar_add_cookie                  (SoupCookieJar             *jar,
                                                                       SoupCookie                *cookie);
+void                      soup_cookie_jar_add_cookie_with_first_party (SoupCookieJar             *jar,
+                                                                      SoupURI                   *first_party,
+                                                                      SoupCookie                *cookie);
 void                      soup_cookie_jar_delete_cookie               (SoupCookieJar             *jar,
                                                                       SoupCookie                *cookie);
 GSList        *           soup_cookie_jar_all_cookies                 (SoupCookieJar             *jar);
index 9c1717d..1b05b9b 100644 (file)
@@ -44,6 +44,7 @@
 #include "soup-session-sync.h" 
 #include "soup-socket.h" 
 #include "soup-status.h" 
+#include "soup-tld.h" 
 #include "soup-types.h" 
 #include "soup-uri.h" 
 #include "soup-value-utils.h" 
@@ -466,6 +467,26 @@ soup_known_status_code_get_type (void)
   return g_define_type_id__volatile;
 }
 GType
+soup_tld_error_get_type (void)
+{
+  static volatile gsize g_define_type_id__volatile = 0;
+
+  if (g_once_init_enter (&g_define_type_id__volatile))
+    {
+      static const GEnumValue values[] = {
+        { SOUP_TLD_ERROR_INVALID_HOSTNAME, "SOUP_TLD_ERROR_INVALID_HOSTNAME", "invalid-hostname" },
+        { SOUP_TLD_ERROR_IS_IP_ADDRESS, "SOUP_TLD_ERROR_IS_IP_ADDRESS", "is-ip-address" },
+        { SOUP_TLD_ERROR_NOT_ENOUGH_DOMAINS, "SOUP_TLD_ERROR_NOT_ENOUGH_DOMAINS", "not-enough-domains" },
+        { 0, NULL, NULL }
+      };
+      GType g_define_type_id =
+        g_enum_register_static (g_intern_static_string ("SoupTLDError"), values);
+      g_once_init_leave (&g_define_type_id__volatile, g_define_type_id);
+    }
+
+  return g_define_type_id__volatile;
+}
+GType
 soup_xmlrpc_error_get_type (void)
 {
   static volatile gsize g_define_type_id__volatile = 0;
index ebaf3c0..4fa2587 100644 (file)
@@ -43,6 +43,8 @@ GType soup_socket_io_status_get_type (void) G_GNUC_CONST;
 #define SOUP_TYPE_SOCKET_IO_STATUS (soup_socket_io_status_get_type ())
 GType soup_known_status_code_get_type (void) G_GNUC_CONST;
 #define SOUP_TYPE_KNOWN_STATUS_CODE (soup_known_status_code_get_type ())
+GType soup_tld_error_get_type (void) G_GNUC_CONST;
+#define SOUP_TYPE_TLD_ERROR (soup_tld_error_get_type ())
 GType soup_xmlrpc_error_get_type (void) G_GNUC_CONST;
 #define SOUP_TYPE_XMLRPC_ERROR (soup_xmlrpc_error_get_type ())
 GType soup_xmlrpc_fault_get_type (void) G_GNUC_CONST;
index 1d98bb9..2fd384c 100644 (file)
@@ -1218,8 +1218,9 @@ content_type_setter (SoupMessageHeaders *hdrs, const char *value)
 /**
  * soup_message_headers_get_content_type:
  * @hdrs: a #SoupMessageHeaders
- * @params: (out) (allow-none) (transfer full): return location for
- * the Content-Type parameters (eg, "charset"), or %NULL
+ * @params: (out) (element-type utf8 utf8) (allow-none) (transfer full):
+ *   return location for the Content-Type parameters (eg, "charset"), or
+ *   %NULL
  *
  * Looks up the "Content-Type" header in @hdrs, parses it, and returns
  * its value in *@content_type and *@params. @params can be %NULL if you
diff --git a/libsoup/soup-tld-private.h b/libsoup/soup-tld-private.h
new file mode 100644 (file)
index 0000000..2017951
--- /dev/null
@@ -0,0 +1,26 @@
+/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
+/*
+ * soup-tld-private.h:
+ *
+ * Copyright (C) 2012 Igalia, S.L.
+ */
+
+#ifndef SOUP_TLD_PRIVATE_H
+#define SOUP_TLD_PRIVATE_H 1
+
+G_BEGIN_DECLS
+
+typedef enum {
+  SOUP_TLD_RULE_NORMAL,
+  SOUP_TLD_RULE_MATCH_ALL = 1 << 0,
+  SOUP_TLD_RULE_EXCEPTION = 1 << 1,
+} SoupTLDRuleFlags;
+
+typedef struct {
+       char *domain;
+       guint flags;
+} SoupTLDEntry;
+
+G_END_DECLS
+
+#endif /* SOUP_TLD_PRIVATE_H */
diff --git a/libsoup/soup-tld.c b/libsoup/soup-tld.c
new file mode 100644 (file)
index 0000000..5a8dad2
--- /dev/null
@@ -0,0 +1,224 @@
+/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
+/*
+ * soup-tld.c
+ *
+ * Copyright (C) 2012 Igalia S.L.
+ */
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include <gio/gio.h>
+#include <glib/gi18n-lib.h>
+#include <string.h>
+
+#include "soup-tld.h"
+#include "soup-tld-private.h"
+
+static void soup_tld_ensure_rules_hash_table (void);
+static const char *soup_tld_get_base_domain_internal (const char *hostname,
+                                                     guint       additional_domains,
+                                                     GError    **error);
+
+static GHashTable *rules = NULL;
+static SoupTLDEntry tld_entries[] = {
+#include "tld_data.inc"
+};
+
+/**
+ * Stores the entries data in a hash table to ease and speed up
+ * searches.
+ */
+static void
+soup_tld_ensure_rules_hash_table (void)
+{
+       static gsize init = 0;
+
+       if (g_once_init_enter (&init)) {
+               int i;
+
+               rules = g_hash_table_new (g_str_hash, g_str_equal);
+               for (i = 0; i < G_N_ELEMENTS (tld_entries); ++i)
+                       g_hash_table_insert (rules, tld_entries[i].domain,
+                                            &(tld_entries[i].flags));
+               g_once_init_leave (&init, 1);
+       }
+}
+
+/**
+ * soup_tld_get_base_domain:
+ * @tld: a #SoupTLD
+ * @hostname: a UTF-8 hostname in its canonical representation form
+ * @error: return location for a #GError, or %NULL to ignore
+ *   errors. See #SoupTLDError for the available error codes
+ *
+ * Finds the base domain for a given @hostname. The base domain is
+ * composed by the top level domain (such as .org, .com, .co.uk, etc)
+ * plus the second level domain, for example for myhost.mydomain.com
+ * it will return mydomain.com.
+ *
+ * This method only works for valid UTF-8 hostnames in their canonical
+ * representation form, so you should use g_hostname_to_unicode() to
+ * get the canonical representation if that is not the case.
+ *
+ * Returns: a pointer to the start of the base domain in @hostname. If
+ * an error occurs, %NULL will be returned and @error set.
+ *
+ * Since: 2.40
+ **/
+const char *
+soup_tld_get_base_domain (const char *hostname, GError **error)
+{
+       g_return_val_if_fail (hostname, NULL);
+       g_return_val_if_fail (!g_hostname_is_ascii_encoded (hostname), FALSE);
+
+       return soup_tld_get_base_domain_internal (hostname, 1, error);
+}
+
+/**
+ * soup_tld_domain_is_public_suffix:
+ * @tld: a #SoupTLD
+ * @domain: a UTF-8 domain in its canonical representation form
+ *
+ * Looks whether the @domain passed as argument is a public domain
+ * suffix (.org, .com, .co.uk, etc) or not.
+ *
+ * This method only works for valid UTF-8 domains in their canonical
+ * representation form, so you should use g_hostname_to_unicode() to
+ * get the canonical representation if that is not the case.
+ *
+ * Returns: %TRUE if it is a public domain, %FALSE otherwise.
+ *
+ * Since: 2.40
+ **/
+gboolean
+soup_tld_domain_is_public_suffix (const char *domain)
+{
+       const char *base_domain;
+       GError *error = NULL;
+
+       g_return_val_if_fail (domain, FALSE);
+
+       /* Skip the leading '.' if present */
+       if (*domain == '.' && !(++domain))
+               g_return_val_if_reached (FALSE);
+
+       /* By asking for one additional domain we instruct the search
+        * not to exactly match any registered public domain.
+        */
+       base_domain = soup_tld_get_base_domain_internal (domain, 1, &error);
+       if (base_domain)
+               return FALSE;
+
+       if (g_error_matches (error, SOUP_TLD_ERROR, SOUP_TLD_ERROR_IS_IP_ADDRESS) ||
+           g_error_matches (error, SOUP_TLD_ERROR, SOUP_TLD_ERROR_INVALID_HOSTNAME)) {
+               g_error_free (error);
+               g_return_val_if_reached (FALSE);
+       }
+
+       g_clear_error (&error);
+
+       return TRUE;
+}
+
+GQuark
+soup_tld_error_quark (void)
+{
+       static GQuark error;
+       if (!error)
+               error = g_quark_from_static_string ("soup_tld_error_quark");
+       return error;
+}
+
+static const char *
+soup_tld_get_base_domain_internal (const char *hostname, guint additional_domains, GError **error)
+{
+       char *prev_domain, *cur_domain, *tld, *next_dot;
+       gint add_domains;
+
+       soup_tld_ensure_rules_hash_table ();
+
+       if (g_hostname_is_ip_address (hostname)) {
+               g_set_error_literal (error, SOUP_TLD_ERROR,
+                                    SOUP_TLD_ERROR_IS_IP_ADDRESS,
+                                    _("Hostname is an IP address"));
+               return NULL;
+       }
+
+       cur_domain = (char *) hostname;
+       tld = cur_domain;
+       prev_domain = NULL;
+       /* Process matching rules from longest to shortest. Logic
+        * based on Mozilla's implementation of nsEffectiveTLDService.
+        */
+       while (TRUE) {
+               char *orig_domain;
+               gboolean domain_found;
+               int *flags;
+
+               /* Valid hostnames neither start with a dot nor have more than one
+                * dot together.
+                */
+               if (*cur_domain == '.') {
+                       g_set_error_literal (error, SOUP_TLD_ERROR,
+                                            SOUP_TLD_ERROR_INVALID_HOSTNAME,
+                                            _("Invalid hostname"));
+                       return NULL;
+               }
+
+               next_dot = strchr (cur_domain, '.');
+               domain_found = g_hash_table_lookup_extended (rules, cur_domain, (gpointer *) &orig_domain, (gpointer *) &flags);
+               /* We compare the keys just to be sure that we haven't hit a collision */
+               if (domain_found && !strncmp (orig_domain, cur_domain, strlen (orig_domain))) {
+                       if (*flags & SOUP_TLD_RULE_MATCH_ALL) {
+                               /* If we match a *. rule and there were no previous exceptions
+                                * nor previous domains then treat it as an exact match.
+                                */
+                               if (!prev_domain) {
+                                       g_set_error_literal (error, SOUP_TLD_ERROR,
+                                                            SOUP_TLD_ERROR_NOT_ENOUGH_DOMAINS,
+                                                            _("Not enough domains"));
+                                       return NULL;
+                               }
+                               tld = prev_domain;
+                               break;
+                       } else if (*flags == SOUP_TLD_RULE_NORMAL || !next_dot) {
+                               tld = cur_domain;
+                               break;
+                       } else if (*flags & SOUP_TLD_RULE_EXCEPTION) {
+                               tld = next_dot + 1;
+                               break;
+                       }
+               }
+
+               /* We hit the top domain, use it if it's listed as valid. */
+               if (!next_dot) {
+                       tld = cur_domain;
+                       break;
+               }
+
+               prev_domain = cur_domain;
+               cur_domain = next_dot + 1;
+       }
+
+       /* Include the additional number of domains requested. */
+       add_domains = additional_domains;
+       while (tld != hostname) {
+               if (*(--tld) == '.' && (!(add_domains--))) {
+                       ++add_domains;
+                       ++tld;
+                       break;
+               }
+       }
+
+       /* If additional_domains > 0 then we haven't found enough additional domains. */
+       if (add_domains) {
+               g_set_error_literal (error, SOUP_TLD_ERROR,
+                                    SOUP_TLD_ERROR_NOT_ENOUGH_DOMAINS,
+                                    _("Not enough domains"));
+               return NULL;
+       }
+
+       return tld;
+}
diff --git a/libsoup/soup-tld.h b/libsoup/soup-tld.h
new file mode 100644 (file)
index 0000000..5610d62
--- /dev/null
@@ -0,0 +1,28 @@
+/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
+/*
+ * Copyright (C) 2012 Igalia S.L.
+ */
+
+#ifndef __SOUP_TLD_H__
+#define __SOUP_TLD_H__
+
+G_BEGIN_DECLS
+
+const char *soup_tld_get_base_domain         (const char *hostname,
+                                             GError    **error);
+
+gboolean    soup_tld_domain_is_public_suffix (const char *domain);
+
+/* Errors */
+#define SOUP_TLD_ERROR soup_tld_error_quark()
+GQuark soup_tld_error_quark (void);
+
+typedef enum {
+       SOUP_TLD_ERROR_INVALID_HOSTNAME,
+       SOUP_TLD_ERROR_IS_IP_ADDRESS,
+       SOUP_TLD_ERROR_NOT_ENOUGH_DOMAINS
+} SoupTLDError;
+
+G_END_DECLS
+
+#endif /* __SOUP_TLD_H__ */
index 97170a8..d4ddcea 100644 (file)
@@ -39,6 +39,7 @@ extern "C" {
 #include <libsoup/soup-session-sync.h>
 #include <libsoup/soup-socket.h>
 #include <libsoup/soup-status.h>
+#include <libsoup/soup-tld.h>
 #include <libsoup/soup-uri.h>
 #include <libsoup/soup-value-utils.h>
 #include <libsoup/soup-xmlrpc.h>
diff --git a/libsoup/tld-parser.c b/libsoup/tld-parser.c
new file mode 100644 (file)
index 0000000..b50f90e
--- /dev/null
@@ -0,0 +1,95 @@
+/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
+/*
+ * tld-parser.c
+ *
+ * Copyright (C) 2012 Igalia S.L.
+ */
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include <glib.h>
+#include <glib/gprintf.h>
+#include <gio/gio.h>
+#include "soup-tld-private.h"
+
+#define MAX_LINE_LENGTH 256
+
+int
+main(int argc, char **argv)
+{
+       GFile *tlds_file, *inc_file;
+       GFileInputStream *file_reader;
+       GFileOutputStream *file_writer;
+       GDataInputStream *data_reader;
+       char *rule;
+
+       g_type_init ();
+
+       tlds_file = g_file_new_for_path (argv[1]);
+       file_reader = g_file_read (tlds_file, NULL, NULL);
+       g_object_unref (tlds_file);
+
+       if (!file_reader)
+               return 1;
+
+       data_reader = g_data_input_stream_new (G_INPUT_STREAM (file_reader));
+       g_object_unref (file_reader);
+       if (!data_reader)
+               return 1;
+
+       inc_file = g_file_new_for_path (argv[2]);
+       file_writer = g_file_replace (inc_file, NULL, FALSE, G_FILE_CREATE_NONE, NULL, NULL);
+       g_object_unref (inc_file);
+
+       if (!file_writer) {
+               g_object_unref (data_reader);
+               return 1;
+       }
+
+       do {
+               char *domain;
+               gsize size;
+               char output_line[MAX_LINE_LENGTH];
+               guint flags;
+
+               rule = g_data_input_stream_read_line (data_reader, &size, NULL, NULL);
+
+               if (!rule)
+                       break;
+
+               /* If the line is empty or is a comment then ignore. */
+               if (!size || g_str_has_prefix (rule, "//")) {
+                       g_free (rule);
+                       continue;
+               }
+
+               flags = 0;
+               domain = rule;
+               /* Lines starting with '!' are exceptions to the rules */
+               if (*rule == '!') {
+                       domain++;
+                       flags |= SOUP_TLD_RULE_EXCEPTION;
+               }
+
+               if (g_str_has_prefix (domain, "*.")) {
+                       domain += 2;
+                       flags |= SOUP_TLD_RULE_MATCH_ALL;
+               }
+
+               /* Skip the leading dot (is optional) */
+               if (*domain == '.')
+                       domain++;
+
+               size = g_snprintf (output_line, MAX_LINE_LENGTH, "{ \"%s\", %d },\n", g_strstrip(domain), flags);
+               g_output_stream_write (G_OUTPUT_STREAM (file_writer), output_line, size, NULL, NULL);
+
+               g_free (rule);
+
+       } while (TRUE);
+
+       g_object_unref (data_reader);
+       g_object_unref (file_writer);
+
+       return 0;
+}
diff --git a/libsoup/tld_data.inc b/libsoup/tld_data.inc
new file mode 100644 (file)
index 0000000..332b876
--- /dev/null
@@ -0,0 +1,4317 @@
+{ "ac", 0 },
+{ "com.ac", 0 },
+{ "edu.ac", 0 },
+{ "gov.ac", 0 },
+{ "net.ac", 0 },
+{ "mil.ac", 0 },
+{ "org.ac", 0 },
+{ "ad", 0 },
+{ "nom.ad", 0 },
+{ "ae", 0 },
+{ "co.ae", 0 },
+{ "net.ae", 0 },
+{ "org.ae", 0 },
+{ "sch.ae", 0 },
+{ "ac.ae", 0 },
+{ "gov.ae", 0 },
+{ "mil.ae", 0 },
+{ "aero", 0 },
+{ "accident-investigation.aero", 0 },
+{ "accident-prevention.aero", 0 },
+{ "aerobatic.aero", 0 },
+{ "aeroclub.aero", 0 },
+{ "aerodrome.aero", 0 },
+{ "agents.aero", 0 },
+{ "aircraft.aero", 0 },
+{ "airline.aero", 0 },
+{ "airport.aero", 0 },
+{ "air-surveillance.aero", 0 },
+{ "airtraffic.aero", 0 },
+{ "air-traffic-control.aero", 0 },
+{ "ambulance.aero", 0 },
+{ "amusement.aero", 0 },
+{ "association.aero", 0 },
+{ "author.aero", 0 },
+{ "ballooning.aero", 0 },
+{ "broker.aero", 0 },
+{ "caa.aero", 0 },
+{ "cargo.aero", 0 },
+{ "catering.aero", 0 },
+{ "certification.aero", 0 },
+{ "championship.aero", 0 },
+{ "charter.aero", 0 },
+{ "civilaviation.aero", 0 },
+{ "club.aero", 0 },
+{ "conference.aero", 0 },
+{ "consultant.aero", 0 },
+{ "consulting.aero", 0 },
+{ "control.aero", 0 },
+{ "council.aero", 0 },
+{ "crew.aero", 0 },
+{ "design.aero", 0 },
+{ "dgca.aero", 0 },
+{ "educator.aero", 0 },
+{ "emergency.aero", 0 },
+{ "engine.aero", 0 },
+{ "engineer.aero", 0 },
+{ "entertainment.aero", 0 },
+{ "equipment.aero", 0 },
+{ "exchange.aero", 0 },
+{ "express.aero", 0 },
+{ "federation.aero", 0 },
+{ "flight.aero", 0 },
+{ "freight.aero", 0 },
+{ "fuel.aero", 0 },
+{ "gliding.aero", 0 },
+{ "government.aero", 0 },
+{ "groundhandling.aero", 0 },
+{ "group.aero", 0 },
+{ "hanggliding.aero", 0 },
+{ "homebuilt.aero", 0 },
+{ "insurance.aero", 0 },
+{ "journal.aero", 0 },
+{ "journalist.aero", 0 },
+{ "leasing.aero", 0 },
+{ "logistics.aero", 0 },
+{ "magazine.aero", 0 },
+{ "maintenance.aero", 0 },
+{ "marketplace.aero", 0 },
+{ "media.aero", 0 },
+{ "microlight.aero", 0 },
+{ "modelling.aero", 0 },
+{ "navigation.aero", 0 },
+{ "parachuting.aero", 0 },
+{ "paragliding.aero", 0 },
+{ "passenger-association.aero", 0 },
+{ "pilot.aero", 0 },
+{ "press.aero", 0 },
+{ "production.aero", 0 },
+{ "recreation.aero", 0 },
+{ "repbody.aero", 0 },
+{ "res.aero", 0 },
+{ "research.aero", 0 },
+{ "rotorcraft.aero", 0 },
+{ "safety.aero", 0 },
+{ "scientist.aero", 0 },
+{ "services.aero", 0 },
+{ "show.aero", 0 },
+{ "skydiving.aero", 0 },
+{ "software.aero", 0 },
+{ "student.aero", 0 },
+{ "taxi.aero", 0 },
+{ "trader.aero", 0 },
+{ "trading.aero", 0 },
+{ "trainer.aero", 0 },
+{ "union.aero", 0 },
+{ "workinggroup.aero", 0 },
+{ "works.aero", 0 },
+{ "af", 0 },
+{ "gov.af", 0 },
+{ "com.af", 0 },
+{ "org.af", 0 },
+{ "net.af", 0 },
+{ "edu.af", 0 },
+{ "ag", 0 },
+{ "com.ag", 0 },
+{ "org.ag", 0 },
+{ "net.ag", 0 },
+{ "co.ag", 0 },
+{ "nom.ag", 0 },
+{ "ai", 0 },
+{ "off.ai", 0 },
+{ "com.ai", 0 },
+{ "net.ai", 0 },
+{ "org.ai", 0 },
+{ "al", 0 },
+{ "com.al", 0 },
+{ "edu.al", 0 },
+{ "gov.al", 0 },
+{ "mil.al", 0 },
+{ "net.al", 0 },
+{ "org.al", 0 },
+{ "am", 0 },
+{ "an", 0 },
+{ "com.an", 0 },
+{ "net.an", 0 },
+{ "org.an", 0 },
+{ "edu.an", 0 },
+{ "ao", 0 },
+{ "ed.ao", 0 },
+{ "gv.ao", 0 },
+{ "og.ao", 0 },
+{ "co.ao", 0 },
+{ "pb.ao", 0 },
+{ "it.ao", 0 },
+{ "aq", 0 },
+{ "ar", 1 },
+{ "congresodelalengua3.ar", 2 },
+{ "educ.ar", 2 },
+{ "gobiernoelectronico.ar", 2 },
+{ "mecon.ar", 2 },
+{ "nacion.ar", 2 },
+{ "nic.ar", 2 },
+{ "promocion.ar", 2 },
+{ "retina.ar", 2 },
+{ "uba.ar", 2 },
+{ "e164.arpa", 0 },
+{ "in-addr.arpa", 0 },
+{ "ip6.arpa", 0 },
+{ "iris.arpa", 0 },
+{ "uri.arpa", 0 },
+{ "urn.arpa", 0 },
+{ "as", 0 },
+{ "gov.as", 0 },
+{ "asia", 0 },
+{ "at", 0 },
+{ "ac.at", 0 },
+{ "co.at", 0 },
+{ "gv.at", 0 },
+{ "or.at", 0 },
+{ "com.au", 0 },
+{ "net.au", 0 },
+{ "org.au", 0 },
+{ "edu.au", 0 },
+{ "gov.au", 0 },
+{ "csiro.au", 0 },
+{ "asn.au", 0 },
+{ "id.au", 0 },
+{ "info.au", 0 },
+{ "conf.au", 0 },
+{ "oz.au", 0 },
+{ "act.au", 0 },
+{ "nsw.au", 0 },
+{ "nt.au", 0 },
+{ "qld.au", 0 },
+{ "sa.au", 0 },
+{ "tas.au", 0 },
+{ "vic.au", 0 },
+{ "wa.au", 0 },
+{ "act.edu.au", 0 },
+{ "nsw.edu.au", 0 },
+{ "nt.edu.au", 0 },
+{ "qld.edu.au", 0 },
+{ "sa.edu.au", 0 },
+{ "tas.edu.au", 0 },
+{ "vic.edu.au", 0 },
+{ "wa.edu.au", 0 },
+{ "act.gov.au", 0 },
+{ "nt.gov.au", 0 },
+{ "qld.gov.au", 0 },
+{ "sa.gov.au", 0 },
+{ "tas.gov.au", 0 },
+{ "vic.gov.au", 0 },
+{ "wa.gov.au", 0 },
+{ "aw", 0 },
+{ "com.aw", 0 },
+{ "ax", 0 },
+{ "az", 0 },
+{ "com.az", 0 },
+{ "net.az", 0 },
+{ "int.az", 0 },
+{ "gov.az", 0 },
+{ "org.az", 0 },
+{ "edu.az", 0 },
+{ "info.az", 0 },
+{ "pp.az", 0 },
+{ "mil.az", 0 },
+{ "name.az", 0 },
+{ "pro.az", 0 },
+{ "biz.az", 0 },
+{ "ba", 0 },
+{ "org.ba", 0 },
+{ "net.ba", 0 },
+{ "edu.ba", 0 },
+{ "gov.ba", 0 },
+{ "mil.ba", 0 },
+{ "unsa.ba", 0 },
+{ "unbi.ba", 0 },
+{ "co.ba", 0 },
+{ "com.ba", 0 },
+{ "rs.ba", 0 },
+{ "bb", 0 },
+{ "biz.bb", 0 },
+{ "com.bb", 0 },
+{ "edu.bb", 0 },
+{ "gov.bb", 0 },
+{ "info.bb", 0 },
+{ "net.bb", 0 },
+{ "org.bb", 0 },
+{ "store.bb", 0 },
+{ "bd", 1 },
+{ "be", 0 },
+{ "ac.be", 0 },
+{ "bf", 0 },
+{ "gov.bf", 0 },
+{ "bg", 0 },
+{ "a.bg", 0 },
+{ "b.bg", 0 },
+{ "c.bg", 0 },
+{ "d.bg", 0 },
+{ "e.bg", 0 },
+{ "f.bg", 0 },
+{ "g.bg", 0 },
+{ "h.bg", 0 },
+{ "i.bg", 0 },
+{ "j.bg", 0 },
+{ "k.bg", 0 },
+{ "l.bg", 0 },
+{ "m.bg", 0 },
+{ "n.bg", 0 },
+{ "o.bg", 0 },
+{ "p.bg", 0 },
+{ "q.bg", 0 },
+{ "r.bg", 0 },
+{ "s.bg", 0 },
+{ "t.bg", 0 },
+{ "u.bg", 0 },
+{ "v.bg", 0 },
+{ "w.bg", 0 },
+{ "x.bg", 0 },
+{ "y.bg", 0 },
+{ "z.bg", 0 },
+{ "0.bg", 0 },
+{ "1.bg", 0 },
+{ "2.bg", 0 },
+{ "3.bg", 0 },
+{ "4.bg", 0 },
+{ "5.bg", 0 },
+{ "6.bg", 0 },
+{ "7.bg", 0 },
+{ "8.bg", 0 },
+{ "9.bg", 0 },
+{ "bh", 0 },
+{ "com.bh", 0 },
+{ "edu.bh", 0 },
+{ "net.bh", 0 },
+{ "org.bh", 0 },
+{ "gov.bh", 0 },
+{ "bi", 0 },
+{ "co.bi", 0 },
+{ "com.bi", 0 },
+{ "edu.bi", 0 },
+{ "or.bi", 0 },
+{ "org.bi", 0 },
+{ "biz", 0 },
+{ "bj", 0 },
+{ "asso.bj", 0 },
+{ "barreau.bj", 0 },
+{ "gouv.bj", 0 },
+{ "bm", 0 },
+{ "com.bm", 0 },
+{ "edu.bm", 0 },
+{ "gov.bm", 0 },
+{ "net.bm", 0 },
+{ "org.bm", 0 },
+{ "bn", 1 },
+{ "bo", 0 },
+{ "com.bo", 0 },
+{ "edu.bo", 0 },
+{ "gov.bo", 0 },
+{ "gob.bo", 0 },
+{ "int.bo", 0 },
+{ "org.bo", 0 },
+{ "net.bo", 0 },
+{ "mil.bo", 0 },
+{ "tv.bo", 0 },
+{ "br", 0 },
+{ "adm.br", 0 },
+{ "adv.br", 0 },
+{ "agr.br", 0 },
+{ "am.br", 0 },
+{ "arq.br", 0 },
+{ "art.br", 0 },
+{ "ato.br", 0 },
+{ "b.br", 0 },
+{ "bio.br", 0 },
+{ "blog.br", 0 },
+{ "bmd.br", 0 },
+{ "can.br", 0 },
+{ "cim.br", 0 },
+{ "cng.br", 0 },
+{ "cnt.br", 0 },
+{ "com.br", 0 },
+{ "coop.br", 0 },
+{ "ecn.br", 0 },
+{ "edu.br", 0 },
+{ "emp.br", 0 },
+{ "eng.br", 0 },
+{ "esp.br", 0 },
+{ "etc.br", 0 },
+{ "eti.br", 0 },
+{ "far.br", 0 },
+{ "flog.br", 0 },
+{ "fm.br", 0 },
+{ "fnd.br", 0 },
+{ "fot.br", 0 },
+{ "fst.br", 0 },
+{ "g12.br", 0 },
+{ "ggf.br", 0 },
+{ "gov.br", 0 },
+{ "imb.br", 0 },
+{ "ind.br", 0 },
+{ "inf.br", 0 },
+{ "jor.br", 0 },
+{ "jus.br", 0 },
+{ "lel.br", 0 },
+{ "mat.br", 0 },
+{ "med.br", 0 },
+{ "mil.br", 0 },
+{ "mus.br", 0 },
+{ "net.br", 0 },
+{ "nom.br", 0 },
+{ "not.br", 0 },
+{ "ntr.br", 0 },
+{ "odo.br", 0 },
+{ "org.br", 0 },
+{ "ppg.br", 0 },
+{ "pro.br", 0 },
+{ "psc.br", 0 },
+{ "psi.br", 0 },
+{ "qsl.br", 0 },
+{ "radio.br", 0 },
+{ "rec.br", 0 },
+{ "slg.br", 0 },
+{ "srv.br", 0 },
+{ "taxi.br", 0 },
+{ "teo.br", 0 },
+{ "tmp.br", 0 },
+{ "trd.br", 0 },
+{ "tur.br", 0 },
+{ "tv.br", 0 },
+{ "vet.br", 0 },
+{ "vlog.br", 0 },
+{ "wiki.br", 0 },
+{ "zlg.br", 0 },
+{ "bs", 0 },
+{ "com.bs", 0 },
+{ "net.bs", 0 },
+{ "org.bs", 0 },
+{ "edu.bs", 0 },
+{ "gov.bs", 0 },
+{ "bt", 0 },
+{ "com.bt", 0 },
+{ "edu.bt", 0 },
+{ "gov.bt", 0 },
+{ "net.bt", 0 },
+{ "org.bt", 0 },
+{ "bw", 0 },
+{ "co.bw", 0 },
+{ "org.bw", 0 },
+{ "by", 0 },
+{ "gov.by", 0 },
+{ "mil.by", 0 },
+{ "com.by", 0 },
+{ "of.by", 0 },
+{ "bz", 0 },
+{ "com.bz", 0 },
+{ "net.bz", 0 },
+{ "org.bz", 0 },
+{ "edu.bz", 0 },
+{ "gov.bz", 0 },
+{ "ca", 0 },
+{ "ab.ca", 0 },
+{ "bc.ca", 0 },
+{ "mb.ca", 0 },
+{ "nb.ca", 0 },
+{ "nf.ca", 0 },
+{ "nl.ca", 0 },
+{ "ns.ca", 0 },
+{ "nt.ca", 0 },
+{ "nu.ca", 0 },
+{ "on.ca", 0 },
+{ "pe.ca", 0 },
+{ "qc.ca", 0 },
+{ "sk.ca", 0 },
+{ "yk.ca", 0 },
+{ "gc.ca", 0 },
+{ "cat", 0 },
+{ "cc", 0 },
+{ "cd", 0 },
+{ "gov.cd", 0 },
+{ "cf", 0 },
+{ "cg", 0 },
+{ "ch", 0 },
+{ "ci", 0 },
+{ "org.ci", 0 },
+{ "or.ci", 0 },
+{ "com.ci", 0 },
+{ "co.ci", 0 },
+{ "edu.ci", 0 },
+{ "ed.ci", 0 },
+{ "ac.ci", 0 },
+{ "net.ci", 0 },
+{ "go.ci", 0 },
+{ "asso.ci", 0 },
+{ "aéroport.ci", 0 },
+{ "int.ci", 0 },
+{ "presse.ci", 0 },
+{ "md.ci", 0 },
+{ "gouv.ci", 0 },
+{ "ck", 1 },
+{ "www.ck", 2 },
+{ "cl", 0 },
+{ "gov.cl", 0 },
+{ "gob.cl", 0 },
+{ "co.cl", 0 },
+{ "mil.cl", 0 },
+{ "cm", 0 },
+{ "gov.cm", 0 },
+{ "cn", 0 },
+{ "ac.cn", 0 },
+{ "com.cn", 0 },
+{ "edu.cn", 0 },
+{ "gov.cn", 0 },
+{ "net.cn", 0 },
+{ "org.cn", 0 },
+{ "mil.cn", 0 },
+{ "公司.cn", 0 },
+{ "网络.cn", 0 },
+{ "網絡.cn", 0 },
+{ "ah.cn", 0 },
+{ "bj.cn", 0 },
+{ "cq.cn", 0 },
+{ "fj.cn", 0 },
+{ "gd.cn", 0 },
+{ "gs.cn", 0 },
+{ "gz.cn", 0 },
+{ "gx.cn", 0 },
+{ "ha.cn", 0 },
+{ "hb.cn", 0 },
+{ "he.cn", 0 },
+{ "hi.cn", 0 },
+{ "hl.cn", 0 },
+{ "hn.cn", 0 },
+{ "jl.cn", 0 },
+{ "js.cn", 0 },
+{ "jx.cn", 0 },
+{ "ln.cn", 0 },
+{ "nm.cn", 0 },
+{ "nx.cn", 0 },
+{ "qh.cn", 0 },
+{ "sc.cn", 0 },
+{ "sd.cn", 0 },
+{ "sh.cn", 0 },
+{ "sn.cn", 0 },
+{ "sx.cn", 0 },
+{ "tj.cn", 0 },
+{ "xj.cn", 0 },
+{ "xz.cn", 0 },
+{ "yn.cn", 0 },
+{ "zj.cn", 0 },
+{ "hk.cn", 0 },
+{ "mo.cn", 0 },
+{ "tw.cn", 0 },
+{ "co", 0 },
+{ "arts.co", 0 },
+{ "com.co", 0 },
+{ "edu.co", 0 },
+{ "firm.co", 0 },
+{ "gov.co", 0 },
+{ "info.co", 0 },
+{ "int.co", 0 },
+{ "mil.co", 0 },
+{ "net.co", 0 },
+{ "nom.co", 0 },
+{ "org.co", 0 },
+{ "rec.co", 0 },
+{ "web.co", 0 },
+{ "com", 0 },
+{ "coop", 0 },
+{ "cr", 0 },
+{ "ac.cr", 0 },
+{ "co.cr", 0 },
+{ "ed.cr", 0 },
+{ "fi.cr", 0 },
+{ "go.cr", 0 },
+{ "or.cr", 0 },
+{ "sa.cr", 0 },
+{ "cu", 0 },
+{ "com.cu", 0 },
+{ "edu.cu", 0 },
+{ "org.cu", 0 },
+{ "net.cu", 0 },
+{ "gov.cu", 0 },
+{ "inf.cu", 0 },
+{ "cv", 0 },
+{ "cx", 0 },
+{ "gov.cx", 0 },
+{ "cy", 1 },
+{ "cz", 0 },
+{ "de", 0 },
+{ "dj", 0 },
+{ "dk", 0 },
+{ "dm", 0 },
+{ "com.dm", 0 },
+{ "net.dm", 0 },
+{ "org.dm", 0 },
+{ "edu.dm", 0 },
+{ "gov.dm", 0 },
+{ "do", 0 },
+{ "art.do", 0 },
+{ "com.do", 0 },
+{ "edu.do", 0 },
+{ "gob.do", 0 },
+{ "gov.do", 0 },
+{ "mil.do", 0 },
+{ "net.do", 0 },
+{ "org.do", 0 },
+{ "sld.do", 0 },
+{ "web.do", 0 },
+{ "dz", 0 },
+{ "com.dz", 0 },
+{ "org.dz", 0 },
+{ "net.dz", 0 },
+{ "gov.dz", 0 },
+{ "edu.dz", 0 },
+{ "asso.dz", 0 },
+{ "pol.dz", 0 },
+{ "art.dz", 0 },
+{ "ec", 0 },
+{ "com.ec", 0 },
+{ "info.ec", 0 },
+{ "net.ec", 0 },
+{ "fin.ec", 0 },
+{ "k12.ec", 0 },
+{ "med.ec", 0 },
+{ "pro.ec", 0 },
+{ "org.ec", 0 },
+{ "edu.ec", 0 },
+{ "gov.ec", 0 },
+{ "gob.ec", 0 },
+{ "mil.ec", 0 },
+{ "edu", 0 },
+{ "ee", 0 },
+{ "edu.ee", 0 },
+{ "gov.ee", 0 },
+{ "riik.ee", 0 },
+{ "lib.ee", 0 },
+{ "med.ee", 0 },
+{ "com.ee", 0 },
+{ "pri.ee", 0 },
+{ "aip.ee", 0 },
+{ "org.ee", 0 },
+{ "fie.ee", 0 },
+{ "eg", 0 },
+{ "com.eg", 0 },
+{ "edu.eg", 0 },
+{ "eun.eg", 0 },
+{ "gov.eg", 0 },
+{ "mil.eg", 0 },
+{ "name.eg", 0 },
+{ "net.eg", 0 },
+{ "org.eg", 0 },
+{ "sci.eg", 0 },
+{ "er", 1 },
+{ "es", 0 },
+{ "com.es", 0 },
+{ "nom.es", 0 },
+{ "org.es", 0 },
+{ "gob.es", 0 },
+{ "edu.es", 0 },
+{ "et", 1 },
+{ "eu", 0 },
+{ "fi", 0 },
+{ "aland.fi", 0 },
+{ "fj", 1 },
+{ "fk", 1 },
+{ "fm", 0 },
+{ "fo", 0 },
+{ "fr", 0 },
+{ "com.fr", 0 },
+{ "asso.fr", 0 },
+{ "nom.fr", 0 },
+{ "prd.fr", 0 },
+{ "presse.fr", 0 },
+{ "tm.fr", 0 },
+{ "aeroport.fr", 0 },
+{ "assedic.fr", 0 },
+{ "avocat.fr", 0 },
+{ "avoues.fr", 0 },
+{ "cci.fr", 0 },
+{ "chambagri.fr", 0 },
+{ "chirurgiens-dentistes.fr", 0 },
+{ "experts-comptables.fr", 0 },
+{ "geometre-expert.fr", 0 },
+{ "gouv.fr", 0 },
+{ "greta.fr", 0 },
+{ "huissier-justice.fr", 0 },
+{ "medecin.fr", 0 },
+{ "notaires.fr", 0 },
+{ "pharmacien.fr", 0 },
+{ "port.fr", 0 },
+{ "veterinaire.fr", 0 },
+{ "ga", 0 },
+{ "gd", 0 },
+{ "ge", 0 },
+{ "com.ge", 0 },
+{ "edu.ge", 0 },
+{ "gov.ge", 0 },
+{ "org.ge", 0 },
+{ "mil.ge", 0 },
+{ "net.ge", 0 },
+{ "pvt.ge", 0 },
+{ "gf", 0 },
+{ "gg", 0 },
+{ "co.gg", 0 },
+{ "org.gg", 0 },
+{ "net.gg", 0 },
+{ "sch.gg", 0 },
+{ "gov.gg", 0 },
+{ "gh", 0 },
+{ "com.gh", 0 },
+{ "edu.gh", 0 },
+{ "gov.gh", 0 },
+{ "org.gh", 0 },
+{ "mil.gh", 0 },
+{ "gi", 0 },
+{ "com.gi", 0 },
+{ "ltd.gi", 0 },
+{ "gov.gi", 0 },
+{ "mod.gi", 0 },
+{ "edu.gi", 0 },
+{ "org.gi", 0 },
+{ "gl", 0 },
+{ "gm", 0 },
+{ "ac.gn", 0 },
+{ "com.gn", 0 },
+{ "edu.gn", 0 },
+{ "gov.gn", 0 },
+{ "org.gn", 0 },
+{ "net.gn", 0 },
+{ "gov", 0 },
+{ "gp", 0 },
+{ "com.gp", 0 },
+{ "net.gp", 0 },
+{ "mobi.gp", 0 },
+{ "edu.gp", 0 },
+{ "org.gp", 0 },
+{ "asso.gp", 0 },
+{ "gq", 0 },
+{ "gr", 0 },
+{ "com.gr", 0 },
+{ "edu.gr", 0 },
+{ "net.gr", 0 },
+{ "org.gr", 0 },
+{ "gov.gr", 0 },
+{ "gs", 0 },
+{ "gt", 1 },
+{ "www.gt", 2 },
+{ "gu", 1 },
+{ "gw", 0 },
+{ "gy", 0 },
+{ "co.gy", 0 },
+{ "com.gy", 0 },
+{ "net.gy", 0 },
+{ "hk", 0 },
+{ "com.hk", 0 },
+{ "edu.hk", 0 },
+{ "gov.hk", 0 },
+{ "idv.hk", 0 },
+{ "net.hk", 0 },
+{ "org.hk", 0 },
+{ "公司.hk", 0 },
+{ "教育.hk", 0 },
+{ "敎育.hk", 0 },
+{ "政府.hk", 0 },
+{ "個人.hk", 0 },
+{ "个人.hk", 0 },
+{ "箇人.hk", 0 },
+{ "網络.hk", 0 },
+{ "网络.hk", 0 },
+{ "组織.hk", 0 },
+{ "網絡.hk", 0 },
+{ "网絡.hk", 0 },
+{ "组织.hk", 0 },
+{ "組織.hk", 0 },
+{ "組织.hk", 0 },
+{ "hm", 0 },
+{ "hn", 0 },
+{ "com.hn", 0 },
+{ "edu.hn", 0 },
+{ "org.hn", 0 },
+{ "net.hn", 0 },
+{ "mil.hn", 0 },
+{ "gob.hn", 0 },
+{ "hr", 0 },
+{ "iz.hr", 0 },
+{ "from.hr", 0 },
+{ "name.hr", 0 },
+{ "com.hr", 0 },
+{ "ht", 0 },
+{ "com.ht", 0 },
+{ "shop.ht", 0 },
+{ "firm.ht", 0 },
+{ "info.ht", 0 },
+{ "adult.ht", 0 },
+{ "net.ht", 0 },
+{ "pro.ht", 0 },
+{ "org.ht", 0 },
+{ "med.ht", 0 },
+{ "art.ht", 0 },
+{ "coop.ht", 0 },
+{ "pol.ht", 0 },
+{ "asso.ht", 0 },
+{ "edu.ht", 0 },
+{ "rel.ht", 0 },
+{ "gouv.ht", 0 },
+{ "perso.ht", 0 },
+{ "hu", 0 },
+{ "co.hu", 0 },
+{ "info.hu", 0 },
+{ "org.hu", 0 },
+{ "priv.hu", 0 },
+{ "sport.hu", 0 },
+{ "tm.hu", 0 },
+{ "2000.hu", 0 },
+{ "agrar.hu", 0 },
+{ "bolt.hu", 0 },
+{ "casino.hu", 0 },
+{ "city.hu", 0 },
+{ "erotica.hu", 0 },
+{ "erotika.hu", 0 },
+{ "film.hu", 0 },
+{ "forum.hu", 0 },
+{ "games.hu", 0 },
+{ "hotel.hu", 0 },
+{ "ingatlan.hu", 0 },
+{ "jogasz.hu", 0 },
+{ "konyvelo.hu", 0 },
+{ "lakas.hu", 0 },
+{ "media.hu", 0 },
+{ "news.hu", 0 },
+{ "reklam.hu", 0 },
+{ "sex.hu", 0 },
+{ "shop.hu", 0 },
+{ "suli.hu", 0 },
+{ "szex.hu", 0 },
+{ "tozsde.hu", 0 },
+{ "utazas.hu", 0 },
+{ "video.hu", 0 },
+{ "id", 0 },
+{ "ac.id", 0 },
+{ "co.id", 0 },
+{ "go.id", 0 },
+{ "mil.id", 0 },
+{ "net.id", 0 },
+{ "or.id", 0 },
+{ "sch.id", 0 },
+{ "web.id", 0 },
+{ "ie", 0 },
+{ "gov.ie", 0 },
+{ "il", 1 },
+{ "im", 0 },
+{ "co.im", 0 },
+{ "ltd.co.im", 0 },
+{ "plc.co.im", 0 },
+{ "net.im", 0 },
+{ "gov.im", 0 },
+{ "org.im", 0 },
+{ "nic.im", 0 },
+{ "ac.im", 0 },
+{ "in", 0 },
+{ "co.in", 0 },
+{ "firm.in", 0 },
+{ "net.in", 0 },
+{ "org.in", 0 },
+{ "gen.in", 0 },
+{ "ind.in", 0 },
+{ "nic.in", 0 },
+{ "ac.in", 0 },
+{ "edu.in", 0 },
+{ "res.in", 0 },
+{ "gov.in", 0 },
+{ "mil.in", 0 },
+{ "info", 0 },
+{ "int", 0 },
+{ "eu.int", 0 },
+{ "io", 0 },
+{ "com.io", 0 },
+{ "iq", 0 },
+{ "gov.iq", 0 },
+{ "edu.iq", 0 },
+{ "mil.iq", 0 },
+{ "com.iq", 0 },
+{ "org.iq", 0 },
+{ "net.iq", 0 },
+{ "ir", 0 },
+{ "ac.ir", 0 },
+{ "co.ir", 0 },
+{ "gov.ir", 0 },
+{ "id.ir", 0 },
+{ "net.ir", 0 },
+{ "org.ir", 0 },
+{ "sch.ir", 0 },
+{ "ایران.ir", 0 },
+{ "ايران.ir", 0 },
+{ "is", 0 },
+{ "net.is", 0 },
+{ "com.is", 0 },
+{ "edu.is", 0 },
+{ "gov.is", 0 },
+{ "org.is", 0 },
+{ "int.is", 0 },
+{ "it", 0 },
+{ "gov.it", 0 },
+{ "edu.it", 0 },
+{ "agrigento.it", 0 },
+{ "ag.it", 0 },
+{ "alessandria.it", 0 },
+{ "al.it", 0 },
+{ "ancona.it", 0 },
+{ "an.it", 0 },
+{ "aosta.it", 0 },
+{ "aoste.it", 0 },
+{ "ao.it", 0 },
+{ "arezzo.it", 0 },
+{ "ar.it", 0 },
+{ "ascoli-piceno.it", 0 },
+{ "ascolipiceno.it", 0 },
+{ "ap.it", 0 },
+{ "asti.it", 0 },
+{ "at.it", 0 },
+{ "avellino.it", 0 },
+{ "av.it", 0 },
+{ "bari.it", 0 },
+{ "ba.it", 0 },
+{ "andria-barletta-trani.it", 0 },
+{ "andriabarlettatrani.it", 0 },
+{ "trani-barletta-andria.it", 0 },
+{ "tranibarlettaandria.it", 0 },
+{ "barletta-trani-andria.it", 0 },
+{ "barlettatraniandria.it", 0 },
+{ "andria-trani-barletta.it", 0 },
+{ "andriatranibarletta.it", 0 },
+{ "trani-andria-barletta.it", 0 },
+{ "traniandriabarletta.it", 0 },
+{ "bt.it", 0 },
+{ "belluno.it", 0 },
+{ "bl.it", 0 },
+{ "benevento.it", 0 },
+{ "bn.it", 0 },
+{ "bergamo.it", 0 },
+{ "bg.it", 0 },
+{ "biella.it", 0 },
+{ "bi.it", 0 },
+{ "bologna.it", 0 },
+{ "bo.it", 0 },
+{ "bolzano.it", 0 },
+{ "bozen.it", 0 },
+{ "balsan.it", 0 },
+{ "alto-adige.it", 0 },
+{ "altoadige.it", 0 },
+{ "suedtirol.it", 0 },
+{ "bz.it", 0 },
+{ "brescia.it", 0 },
+{ "bs.it", 0 },
+{ "brindisi.it", 0 },
+{ "br.it", 0 },
+{ "cagliari.it", 0 },
+{ "ca.it", 0 },
+{ "caltanissetta.it", 0 },
+{ "cl.it", 0 },
+{ "campobasso.it", 0 },
+{ "cb.it", 0 },
+{ "carboniaiglesias.it", 0 },
+{ "carbonia-iglesias.it", 0 },
+{ "iglesias-carbonia.it", 0 },
+{ "iglesiascarbonia.it", 0 },
+{ "ci.it", 0 },
+{ "caserta.it", 0 },
+{ "ce.it", 0 },
+{ "catania.it", 0 },
+{ "ct.it", 0 },
+{ "catanzaro.it", 0 },
+{ "cz.it", 0 },
+{ "chieti.it", 0 },
+{ "ch.it", 0 },
+{ "como.it", 0 },
+{ "co.it", 0 },
+{ "cosenza.it", 0 },
+{ "cs.it", 0 },
+{ "cremona.it", 0 },
+{ "cr.it", 0 },
+{ "crotone.it", 0 },
+{ "kr.it", 0 },
+{ "cuneo.it", 0 },
+{ "cn.it", 0 },
+{ "dell-ogliastra.it", 0 },
+{ "dellogliastra.it", 0 },
+{ "ogliastra.it", 0 },
+{ "og.it", 0 },
+{ "enna.it", 0 },
+{ "en.it", 0 },
+{ "ferrara.it", 0 },
+{ "fe.it", 0 },
+{ "fermo.it", 0 },
+{ "fm.it", 0 },
+{ "firenze.it", 0 },
+{ "florence.it", 0 },
+{ "fi.it", 0 },
+{ "foggia.it", 0 },
+{ "fg.it", 0 },
+{ "forli-cesena.it", 0 },
+{ "forlicesena.it", 0 },
+{ "cesena-forli.it", 0 },
+{ "cesenaforli.it", 0 },
+{ "fc.it", 0 },
+{ "frosinone.it", 0 },
+{ "fr.it", 0 },
+{ "genova.it", 0 },
+{ "genoa.it", 0 },
+{ "ge.it", 0 },
+{ "gorizia.it", 0 },
+{ "go.it", 0 },
+{ "grosseto.it", 0 },
+{ "gr.it", 0 },
+{ "imperia.it", 0 },
+{ "im.it", 0 },
+{ "isernia.it", 0 },
+{ "is.it", 0 },
+{ "laquila.it", 0 },
+{ "aquila.it", 0 },
+{ "aq.it", 0 },
+{ "la-spezia.it", 0 },
+{ "laspezia.it", 0 },
+{ "sp.it", 0 },
+{ "latina.it", 0 },
+{ "lt.it", 0 },
+{ "lecce.it", 0 },
+{ "le.it", 0 },
+{ "lecco.it", 0 },
+{ "lc.it", 0 },
+{ "livorno.it", 0 },
+{ "li.it", 0 },
+{ "lodi.it", 0 },
+{ "lo.it", 0 },
+{ "lucca.it", 0 },
+{ "lu.it", 0 },
+{ "macerata.it", 0 },
+{ "mc.it", 0 },
+{ "mantova.it", 0 },
+{ "mn.it", 0 },
+{ "massa-carrara.it", 0 },
+{ "massacarrara.it", 0 },
+{ "carrara-massa.it", 0 },
+{ "carraramassa.it", 0 },
+{ "ms.it", 0 },
+{ "matera.it", 0 },
+{ "mt.it", 0 },
+{ "medio-campidano.it", 0 },
+{ "mediocampidano.it", 0 },
+{ "campidano-medio.it", 0 },
+{ "campidanomedio.it", 0 },
+{ "vs.it", 0 },
+{ "messina.it", 0 },
+{ "me.it", 0 },
+{ "milano.it", 0 },
+{ "milan.it", 0 },
+{ "mi.it", 0 },
+{ "modena.it", 0 },
+{ "mo.it", 0 },
+{ "monza.it", 0 },
+{ "monza-brianza.it", 0 },
+{ "monzabrianza.it", 0 },
+{ "monzaebrianza.it", 0 },
+{ "monzaedellabrianza.it", 0 },
+{ "monza-e-della-brianza.it", 0 },
+{ "mb.it", 0 },
+{ "napoli.it", 0 },
+{ "naples.it", 0 },
+{ "na.it", 0 },
+{ "novara.it", 0 },
+{ "no.it", 0 },
+{ "nuoro.it", 0 },
+{ "nu.it", 0 },
+{ "oristano.it", 0 },
+{ "or.it", 0 },
+{ "padova.it", 0 },
+{ "padua.it", 0 },
+{ "pd.it", 0 },
+{ "palermo.it", 0 },
+{ "pa.it", 0 },
+{ "parma.it", 0 },
+{ "pr.it", 0 },
+{ "pavia.it", 0 },
+{ "pv.it", 0 },
+{ "perugia.it", 0 },
+{ "pg.it", 0 },
+{ "pescara.it", 0 },
+{ "pe.it", 0 },
+{ "pesaro-urbino.it", 0 },
+{ "pesarourbino.it", 0 },
+{ "urbino-pesaro.it", 0 },
+{ "urbinopesaro.it", 0 },
+{ "pu.it", 0 },
+{ "piacenza.it", 0 },
+{ "pc.it", 0 },
+{ "pisa.it", 0 },
+{ "pi.it", 0 },
+{ "pistoia.it", 0 },
+{ "pt.it", 0 },
+{ "pordenone.it", 0 },
+{ "pn.it", 0 },
+{ "potenza.it", 0 },
+{ "pz.it", 0 },
+{ "prato.it", 0 },
+{ "po.it", 0 },
+{ "ragusa.it", 0 },
+{ "rg.it", 0 },
+{ "ravenna.it", 0 },
+{ "ra.it", 0 },
+{ "reggio-calabria.it", 0 },
+{ "reggiocalabria.it", 0 },
+{ "rc.it", 0 },
+{ "reggio-emilia.it", 0 },
+{ "reggioemilia.it", 0 },
+{ "re.it", 0 },
+{ "rieti.it", 0 },
+{ "ri.it", 0 },
+{ "rimini.it", 0 },
+{ "rn.it", 0 },
+{ "roma.it", 0 },
+{ "rome.it", 0 },
+{ "rm.it", 0 },
+{ "rovigo.it", 0 },
+{ "ro.it", 0 },
+{ "salerno.it", 0 },
+{ "sa.it", 0 },
+{ "sassari.it", 0 },
+{ "ss.it", 0 },
+{ "savona.it", 0 },
+{ "sv.it", 0 },
+{ "siena.it", 0 },
+{ "si.it", 0 },
+{ "siracusa.it", 0 },
+{ "sr.it", 0 },
+{ "sondrio.it", 0 },
+{ "so.it", 0 },
+{ "taranto.it", 0 },
+{ "ta.it", 0 },
+{ "tempio-olbia.it", 0 },
+{ "tempioolbia.it", 0 },
+{ "olbia-tempio.it", 0 },
+{ "olbiatempio.it", 0 },
+{ "ot.it", 0 },
+{ "teramo.it", 0 },
+{ "te.it", 0 },
+{ "terni.it", 0 },
+{ "tr.it", 0 },
+{ "torino.it", 0 },
+{ "turin.it", 0 },
+{ "to.it", 0 },
+{ "trapani.it", 0 },
+{ "tp.it", 0 },
+{ "trento.it", 0 },
+{ "trentino.it", 0 },
+{ "tn.it", 0 },
+{ "treviso.it", 0 },
+{ "tv.it", 0 },
+{ "trieste.it", 0 },
+{ "ts.it", 0 },
+{ "udine.it", 0 },
+{ "ud.it", 0 },
+{ "varese.it", 0 },
+{ "va.it", 0 },
+{ "venezia.it", 0 },
+{ "venice.it", 0 },
+{ "ve.it", 0 },
+{ "verbania.it", 0 },
+{ "vb.it", 0 },
+{ "vercelli.it", 0 },
+{ "vc.it", 0 },
+{ "verona.it", 0 },
+{ "vr.it", 0 },
+{ "vibo-valentia.it", 0 },
+{ "vibovalentia.it", 0 },
+{ "vv.it", 0 },
+{ "vicenza.it", 0 },
+{ "vi.it", 0 },
+{ "viterbo.it", 0 },
+{ "vt.it", 0 },
+{ "je", 0 },
+{ "co.je", 0 },
+{ "org.je", 0 },
+{ "net.je", 0 },
+{ "sch.je", 0 },
+{ "gov.je", 0 },
+{ "jm", 1 },
+{ "jo", 0 },
+{ "com.jo", 0 },
+{ "org.jo", 0 },
+{ "net.jo", 0 },
+{ "edu.jo", 0 },
+{ "sch.jo", 0 },
+{ "gov.jo", 0 },
+{ "mil.jo", 0 },
+{ "name.jo", 0 },
+{ "jobs", 0 },
+{ "jp", 0 },
+{ "ac.jp", 0 },
+{ "ad.jp", 0 },
+{ "co.jp", 0 },
+{ "ed.jp", 0 },
+{ "go.jp", 0 },
+{ "gr.jp", 0 },
+{ "lg.jp", 0 },
+{ "ne.jp", 0 },
+{ "or.jp", 0 },
+{ "aichi.jp", 1 },
+{ "akita.jp", 1 },
+{ "aomori.jp", 1 },
+{ "chiba.jp", 1 },
+{ "ehime.jp", 1 },
+{ "fukui.jp", 1 },
+{ "fukuoka.jp", 1 },
+{ "fukushima.jp", 1 },
+{ "gifu.jp", 1 },
+{ "gunma.jp", 1 },
+{ "hiroshima.jp", 1 },
+{ "hokkaido.jp", 1 },
+{ "hyogo.jp", 1 },
+{ "ibaraki.jp", 1 },
+{ "ishikawa.jp", 1 },
+{ "iwate.jp", 1 },
+{ "kagawa.jp", 1 },
+{ "kagoshima.jp", 1 },
+{ "kanagawa.jp", 1 },
+{ "kawasaki.jp", 1 },
+{ "kitakyushu.jp", 1 },
+{ "kobe.jp", 1 },
+{ "kochi.jp", 1 },
+{ "kumamoto.jp", 1 },
+{ "kyoto.jp", 1 },
+{ "mie.jp", 1 },
+{ "miyagi.jp", 1 },
+{ "miyazaki.jp", 1 },
+{ "nagano.jp", 1 },
+{ "nagasaki.jp", 1 },
+{ "nagoya.jp", 1 },
+{ "nara.jp", 1 },
+{ "niigata.jp", 1 },
+{ "oita.jp", 1 },
+{ "okayama.jp", 1 },
+{ "okinawa.jp", 1 },
+{ "osaka.jp", 1 },
+{ "saga.jp", 1 },
+{ "saitama.jp", 1 },
+{ "sapporo.jp", 1 },
+{ "sendai.jp", 1 },
+{ "shiga.jp", 1 },
+{ "shimane.jp", 1 },
+{ "shizuoka.jp", 1 },
+{ "tochigi.jp", 1 },
+{ "tokushima.jp", 1 },
+{ "tokyo.jp", 1 },
+{ "tottori.jp", 1 },
+{ "toyama.jp", 1 },
+{ "wakayama.jp", 1 },
+{ "yamagata.jp", 1 },
+{ "yamaguchi.jp", 1 },
+{ "yamanashi.jp", 1 },
+{ "yokohama.jp", 1 },
+{ "metro.tokyo.jp", 2 },
+{ "pref.aichi.jp", 2 },
+{ "pref.akita.jp", 2 },
+{ "pref.aomori.jp", 2 },
+{ "pref.chiba.jp", 2 },
+{ "pref.ehime.jp", 2 },
+{ "pref.fukui.jp", 2 },
+{ "pref.fukuoka.jp", 2 },
+{ "pref.fukushima.jp", 2 },
+{ "pref.gifu.jp", 2 },
+{ "pref.gunma.jp", 2 },
+{ "pref.hiroshima.jp", 2 },
+{ "pref.hokkaido.jp", 2 },
+{ "pref.hyogo.jp", 2 },
+{ "pref.ibaraki.jp", 2 },
+{ "pref.ishikawa.jp", 2 },
+{ "pref.iwate.jp", 2 },
+{ "pref.kagawa.jp", 2 },
+{ "pref.kagoshima.jp", 2 },
+{ "pref.kanagawa.jp", 2 },
+{ "pref.kochi.jp", 2 },
+{ "pref.kumamoto.jp", 2 },
+{ "pref.kyoto.jp", 2 },
+{ "pref.mie.jp", 2 },
+{ "pref.miyagi.jp", 2 },
+{ "pref.miyazaki.jp", 2 },
+{ "pref.nagano.jp", 2 },
+{ "pref.nagasaki.jp", 2 },
+{ "pref.nara.jp", 2 },
+{ "pref.niigata.jp", 2 },
+{ "pref.oita.jp", 2 },
+{ "pref.okayama.jp", 2 },
+{ "pref.okinawa.jp", 2 },
+{ "pref.osaka.jp", 2 },
+{ "pref.saga.jp", 2 },
+{ "pref.saitama.jp", 2 },
+{ "pref.shiga.jp", 2 },
+{ "pref.shimane.jp", 2 },
+{ "pref.shizuoka.jp", 2 },
+{ "pref.tochigi.jp", 2 },
+{ "pref.tokushima.jp", 2 },
+{ "pref.tottori.jp", 2 },
+{ "pref.toyama.jp", 2 },
+{ "pref.wakayama.jp", 2 },
+{ "pref.yamagata.jp", 2 },
+{ "pref.yamaguchi.jp", 2 },
+{ "pref.yamanashi.jp", 2 },
+{ "city.chiba.jp", 2 },
+{ "city.fukuoka.jp", 2 },
+{ "city.hiroshima.jp", 2 },
+{ "city.kawasaki.jp", 2 },
+{ "city.kitakyushu.jp", 2 },
+{ "city.kobe.jp", 2 },
+{ "city.kyoto.jp", 2 },
+{ "city.nagoya.jp", 2 },
+{ "city.niigata.jp", 2 },
+{ "city.okayama.jp", 2 },
+{ "city.osaka.jp", 2 },
+{ "city.saitama.jp", 2 },
+{ "city.sapporo.jp", 2 },
+{ "city.sendai.jp", 2 },
+{ "city.shizuoka.jp", 2 },
+{ "city.yokohama.jp", 2 },
+{ "ke", 1 },
+{ "kg", 0 },
+{ "org.kg", 0 },
+{ "net.kg", 0 },
+{ "com.kg", 0 },
+{ "edu.kg", 0 },
+{ "gov.kg", 0 },
+{ "mil.kg", 0 },
+{ "kh", 1 },
+{ "ki", 0 },
+{ "edu.ki", 0 },
+{ "biz.ki", 0 },
+{ "net.ki", 0 },
+{ "org.ki", 0 },
+{ "gov.ki", 0 },
+{ "info.ki", 0 },
+{ "com.ki", 0 },
+{ "km", 0 },
+{ "org.km", 0 },
+{ "nom.km", 0 },
+{ "gov.km", 0 },
+{ "prd.km", 0 },
+{ "tm.km", 0 },
+{ "edu.km", 0 },
+{ "mil.km", 0 },
+{ "ass.km", 0 },
+{ "com.km", 0 },
+{ "coop.km", 0 },
+{ "asso.km", 0 },
+{ "presse.km", 0 },
+{ "medecin.km", 0 },
+{ "notaires.km", 0 },
+{ "pharmaciens.km", 0 },
+{ "veterinaire.km", 0 },
+{ "gouv.km", 0 },
+{ "kn", 0 },
+{ "net.kn", 0 },
+{ "org.kn", 0 },
+{ "edu.kn", 0 },
+{ "gov.kn", 0 },
+{ "com.kp", 0 },
+{ "edu.kp", 0 },
+{ "gov.kp", 0 },
+{ "org.kp", 0 },
+{ "rep.kp", 0 },
+{ "tra.kp", 0 },
+{ "kr", 0 },
+{ "ac.kr", 0 },
+{ "co.kr", 0 },
+{ "es.kr", 0 },
+{ "go.kr", 0 },
+{ "hs.kr", 0 },
+{ "kg.kr", 0 },
+{ "mil.kr", 0 },
+{ "ms.kr", 0 },
+{ "ne.kr", 0 },
+{ "or.kr", 0 },
+{ "pe.kr", 0 },
+{ "re.kr", 0 },
+{ "sc.kr", 0 },
+{ "busan.kr", 0 },
+{ "chungbuk.kr", 0 },
+{ "chungnam.kr", 0 },
+{ "daegu.kr", 0 },
+{ "daejeon.kr", 0 },
+{ "gangwon.kr", 0 },
+{ "gwangju.kr", 0 },
+{ "gyeongbuk.kr", 0 },
+{ "gyeonggi.kr", 0 },
+{ "gyeongnam.kr", 0 },
+{ "incheon.kr", 0 },
+{ "jeju.kr", 0 },
+{ "jeonbuk.kr", 0 },
+{ "jeonnam.kr", 0 },
+{ "seoul.kr", 0 },
+{ "ulsan.kr", 0 },
+{ "kw", 1 },
+{ "ky", 0 },
+{ "edu.ky", 0 },
+{ "gov.ky", 0 },
+{ "com.ky", 0 },
+{ "org.ky", 0 },
+{ "net.ky", 0 },
+{ "kz", 0 },
+{ "org.kz", 0 },
+{ "edu.kz", 0 },
+{ "net.kz", 0 },
+{ "gov.kz", 0 },
+{ "mil.kz", 0 },
+{ "com.kz", 0 },
+{ "la", 0 },
+{ "int.la", 0 },
+{ "net.la", 0 },
+{ "info.la", 0 },
+{ "edu.la", 0 },
+{ "gov.la", 0 },
+{ "per.la", 0 },
+{ "com.la", 0 },
+{ "org.la", 0 },
+{ "com.lb", 0 },
+{ "edu.lb", 0 },
+{ "gov.lb", 0 },
+{ "net.lb", 0 },
+{ "org.lb", 0 },
+{ "lc", 0 },
+{ "com.lc", 0 },
+{ "net.lc", 0 },
+{ "co.lc", 0 },
+{ "org.lc", 0 },
+{ "edu.lc", 0 },
+{ "gov.lc", 0 },
+{ "li", 0 },
+{ "lk", 0 },
+{ "gov.lk", 0 },
+{ "sch.lk", 0 },
+{ "net.lk", 0 },
+{ "int.lk", 0 },
+{ "com.lk", 0 },
+{ "org.lk", 0 },
+{ "edu.lk", 0 },
+{ "ngo.lk", 0 },
+{ "soc.lk", 0 },
+{ "web.lk", 0 },
+{ "ltd.lk", 0 },
+{ "assn.lk", 0 },
+{ "grp.lk", 0 },
+{ "hotel.lk", 0 },
+{ "com.lr", 0 },
+{ "edu.lr", 0 },
+{ "gov.lr", 0 },
+{ "org.lr", 0 },
+{ "net.lr", 0 },
+{ "ls", 0 },
+{ "co.ls", 0 },
+{ "org.ls", 0 },
+{ "lt", 0 },
+{ "gov.lt", 0 },
+{ "lu", 0 },
+{ "lv", 0 },
+{ "com.lv", 0 },
+{ "edu.lv", 0 },
+{ "gov.lv", 0 },
+{ "org.lv", 0 },
+{ "mil.lv", 0 },
+{ "id.lv", 0 },
+{ "net.lv", 0 },
+{ "asn.lv", 0 },
+{ "conf.lv", 0 },
+{ "ly", 0 },
+{ "com.ly", 0 },
+{ "net.ly", 0 },
+{ "gov.ly", 0 },
+{ "plc.ly", 0 },
+{ "edu.ly", 0 },
+{ "sch.ly", 0 },
+{ "med.ly", 0 },
+{ "org.ly", 0 },
+{ "id.ly", 0 },
+{ "ma", 0 },
+{ "co.ma", 0 },
+{ "net.ma", 0 },
+{ "gov.ma", 0 },
+{ "org.ma", 0 },
+{ "ac.ma", 0 },
+{ "press.ma", 0 },
+{ "mc", 0 },
+{ "tm.mc", 0 },
+{ "asso.mc", 0 },
+{ "md", 0 },
+{ "me", 0 },
+{ "co.me", 0 },
+{ "net.me", 0 },
+{ "org.me", 0 },
+{ "edu.me", 0 },
+{ "ac.me", 0 },
+{ "gov.me", 0 },
+{ "its.me", 0 },
+{ "priv.me", 0 },
+{ "mg", 0 },
+{ "org.mg", 0 },
+{ "nom.mg", 0 },
+{ "gov.mg", 0 },
+{ "prd.mg", 0 },
+{ "tm.mg", 0 },
+{ "edu.mg", 0 },
+{ "mil.mg", 0 },
+{ "com.mg", 0 },
+{ "mh", 0 },
+{ "mil", 0 },
+{ "mk", 0 },
+{ "com.mk", 0 },
+{ "org.mk", 0 },
+{ "net.mk", 0 },
+{ "edu.mk", 0 },
+{ "gov.mk", 0 },
+{ "inf.mk", 0 },
+{ "name.mk", 0 },
+{ "ml", 0 },
+{ "com.ml", 0 },
+{ "edu.ml", 0 },
+{ "gouv.ml", 0 },
+{ "gov.ml", 0 },
+{ "net.ml", 0 },
+{ "org.ml", 0 },
+{ "presse.ml", 0 },
+{ "mm", 1 },
+{ "mn", 0 },
+{ "gov.mn", 0 },
+{ "edu.mn", 0 },
+{ "org.mn", 0 },
+{ "mo", 0 },
+{ "com.mo", 0 },
+{ "net.mo", 0 },
+{ "org.mo", 0 },
+{ "edu.mo", 0 },
+{ "gov.mo", 0 },
+{ "mobi", 0 },
+{ "mp", 0 },
+{ "mq", 0 },
+{ "mr", 0 },
+{ "gov.mr", 0 },
+{ "ms", 0 },
+{ "mt", 1 },
+{ "mu", 0 },
+{ "com.mu", 0 },
+{ "net.mu", 0 },
+{ "org.mu", 0 },
+{ "gov.mu", 0 },
+{ "ac.mu", 0 },
+{ "co.mu", 0 },
+{ "or.mu", 0 },
+{ "museum", 0 },
+{ "academy.museum", 0 },
+{ "agriculture.museum", 0 },
+{ "air.museum", 0 },
+{ "airguard.museum", 0 },
+{ "alabama.museum", 0 },
+{ "alaska.museum", 0 },
+{ "amber.museum", 0 },
+{ "ambulance.museum", 0 },
+{ "american.museum", 0 },
+{ "americana.museum", 0 },
+{ "americanantiques.museum", 0 },
+{ "americanart.museum", 0 },
+{ "amsterdam.museum", 0 },
+{ "and.museum", 0 },
+{ "annefrank.museum", 0 },
+{ "anthro.museum", 0 },
+{ "anthropology.museum", 0 },
+{ "antiques.museum", 0 },
+{ "aquarium.museum", 0 },
+{ "arboretum.museum", 0 },
+{ "archaeological.museum", 0 },
+{ "archaeology.museum", 0 },
+{ "architecture.museum", 0 },
+{ "art.museum", 0 },
+{ "artanddesign.museum", 0 },
+{ "artcenter.museum", 0 },
+{ "artdeco.museum", 0 },
+{ "arteducation.museum", 0 },
+{ "artgallery.museum", 0 },
+{ "arts.museum", 0 },
+{ "artsandcrafts.museum", 0 },
+{ "asmatart.museum", 0 },
+{ "assassination.museum", 0 },
+{ "assisi.museum", 0 },
+{ "association.museum", 0 },
+{ "astronomy.museum", 0 },
+{ "atlanta.museum", 0 },
+{ "austin.museum", 0 },
+{ "australia.museum", 0 },
+{ "automotive.museum", 0 },
+{ "aviation.museum", 0 },
+{ "axis.museum", 0 },
+{ "badajoz.museum", 0 },
+{ "baghdad.museum", 0 },
+{ "bahn.museum", 0 },
+{ "bale.museum", 0 },
+{ "baltimore.museum", 0 },
+{ "barcelona.museum", 0 },
+{ "baseball.museum", 0 },
+{ "basel.museum", 0 },
+{ "baths.museum", 0 },
+{ "bauern.museum", 0 },
+{ "beauxarts.museum", 0 },
+{ "beeldengeluid.museum", 0 },
+{ "bellevue.museum", 0 },
+{ "bergbau.museum", 0 },
+{ "berkeley.museum", 0 },
+{ "berlin.museum", 0 },
+{ "bern.museum", 0 },
+{ "bible.museum", 0 },
+{ "bilbao.museum", 0 },
+{ "bill.museum", 0 },
+{ "birdart.museum", 0 },
+{ "birthplace.museum", 0 },
+{ "bonn.museum", 0 },
+{ "boston.museum", 0 },
+{ "botanical.museum", 0 },
+{ "botanicalgarden.museum", 0 },
+{ "botanicgarden.museum", 0 },
+{ "botany.museum", 0 },
+{ "brandywinevalley.museum", 0 },
+{ "brasil.museum", 0 },
+{ "bristol.museum", 0 },
+{ "british.museum", 0 },
+{ "britishcolumbia.museum", 0 },
+{ "broadcast.museum", 0 },
+{ "brunel.museum", 0 },
+{ "brussel.museum", 0 },
+{ "brussels.museum", 0 },
+{ "bruxelles.museum", 0 },
+{ "building.museum", 0 },
+{ "burghof.museum", 0 },
+{ "bus.museum", 0 },
+{ "bushey.museum", 0 },
+{ "cadaques.museum", 0 },
+{ "california.museum", 0 },
+{ "cambridge.museum", 0 },
+{ "can.museum", 0 },
+{ "canada.museum", 0 },
+{ "capebreton.museum", 0 },
+{ "carrier.museum", 0 },
+{ "cartoonart.museum", 0 },
+{ "casadelamoneda.museum", 0 },
+{ "castle.museum", 0 },
+{ "castres.museum", 0 },
+{ "celtic.museum", 0 },
+{ "center.museum", 0 },
+{ "chattanooga.museum", 0 },
+{ "cheltenham.museum", 0 },
+{ "chesapeakebay.museum", 0 },
+{ "chicago.museum", 0 },
+{ "children.museum", 0 },
+{ "childrens.museum", 0 },
+{ "childrensgarden.museum", 0 },
+{ "chiropractic.museum", 0 },
+{ "chocolate.museum", 0 },
+{ "christiansburg.museum", 0 },
+{ "cincinnati.museum", 0 },
+{ "cinema.museum", 0 },
+{ "circus.museum", 0 },
+{ "civilisation.museum", 0 },
+{ "civilization.museum", 0 },
+{ "civilwar.museum", 0 },
+{ "clinton.museum", 0 },
+{ "clock.museum", 0 },
+{ "coal.museum", 0 },
+{ "coastaldefence.museum", 0 },
+{ "cody.museum", 0 },
+{ "coldwar.museum", 0 },
+{ "collection.museum", 0 },
+{ "colonialwilliamsburg.museum", 0 },
+{ "coloradoplateau.museum", 0 },
+{ "columbia.museum", 0 },
+{ "columbus.museum", 0 },
+{ "communication.museum", 0 },
+{ "communications.museum", 0 },
+{ "community.museum", 0 },
+{ "computer.museum", 0 },
+{ "computerhistory.museum", 0 },
+{ "comunicações.museum", 0 },
+{ "contemporary.museum", 0 },
+{ "contemporaryart.museum", 0 },
+{ "convent.museum", 0 },
+{ "copenhagen.museum", 0 },
+{ "corporation.museum", 0 },
+{ "correios-e-telecomunicações.museum", 0 },
+{ "corvette.museum", 0 },
+{ "costume.museum", 0 },
+{ "countryestate.museum", 0 },
+{ "county.museum", 0 },
+{ "crafts.museum", 0 },
+{ "cranbrook.museum", 0 },
+{ "creation.museum", 0 },
+{ "cultural.museum", 0 },
+{ "culturalcenter.museum", 0 },
+{ "culture.museum", 0 },
+{ "cyber.museum", 0 },
+{ "cymru.museum", 0 },
+{ "dali.museum", 0 },
+{ "dallas.museum", 0 },
+{ "database.museum", 0 },
+{ "ddr.museum", 0 },
+{ "decorativearts.museum", 0 },
+{ "delaware.museum", 0 },
+{ "delmenhorst.museum", 0 },
+{ "denmark.museum", 0 },
+{ "depot.museum", 0 },
+{ "design.museum", 0 },
+{ "detroit.museum", 0 },
+{ "dinosaur.museum", 0 },
+{ "discovery.museum", 0 },
+{ "dolls.museum", 0 },
+{ "donostia.museum", 0 },
+{ "durham.museum", 0 },
+{ "eastafrica.museum", 0 },
+{ "eastcoast.museum", 0 },
+{ "education.museum", 0 },
+{ "educational.museum", 0 },
+{ "egyptian.museum", 0 },
+{ "eisenbahn.museum", 0 },
+{ "elburg.museum", 0 },
+{ "elvendrell.museum", 0 },
+{ "embroidery.museum", 0 },
+{ "encyclopedic.museum", 0 },
+{ "england.museum", 0 },
+{ "entomology.museum", 0 },
+{ "environment.museum", 0 },
+{ "environmentalconservation.museum", 0 },
+{ "epilepsy.museum", 0 },
+{ "essex.museum", 0 },
+{ "estate.museum", 0 },
+{ "ethnology.museum", 0 },
+{ "exeter.museum", 0 },
+{ "exhibition.museum", 0 },
+{ "family.museum", 0 },
+{ "farm.museum", 0 },
+{ "farmequipment.museum", 0 },
+{ "farmers.museum", 0 },
+{ "farmstead.museum", 0 },
+{ "field.museum", 0 },
+{ "figueres.museum", 0 },
+{ "filatelia.museum", 0 },
+{ "film.museum", 0 },
+{ "fineart.museum", 0 },
+{ "finearts.museum", 0 },
+{ "finland.museum", 0 },
+{ "flanders.museum", 0 },
+{ "florida.museum", 0 },
+{ "force.museum", 0 },
+{ "fortmissoula.museum", 0 },
+{ "fortworth.museum", 0 },
+{ "foundation.museum", 0 },
+{ "francaise.museum", 0 },
+{ "frankfurt.museum", 0 },
+{ "franziskaner.museum", 0 },
+{ "freemasonry.museum", 0 },
+{ "freiburg.museum", 0 },
+{ "fribourg.museum", 0 },
+{ "frog.museum", 0 },
+{ "fundacio.museum", 0 },
+{ "furniture.museum", 0 },
+{ "gallery.museum", 0 },
+{ "garden.museum", 0 },
+{ "gateway.museum", 0 },
+{ "geelvinck.museum", 0 },
+{ "gemological.museum", 0 },
+{ "geology.museum", 0 },
+{ "georgia.museum", 0 },
+{ "giessen.museum", 0 },
+{ "glas.museum", 0 },
+{ "glass.museum", 0 },
+{ "gorge.museum", 0 },
+{ "grandrapids.museum", 0 },
+{ "graz.museum", 0 },
+{ "guernsey.museum", 0 },
+{ "halloffame.museum", 0 },
+{ "hamburg.museum", 0 },
+{ "handson.museum", 0 },
+{ "harvestcelebration.museum", 0 },
+{ "hawaii.museum", 0 },
+{ "health.museum", 0 },
+{ "heimatunduhren.museum", 0 },
+{ "hellas.museum", 0 },
+{ "helsinki.museum", 0 },
+{ "hembygdsforbund.museum", 0 },
+{ "heritage.museum", 0 },
+{ "histoire.museum", 0 },
+{ "historical.museum", 0 },
+{ "historicalsociety.museum", 0 },
+{ "historichouses.museum", 0 },
+{ "historisch.museum", 0 },
+{ "historisches.museum", 0 },
+{ "history.museum", 0 },
+{ "historyofscience.museum", 0 },
+{ "horology.museum", 0 },
+{ "house.museum", 0 },
+{ "humanities.museum", 0 },
+{ "illustration.museum", 0 },
+{ "imageandsound.museum", 0 },
+{ "indian.museum", 0 },
+{ "indiana.museum", 0 },
+{ "indianapolis.museum", 0 },
+{ "indianmarket.museum", 0 },
+{ "intelligence.museum", 0 },
+{ "interactive.museum", 0 },
+{ "iraq.museum", 0 },
+{ "iron.museum", 0 },
+{ "isleofman.museum", 0 },
+{ "jamison.museum", 0 },
+{ "jefferson.museum", 0 },
+{ "jerusalem.museum", 0 },
+{ "jewelry.museum", 0 },
+{ "jewish.museum", 0 },
+{ "jewishart.museum", 0 },
+{ "jfk.museum", 0 },
+{ "journalism.museum", 0 },
+{ "judaica.museum", 0 },
+{ "judygarland.museum", 0 },
+{ "juedisches.museum", 0 },
+{ "juif.museum", 0 },
+{ "karate.museum", 0 },
+{ "karikatur.museum", 0 },
+{ "kids.museum", 0 },
+{ "koebenhavn.museum", 0 },
+{ "koeln.museum", 0 },
+{ "kunst.museum", 0 },
+{ "kunstsammlung.museum", 0 },
+{ "kunstunddesign.museum", 0 },
+{ "labor.museum", 0 },
+{ "labour.museum", 0 },
+{ "lajolla.museum", 0 },
+{ "lancashire.museum", 0 },
+{ "landes.museum", 0 },
+{ "lans.museum", 0 },
+{ "läns.museum", 0 },
+{ "larsson.museum", 0 },
+{ "lewismiller.museum", 0 },
+{ "lincoln.museum", 0 },
+{ "linz.museum", 0 },
+{ "living.museum", 0 },
+{ "livinghistory.museum", 0 },
+{ "localhistory.museum", 0 },
+{ "london.museum", 0 },
+{ "losangeles.museum", 0 },
+{ "louvre.museum", 0 },
+{ "loyalist.museum", 0 },
+{ "lucerne.museum", 0 },
+{ "luxembourg.museum", 0 },
+{ "luzern.museum", 0 },
+{ "mad.museum", 0 },
+{ "madrid.museum", 0 },
+{ "mallorca.museum", 0 },
+{ "manchester.museum", 0 },
+{ "mansion.museum", 0 },
+{ "mansions.museum", 0 },
+{ "manx.museum", 0 },
+{ "marburg.museum", 0 },
+{ "maritime.museum", 0 },
+{ "maritimo.museum", 0 },
+{ "maryland.museum", 0 },
+{ "marylhurst.museum", 0 },
+{ "media.museum", 0 },
+{ "medical.museum", 0 },
+{ "medizinhistorisches.museum", 0 },
+{ "meeres.museum", 0 },
+{ "memorial.museum", 0 },
+{ "mesaverde.museum", 0 },
+{ "michigan.museum", 0 },
+{ "midatlantic.museum", 0 },
+{ "military.museum", 0 },
+{ "mill.museum", 0 },
+{ "miners.museum", 0 },
+{ "mining.museum", 0 },
+{ "minnesota.museum", 0 },
+{ "missile.museum", 0 },
+{ "missoula.museum", 0 },
+{ "modern.museum", 0 },
+{ "moma.museum", 0 },
+{ "money.museum", 0 },
+{ "monmouth.museum", 0 },
+{ "monticello.museum", 0 },
+{ "montreal.museum", 0 },
+{ "moscow.museum", 0 },
+{ "motorcycle.museum", 0 },
+{ "muenchen.museum", 0 },
+{ "muenster.museum", 0 },
+{ "mulhouse.museum", 0 },
+{ "muncie.museum", 0 },
+{ "museet.museum", 0 },
+{ "museumcenter.museum", 0 },
+{ "museumvereniging.museum", 0 },
+{ "music.museum", 0 },
+{ "national.museum", 0 },
+{ "nationalfirearms.museum", 0 },
+{ "nationalheritage.museum", 0 },
+{ "nativeamerican.museum", 0 },
+{ "naturalhistory.museum", 0 },
+{ "naturalhistorymuseum.museum", 0 },
+{ "naturalsciences.museum", 0 },
+{ "nature.museum", 0 },
+{ "naturhistorisches.museum", 0 },
+{ "natuurwetenschappen.museum", 0 },
+{ "naumburg.museum", 0 },
+{ "naval.museum", 0 },
+{ "nebraska.museum", 0 },
+{ "neues.museum", 0 },
+{ "newhampshire.museum", 0 },
+{ "newjersey.museum", 0 },
+{ "newmexico.museum", 0 },
+{ "newport.museum", 0 },
+{ "newspaper.museum", 0 },
+{ "newyork.museum", 0 },
+{ "niepce.museum", 0 },
+{ "norfolk.museum", 0 },
+{ "north.museum", 0 },
+{ "nrw.museum", 0 },
+{ "nuernberg.museum", 0 },
+{ "nuremberg.museum", 0 },
+{ "nyc.museum", 0 },
+{ "nyny.museum", 0 },
+{ "oceanographic.museum", 0 },
+{ "oceanographique.museum", 0 },
+{ "omaha.museum", 0 },
+{ "online.museum", 0 },
+{ "ontario.museum", 0 },
+{ "openair.museum", 0 },
+{ "oregon.museum", 0 },
+{ "oregontrail.museum", 0 },
+{ "otago.museum", 0 },
+{ "oxford.museum", 0 },
+{ "pacific.museum", 0 },
+{ "paderborn.museum", 0 },
+{ "palace.museum", 0 },
+{ "paleo.museum", 0 },
+{ "palmsprings.museum", 0 },
+{ "panama.museum", 0 },
+{ "paris.museum", 0 },
+{ "pasadena.museum", 0 },
+{ "pharmacy.museum", 0 },
+{ "philadelphia.museum", 0 },
+{ "philadelphiaarea.museum", 0 },
+{ "philately.museum", 0 },
+{ "phoenix.museum", 0 },
+{ "photography.museum", 0 },
+{ "pilots.museum", 0 },
+{ "pittsburgh.museum", 0 },
+{ "planetarium.museum", 0 },
+{ "plantation.museum", 0 },
+{ "plants.museum", 0 },
+{ "plaza.museum", 0 },
+{ "portal.museum", 0 },
+{ "portland.museum", 0 },
+{ "portlligat.museum", 0 },
+{ "posts-and-telecommunications.museum", 0 },
+{ "preservation.museum", 0 },
+{ "presidio.museum", 0 },
+{ "press.museum", 0 },
+{ "project.museum", 0 },
+{ "public.museum", 0 },
+{ "pubol.museum", 0 },
+{ "quebec.museum", 0 },
+{ "railroad.museum", 0 },
+{ "railway.museum", 0 },
+{ "research.museum", 0 },
+{ "resistance.museum", 0 },
+{ "riodejaneiro.museum", 0 },
+{ "rochester.museum", 0 },
+{ "rockart.museum", 0 },
+{ "roma.museum", 0 },
+{ "russia.museum", 0 },
+{ "saintlouis.museum", 0 },
+{ "salem.museum", 0 },
+{ "salvadordali.museum", 0 },
+{ "salzburg.museum", 0 },
+{ "sandiego.museum", 0 },
+{ "sanfrancisco.museum", 0 },
+{ "santabarbara.museum", 0 },
+{ "santacruz.museum", 0 },
+{ "santafe.museum", 0 },
+{ "saskatchewan.museum", 0 },
+{ "satx.museum", 0 },
+{ "savannahga.museum", 0 },
+{ "schlesisches.museum", 0 },
+{ "schoenbrunn.museum", 0 },
+{ "schokoladen.museum", 0 },
+{ "school.museum", 0 },
+{ "schweiz.museum", 0 },
+{ "science.museum", 0 },
+{ "scienceandhistory.museum", 0 },
+{ "scienceandindustry.museum", 0 },
+{ "sciencecenter.museum", 0 },
+{ "sciencecenters.museum", 0 },
+{ "science-fiction.museum", 0 },
+{ "sciencehistory.museum", 0 },
+{ "sciences.museum", 0 },
+{ "sciencesnaturelles.museum", 0 },
+{ "scotland.museum", 0 },
+{ "seaport.museum", 0 },
+{ "settlement.museum", 0 },
+{ "settlers.museum", 0 },
+{ "shell.museum", 0 },
+{ "sherbrooke.museum", 0 },
+{ "sibenik.museum", 0 },
+{ "silk.museum", 0 },
+{ "ski.museum", 0 },
+{ "skole.museum", 0 },
+{ "society.museum", 0 },
+{ "sologne.museum", 0 },
+{ "soundandvision.museum", 0 },
+{ "southcarolina.museum", 0 },
+{ "southwest.museum", 0 },
+{ "space.museum", 0 },
+{ "spy.museum", 0 },
+{ "square.museum", 0 },
+{ "stadt.museum", 0 },
+{ "stalbans.museum", 0 },
+{ "starnberg.museum", 0 },
+{ "state.museum", 0 },
+{ "stateofdelaware.museum", 0 },
+{ "station.museum", 0 },
+{ "steam.museum", 0 },
+{ "steiermark.museum", 0 },
+{ "stjohn.museum", 0 },
+{ "stockholm.museum", 0 },
+{ "stpetersburg.museum", 0 },
+{ "stuttgart.museum", 0 },
+{ "suisse.museum", 0 },
+{ "surgeonshall.museum", 0 },
+{ "surrey.museum", 0 },
+{ "svizzera.museum", 0 },
+{ "sweden.museum", 0 },
+{ "sydney.museum", 0 },
+{ "tank.museum", 0 },
+{ "tcm.museum", 0 },
+{ "technology.museum", 0 },
+{ "telekommunikation.museum", 0 },
+{ "television.museum", 0 },
+{ "texas.museum", 0 },
+{ "textile.museum", 0 },
+{ "theater.museum", 0 },
+{ "time.museum", 0 },
+{ "timekeeping.museum", 0 },
+{ "topology.museum", 0 },
+{ "torino.museum", 0 },
+{ "touch.museum", 0 },
+{ "town.museum", 0 },
+{ "transport.museum", 0 },
+{ "tree.museum", 0 },
+{ "trolley.museum", 0 },
+{ "trust.museum", 0 },
+{ "trustee.museum", 0 },
+{ "uhren.museum", 0 },
+{ "ulm.museum", 0 },
+{ "undersea.museum", 0 },
+{ "university.museum", 0 },
+{ "usa.museum", 0 },
+{ "usantiques.museum", 0 },
+{ "usarts.museum", 0 },
+{ "uscountryestate.museum", 0 },
+{ "usculture.museum", 0 },
+{ "usdecorativearts.museum", 0 },
+{ "usgarden.museum", 0 },
+{ "ushistory.museum", 0 },
+{ "ushuaia.museum", 0 },
+{ "uslivinghistory.museum", 0 },
+{ "utah.museum", 0 },
+{ "uvic.museum", 0 },
+{ "valley.museum", 0 },
+{ "vantaa.museum", 0 },
+{ "versailles.museum", 0 },
+{ "viking.museum", 0 },
+{ "village.museum", 0 },
+{ "virginia.museum", 0 },
+{ "virtual.museum", 0 },
+{ "virtuel.museum", 0 },
+{ "vlaanderen.museum", 0 },
+{ "volkenkunde.museum", 0 },
+{ "wales.museum", 0 },
+{ "wallonie.museum", 0 },
+{ "war.museum", 0 },
+{ "washingtondc.museum", 0 },
+{ "watchandclock.museum", 0 },
+{ "watch-and-clock.museum", 0 },
+{ "western.museum", 0 },
+{ "westfalen.museum", 0 },
+{ "whaling.museum", 0 },
+{ "wildlife.museum", 0 },
+{ "williamsburg.museum", 0 },
+{ "windmill.museum", 0 },
+{ "workshop.museum", 0 },
+{ "york.museum", 0 },
+{ "yorkshire.museum", 0 },
+{ "yosemite.museum", 0 },
+{ "youth.museum", 0 },
+{ "zoological.museum", 0 },
+{ "zoology.museum", 0 },
+{ "ירושלים.museum", 0 },
+{ "иком.museum", 0 },
+{ "mv", 0 },
+{ "aero.mv", 0 },
+{ "biz.mv", 0 },
+{ "com.mv", 0 },
+{ "coop.mv", 0 },
+{ "edu.mv", 0 },
+{ "gov.mv", 0 },
+{ "info.mv", 0 },
+{ "int.mv", 0 },
+{ "mil.mv", 0 },
+{ "museum.mv", 0 },
+{ "name.mv", 0 },
+{ "net.mv", 0 },
+{ "org.mv", 0 },
+{ "pro.mv", 0 },
+{ "mw", 0 },
+{ "ac.mw", 0 },
+{ "biz.mw", 0 },
+{ "co.mw", 0 },
+{ "com.mw", 0 },
+{ "coop.mw", 0 },
+{ "edu.mw", 0 },
+{ "gov.mw", 0 },
+{ "int.mw", 0 },
+{ "museum.mw", 0 },
+{ "net.mw", 0 },
+{ "org.mw", 0 },
+{ "mx", 0 },
+{ "com.mx", 0 },
+{ "org.mx", 0 },
+{ "gob.mx", 0 },
+{ "edu.mx", 0 },
+{ "net.mx", 0 },
+{ "my", 0 },
+{ "com.my", 0 },
+{ "net.my", 0 },
+{ "org.my", 0 },
+{ "gov.my", 0 },
+{ "edu.my", 0 },
+{ "mil.my", 0 },
+{ "name.my", 0 },
+{ "mz", 1 },
+{ "na", 0 },
+{ "info.na", 0 },
+{ "pro.na", 0 },
+{ "name.na", 0 },
+{ "school.na", 0 },
+{ "or.na", 0 },
+{ "dr.na", 0 },
+{ "us.na", 0 },
+{ "mx.na", 0 },
+{ "ca.na", 0 },
+{ "in.na", 0 },
+{ "cc.na", 0 },
+{ "tv.na", 0 },
+{ "ws.na", 0 },
+{ "mobi.na", 0 },
+{ "co.na", 0 },
+{ "com.na", 0 },
+{ "org.na", 0 },
+{ "name", 0 },
+{ "nc", 0 },
+{ "asso.nc", 0 },
+{ "ne", 0 },
+{ "net", 0 },
+{ "nf", 0 },
+{ "com.nf", 0 },
+{ "net.nf", 0 },
+{ "per.nf", 0 },
+{ "rec.nf", 0 },
+{ "web.nf", 0 },
+{ "arts.nf", 0 },
+{ "firm.nf", 0 },
+{ "info.nf", 0 },
+{ "other.nf", 0 },
+{ "store.nf", 0 },
+{ "ac.ng", 0 },
+{ "com.ng", 0 },
+{ "edu.ng", 0 },
+{ "gov.ng", 0 },
+{ "net.ng", 0 },
+{ "org.ng", 0 },
+{ "ni", 1 },
+{ "nl", 0 },
+{ "bv.nl", 0 },
+{ "no", 0 },
+{ "fhs.no", 0 },
+{ "vgs.no", 0 },
+{ "fylkesbibl.no", 0 },
+{ "folkebibl.no", 0 },
+{ "museum.no", 0 },
+{ "idrett.no", 0 },
+{ "priv.no", 0 },
+{ "mil.no", 0 },
+{ "stat.no", 0 },
+{ "dep.no", 0 },
+{ "kommune.no", 0 },
+{ "herad.no", 0 },
+{ "aa.no", 0 },
+{ "ah.no", 0 },
+{ "bu.no", 0 },
+{ "fm.no", 0 },
+{ "hl.no", 0 },
+{ "hm.no", 0 },
+{ "jan-mayen.no", 0 },
+{ "mr.no", 0 },
+{ "nl.no", 0 },
+{ "nt.no", 0 },
+{ "of.no", 0 },
+{ "ol.no", 0 },
+{ "oslo.no", 0 },
+{ "rl.no", 0 },
+{ "sf.no", 0 },
+{ "st.no", 0 },
+{ "svalbard.no", 0 },
+{ "tm.no", 0 },
+{ "tr.no", 0 },
+{ "va.no", 0 },
+{ "vf.no", 0 },
+{ "gs.aa.no", 0 },
+{ "gs.ah.no", 0 },
+{ "gs.bu.no", 0 },
+{ "gs.fm.no", 0 },
+{ "gs.hl.no", 0 },
+{ "gs.hm.no", 0 },
+{ "gs.jan-mayen.no", 0 },
+{ "gs.mr.no", 0 },
+{ "gs.nl.no", 0 },
+{ "gs.nt.no", 0 },
+{ "gs.of.no", 0 },
+{ "gs.ol.no", 0 },
+{ "gs.oslo.no", 0 },
+{ "gs.rl.no", 0 },
+{ "gs.sf.no", 0 },
+{ "gs.st.no", 0 },
+{ "gs.svalbard.no", 0 },
+{ "gs.tm.no", 0 },
+{ "gs.tr.no", 0 },
+{ "gs.va.no", 0 },
+{ "gs.vf.no", 0 },
+{ "akrehamn.no", 0 },
+{ "åkrehamn.no", 0 },
+{ "algard.no", 0 },
+{ "ålgård.no", 0 },
+{ "arna.no", 0 },
+{ "brumunddal.no", 0 },
+{ "bryne.no", 0 },
+{ "bronnoysund.no", 0 },
+{ "brønnøysund.no", 0 },
+{ "drobak.no", 0 },
+{ "drøbak.no", 0 },
+{ "egersund.no", 0 },
+{ "fetsund.no", 0 },
+{ "floro.no", 0 },
+{ "florø.no", 0 },
+{ "fredrikstad.no", 0 },
+{ "hokksund.no", 0 },
+{ "honefoss.no", 0 },
+{ "hønefoss.no", 0 },
+{ "jessheim.no", 0 },
+{ "jorpeland.no", 0 },
+{ "jørpeland.no", 0 },
+{ "kirkenes.no", 0 },
+{ "kopervik.no", 0 },
+{ "krokstadelva.no", 0 },
+{ "langevag.no", 0 },
+{ "langevåg.no", 0 },
+{ "leirvik.no", 0 },
+{ "mjondalen.no", 0 },
+{ "mjøndalen.no", 0 },
+{ "mo-i-rana.no", 0 },
+{ "mosjoen.no", 0 },
+{ "mosjøen.no", 0 },
+{ "nesoddtangen.no", 0 },
+{ "orkanger.no", 0 },
+{ "osoyro.no", 0 },
+{ "osøyro.no", 0 },
+{ "raholt.no", 0 },
+{ "råholt.no", 0 },
+{ "sandnessjoen.no", 0 },
+{ "sandnessjøen.no", 0 },
+{ "skedsmokorset.no", 0 },
+{ "slattum.no", 0 },
+{ "spjelkavik.no", 0 },
+{ "stathelle.no", 0 },
+{ "stavern.no", 0 },
+{ "stjordalshalsen.no", 0 },
+{ "stjørdalshalsen.no", 0 },
+{ "tananger.no", 0 },
+{ "tranby.no", 0 },
+{ "vossevangen.no", 0 },
+{ "afjord.no", 0 },
+{ "åfjord.no", 0 },
+{ "agdenes.no", 0 },
+{ "al.no", 0 },
+{ "ål.no", 0 },
+{ "alesund.no", 0 },
+{ "ålesund.no", 0 },
+{ "alstahaug.no", 0 },
+{ "alta.no", 0 },
+{ "áltá.no", 0 },
+{ "alaheadju.no", 0 },
+{ "álaheadju.no", 0 },
+{ "alvdal.no", 0 },
+{ "amli.no", 0 },
+{ "åmli.no", 0 },
+{ "amot.no", 0 },
+{ "åmot.no", 0 },
+{ "andebu.no", 0 },
+{ "andoy.no", 0 },
+{ "andøy.no", 0 },
+{ "andasuolo.no", 0 },
+{ "ardal.no", 0 },
+{ "årdal.no", 0 },
+{ "aremark.no", 0 },
+{ "arendal.no", 0 },
+{ "ås.no", 0 },
+{ "aseral.no", 0 },
+{ "åseral.no", 0 },
+{ "asker.no", 0 },
+{ "askim.no", 0 },
+{ "askvoll.no", 0 },
+{ "askoy.no", 0 },
+{ "askøy.no", 0 },
+{ "asnes.no", 0 },
+{ "åsnes.no", 0 },
+{ "audnedaln.no", 0 },
+{ "aukra.no", 0 },
+{ "aure.no", 0 },
+{ "aurland.no", 0 },
+{ "aurskog-holand.no", 0 },
+{ "aurskog-høland.no", 0 },
+{ "austevoll.no", 0 },
+{ "austrheim.no", 0 },
+{ "averoy.no", 0 },
+{ "averøy.no", 0 },
+{ "balestrand.no", 0 },
+{ "ballangen.no", 0 },
+{ "balat.no", 0 },
+{ "bálát.no", 0 },
+{ "balsfjord.no", 0 },
+{ "bahccavuotna.no", 0 },
+{ "báhccavuotna.no", 0 },
+{ "bamble.no", 0 },
+{ "bardu.no", 0 },
+{ "beardu.no", 0 },
+{ "beiarn.no", 0 },
+{ "bajddar.no", 0 },
+{ "bájddar.no", 0 },
+{ "baidar.no", 0 },
+{ "báidár.no", 0 },
+{ "berg.no", 0 },
+{ "bergen.no", 0 },
+{ "berlevag.no", 0 },
+{ "berlevåg.no", 0 },
+{ "bearalvahki.no", 0 },
+{ "bearalváhki.no", 0 },
+{ "bindal.no", 0 },
+{ "birkenes.no", 0 },
+{ "bjarkoy.no", 0 },
+{ "bjarkøy.no", 0 },
+{ "bjerkreim.no", 0 },
+{ "bjugn.no", 0 },
+{ "bodo.no", 0 },
+{ "bodø.no", 0 },
+{ "badaddja.no", 0 },
+{ "bådåddjå.no", 0 },
+{ "budejju.no", 0 },
+{ "bokn.no", 0 },
+{ "bremanger.no", 0 },
+{ "bronnoy.no", 0 },
+{ "brønnøy.no", 0 },
+{ "bygland.no", 0 },
+{ "bykle.no", 0 },
+{ "barum.no", 0 },
+{ "bærum.no", 0 },
+{ "bo.telemark.no", 0 },
+{ "bø.telemark.no", 0 },
+{ "bo.nordland.no", 0 },
+{ "bø.nordland.no", 0 },
+{ "bievat.no", 0 },
+{ "bievát.no", 0 },
+{ "bomlo.no", 0 },
+{ "bømlo.no", 0 },
+{ "batsfjord.no", 0 },
+{ "båtsfjord.no", 0 },
+{ "bahcavuotna.no", 0 },
+{ "báhcavuotna.no", 0 },
+{ "dovre.no", 0 },
+{ "drammen.no", 0 },
+{ "drangedal.no", 0 },
+{ "dyroy.no", 0 },
+{ "dyrøy.no", 0 },
+{ "donna.no", 0 },
+{ "dønna.no", 0 },
+{ "eid.no", 0 },
+{ "eidfjord.no", 0 },
+{ "eidsberg.no", 0 },
+{ "eidskog.no", 0 },
+{ "eidsvoll.no", 0 },
+{ "eigersund.no", 0 },
+{ "elverum.no", 0 },
+{ "enebakk.no", 0 },
+{ "engerdal.no", 0 },
+{ "etne.no", 0 },
+{ "etnedal.no", 0 },
+{ "evenes.no", 0 },
+{ "evenassi.no", 0 },
+{ "evenášši.no", 0 },
+{ "evje-og-hornnes.no", 0 },
+{ "farsund.no", 0 },
+{ "fauske.no", 0 },
+{ "fuossko.no", 0 },
+{ "fuoisku.no", 0 },
+{ "fedje.no", 0 },
+{ "fet.no", 0 },
+{ "finnoy.no", 0 },
+{ "finnøy.no", 0 },
+{ "fitjar.no", 0 },
+{ "fjaler.no", 0 },
+{ "fjell.no", 0 },
+{ "flakstad.no", 0 },
+{ "flatanger.no", 0 },
+{ "flekkefjord.no", 0 },
+{ "flesberg.no", 0 },
+{ "flora.no", 0 },
+{ "fla.no", 0 },
+{ "flå.no", 0 },
+{ "folldal.no", 0 },
+{ "forsand.no", 0 },
+{ "fosnes.no", 0 },
+{ "frei.no", 0 },
+{ "frogn.no", 0 },
+{ "froland.no", 0 },
+{ "frosta.no", 0 },
+{ "frana.no", 0 },
+{ "fræna.no", 0 },
+{ "froya.no", 0 },
+{ "frøya.no", 0 },
+{ "fusa.no", 0 },
+{ "fyresdal.no", 0 },
+{ "forde.no", 0 },
+{ "førde.no", 0 },
+{ "gamvik.no", 0 },
+{ "gangaviika.no", 0 },
+{ "gáŋgaviika.no", 0 },
+{ "gaular.no", 0 },
+{ "gausdal.no", 0 },
+{ "gildeskal.no", 0 },
+{ "gildeskål.no", 0 },
+{ "giske.no", 0 },
+{ "gjemnes.no", 0 },
+{ "gjerdrum.no", 0 },
+{ "gjerstad.no", 0 },
+{ "gjesdal.no", 0 },
+{ "gjovik.no", 0 },
+{ "gjøvik.no", 0 },
+{ "gloppen.no", 0 },
+{ "gol.no", 0 },
+{ "gran.no", 0 },
+{ "grane.no", 0 },
+{ "granvin.no", 0 },
+{ "gratangen.no", 0 },
+{ "grimstad.no", 0 },
+{ "grong.no", 0 },
+{ "kraanghke.no", 0 },
+{ "kråanghke.no", 0 },
+{ "grue.no", 0 },
+{ "gulen.no", 0 },
+{ "hadsel.no", 0 },
+{ "halden.no", 0 },
+{ "halsa.no", 0 },
+{ "hamar.no", 0 },
+{ "hamaroy.no", 0 },
+{ "habmer.no", 0 },
+{ "hábmer.no", 0 },
+{ "hapmir.no", 0 },
+{ "hápmir.no", 0 },
+{ "hammerfest.no", 0 },
+{ "hammarfeasta.no", 0 },
+{ "hámmárfeasta.no", 0 },
+{ "haram.no", 0 },
+{ "hareid.no", 0 },
+{ "harstad.no", 0 },
+{ "hasvik.no", 0 },
+{ "aknoluokta.no", 0 },
+{ "ákŋoluokta.no", 0 },
+{ "hattfjelldal.no", 0 },
+{ "aarborte.no", 0 },
+{ "haugesund.no", 0 },
+{ "hemne.no", 0 },
+{ "hemnes.no", 0 },
+{ "hemsedal.no", 0 },
+{ "heroy.more-og-romsdal.no", 0 },
+{ "herøy.møre-og-romsdal.no", 0 },
+{ "heroy.nordland.no", 0 },
+{ "herøy.nordland.no", 0 },
+{ "hitra.no", 0 },
+{ "hjartdal.no", 0 },
+{ "hjelmeland.no", 0 },
+{ "hobol.no", 0 },
+{ "hobøl.no", 0 },
+{ "hof.no", 0 },
+{ "hol.no", 0 },
+{ "hole.no", 0 },
+{ "holmestrand.no", 0 },
+{ "holtalen.no", 0 },
+{ "holtålen.no", 0 },
+{ "hornindal.no", 0 },
+{ "horten.no", 0 },
+{ "hurdal.no", 0 },
+{ "hurum.no", 0 },
+{ "hvaler.no", 0 },
+{ "hyllestad.no", 0 },
+{ "hagebostad.no", 0 },
+{ "hægebostad.no", 0 },
+{ "hoyanger.no", 0 },
+{ "høyanger.no", 0 },
+{ "hoylandet.no", 0 },
+{ "høylandet.no", 0 },
+{ "ha.no", 0 },
+{ "hå.no", 0 },
+{ "ibestad.no", 0 },
+{ "inderoy.no", 0 },
+{ "inderøy.no", 0 },
+{ "iveland.no", 0 },
+{ "jevnaker.no", 0 },
+{ "jondal.no", 0 },
+{ "jolster.no", 0 },
+{ "jølster.no", 0 },
+{ "karasjok.no", 0 },
+{ "karasjohka.no", 0 },
+{ "kárášjohka.no", 0 },
+{ "karlsoy.no", 0 },
+{ "galsa.no", 0 },
+{ "gálsá.no", 0 },
+{ "karmoy.no", 0 },
+{ "karmøy.no", 0 },
+{ "kautokeino.no", 0 },
+{ "guovdageaidnu.no", 0 },
+{ "klepp.no", 0 },
+{ "klabu.no", 0 },
+{ "klæbu.no", 0 },
+{ "kongsberg.no", 0 },
+{ "kongsvinger.no", 0 },
+{ "kragero.no", 0 },
+{ "kragerø.no", 0 },
+{ "kristiansand.no", 0 },
+{ "kristiansund.no", 0 },
+{ "krodsherad.no", 0 },
+{ "krødsherad.no", 0 },
+{ "kvalsund.no", 0 },
+{ "rahkkeravju.no", 0 },
+{ "ráhkkerávju.no", 0 },
+{ "kvam.no", 0 },
+{ "kvinesdal.no", 0 },
+{ "kvinnherad.no", 0 },
+{ "kviteseid.no", 0 },
+{ "kvitsoy.no", 0 },
+{ "kvitsøy.no", 0 },
+{ "kvafjord.no", 0 },
+{ "kvæfjord.no", 0 },
+{ "giehtavuoatna.no", 0 },
+{ "kvanangen.no", 0 },
+{ "kvænangen.no", 0 },
+{ "navuotna.no", 0 },
+{ "návuotna.no", 0 },
+{ "kafjord.no", 0 },
+{ "kåfjord.no", 0 },
+{ "gaivuotna.no", 0 },
+{ "gáivuotna.no", 0 },
+{ "larvik.no", 0 },
+{ "lavangen.no", 0 },
+{ "lavagis.no", 0 },
+{ "loabat.no", 0 },
+{ "loabát.no", 0 },
+{ "lebesby.no", 0 },
+{ "davvesiida.no", 0 },
+{ "leikanger.no", 0 },
+{ "leirfjord.no", 0 },
+{ "leka.no", 0 },
+{ "leksvik.no", 0 },
+{ "lenvik.no", 0 },
+{ "leangaviika.no", 0 },
+{ "leaŋgaviika.no", 0 },
+{ "lesja.no", 0 },
+{ "levanger.no", 0 },
+{ "lier.no", 0 },
+{ "lierne.no", 0 },
+{ "lillehammer.no", 0 },
+{ "lillesand.no", 0 },
+{ "lindesnes.no", 0 },
+{ "lindas.no", 0 },
+{ "lindås.no", 0 },
+{ "lom.no", 0 },
+{ "loppa.no", 0 },
+{ "lahppi.no", 0 },
+{ "láhppi.no", 0 },
+{ "lund.no", 0 },
+{ "lunner.no", 0 },
+{ "luroy.no", 0 },
+{ "lurøy.no", 0 },
+{ "luster.no", 0 },
+{ "lyngdal.no", 0 },
+{ "lyngen.no", 0 },
+{ "ivgu.no", 0 },
+{ "lardal.no", 0 },
+{ "lerdal.no", 0 },
+{ "lærdal.no", 0 },
+{ "lodingen.no", 0 },
+{ "lødingen.no", 0 },
+{ "lorenskog.no", 0 },
+{ "lørenskog.no", 0 },
+{ "loten.no", 0 },
+{ "løten.no", 0 },
+{ "malvik.no", 0 },
+{ "masoy.no", 0 },
+{ "måsøy.no", 0 },
+{ "muosat.no", 0 },
+{ "muosát.no", 0 },
+{ "mandal.no", 0 },
+{ "marker.no", 0 },
+{ "marnardal.no", 0 },
+{ "masfjorden.no", 0 },
+{ "meland.no", 0 },
+{ "meldal.no", 0 },
+{ "melhus.no", 0 },
+{ "meloy.no", 0 },
+{ "meløy.no", 0 },
+{ "meraker.no", 0 },
+{ "meråker.no", 0 },
+{ "moareke.no", 0 },
+{ "moåreke.no", 0 },
+{ "midsund.no", 0 },
+{ "midtre-gauldal.no", 0 },
+{ "modalen.no", 0 },
+{ "modum.no", 0 },
+{ "molde.no", 0 },
+{ "moskenes.no", 0 },
+{ "moss.no", 0 },
+{ "mosvik.no", 0 },
+{ "malselv.no", 0 },
+{ "målselv.no", 0 },
+{ "malatvuopmi.no", 0 },
+{ "málatvuopmi.no", 0 },
+{ "namdalseid.no", 0 },
+{ "aejrie.no", 0 },
+{ "namsos.no", 0 },
+{ "namsskogan.no", 0 },
+{ "naamesjevuemie.no", 0 },
+{ "nååmesjevuemie.no", 0 },
+{ "laakesvuemie.no", 0 },
+{ "nannestad.no", 0 },
+{ "narvik.no", 0 },
+{ "narviika.no", 0 },
+{ "naustdal.no", 0 },
+{ "nedre-eiker.no", 0 },
+{ "nes.akershus.no", 0 },
+{ "nes.buskerud.no", 0 },
+{ "nesna.no", 0 },
+{ "nesodden.no", 0 },
+{ "nesseby.no", 0 },
+{ "unjarga.no", 0 },
+{ "unjárga.no", 0 },
+{ "nesset.no", 0 },
+{ "nissedal.no", 0 },
+{ "nittedal.no", 0 },
+{ "nord-aurdal.no", 0 },
+{ "nord-fron.no", 0 },
+{ "nord-odal.no", 0 },
+{ "norddal.no", 0 },
+{ "nordkapp.no", 0 },
+{ "davvenjarga.no", 0 },
+{ "davvenjárga.no", 0 },
+{ "nordre-land.no", 0 },
+{ "nordreisa.no", 0 },
+{ "raisa.no", 0 },
+{ "ráisa.no", 0 },
+{ "nore-og-uvdal.no", 0 },
+{ "notodden.no", 0 },
+{ "naroy.no", 0 },
+{ "nærøy.no", 0 },
+{ "notteroy.no", 0 },
+{ "nøtterøy.no", 0 },
+{ "odda.no", 0 },
+{ "oksnes.no", 0 },
+{ "øksnes.no", 0 },
+{ "oppdal.no", 0 },
+{ "oppegard.no", 0 },
+{ "oppegård.no", 0 },
+{ "orkdal.no", 0 },
+{ "orland.no", 0 },
+{ "ørland.no", 0 },
+{ "orskog.no", 0 },
+{ "ørskog.no", 0 },
+{ "orsta.no", 0 },
+{ "ørsta.no", 0 },
+{ "os.hedmark.no", 0 },
+{ "os.hordaland.no", 0 },
+{ "osen.no", 0 },
+{ "osteroy.no", 0 },
+{ "osterøy.no", 0 },
+{ "ostre-toten.no", 0 },
+{ "østre-toten.no", 0 },
+{ "overhalla.no", 0 },
+{ "ovre-eiker.no", 0 },
+{ "øvre-eiker.no", 0 },
+{ "oyer.no", 0 },
+{ "øyer.no", 0 },
+{ "oygarden.no", 0 },
+{ "øygarden.no", 0 },
+{ "oystre-slidre.no", 0 },
+{ "øystre-slidre.no", 0 },
+{ "porsanger.no", 0 },
+{ "porsangu.no", 0 },
+{ "porsáŋgu.no", 0 },
+{ "porsgrunn.no", 0 },
+{ "radoy.no", 0 },
+{ "radøy.no", 0 },
+{ "rakkestad.no", 0 },
+{ "rana.no", 0 },
+{ "ruovat.no", 0 },
+{ "randaberg.no", 0 },
+{ "rauma.no", 0 },
+{ "rendalen.no", 0 },
+{ "rennebu.no", 0 },
+{ "rennesoy.no", 0 },
+{ "rennesøy.no", 0 },
+{ "rindal.no", 0 },
+{ "ringebu.no", 0 },
+{ "ringerike.no", 0 },
+{ "ringsaker.no", 0 },
+{ "rissa.no", 0 },
+{ "risor.no", 0 },
+{ "risør.no", 0 },
+{ "roan.no", 0 },
+{ "rollag.no", 0 },
+{ "rygge.no", 0 },
+{ "ralingen.no", 0 },
+{ "rælingen.no", 0 },
+{ "rodoy.no", 0 },
+{ "rødøy.no", 0 },
+{ "romskog.no", 0 },
+{ "rømskog.no", 0 },
+{ "roros.no", 0 },
+{ "røros.no", 0 },
+{ "rost.no", 0 },
+{ "røst.no", 0 },
+{ "royken.no", 0 },
+{ "røyken.no", 0 },
+{ "royrvik.no", 0 },
+{ "røyrvik.no", 0 },
+{ "rade.no", 0 },
+{ "råde.no", 0 },
+{ "salangen.no", 0 },
+{ "siellak.no", 0 },
+{ "saltdal.no", 0 },
+{ "salat.no", 0 },
+{ "sálát.no", 0 },
+{ "sálat.no", 0 },
+{ "samnanger.no", 0 },
+{ "sande.more-og-romsdal.no", 0 },
+{ "sande.møre-og-romsdal.no", 0 },
+{ "sande.vestfold.no", 0 },
+{ "sandefjord.no", 0 },
+{ "sandnes.no", 0 },
+{ "sandoy.no", 0 },
+{ "sandøy.no", 0 },
+{ "sarpsborg.no", 0 },
+{ "sauda.no", 0 },
+{ "sauherad.no", 0 },
+{ "sel.no", 0 },
+{ "selbu.no", 0 },
+{ "selje.no", 0 },
+{ "seljord.no", 0 },
+{ "sigdal.no", 0 },
+{ "siljan.no", 0 },
+{ "sirdal.no", 0 },
+{ "skaun.no", 0 },
+{ "skedsmo.no", 0 },
+{ "ski.no", 0 },
+{ "skien.no", 0 },
+{ "skiptvet.no", 0 },
+{ "skjervoy.no", 0 },
+{ "skjervøy.no", 0 },
+{ "skierva.no", 0 },
+{ "skiervá.no", 0 },
+{ "skjak.no", 0 },
+{ "skjåk.no", 0 },
+{ "skodje.no", 0 },
+{ "skanland.no", 0 },
+{ "skånland.no", 0 },
+{ "skanit.no", 0 },
+{ "skánit.no", 0 },
+{ "smola.no", 0 },
+{ "smøla.no", 0 },
+{ "snillfjord.no", 0 },
+{ "snasa.no", 0 },
+{ "snåsa.no", 0 },
+{ "snoasa.no", 0 },
+{ "snaase.no", 0 },
+{ "snåase.no", 0 },
+{ "sogndal.no", 0 },
+{ "sokndal.no", 0 },
+{ "sola.no", 0 },
+{ "solund.no", 0 },
+{ "songdalen.no", 0 },
+{ "sortland.no", 0 },
+{ "spydeberg.no", 0 },
+{ "stange.no", 0 },
+{ "stavanger.no", 0 },
+{ "steigen.no", 0 },
+{ "steinkjer.no", 0 },
+{ "stjordal.no", 0 },
+{ "stjørdal.no", 0 },
+{ "stokke.no", 0 },
+{ "stor-elvdal.no", 0 },
+{ "stord.no", 0 },
+{ "stordal.no", 0 },
+{ "storfjord.no", 0 },
+{ "omasvuotna.no", 0 },
+{ "strand.no", 0 },
+{ "stranda.no", 0 },
+{ "stryn.no", 0 },
+{ "sula.no", 0 },
+{ "suldal.no", 0 },
+{ "sund.no", 0 },
+{ "sunndal.no", 0 },
+{ "surnadal.no", 0 },
+{ "sveio.no", 0 },
+{ "svelvik.no", 0 },
+{ "sykkylven.no", 0 },
+{ "sogne.no", 0 },
+{ "søgne.no", 0 },
+{ "somna.no", 0 },
+{ "sømna.no", 0 },
+{ "sondre-land.no", 0 },
+{ "søndre-land.no", 0 },
+{ "sor-aurdal.no", 0 },
+{ "sør-aurdal.no", 0 },
+{ "sor-fron.no", 0 },
+{ "sør-fron.no", 0 },
+{ "sor-odal.no", 0 },
+{ "sør-odal.no", 0 },
+{ "sor-varanger.no", 0 },
+{ "sør-varanger.no", 0 },
+{ "matta-varjjat.no", 0 },
+{ "mátta-várjjat.no", 0 },
+{ "sorfold.no", 0 },
+{ "sørfold.no", 0 },
+{ "sorreisa.no", 0 },
+{ "sørreisa.no", 0 },
+{ "sorum.no", 0 },
+{ "sørum.no", 0 },
+{ "tana.no", 0 },
+{ "deatnu.no", 0 },
+{ "time.no", 0 },
+{ "tingvoll.no", 0 },
+{ "tinn.no", 0 },
+{ "tjeldsund.no", 0 },
+{ "dielddanuorri.no", 0 },
+{ "tjome.no", 0 },
+{ "tjøme.no", 0 },
+{ "tokke.no", 0 },
+{ "tolga.no", 0 },
+{ "torsken.no", 0 },
+{ "tranoy.no", 0 },
+{ "tranøy.no", 0 },
+{ "tromso.no", 0 },
+{ "tromsø.no", 0 },
+{ "tromsa.no", 0 },
+{ "romsa.no", 0 },
+{ "trondheim.no", 0 },
+{ "troandin.no", 0 },
+{ "trysil.no", 0 },
+{ "trana.no", 0 },
+{ "træna.no", 0 },
+{ "trogstad.no", 0 },
+{ "trøgstad.no", 0 },
+{ "tvedestrand.no", 0 },
+{ "tydal.no", 0 },
+{ "tynset.no", 0 },
+{ "tysfjord.no", 0 },
+{ "divtasvuodna.no", 0 },
+{ "divttasvuotna.no", 0 },
+{ "tysnes.no", 0 },
+{ "tysvar.no", 0 },
+{ "tysvær.no", 0 },
+{ "tonsberg.no", 0 },
+{ "tønsberg.no", 0 },
+{ "ullensaker.no", 0 },
+{ "ullensvang.no", 0 },
+{ "ulvik.no", 0 },
+{ "utsira.no", 0 },
+{ "vadso.no", 0 },
+{ "vadsø.no", 0 },
+{ "cahcesuolo.no", 0 },
+{ "čáhcesuolo.no", 0 },
+{ "vaksdal.no", 0 },
+{ "valle.no", 0 },
+{ "vang.no", 0 },
+{ "vanylven.no", 0 },
+{ "vardo.no", 0 },
+{ "vardø.no", 0 },
+{ "varggat.no", 0 },
+{ "várggát.no", 0 },
+{ "vefsn.no", 0 },
+{ "vaapste.no", 0 },
+{ "vega.no", 0 },
+{ "vegarshei.no", 0 },
+{ "vegårshei.no", 0 },
+{ "vennesla.no", 0 },
+{ "verdal.no", 0 },
+{ "verran.no", 0 },
+{ "vestby.no", 0 },
+{ "vestnes.no", 0 },
+{ "vestre-slidre.no", 0 },
+{ "vestre-toten.no", 0 },
+{ "vestvagoy.no", 0 },
+{ "vestvågøy.no", 0 },
+{ "vevelstad.no", 0 },
+{ "vik.no", 0 },
+{ "vikna.no", 0 },
+{ "vindafjord.no", 0 },
+{ "volda.no", 0 },
+{ "voss.no", 0 },
+{ "varoy.no", 0 },
+{ "værøy.no", 0 },
+{ "vagan.no", 0 },
+{ "vågan.no", 0 },
+{ "voagat.no", 0 },
+{ "vagsoy.no", 0 },
+{ "vågsøy.no", 0 },
+{ "vaga.no", 0 },
+{ "vågå.no", 0 },
+{ "valer.ostfold.no", 0 },
+{ "våler.østfold.no", 0 },
+{ "valer.hedmark.no", 0 },
+{ "våler.hedmark.no", 0 },
+{ "np", 1 },
+{ "nr", 0 },
+{ "biz.nr", 0 },
+{ "info.nr", 0 },
+{ "gov.nr", 0 },
+{ "edu.nr", 0 },
+{ "org.nr", 0 },
+{ "net.nr", 0 },
+{ "com.nr", 0 },
+{ "nu", 0 },
+{ "nz", 1 },
+{ "om", 1 },
+{ "mediaphone.om", 2 },
+{ "nawrastelecom.om", 2 },
+{ "nawras.om", 2 },
+{ "omanmobile.om", 2 },
+{ "omanpost.om", 2 },
+{ "omantel.om", 2 },
+{ "rakpetroleum.om", 2 },
+{ "siemens.om", 2 },
+{ "songfest.om", 2 },
+{ "statecouncil.om", 2 },
+{ "org", 0 },
+{ "pa", 0 },
+{ "ac.pa", 0 },
+{ "gob.pa", 0 },
+{ "com.pa", 0 },
+{ "org.pa", 0 },
+{ "sld.pa", 0 },
+{ "edu.pa", 0 },
+{ "net.pa", 0 },
+{ "ing.pa", 0 },
+{ "abo.pa", 0 },
+{ "med.pa", 0 },
+{ "nom.pa", 0 },
+{ "pe", 0 },
+{ "edu.pe", 0 },
+{ "gob.pe", 0 },
+{ "nom.pe", 0 },
+{ "mil.pe", 0 },
+{ "org.pe", 0 },
+{ "com.pe", 0 },
+{ "net.pe", 0 },
+{ "pf", 0 },
+{ "com.pf", 0 },
+{ "org.pf", 0 },
+{ "edu.pf", 0 },
+{ "pg", 1 },
+{ "ph", 0 },
+{ "com.ph", 0 },
+{ "net.ph", 0 },
+{ "org.ph", 0 },
+{ "gov.ph", 0 },
+{ "edu.ph", 0 },
+{ "ngo.ph", 0 },
+{ "mil.ph", 0 },
+{ "i.ph", 0 },
+{ "pk", 0 },
+{ "com.pk", 0 },
+{ "net.pk", 0 },
+{ "edu.pk", 0 },
+{ "org.pk", 0 },
+{ "fam.pk", 0 },
+{ "biz.pk", 0 },
+{ "web.pk", 0 },
+{ "gov.pk", 0 },
+{ "gob.pk", 0 },
+{ "gok.pk", 0 },
+{ "gon.pk", 0 },
+{ "gop.pk", 0 },
+{ "gos.pk", 0 },
+{ "info.pk", 0 },
+{ "pl", 0 },
+{ "aid.pl", 0 },
+{ "agro.pl", 0 },
+{ "atm.pl", 0 },
+{ "auto.pl", 0 },
+{ "biz.pl", 0 },
+{ "com.pl", 0 },
+{ "edu.pl", 0 },
+{ "gmina.pl", 0 },
+{ "gsm.pl", 0 },
+{ "info.pl", 0 },
+{ "mail.pl", 0 },
+{ "miasta.pl", 0 },
+{ "media.pl", 0 },
+{ "mil.pl", 0 },
+{ "net.pl", 0 },
+{ "nieruchomosci.pl", 0 },
+{ "nom.pl", 0 },
+{ "org.pl", 0 },
+{ "pc.pl", 0 },
+{ "powiat.pl", 0 },
+{ "priv.pl", 0 },
+{ "realestate.pl", 0 },
+{ "rel.pl", 0 },
+{ "sex.pl", 0 },
+{ "shop.pl", 0 },
+{ "sklep.pl", 0 },
+{ "sos.pl", 0 },
+{ "szkola.pl", 0 },
+{ "targi.pl", 0 },
+{ "tm.pl", 0 },
+{ "tourism.pl", 0 },
+{ "travel.pl", 0 },
+{ "turystyka.pl", 0 },
+{ "6bone.pl", 0 },
+{ "art.pl", 0 },
+{ "mbone.pl", 0 },
+{ "gov.pl", 0 },
+{ "uw.gov.pl", 0 },
+{ "um.gov.pl", 0 },
+{ "ug.gov.pl", 0 },
+{ "upow.gov.pl", 0 },
+{ "starostwo.gov.pl", 0 },
+{ "so.gov.pl", 0 },
+{ "sr.gov.pl", 0 },
+{ "po.gov.pl", 0 },
+{ "pa.gov.pl", 0 },
+{ "ngo.pl", 0 },
+{ "irc.pl", 0 },
+{ "usenet.pl", 0 },
+{ "augustow.pl", 0 },
+{ "babia-gora.pl", 0 },
+{ "bedzin.pl", 0 },
+{ "beskidy.pl", 0 },
+{ "bialowieza.pl", 0 },
+{ "bialystok.pl", 0 },
+{ "bielawa.pl", 0 },
+{ "bieszczady.pl", 0 },
+{ "boleslawiec.pl", 0 },
+{ "bydgoszcz.pl", 0 },
+{ "bytom.pl", 0 },
+{ "cieszyn.pl", 0 },
+{ "czeladz.pl", 0 },
+{ "czest.pl", 0 },
+{ "dlugoleka.pl", 0 },
+{ "elblag.pl", 0 },
+{ "elk.pl", 0 },
+{ "glogow.pl", 0 },
+{ "gniezno.pl", 0 },
+{ "gorlice.pl", 0 },
+{ "grajewo.pl", 0 },
+{ "ilawa.pl", 0 },
+{ "jaworzno.pl", 0 },
+{ "jelenia-gora.pl", 0 },
+{ "jgora.pl", 0 },
+{ "kalisz.pl", 0 },
+{ "kazimierz-dolny.pl", 0 },
+{ "karpacz.pl", 0 },
+{ "kartuzy.pl", 0 },
+{ "kaszuby.pl", 0 },
+{ "katowice.pl", 0 },
+{ "kepno.pl", 0 },
+{ "ketrzyn.pl", 0 },
+{ "klodzko.pl", 0 },
+{ "kobierzyce.pl", 0 },
+{ "kolobrzeg.pl", 0 },
+{ "konin.pl", 0 },
+{ "konskowola.pl", 0 },
+{ "kutno.pl", 0 },
+{ "lapy.pl", 0 },
+{ "lebork.pl", 0 },
+{ "legnica.pl", 0 },
+{ "lezajsk.pl", 0 },
+{ "limanowa.pl", 0 },
+{ "lomza.pl", 0 },
+{ "lowicz.pl", 0 },
+{ "lubin.pl", 0 },
+{ "lukow.pl", 0 },
+{ "malbork.pl", 0 },
+{ "malopolska.pl", 0 },
+{ "mazowsze.pl", 0 },
+{ "mazury.pl", 0 },
+{ "mielec.pl", 0 },
+{ "mielno.pl", 0 },
+{ "mragowo.pl", 0 },
+{ "naklo.pl", 0 },
+{ "nowaruda.pl", 0 },
+{ "nysa.pl", 0 },
+{ "olawa.pl", 0 },
+{ "olecko.pl", 0 },
+{ "olkusz.pl", 0 },
+{ "olsztyn.pl", 0 },
+{ "opoczno.pl", 0 },
+{ "opole.pl", 0 },
+{ "ostroda.pl", 0 },
+{ "ostroleka.pl", 0 },
+{ "ostrowiec.pl", 0 },
+{ "ostrowwlkp.pl", 0 },
+{ "pila.pl", 0 },
+{ "pisz.pl", 0 },
+{ "podhale.pl", 0 },
+{ "podlasie.pl", 0 },
+{ "polkowice.pl", 0 },
+{ "pomorze.pl", 0 },
+{ "pomorskie.pl", 0 },
+{ "prochowice.pl", 0 },
+{ "pruszkow.pl", 0 },
+{ "przeworsk.pl", 0 },
+{ "pulawy.pl", 0 },
+{ "radom.pl", 0 },
+{ "rawa-maz.pl", 0 },
+{ "rybnik.pl", 0 },
+{ "rzeszow.pl", 0 },
+{ "sanok.pl", 0 },
+{ "sejny.pl", 0 },
+{ "siedlce.pl", 0 },
+{ "slask.pl", 0 },
+{ "slupsk.pl", 0 },
+{ "sosnowiec.pl", 0 },
+{ "stalowa-wola.pl", 0 },
+{ "skoczow.pl", 0 },
+{ "starachowice.pl", 0 },
+{ "stargard.pl", 0 },
+{ "suwalki.pl", 0 },
+{ "swidnica.pl", 0 },
+{ "swiebodzin.pl", 0 },
+{ "swinoujscie.pl", 0 },
+{ "szczecin.pl", 0 },
+{ "szczytno.pl", 0 },
+{ "tarnobrzeg.pl", 0 },
+{ "tgory.pl", 0 },
+{ "turek.pl", 0 },
+{ "tychy.pl", 0 },
+{ "ustka.pl", 0 },
+{ "walbrzych.pl", 0 },
+{ "warmia.pl", 0 },
+{ "warszawa.pl", 0 },
+{ "waw.pl", 0 },
+{ "wegrow.pl", 0 },
+{ "wielun.pl", 0 },
+{ "wlocl.pl", 0 },
+{ "wloclawek.pl", 0 },
+{ "wodzislaw.pl", 0 },
+{ "wolomin.pl", 0 },
+{ "wroclaw.pl", 0 },
+{ "zachpomor.pl", 0 },
+{ "zagan.pl", 0 },
+{ "zarow.pl", 0 },
+{ "zgora.pl", 0 },
+{ "zgorzelec.pl", 0 },
+{ "gda.pl", 0 },
+{ "gdansk.pl", 0 },
+{ "gdynia.pl", 0 },
+{ "med.pl", 0 },
+{ "sopot.pl", 0 },
+{ "gliwice.pl", 0 },
+{ "krakow.pl", 0 },
+{ "poznan.pl", 0 },
+{ "wroc.pl", 0 },
+{ "zakopane.pl", 0 },
+{ "pm", 0 },
+{ "pn", 0 },
+{ "gov.pn", 0 },
+{ "co.pn", 0 },
+{ "org.pn", 0 },
+{ "edu.pn", 0 },
+{ "net.pn", 0 },
+{ "pr", 0 },
+{ "com.pr", 0 },
+{ "net.pr", 0 },
+{ "org.pr", 0 },
+{ "gov.pr", 0 },
+{ "edu.pr", 0 },
+{ "isla.pr", 0 },
+{ "pro.pr", 0 },
+{ "biz.pr", 0 },
+{ "info.pr", 0 },
+{ "name.pr", 0 },
+{ "est.pr", 0 },
+{ "prof.pr", 0 },
+{ "ac.pr", 0 },
+{ "pro", 0 },
+{ "aca.pro", 0 },
+{ "bar.pro", 0 },
+{ "cpa.pro", 0 },
+{ "jur.pro", 0 },
+{ "law.pro", 0 },
+{ "med.pro", 0 },
+{ "eng.pro", 0 },
+{ "ps", 0 },
+{ "edu.ps", 0 },
+{ "gov.ps", 0 },
+{ "sec.ps", 0 },
+{ "plo.ps", 0 },
+{ "com.ps", 0 },
+{ "org.ps", 0 },
+{ "net.ps", 0 },
+{ "pt", 0 },
+{ "net.pt", 0 },
+{ "gov.pt", 0 },
+{ "org.pt", 0 },
+{ "edu.pt", 0 },
+{ "int.pt", 0 },
+{ "publ.pt", 0 },
+{ "com.pt", 0 },
+{ "nome.pt", 0 },
+{ "pw", 0 },
+{ "co.pw", 0 },
+{ "ne.pw", 0 },
+{ "or.pw", 0 },
+{ "ed.pw", 0 },
+{ "go.pw", 0 },
+{ "belau.pw", 0 },
+{ "py", 1 },
+{ "qa", 0 },
+{ "com.qa", 0 },
+{ "edu.qa", 0 },
+{ "gov.qa", 0 },
+{ "mil.qa", 0 },
+{ "name.qa", 0 },
+{ "net.qa", 0 },
+{ "org.qa", 0 },
+{ "sch.qa", 0 },
+{ "re", 0 },
+{ "com.re", 0 },
+{ "asso.re", 0 },
+{ "nom.re", 0 },
+{ "ro", 0 },
+{ "com.ro", 0 },
+{ "org.ro", 0 },
+{ "tm.ro", 0 },
+{ "nt.ro", 0 },
+{ "nom.ro", 0 },
+{ "info.ro", 0 },
+{ "rec.ro", 0 },
+{ "arts.ro", 0 },
+{ "firm.ro", 0 },
+{ "store.ro", 0 },
+{ "www.ro", 0 },
+{ "rs", 0 },
+{ "co.rs", 0 },
+{ "org.rs", 0 },
+{ "edu.rs", 0 },
+{ "ac.rs", 0 },
+{ "gov.rs", 0 },
+{ "in.rs", 0 },
+{ "ru", 0 },
+{ "ac.ru", 0 },
+{ "com.ru", 0 },
+{ "edu.ru", 0 },
+{ "int.ru", 0 },
+{ "net.ru", 0 },
+{ "org.ru", 0 },
+{ "pp.ru", 0 },
+{ "adygeya.ru", 0 },
+{ "altai.ru", 0 },
+{ "amur.ru", 0 },
+{ "arkhangelsk.ru", 0 },
+{ "astrakhan.ru", 0 },
+{ "bashkiria.ru", 0 },
+{ "belgorod.ru", 0 },
+{ "bir.ru", 0 },
+{ "bryansk.ru", 0 },
+{ "buryatia.ru", 0 },
+{ "cbg.ru", 0 },
+{ "chel.ru", 0 },
+{ "chelyabinsk.ru", 0 },
+{ "chita.ru", 0 },
+{ "chukotka.ru", 0 },
+{ "chuvashia.ru", 0 },
+{ "dagestan.ru", 0 },
+{ "dudinka.ru", 0 },
+{ "e-burg.ru", 0 },
+{ "grozny.ru", 0 },
+{ "irkutsk.ru", 0 },
+{ "ivanovo.ru", 0 },
+{ "izhevsk.ru", 0 },
+{ "jar.ru", 0 },
+{ "joshkar-ola.ru", 0 },
+{ "kalmykia.ru", 0 },
+{ "kaluga.ru", 0 },
+{ "kamchatka.ru", 0 },
+{ "karelia.ru", 0 },
+{ "kazan.ru", 0 },
+{ "kchr.ru", 0 },
+{ "kemerovo.ru", 0 },
+{ "khabarovsk.ru", 0 },
+{ "khakassia.ru", 0 },
+{ "khv.ru", 0 },
+{ "kirov.ru", 0 },
+{ "koenig.ru", 0 },
+{ "komi.ru", 0 },
+{ "kostroma.ru", 0 },
+{ "krasnoyarsk.ru", 0 },
+{ "kuban.ru", 0 },
+{ "kurgan.ru", 0 },
+{ "kursk.ru", 0 },
+{ "lipetsk.ru", 0 },
+{ "magadan.ru", 0 },
+{ "mari.ru", 0 },
+{ "mari-el.ru", 0 },
+{ "marine.ru", 0 },
+{ "mordovia.ru", 0 },
+{ "mosreg.ru", 0 },
+{ "msk.ru", 0 },
+{ "murmansk.ru", 0 },
+{ "nalchik.ru", 0 },
+{ "nnov.ru", 0 },
+{ "nov.ru", 0 },
+{ "novosibirsk.ru", 0 },
+{ "nsk.ru", 0 },
+{ "omsk.ru", 0 },
+{ "orenburg.ru", 0 },
+{ "oryol.ru", 0 },
+{ "palana.ru", 0 },
+{ "penza.ru", 0 },
+{ "perm.ru", 0 },
+{ "pskov.ru", 0 },
+{ "ptz.ru", 0 },
+{ "rnd.ru", 0 },
+{ "ryazan.ru", 0 },
+{ "sakhalin.ru", 0 },
+{ "samara.ru", 0 },
+{ "saratov.ru", 0 },
+{ "simbirsk.ru", 0 },
+{ "smolensk.ru", 0 },
+{ "spb.ru", 0 },
+{ "stavropol.ru", 0 },
+{ "stv.ru", 0 },
+{ "surgut.ru", 0 },
+{ "tambov.ru", 0 },
+{ "tatarstan.ru", 0 },
+{ "tom.ru", 0 },
+{ "tomsk.ru", 0 },
+{ "tsaritsyn.ru", 0 },
+{ "tsk.ru", 0 },
+{ "tula.ru", 0 },
+{ "tuva.ru", 0 },
+{ "tver.ru", 0 },
+{ "tyumen.ru", 0 },
+{ "udm.ru", 0 },
+{ "udmurtia.ru", 0 },
+{ "ulan-ude.ru", 0 },
+{ "vladikavkaz.ru", 0 },
+{ "vladimir.ru", 0 },
+{ "vladivostok.ru", 0 },
+{ "volgograd.ru", 0 },
+{ "vologda.ru", 0 },
+{ "voronezh.ru", 0 },
+{ "vrn.ru", 0 },
+{ "vyatka.ru", 0 },
+{ "yakutia.ru", 0 },
+{ "yamal.ru", 0 },
+{ "yaroslavl.ru", 0 },
+{ "yekaterinburg.ru", 0 },
+{ "yuzhno-sakhalinsk.ru", 0 },
+{ "amursk.ru", 0 },
+{ "baikal.ru", 0 },
+{ "cmw.ru", 0 },
+{ "fareast.ru", 0 },
+{ "jamal.ru", 0 },
+{ "kms.ru", 0 },
+{ "k-uralsk.ru", 0 },
+{ "kustanai.ru", 0 },
+{ "kuzbass.ru", 0 },
+{ "magnitka.ru", 0 },
+{ "mytis.ru", 0 },
+{ "nakhodka.ru", 0 },
+{ "nkz.ru", 0 },
+{ "norilsk.ru", 0 },
+{ "oskol.ru", 0 },
+{ "pyatigorsk.ru", 0 },
+{ "rubtsovsk.ru", 0 },
+{ "snz.ru", 0 },
+{ "syzran.ru", 0 },
+{ "vdonsk.ru", 0 },
+{ "zgrad.ru", 0 },
+{ "gov.ru", 0 },
+{ "mil.ru", 0 },
+{ "test.ru", 0 },
+{ "rw", 0 },
+{ "gov.rw", 0 },
+{ "net.rw", 0 },
+{ "edu.rw", 0 },
+{ "ac.rw", 0 },
+{ "com.rw", 0 },
+{ "co.rw", 0 },
+{ "int.rw", 0 },
+{ "mil.rw", 0 },
+{ "gouv.rw", 0 },
+{ "sa", 0 },
+{ "com.sa", 0 },
+{ "net.sa", 0 },
+{ "org.sa", 0 },
+{ "gov.sa", 0 },
+{ "med.sa", 0 },
+{ "pub.sa", 0 },
+{ "edu.sa", 0 },
+{ "sch.sa", 0 },
+{ "sb", 0 },
+{ "com.sb", 0 },
+{ "edu.sb", 0 },
+{ "gov.sb", 0 },
+{ "net.sb", 0 },
+{ "org.sb", 0 },
+{ "sc", 0 },
+{ "com.sc", 0 },
+{ "gov.sc", 0 },
+{ "net.sc", 0 },
+{ "org.sc", 0 },
+{ "edu.sc", 0 },
+{ "sd", 0 },
+{ "com.sd", 0 },
+{ "net.sd", 0 },
+{ "org.sd", 0 },
+{ "edu.sd", 0 },
+{ "med.sd", 0 },
+{ "gov.sd", 0 },
+{ "info.sd", 0 },
+{ "se", 0 },
+{ "a.se", 0 },
+{ "ac.se", 0 },
+{ "b.se", 0 },
+{ "bd.se", 0 },
+{ "brand.se", 0 },
+{ "c.se", 0 },
+{ "d.se", 0 },
+{ "e.se", 0 },
+{ "f.se", 0 },
+{ "fh.se", 0 },
+{ "fhsk.se", 0 },
+{ "fhv.se", 0 },
+{ "g.se", 0 },
+{ "h.se", 0 },
+{ "i.se", 0 },
+{ "k.se", 0 },
+{ "komforb.se", 0 },
+{ "kommunalforbund.se", 0 },
+{ "komvux.se", 0 },
+{ "l.se", 0 },
+{ "lanbib.se", 0 },
+{ "m.se", 0 },
+{ "n.se", 0 },
+{ "naturbruksgymn.se", 0 },
+{ "o.se", 0 },
+{ "org.se", 0 },
+{ "p.se", 0 },
+{ "parti.se", 0 },
+{ "pp.se", 0 },
+{ "press.se", 0 },
+{ "r.se", 0 },
+{ "s.se", 0 },
+{ "sshn.se", 0 },
+{ "t.se", 0 },
+{ "tm.se", 0 },
+{ "u.se", 0 },
+{ "w.se", 0 },
+{ "x.se", 0 },
+{ "y.se", 0 },
+{ "z.se", 0 },
+{ "sg", 0 },
+{ "com.sg", 0 },
+{ "net.sg", 0 },
+{ "org.sg", 0 },
+{ "gov.sg", 0 },
+{ "edu.sg", 0 },
+{ "per.sg", 0 },
+{ "sh", 0 },
+{ "si", 0 },
+{ "sk", 0 },
+{ "sl", 0 },
+{ "com.sl", 0 },
+{ "net.sl", 0 },
+{ "edu.sl", 0 },
+{ "gov.sl", 0 },
+{ "org.sl", 0 },
+{ "sm", 0 },
+{ "sn", 0 },
+{ "art.sn", 0 },
+{ "com.sn", 0 },
+{ "edu.sn", 0 },
+{ "gouv.sn", 0 },
+{ "org.sn", 0 },
+{ "perso.sn", 0 },
+{ "univ.sn", 0 },
+{ "so", 0 },
+{ "com.so", 0 },
+{ "net.so", 0 },
+{ "org.so", 0 },
+{ "sr", 0 },
+{ "st", 0 },
+{ "co.st", 0 },
+{ "com.st", 0 },
+{ "consulado.st", 0 },
+{ "edu.st", 0 },
+{ "embaixada.st", 0 },
+{ "gov.st", 0 },
+{ "mil.st", 0 },
+{ "net.st", 0 },
+{ "org.st", 0 },
+{ "principe.st", 0 },
+{ "saotome.st", 0 },
+{ "store.st", 0 },
+{ "su", 0 },
+{ "sv", 1 },
+{ "sy", 0 },
+{ "edu.sy", 0 },
+{ "gov.sy", 0 },
+{ "net.sy", 0 },
+{ "mil.sy", 0 },
+{ "com.sy", 0 },
+{ "org.sy", 0 },
+{ "sz", 0 },
+{ "co.sz", 0 },
+{ "ac.sz", 0 },
+{ "org.sz", 0 },
+{ "tc", 0 },
+{ "td", 0 },
+{ "tel", 0 },
+{ "tf", 0 },
+{ "tg", 0 },
+{ "th", 0 },
+{ "ac.th", 0 },
+{ "co.th", 0 },
+{ "go.th", 0 },
+{ "in.th", 0 },
+{ "mi.th", 0 },
+{ "net.th", 0 },
+{ "or.th", 0 },
+{ "tj", 0 },
+{ "ac.tj", 0 },
+{ "biz.tj", 0 },
+{ "co.tj", 0 },
+{ "com.tj", 0 },
+{ "edu.tj", 0 },
+{ "go.tj", 0 },
+{ "gov.tj", 0 },
+{ "int.tj", 0 },
+{ "mil.tj", 0 },
+{ "name.tj", 0 },
+{ "net.tj", 0 },
+{ "nic.tj", 0 },
+{ "org.tj", 0 },
+{ "test.tj", 0 },
+{ "web.tj", 0 },
+{ "tk", 0 },
+{ "tl", 0 },
+{ "gov.tl", 0 },
+{ "tm", 0 },
+{ "tn", 0 },
+{ "com.tn", 0 },
+{ "ens.tn", 0 },
+{ "fin.tn", 0 },
+{ "gov.tn", 0 },
+{ "ind.tn", 0 },
+{ "intl.tn", 0 },
+{ "nat.tn", 0 },
+{ "net.tn", 0 },
+{ "org.tn", 0 },
+{ "info.tn", 0 },
+{ "perso.tn", 0 },
+{ "tourism.tn", 0 },
+{ "edunet.tn", 0 },
+{ "rnrt.tn", 0 },
+{ "rns.tn", 0 },
+{ "rnu.tn", 0 },
+{ "mincom.tn", 0 },
+{ "agrinet.tn", 0 },
+{ "defense.tn", 0 },
+{ "turen.tn", 0 },
+{ "to", 0 },
+{ "com.to", 0 },
+{ "gov.to", 0 },
+{ "net.to", 0 },
+{ "org.to", 0 },
+{ "edu.to", 0 },
+{ "mil.to", 0 },
+{ "tr", 1 },
+{ "nic.tr", 2 },
+{ "gov.nc.tr", 0 },
+{ "travel", 0 },
+{ "tt", 0 },
+{ "co.tt", 0 },
+{ "com.tt", 0 },
+{ "org.tt", 0 },
+{ "net.tt", 0 },
+{ "biz.tt", 0 },
+{ "info.tt", 0 },
+{ "pro.tt", 0 },
+{ "int.tt", 0 },
+{ "coop.tt", 0 },
+{ "jobs.tt", 0 },
+{ "mobi.tt", 0 },
+{ "travel.tt", 0 },
+{ "museum.tt", 0 },
+{ "aero.tt", 0 },
+{ "name.tt", 0 },
+{ "gov.tt", 0 },
+{ "edu.tt", 0 },
+{ "tv", 0 },
+{ "tw", 0 },
+{ "edu.tw", 0 },
+{ "gov.tw", 0 },
+{ "mil.tw", 0 },
+{ "com.tw", 0 },
+{ "net.tw", 0 },
+{ "org.tw", 0 },
+{ "idv.tw", 0 },
+{ "game.tw", 0 },
+{ "ebiz.tw", 0 },
+{ "club.tw", 0 },
+{ "網路.tw", 0 },
+{ "組織.tw", 0 },
+{ "商業.tw", 0 },
+{ "ac.tz", 0 },
+{ "co.tz", 0 },
+{ "go.tz", 0 },
+{ "mil.tz", 0 },
+{ "ne.tz", 0 },
+{ "or.tz", 0 },
+{ "sc.tz", 0 },
+{ "ua", 0 },
+{ "com.ua", 0 },
+{ "edu.ua", 0 },
+{ "gov.ua", 0 },
+{ "in.ua", 0 },
+{ "net.ua", 0 },
+{ "org.ua", 0 },
+{ "cherkassy.ua", 0 },
+{ "chernigov.ua", 0 },
+{ "chernovtsy.ua", 0 },
+{ "ck.ua", 0 },
+{ "cn.ua", 0 },
+{ "crimea.ua", 0 },
+{ "cv.ua", 0 },
+{ "dn.ua", 0 },
+{ "dnepropetrovsk.ua", 0 },
+{ "donetsk.ua", 0 },
+{ "dp.ua", 0 },
+{ "if.ua", 0 },
+{ "ivano-frankivsk.ua", 0 },
+{ "kh.ua", 0 },
+{ "kharkov.ua", 0 },
+{ "kherson.ua", 0 },
+{ "khmelnitskiy.ua", 0 },
+{ "kiev.ua", 0 },
+{ "kirovograd.ua", 0 },
+{ "km.ua", 0 },
+{ "kr.ua", 0 },
+{ "ks.ua", 0 },
+{ "kv.ua", 0 },
+{ "lg.ua", 0 },
+{ "lugansk.ua", 0 },
+{ "lutsk.ua", 0 },
+{ "lviv.ua", 0 },
+{ "mk.ua", 0 },
+{ "nikolaev.ua", 0 },
+{ "od.ua", 0 },
+{ "odessa.ua", 0 },
+{ "pl.ua", 0 },
+{ "poltava.ua", 0 },
+{ "rovno.ua", 0 },
+{ "rv.ua", 0 },
+{ "sebastopol.ua", 0 },
+{ "sumy.ua", 0 },
+{ "te.ua", 0 },
+{ "ternopil.ua", 0 },
+{ "uzhgorod.ua", 0 },
+{ "vinnica.ua", 0 },
+{ "vn.ua", 0 },
+{ "zaporizhzhe.ua", 0 },
+{ "zp.ua", 0 },
+{ "zhitomir.ua", 0 },
+{ "zt.ua", 0 },
+{ "co.ua", 0 },
+{ "pp.ua", 0 },
+{ "ug", 0 },
+{ "co.ug", 0 },
+{ "ac.ug", 0 },
+{ "sc.ug", 0 },
+{ "go.ug", 0 },
+{ "ne.ug", 0 },
+{ "or.ug", 0 },
+{ "uk", 1 },
+{ "sch.uk", 1 },
+{ "bl.uk", 2 },
+{ "british-library.uk", 2 },
+{ "icnet.uk", 2 },
+{ "jet.uk", 2 },
+{ "mod.uk", 2 },
+{ "nel.uk", 2 },
+{ "nhs.uk", 2 },
+{ "nic.uk", 2 },
+{ "nls.uk", 2 },
+{ "national-library-scotland.uk", 2 },
+{ "parliament.uk", 2 },
+{ "police.uk", 2 },
+{ "us", 0 },
+{ "dni.us", 0 },
+{ "fed.us", 0 },
+{ "isa.us", 0 },
+{ "kids.us", 0 },
+{ "nsn.us", 0 },
+{ "ak.us", 0 },
+{ "al.us", 0 },
+{ "ar.us", 0 },
+{ "as.us", 0 },
+{ "az.us", 0 },
+{ "ca.us", 0 },
+{ "co.us", 0 },
+{ "ct.us", 0 },
+{ "dc.us", 0 },
+{ "de.us", 0 },
+{ "fl.us", 0 },
+{ "ga.us", 0 },
+{ "gu.us", 0 },
+{ "hi.us", 0 },
+{ "ia.us", 0 },
+{ "id.us", 0 },
+{ "il.us", 0 },
+{ "in.us", 0 },
+{ "ks.us", 0 },
+{ "ky.us", 0 },
+{ "la.us", 0 },
+{ "ma.us", 0 },
+{ "md.us", 0 },
+{ "me.us", 0 },
+{ "mi.us", 0 },
+{ "mn.us", 0 },
+{ "mo.us", 0 },
+{ "ms.us", 0 },
+{ "mt.us", 0 },
+{ "nc.us", 0 },
+{ "nd.us", 0 },
+{ "ne.us", 0 },
+{ "nh.us", 0 },
+{ "nj.us", 0 },
+{ "nm.us", 0 },
+{ "nv.us", 0 },
+{ "ny.us", 0 },
+{ "oh.us", 0 },
+{ "ok.us", 0 },
+{ "or.us", 0 },
+{ "pa.us", 0 },
+{ "pr.us", 0 },
+{ "ri.us", 0 },
+{ "sc.us", 0 },
+{ "sd.us", 0 },
+{ "tn.us", 0 },
+{ "tx.us", 0 },
+{ "ut.us", 0 },
+{ "vi.us", 0 },
+{ "vt.us", 0 },
+{ "va.us", 0 },
+{ "wa.us", 0 },
+{ "wi.us", 0 },
+{ "wv.us", 0 },
+{ "wy.us", 0 },
+{ "k12.ak.us", 0 },
+{ "k12.al.us", 0 },
+{ "k12.ar.us", 0 },
+{ "k12.as.us", 0 },
+{ "k12.az.us", 0 },
+{ "k12.ca.us", 0 },
+{ "k12.co.us", 0 },
+{ "k12.ct.us", 0 },
+{ "k12.dc.us", 0 },
+{ "k12.de.us", 0 },
+{ "k12.fl.us", 0 },
+{ "k12.ga.us", 0 },
+{ "k12.gu.us", 0 },
+{ "k12.ia.us", 0 },
+{ "k12.id.us", 0 },
+{ "k12.il.us", 0 },
+{ "k12.in.us", 0 },
+{ "k12.ks.us", 0 },
+{ "k12.ky.us", 0 },
+{ "k12.la.us", 0 },
+{ "k12.ma.us", 0 },
+{ "k12.md.us", 0 },
+{ "k12.me.us", 0 },
+{ "k12.mi.us", 0 },
+{ "k12.mn.us", 0 },
+{ "k12.mo.us", 0 },
+{ "k12.ms.us", 0 },
+{ "k12.mt.us", 0 },
+{ "k12.nc.us", 0 },
+{ "k12.nd.us", 0 },
+{ "k12.ne.us", 0 },
+{ "k12.nh.us", 0 },
+{ "k12.nj.us", 0 },
+{ "k12.nm.us", 0 },
+{ "k12.nv.us", 0 },
+{ "k12.ny.us", 0 },
+{ "k12.oh.us", 0 },
+{ "k12.ok.us", 0 },
+{ "k12.or.us", 0 },
+{ "k12.pa.us", 0 },
+{ "k12.pr.us", 0 },
+{ "k12.ri.us", 0 },
+{ "k12.sc.us", 0 },
+{ "k12.sd.us", 0 },
+{ "k12.tn.us", 0 },
+{ "k12.tx.us", 0 },
+{ "k12.ut.us", 0 },
+{ "k12.vi.us", 0 },
+{ "k12.vt.us", 0 },
+{ "k12.va.us", 0 },
+{ "k12.wa.us", 0 },
+{ "k12.wi.us", 0 },
+{ "k12.wv.us", 0 },
+{ "k12.wy.us", 0 },
+{ "cc.ak.us", 0 },
+{ "cc.al.us", 0 },
+{ "cc.ar.us", 0 },
+{ "cc.as.us", 0 },
+{ "cc.az.us", 0 },
+{ "cc.ca.us", 0 },
+{ "cc.co.us", 0 },
+{ "cc.ct.us", 0 },
+{ "cc.dc.us", 0 },
+{ "cc.de.us", 0 },
+{ "cc.fl.us", 0 },
+{ "cc.ga.us", 0 },
+{ "cc.gu.us", 0 },
+{ "cc.hi.us", 0 },
+{ "cc.ia.us", 0 },
+{ "cc.id.us", 0 },
+{ "cc.il.us", 0 },
+{ "cc.in.us", 0 },
+{ "cc.ks.us", 0 },
+{ "cc.ky.us", 0 },
+{ "cc.la.us", 0 },
+{ "cc.ma.us", 0 },
+{ "cc.md.us", 0 },
+{ "cc.me.us", 0 },
+{ "cc.mi.us", 0 },
+{ "cc.mn.us", 0 },
+{ "cc.mo.us", 0 },
+{ "cc.ms.us", 0 },
+{ "cc.mt.us", 0 },
+{ "cc.nc.us", 0 },
+{ "cc.nd.us", 0 },
+{ "cc.ne.us", 0 },
+{ "cc.nh.us", 0 },
+{ "cc.nj.us", 0 },
+{ "cc.nm.us", 0 },
+{ "cc.nv.us", 0 },
+{ "cc.ny.us", 0 },
+{ "cc.oh.us", 0 },
+{ "cc.ok.us", 0 },
+{ "cc.or.us", 0 },
+{ "cc.pa.us", 0 },
+{ "cc.pr.us", 0 },
+{ "cc.ri.us", 0 },
+{ "cc.sc.us", 0 },
+{ "cc.sd.us", 0 },
+{ "cc.tn.us", 0 },
+{ "cc.tx.us", 0 },
+{ "cc.ut.us", 0 },
+{ "cc.vi.us", 0 },
+{ "cc.vt.us", 0 },
+{ "cc.va.us", 0 },
+{ "cc.wa.us", 0 },
+{ "cc.wi.us", 0 },
+{ "cc.wv.us", 0 },
+{ "cc.wy.us", 0 },
+{ "lib.ak.us", 0 },
+{ "lib.al.us", 0 },
+{ "lib.ar.us", 0 },
+{ "lib.as.us", 0 },
+{ "lib.az.us", 0 },
+{ "lib.ca.us", 0 },
+{ "lib.co.us", 0 },
+{ "lib.ct.us", 0 },
+{ "lib.dc.us", 0 },
+{ "lib.de.us", 0 },
+{ "lib.fl.us", 0 },
+{ "lib.ga.us", 0 },
+{ "lib.gu.us", 0 },
+{ "lib.hi.us", 0 },
+{ "lib.ia.us", 0 },
+{ "lib.id.us", 0 },
+{ "lib.il.us", 0 },
+{ "lib.in.us", 0 },
+{ "lib.ks.us", 0 },
+{ "lib.ky.us", 0 },
+{ "lib.la.us", 0 },
+{ "lib.ma.us", 0 },
+{ "lib.md.us", 0 },
+{ "lib.me.us", 0 },
+{ "lib.mi.us", 0 },
+{ "lib.mn.us", 0 },
+{ "lib.mo.us", 0 },
+{ "lib.ms.us", 0 },
+{ "lib.mt.us", 0 },
+{ "lib.nc.us", 0 },
+{ "lib.nd.us", 0 },
+{ "lib.ne.us", 0 },
+{ "lib.nh.us", 0 },
+{ "lib.nj.us", 0 },
+{ "lib.nm.us", 0 },
+{ "lib.nv.us", 0 },
+{ "lib.ny.us", 0 },
+{ "lib.oh.us", 0 },
+{ "lib.ok.us", 0 },
+{ "lib.or.us", 0 },
+{ "lib.pa.us", 0 },
+{ "lib.pr.us", 0 },
+{ "lib.ri.us", 0 },
+{ "lib.sc.us", 0 },
+{ "lib.sd.us", 0 },
+{ "lib.tn.us", 0 },
+{ "lib.tx.us", 0 },
+{ "lib.ut.us", 0 },
+{ "lib.vi.us", 0 },
+{ "lib.vt.us", 0 },
+{ "lib.va.us", 0 },
+{ "lib.wa.us", 0 },
+{ "lib.wi.us", 0 },
+{ "lib.wv.us", 0 },
+{ "lib.wy.us", 0 },
+{ "pvt.k12.ma.us", 0 },
+{ "chtr.k12.ma.us", 0 },
+{ "paroch.k12.ma.us", 0 },
+{ "uy", 1 },
+{ "uz", 0 },
+{ "com.uz", 0 },
+{ "co.uz", 0 },
+{ "va", 0 },
+{ "vc", 0 },
+{ "com.vc", 0 },
+{ "net.vc", 0 },
+{ "org.vc", 0 },
+{ "gov.vc", 0 },
+{ "mil.vc", 0 },
+{ "edu.vc", 0 },
+{ "ve", 1 },
+{ "vg", 0 },
+{ "vi", 0 },
+{ "co.vi", 0 },
+{ "com.vi", 0 },
+{ "k12.vi", 0 },
+{ "net.vi", 0 },
+{ "org.vi", 0 },
+{ "vn", 0 },
+{ "com.vn", 0 },
+{ "net.vn", 0 },
+{ "org.vn", 0 },
+{ "edu.vn", 0 },
+{ "gov.vn", 0 },
+{ "int.vn", 0 },
+{ "ac.vn", 0 },
+{ "biz.vn", 0 },
+{ "info.vn", 0 },
+{ "name.vn", 0 },
+{ "pro.vn", 0 },
+{ "health.vn", 0 },
+{ "vu", 0 },
+{ "wf", 0 },
+{ "ws", 0 },
+{ "com.ws", 0 },
+{ "net.ws", 0 },
+{ "org.ws", 0 },
+{ "gov.ws", 0 },
+{ "edu.ws", 0 },
+{ "yt", 0 },
+{ "امارات", 0 },
+{ "বাংলা", 0 },
+{ "中国", 0 },
+{ "中國", 0 },
+{ "الجزائر", 0 },
+{ "مصر", 0 },
+{ "გე", 0 },
+{ "香港", 0 },
+{ "भारत", 0 },
+{ "بھارت", 0 },
+{ "భారత్", 0 },
+{ "ભારત", 0 },
+{ "ਭਾਰਤ", 0 },
+{ "ভারত", 0 },
+{ "இந்தியா", 0 },
+{ "ایران", 0 },
+{ "ايران", 0 },
+{ "الاردن", 0 },
+{ "한국", 0 },
+{ "ලංකා", 0 },
+{ "இலங்கை", 0 },
+{ "المغرب", 0 },
+{ "عمان", 0 },
+{ "فلسطين", 0 },
+{ "срб", 0 },
+{ "рф", 0 },
+{ "قطر", 0 },
+{ "السعودية", 0 },
+{ "السعودیة", 0 },
+{ "السعودیۃ", 0 },
+{ "السعوديه", 0 },
+{ "سورية", 0 },
+{ "سوريا", 0 },
+{ "新加坡", 0 },
+{ "சிங்கப்பூர்", 0 },
+{ "ไทย", 0 },
+{ "تونس", 0 },
+{ "台灣", 0 },
+{ "台湾", 0 },
+{ "臺灣", 0 },
+{ "укр", 0 },
+{ "اليمن", 0 },
+{ "xxx", 0 },
+{ "ye", 1 },
+{ "za", 1 },
+{ "zm", 1 },
+{ "zw", 1 },
+{ "biz.at", 0 },
+{ "info.at", 0 },
+{ "priv.at", 0 },
+{ "co.ca", 0 },
+{ "ar.com", 0 },
+{ "br.com", 0 },
+{ "cn.com", 0 },
+{ "de.com", 0 },
+{ "eu.com", 0 },
+{ "gb.com", 0 },
+{ "gr.com", 0 },
+{ "hu.com", 0 },
+{ "jpn.com", 0 },
+{ "kr.com", 0 },
+{ "no.com", 0 },
+{ "qc.com", 0 },
+{ "ru.com", 0 },
+{ "sa.com", 0 },
+{ "se.com", 0 },
+{ "uk.com", 0 },
+{ "us.com", 0 },
+{ "uy.com", 0 },
+{ "za.com", 0 },
+{ "gb.net", 0 },
+{ "jp.net", 0 },
+{ "se.net", 0 },
+{ "uk.net", 0 },
+{ "ae.org", 0 },
+{ "us.org", 0 },
+{ "com.de", 0 },
+{ "operaunite.com", 0 },
+{ "appspot.com", 0 },
+{ "iki.fi", 0 },
+{ "c.la", 0 },
+{ "za.net", 0 },
+{ "za.org", 0 },
+{ "co.nl", 0 },
+{ "co.no", 0 },
+{ "co.pl", 0 },
+{ "dyndns-at-home.com", 0 },
+{ "dyndns-at-work.com", 0 },
+{ "dyndns-blog.com", 0 },
+{ "dyndns-free.com", 0 },
+{ "dyndns-home.com", 0 },
+{ "dyndns-ip.com", 0 },
+{ "dyndns-mail.com", 0 },
+{ "dyndns-office.com", 0 },
+{ "dyndns-pics.com", 0 },
+{ "dyndns-remote.com", 0 },
+{ "dyndns-server.com", 0 },
+{ "dyndns-web.com", 0 },
+{ "dyndns-wiki.com", 0 },
+{ "dyndns-work.com", 0 },
+{ "dyndns.biz", 0 },
+{ "dyndns.info", 0 },
+{ "dyndns.org", 0 },
+{ "dyndns.tv", 0 },
+{ "at-band-camp.net", 0 },
+{ "ath.cx", 0 },
+{ "barrel-of-knowledge.info", 0 },
+{ "barrell-of-knowledge.info", 0 },
+{ "better-than.tv", 0 },
+{ "blogdns.com", 0 },
+{ "blogdns.net", 0 },
+{ "blogdns.org", 0 },
+{ "blogsite.org", 0 },
+{ "boldlygoingnowhere.org", 0 },
+{ "broke-it.net", 0 },
+{ "buyshouses.net", 0 },
+{ "cechire.com", 0 },
+{ "dnsalias.com", 0 },
+{ "dnsalias.net", 0 },
+{ "dnsalias.org", 0 },
+{ "dnsdojo.com", 0 },
+{ "dnsdojo.net", 0 },
+{ "dnsdojo.org", 0 },
+{ "does-it.net", 0 },
+{ "doesntexist.com", 0 },
+{ "doesntexist.org", 0 },
+{ "dontexist.com", 0 },
+{ "dontexist.net", 0 },
+{ "dontexist.org", 0 },
+{ "doomdns.com", 0 },
+{ "doomdns.org", 0 },
+{ "dvrdns.org", 0 },
+{ "dyn-o-saur.com", 0 },
+{ "dynalias.com", 0 },
+{ "dynalias.net", 0 },
+{ "dynalias.org", 0 },
+{ "dynathome.net", 0 },
+{ "dyndns.ws", 0 },
+{ "endofinternet.net", 0 },
+{ "endofinternet.org", 0 },
+{ "endoftheinternet.org", 0 },
+{ "est-a-la-maison.com", 0 },
+{ "est-a-la-masion.com", 0 },
+{ "est-le-patron.com", 0 },
+{ "est-mon-blogueur.com", 0 },
+{ "for-better.biz", 0 },
+{ "for-more.biz", 0 },
+{ "for-our.info", 0 },
+{ "for-some.biz", 0 },
+{ "for-the.biz", 0 },
+{ "forgot.her.name", 0 },
+{ "forgot.his.name", 0 },
+{ "from-ak.com", 0 },
+{ "from-al.com", 0 },
+{ "from-ar.com", 0 },
+{ "from-az.net", 0 },
+{ "from-ca.com", 0 },
+{ "from-co.net", 0 },
+{ "from-ct.com", 0 },
+{ "from-dc.com", 0 },
+{ "from-de.com", 0 },
+{ "from-fl.com", 0 },
+{ "from-ga.com", 0 },
+{ "from-hi.com", 0 },
+{ "from-ia.com", 0 },
+{ "from-id.com", 0 },
+{ "from-il.com", 0 },
+{ "from-in.com", 0 },
+{ "from-ks.com", 0 },
+{ "from-ky.com", 0 },
+{ "from-la.net", 0 },
+{ "from-ma.com", 0 },
+{ "from-md.com", 0 },
+{ "from-me.org", 0 },
+{ "from-mi.com", 0 },
+{ "from-mn.com", 0 },
+{ "from-mo.com", 0 },
+{ "from-ms.com", 0 },
+{ "from-mt.com", 0 },
+{ "from-nc.com", 0 },
+{ "from-nd.com", 0 },
+{ "from-ne.com", 0 },
+{ "from-nh.com", 0 },
+{ "from-nj.com", 0 },
+{ "from-nm.com", 0 },
+{ "from-nv.com", 0 },
+{ "from-ny.net", 0 },
+{ "from-oh.com", 0 },
+{ "from-ok.com", 0 },
+{ "from-or.com", 0 },
+{ "from-pa.com", 0 },
+{ "from-pr.com", 0 },
+{ "from-ri.com", 0 },
+{ "from-sc.com", 0 },
+{ "from-sd.com", 0 },
+{ "from-tn.com", 0 },
+{ "from-tx.com", 0 },
+{ "from-ut.com", 0 },
+{ "from-va.com", 0 },
+{ "from-vt.com", 0 },
+{ "from-wa.com", 0 },
+{ "from-wi.com", 0 },
+{ "from-wv.com", 0 },
+{ "from-wy.com", 0 },
+{ "ftpaccess.cc", 0 },
+{ "fuettertdasnetz.de", 0 },
+{ "game-host.org", 0 },
+{ "game-server.cc", 0 },
+{ "getmyip.com", 0 },
+{ "gets-it.net", 0 },
+{ "go.dyndns.org", 0 },
+{ "gotdns.com", 0 },
+{ "gotdns.org", 0 },
+{ "groks-the.info", 0 },
+{ "groks-this.info", 0 },
+{ "ham-radio-op.net", 0 },
+{ "here-for-more.info", 0 },
+{ "hobby-site.com", 0 },
+{ "hobby-site.org", 0 },
+{ "home.dyndns.org", 0 },
+{ "homedns.org", 0 },
+{ "homeftp.net", 0 },
+{ "homeftp.org", 0 },
+{ "homeip.net", 0 },
+{ "homelinux.com", 0 },
+{ "homelinux.net", 0 },
+{ "homelinux.org", 0 },
+{ "homeunix.com", 0 },
+{ "homeunix.net", 0 },
+{ "homeunix.org", 0 },
+{ "iamallama.com", 0 },
+{ "in-the-band.net", 0 },
+{ "is-a-anarchist.com", 0 },
+{ "is-a-blogger.com", 0 },
+{ "is-a-bookkeeper.com", 0 },
+{ "is-a-bruinsfan.org", 0 },
+{ "is-a-bulls-fan.com", 0 },
+{ "is-a-candidate.org", 0 },
+{ "is-a-caterer.com", 0 },
+{ "is-a-celticsfan.org", 0 },
+{ "is-a-chef.com", 0 },
+{ "is-a-chef.net", 0 },
+{ "is-a-chef.org", 0 },
+{ "is-a-conservative.com", 0 },
+{ "is-a-cpa.com", 0 },
+{ "is-a-cubicle-slave.com", 0 },
+{ "is-a-democrat.com", 0 },
+{ "is-a-designer.com", 0 },
+{ "is-a-doctor.com", 0 },
+{ "is-a-financialadvisor.com", 0 },
+{ "is-a-geek.com", 0 },
+{ "is-a-geek.net", 0 },
+{ "is-a-geek.org", 0 },
+{ "is-a-green.com", 0 },
+{ "is-a-guru.com", 0 },
+{ "is-a-hard-worker.com", 0 },
+{ "is-a-hunter.com", 0 },
+{ "is-a-knight.org", 0 },
+{ "is-a-landscaper.com", 0 },
+{ "is-a-lawyer.com", 0 },
+{ "is-a-liberal.com", 0 },
+{ "is-a-libertarian.com", 0 },
+{ "is-a-linux-user.org", 0 },
+{ "is-a-llama.com", 0 },
+{ "is-a-musician.com", 0 },
+{ "is-a-nascarfan.com", 0 },
+{ "is-a-nurse.com", 0 },
+{ "is-a-painter.com", 0 },
+{ "is-a-patsfan.org", 0 },
+{ "is-a-personaltrainer.com", 0 },
+{ "is-a-photographer.com", 0 },
+{ "is-a-player.com", 0 },
+{ "is-a-republican.com", 0 },
+{ "is-a-rockstar.com", 0 },
+{ "is-a-socialist.com", 0 },
+{ "is-a-soxfan.org", 0 },
+{ "is-a-student.com", 0 },
+{ "is-a-teacher.com", 0 },
+{ "is-a-techie.com", 0 },
+{ "is-a-therapist.com", 0 },
+{ "is-an-accountant.com", 0 },
+{ "is-an-actor.com", 0 },
+{ "is-an-actress.com", 0 },
+{ "is-an-anarchist.com", 0 },
+{ "is-an-artist.com", 0 },
+{ "is-an-engineer.com", 0 },
+{ "is-an-entertainer.com", 0 },
+{ "is-by.us", 0 },
+{ "is-certified.com", 0 },
+{ "is-found.org", 0 },
+{ "is-gone.com", 0 },
+{ "is-into-anime.com", 0 },
+{ "is-into-cars.com", 0 },
+{ "is-into-cartoons.com", 0 },
+{ "is-into-games.com", 0 },
+{ "is-leet.com", 0 },
+{ "is-lost.org", 0 },
+{ "is-not-certified.com", 0 },
+{ "is-saved.org", 0 },
+{ "is-slick.com", 0 },
+{ "is-uberleet.com", 0 },
+{ "is-very-bad.org", 0 },
+{ "is-very-evil.org", 0 },
+{ "is-very-good.org", 0 },
+{ "is-very-nice.org", 0 },
+{ "is-very-sweet.org", 0 },
+{ "is-with-theband.com", 0 },
+{ "isa-geek.com", 0 },
+{ "isa-geek.net", 0 },
+{ "isa-geek.org", 0 },
+{ "isa-hockeynut.com", 0 },
+{ "issmarterthanyou.com", 0 },
+{ "isteingeek.de", 0 },
+{ "istmein.de", 0 },
+{ "kicks-ass.net", 0 },
+{ "kicks-ass.org", 0 },
+{ "knowsitall.info", 0 },
+{ "land-4-sale.us", 0 },
+{ "lebtimnetz.de", 0 },
+{ "leitungsen.de", 0 },
+{ "likes-pie.com", 0 },
+{ "likescandy.com", 0 },
+{ "merseine.nu", 0 },
+{ "mine.nu", 0 },
+{ "misconfused.org", 0 },
+{ "mypets.ws", 0 },
+{ "myphotos.cc", 0 },
+{ "neat-url.com", 0 },
+{ "office-on-the.net", 0 },
+{ "on-the-web.tv", 0 },
+{ "podzone.net", 0 },
+{ "podzone.org", 0 },
+{ "readmyblog.org", 0 },
+{ "saves-the-whales.com", 0 },
+{ "scrapper-site.net", 0 },
+{ "scrapping.cc", 0 },
+{ "selfip.biz", 0 },
+{ "selfip.com", 0 },
+{ "selfip.info", 0 },
+{ "selfip.net", 0 },
+{ "selfip.org", 0 },
+{ "sells-for-less.com", 0 },
+{ "sells-for-u.com", 0 },
+{ "sells-it.net", 0 },
+{ "sellsyourhome.org", 0 },
+{ "servebbs.com", 0 },
+{ "servebbs.net", 0 },
+{ "servebbs.org", 0 },
+{ "serveftp.net", 0 },
+{ "serveftp.org", 0 },
+{ "servegame.org", 0 },
+{ "shacknet.nu", 0 },
+{ "simple-url.com", 0 },
+{ "space-to-rent.com", 0 },
+{ "stuff-4-sale.org", 0 },
+{ "stuff-4-sale.us", 0 },
+{ "teaches-yoga.com", 0 },
+{ "thruhere.net", 0 },
+{ "traeumtgerade.de", 0 },
+{ "webhop.biz", 0 },
+{ "webhop.info", 0 },
+{ "webhop.net", 0 },
+{ "webhop.org", 0 },
+{ "worse-than.tv", 0 },
+{ "writesthisblog.com", 0 },
index 418b830..250fab3 100644 (file)
@@ -1,3 +1,6 @@
+* Wed Jul 05 2012 - Rusty Lynch <rusty.lynch@intel.com> - 2.39.3
+  - Update to version 2.39.3
+
 * Wed Jul 05 2012 - Rusty Lynch <rusty.lynch@intel.com> - 2.39.2
   - Updating to version 2.39.2
   - Added build dep for intltool
index 9fd885e..937372d 100644 (file)
@@ -1,6 +1,6 @@
 Name:       libsoup2.4
 Summary:    HTTP client/server library for GNOME
-Version:    2.39.2
+Version:    2.39.3
 Release:    1
 Group:      system/libraries
 License:    LGPLv2
index 47d983b..96820d4 100644 (file)
@@ -11,4 +11,5 @@ pl
 ro
 ru
 sl
+te
 zh_CN
index 80db055..a05aa79 100644 (file)
@@ -3,3 +3,4 @@ libsoup/soup-converter-wrapper.c
 libsoup/soup-message-io.c
 libsoup/soup-request.c
 libsoup/soup-requester.c
+libsoup/soup-tld.c
index 263018d..b817869 100644 (file)
--- a/po/be.po
+++ b/po/be.po
@@ -3,31 +3,35 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: libsoup master\n"
-"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?"
-"product=libsoup&keywords=I18N+L10N&component=general\n"
-"POT-Creation-Date: 2012-05-03 08:54+0000\n"
-"PO-Revision-Date: 2012-05-03 23:09+0300\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2012-06-08 17:37+0300\n"
+"PO-Revision-Date: 2012-06-08 17:37+0300\n"
 "Last-Translator: Ihar Hrachyshka <ihar.hrachyshka@gmail.com>\n"
 "Language-Team: Belarusian <i18n-bel-gnome@googlegroups.com>\n"
+"Language: be\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 
 #: ../libsoup/soup-body-input-stream.c:139
 #: ../libsoup/soup-body-input-stream.c:170
-#: ../libsoup/soup-body-input-stream.c:203 ../libsoup/soup-message-io.c:227
+#: ../libsoup/soup-body-input-stream.c:203 ../libsoup/soup-message-io.c:231
 msgid "Connection terminated unexpectedly"
 msgstr "Злучэнне нечакана перарвана"
 
-#: ../libsoup/soup-converter-wrapper.c:185
+#: ../libsoup/soup-converter-wrapper.c:190
 #, c-format
 msgid "Output buffer is too small"
 msgstr "Выхадны буфер надта малы"
 
-#: ../libsoup/soup-message-io.c:814 ../libsoup/soup-message-io.c:840
+#: ../libsoup/soup-message-io.c:836 ../libsoup/soup-message-io.c:863
 msgid "Operation was cancelled"
 msgstr "Аперацыя была скасавана"
 
+#: ../libsoup/soup-message-io.c:874
+msgid "Operation would block"
+msgstr "Аперацыя заблакіруе працэс"
+
 #: ../libsoup/soup-request.c:145
 #, c-format
 msgid "No URI provided"
index ebef9ef..f693bc5 100644 (file)
--- a/po/el.po
+++ b/po/el.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: libsoup master\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=libsoup&keywords=I18N+L10N&component=general\n"
-"POT-Creation-Date: 2012-04-23 08:45+0000\n"
-"PO-Revision-Date: 2012-04-24 16:34+0200\n"
+"POT-Creation-Date: 2012-06-14 18:14+0000\n"
+"PO-Revision-Date: 2012-06-22 13:16+0200\n"
 "Last-Translator: Tom Tryfonidis <tomtryf@gmail.com>\n"
 "Language-Team: Greek <team@lists.gnome.gr>\n"
 "MIME-Version: 1.0\n"
@@ -19,19 +19,24 @@ msgstr ""
 #: ../libsoup/soup-body-input-stream.c:139
 #: ../libsoup/soup-body-input-stream.c:170
 #: ../libsoup/soup-body-input-stream.c:203
-#: ../libsoup/soup-message-io.c:232
+#: ../libsoup/soup-message-io.c:231
 msgid "Connection terminated unexpectedly"
 msgstr "Η σύνδεση τερματίστηκε απρόσμενα"
 
-#: ../libsoup/soup-converter-wrapper.c:185
+#: ../libsoup/soup-converter-wrapper.c:190
 #, c-format
 msgid "Output buffer is too small"
 msgstr "Το buffer εξόδου είναι πολύ μικρό"
 
-#: ../libsoup/soup-message-io.c:818
+#: ../libsoup/soup-message-io.c:836
+#: ../libsoup/soup-message-io.c:863
 msgid "Operation was cancelled"
 msgstr "Η λειτουργία ακυρώθηκε"
 
+#: ../libsoup/soup-message-io.c:874
+msgid "Operation would block"
+msgstr "Η λειτουργία θα μπλοκαριστεί"
+
 #: ../libsoup/soup-request.c:145
 #, c-format
 msgid "No URI provided"
@@ -52,3 +57,16 @@ msgstr "Αδυναμία ανάλυσης URI '%s'"
 msgid "Unsupported URI scheme '%s'"
 msgstr "Μη υποστηριζόμενο URI σχήμα '%s'"
 
+#: ../libsoup/soup-tld.c:145
+msgid "Hostname is an IP address"
+msgstr "Το όνομα συστήματος είναι μια διεύθυνση IP"
+
+#: ../libsoup/soup-tld.c:166
+msgid "Invalid hostname"
+msgstr "Μη έγκυρο όνομα συστήματος"
+
+#: ../libsoup/soup-tld.c:181
+#: ../libsoup/soup-tld.c:219
+msgid "Not enough domains"
+msgstr "Δεν υπάρχουν αρκετοί τομείς"
+
index cde732d..4f5fac8 100644 (file)
--- a/po/es.po
+++ b/po/es.po
@@ -9,8 +9,8 @@ msgstr ""
 "Project-Id-Version: libsoup\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?"
 "product=libsoup&keywords=I18N+L10N&component=general\n"
-"POT-Creation-Date: 2012-05-08 16:55+0000\n"
-"PO-Revision-Date: 2012-05-09 12:46+0200\n"
+"POT-Creation-Date: 2012-06-14 18:14+0000\n"
+"PO-Revision-Date: 2012-06-15 12:10+0200\n"
 "Last-Translator: Daniel Mustieles <daniel.mustieles@gmail.com>\n"
 "Language-Team: Español <gnome-es-list@gnome.org>\n"
 "MIME-Version: 1.0\n"
@@ -24,16 +24,16 @@ msgstr ""
 msgid "Connection terminated unexpectedly"
 msgstr "La conexión terminó inesperadamente"
 
-#: ../libsoup/soup-converter-wrapper.c:185
+#: ../libsoup/soup-converter-wrapper.c:190
 #, c-format
 msgid "Output buffer is too small"
 msgstr "El búfer de salida es demasiado pequeño"
 
-#: ../libsoup/soup-message-io.c:836 ../libsoup/soup-message-io.c:862
+#: ../libsoup/soup-message-io.c:836 ../libsoup/soup-message-io.c:863
 msgid "Operation was cancelled"
 msgstr "Se canceló la operación"
 
-#: ../libsoup/soup-message-io.c:873
+#: ../libsoup/soup-message-io.c:874
 msgid "Operation would block"
 msgstr "La operación se bloqueará"
 
@@ -56,3 +56,15 @@ msgstr "No se pudo analizar el URI «%s»"
 #, c-format
 msgid "Unsupported URI scheme '%s'"
 msgstr "Esquema %s de URI no soportado"
+
+#: ../libsoup/soup-tld.c:145
+msgid "Hostname is an IP address"
+msgstr "El nombre del equipo es una dirección IP"
+
+#: ../libsoup/soup-tld.c:166
+msgid "Invalid hostname"
+msgstr "El nombre del equipo no es válido"
+
+#: ../libsoup/soup-tld.c:181 ../libsoup/soup-tld.c:219
+msgid "Not enough domains"
+msgstr "No hay suficientes dominios"
index 68df923..c493a55 100644 (file)
--- a/po/gl.po
+++ b/po/gl.po
@@ -8,8 +8,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: libsoup master\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-05-09 13:22+0200\n"
-"PO-Revision-Date: 2012-05-09 13:22+0200\n"
+"POT-Creation-Date: 2012-06-24 23:26+0200\n"
+"PO-Revision-Date: 2012-06-24 23:26+0200\n"
 "Last-Translator: Fran Dieguez <frandieguez@gnome.org>\n"
 "Language-Team: Galician <gnome-l10n-gl@gnome.org>\n"
 "Language: gl\n"
@@ -17,6 +17,7 @@ msgstr ""
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=(n!=1);\n"
+"X-Generator: Gtranslator 2.91.5\n"
 
 #: ../libsoup/soup-body-input-stream.c:139
 #: ../libsoup/soup-body-input-stream.c:170
@@ -24,16 +25,16 @@ msgstr ""
 msgid "Connection terminated unexpectedly"
 msgstr "A conexión rematou de forma non esperada"
 
-#: ../libsoup/soup-converter-wrapper.c:185
+#: ../libsoup/soup-converter-wrapper.c:190
 #, c-format
 msgid "Output buffer is too small"
 msgstr "O búfer de saída é demasiado pequeno"
 
-#: ../libsoup/soup-message-io.c:836 ../libsoup/soup-message-io.c:862
+#: ../libsoup/soup-message-io.c:836 ../libsoup/soup-message-io.c:863
 msgid "Operation was cancelled"
 msgstr "A operación foi cancelada"
 
-#: ../libsoup/soup-message-io.c:873
+#: ../libsoup/soup-message-io.c:874
 msgid "Operation would block"
 msgstr "A operación bloquearase"
 
@@ -56,3 +57,15 @@ msgstr "Non é posíbel analizar o URI «%s»"
 #, c-format
 msgid "Unsupported URI scheme '%s'"
 msgstr "Esquema de URI «%s» non admitido"
+
+#: ../libsoup/soup-tld.c:145
+msgid "Hostname is an IP address"
+msgstr "O nome do computador é un enderezo IP"
+
+#: ../libsoup/soup-tld.c:166
+msgid "Invalid hostname"
+msgstr "O nome do computador non é válido"
+
+#: ../libsoup/soup-tld.c:181 ../libsoup/soup-tld.c:219
+msgid "Not enough domains"
+msgstr "Non hai dominios dabondo"
index 0b23ce2..631c701 100644 (file)
--- a/po/sl.po
+++ b/po/sl.po
@@ -8,8 +8,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: libsoup master\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=libsoup&keywords=I18N+L10N&component=general\n"
-"POT-Creation-Date: 2012-05-18 02:03+0000\n"
-"PO-Revision-Date: 2012-05-23 19:56+0100\n"
+"POT-Creation-Date: 2012-06-15 10:11+0000\n"
+"PO-Revision-Date: 2012-06-16 08:39+0100\n"
 "Last-Translator: Matej Urbančič <mateju@svn.gnome.org>\n"
 "Language-Team: Slovenian <gnome-si@googlegroups.com>\n"
 "Language: sl\n"
@@ -28,7 +28,7 @@ msgstr ""
 msgid "Connection terminated unexpectedly"
 msgstr "Povezava je nepričakovano končana"
 
-#: ../libsoup/soup-converter-wrapper.c:185
+#: ../libsoup/soup-converter-wrapper.c:190
 #, c-format
 msgid "Output buffer is too small"
 msgstr "Odvodni medpomnilnik je premajhen."
@@ -62,3 +62,16 @@ msgstr "Ni mogoče razčleniti naslova URI '%s'"
 msgid "Unsupported URI scheme '%s'"
 msgstr "Nepodprta shema URI '%s'"
 
+#: ../libsoup/soup-tld.c:145
+msgid "Hostname is an IP address"
+msgstr "Ime gostitelja je naslov IP"
+
+#: ../libsoup/soup-tld.c:166
+msgid "Invalid hostname"
+msgstr "Neveljavno ime gostitelja"
+
+#: ../libsoup/soup-tld.c:181
+#: ../libsoup/soup-tld.c:219
+msgid "Not enough domains"
+msgstr "Ni dovolj domen"
+
diff --git a/po/te.po b/po/te.po
new file mode 100644 (file)
index 0000000..b76cef2
--- /dev/null
+++ b/po/te.po
@@ -0,0 +1,68 @@
+# Telugu translation for libsoup.
+# Copyright (C) 2012 libsoup's to Swecha Telugu localisation Team <localization@swecha.net>
+# This file is distributed under the same license as the libsoup package.
+# Sasi Bhushan  Boddepalli <sasi@swecha.net>, 2012.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: libsoup master\n"
+"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?"
+"product=libsoup&keywords=I18N+L10N&component=general\n"
+"POT-Creation-Date: 2012-06-18 13:31+0000\n"
+"PO-Revision-Date: 2012-06-18 13:31+0000\n"
+"Last-Translator: Sasi Bhushan  Boddepalli <sasi@swecha.net>\n"
+"Language-Team: Telugu <indlinux-telugu@lists.sourceforge.net>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../libsoup/soup-body-input-stream.c:139
+#: ../libsoup/soup-body-input-stream.c:170
+#: ../libsoup/soup-body-input-stream.c:203 ../libsoup/soup-message-io.c:231
+msgid "Connection terminated unexpectedly"
+msgstr "కనెక్షను అనుకోకుండా అంతమైంది"
+
+#: ../libsoup/soup-converter-wrapper.c:190
+#, c-format
+msgid "Output buffer is too small"
+msgstr "అవుట్పుట్ బఫర్ మరీ చిన్నది"
+
+#: ../libsoup/soup-message-io.c:836 ../libsoup/soup-message-io.c:863
+msgid "Operation was cancelled"
+msgstr "ఆపరేషన్ రద్దు చేయబడింది"
+
+#: ../libsoup/soup-message-io.c:874
+msgid "Operation would block"
+msgstr "ఆపరేషన్ బ్లాక్ చేస్తుంది"
+
+#: ../libsoup/soup-request.c:145
+#, c-format
+msgid "No URI provided"
+msgstr "URl అందించబడలేదు"
+
+#: ../libsoup/soup-request.c:155
+#, c-format
+msgid "Invalid '%s' URI: %s"
+msgstr "చెల్లని '%s' URI: %s"
+
+#: ../libsoup/soup-requester.c:220
+#, c-format
+msgid "Could not parse URI '%s'"
+msgstr "URI '%s' అన్వయించడం సాధ్యం కాదు"
+
+#: ../libsoup/soup-requester.c:254
+#, c-format
+msgid "Unsupported URI scheme '%s'"
+msgstr "మద్దతు లేని URI స్కీమ్ '%s'"
+
+#: ../libsoup/soup-tld.c:145
+msgid "Hostname is an IP address"
+msgstr "హోస్ట్ పేరు ఒక IP చిరునామా"
+
+#: ../libsoup/soup-tld.c:166
+msgid "Invalid hostname"
+msgstr "చెల్లని హోస్ట్ పేరు"
+
+#: ../libsoup/soup-tld.c:181 ../libsoup/soup-tld.c:219
+msgid "Not enough domains"
+msgstr "సరిపోనన్ని డొమైన్ లు"
index 81aaa86..37db420 100644 (file)
@@ -34,6 +34,7 @@ noinst_PROGRAMS =     \
        ssl-test        \
        streaming-test  \
        timeout-test    \
+       tld-test        \
        uri-parsing     \
        $(CURL_TESTS)   \
        $(APACHE_TESTS) \
@@ -71,6 +72,7 @@ sniffing_test_SOURCES = sniffing-test.c  $(TEST_SRCS)
 ssl_test_SOURCES = ssl-test.c  $(TEST_SRCS)
 streaming_test_SOURCES = streaming-test.c $(TEST_SRCS)
 timeout_test_SOURCES = timeout-test.c $(TEST_SRCS)
+tld_test_SOURCES = tld-test.c $(TEST_SRCS)
 uri_parsing_SOURCES = uri-parsing.c $(TEST_SRCS)
 xmlrpc_test_SOURCES = xmlrpc-test.c $(TEST_SRCS)
 xmlrpc_server_test_SOURCES = xmlrpc-server-test.c $(TEST_SRCS)
@@ -102,6 +104,7 @@ TESTS =                     \
        ssl-test        \
        streaming-test  \
        timeout-test    \
+       tld-test        \
        uri-parsing     \
        $(APACHE_TESTS) \
        $(CURL_TESTS)   \
index eee5a88..126aada 100644 (file)
@@ -43,8 +43,8 @@ noinst_PROGRAMS = chunk-test$(EXEEXT) coding-test$(EXEEXT) \
        simple-httpd$(EXEEXT) simple-proxy$(EXEEXT) \
        sniffing-test$(EXEEXT) ssl-test$(EXEEXT) \
        streaming-test$(EXEEXT) timeout-test$(EXEEXT) \
-       uri-parsing$(EXEEXT) $(am__EXEEXT_1) $(am__EXEEXT_2) \
-       $(am__EXEEXT_3)
+       tld-test$(EXEEXT) uri-parsing$(EXEEXT) $(am__EXEEXT_1) \
+       $(am__EXEEXT_2) $(am__EXEEXT_3)
 TESTS = chunk-test$(EXEEXT) coding-test$(EXEEXT) \
        connection-test$(EXEEXT) context-test$(EXEEXT) \
        continue-test$(EXEEXT) cookies-test$(EXEEXT) date$(EXEEXT) \
@@ -52,8 +52,8 @@ TESTS = chunk-test$(EXEEXT) coding-test$(EXEEXT) \
        redirect-test$(EXEEXT) requester-test$(EXEEXT) \
        sniffing-test$(EXEEXT) ssl-test$(EXEEXT) \
        streaming-test$(EXEEXT) timeout-test$(EXEEXT) \
-       uri-parsing$(EXEEXT) $(am__EXEEXT_2) $(am__EXEEXT_1) \
-       $(am__EXEEXT_3)
+       tld-test$(EXEEXT) uri-parsing$(EXEEXT) $(am__EXEEXT_2) \
+       $(am__EXEEXT_1) $(am__EXEEXT_3)
 subdir = tests
 DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
        $(srcdir)/httpd.conf.in
@@ -164,6 +164,9 @@ streaming_test_LDADD = $(LDADD)
 am_timeout_test_OBJECTS = timeout-test.$(OBJEXT) $(am__objects_1)
 timeout_test_OBJECTS = $(am_timeout_test_OBJECTS)
 timeout_test_LDADD = $(LDADD)
+am_tld_test_OBJECTS = tld-test.$(OBJEXT) $(am__objects_1)
+tld_test_OBJECTS = $(am_tld_test_OBJECTS)
+tld_test_LDADD = $(LDADD)
 am_uri_parsing_OBJECTS = uri-parsing.$(OBJEXT) $(am__objects_1)
 uri_parsing_OBJECTS = $(am_uri_parsing_OBJECTS)
 uri_parsing_LDADD = $(LDADD)
@@ -212,8 +215,8 @@ SOURCES = $(auth_test_SOURCES) $(chunk_test_SOURCES) \
        $(simple_httpd_SOURCES) $(simple_proxy_SOURCES) \
        $(sniffing_test_SOURCES) $(ssl_test_SOURCES) \
        $(streaming_test_SOURCES) $(timeout_test_SOURCES) \
-       $(uri_parsing_SOURCES) $(xmlrpc_server_test_SOURCES) \
-       $(xmlrpc_test_SOURCES)
+       $(tld_test_SOURCES) $(uri_parsing_SOURCES) \
+       $(xmlrpc_server_test_SOURCES) $(xmlrpc_test_SOURCES)
 DIST_SOURCES = $(auth_test_SOURCES) $(chunk_test_SOURCES) \
        $(coding_test_SOURCES) $(connection_test_SOURCES) \
        $(context_test_SOURCES) $(continue_test_SOURCES) \
@@ -226,8 +229,8 @@ DIST_SOURCES = $(auth_test_SOURCES) $(chunk_test_SOURCES) \
        $(simple_httpd_SOURCES) $(simple_proxy_SOURCES) \
        $(sniffing_test_SOURCES) $(ssl_test_SOURCES) \
        $(streaming_test_SOURCES) $(timeout_test_SOURCES) \
-       $(uri_parsing_SOURCES) $(xmlrpc_server_test_SOURCES) \
-       $(xmlrpc_test_SOURCES)
+       $(tld_test_SOURCES) $(uri_parsing_SOURCES) \
+       $(xmlrpc_server_test_SOURCES) $(xmlrpc_test_SOURCES)
 ETAGS = etags
 CTAGS = ctags
 am__tty_colors = \
@@ -465,6 +468,7 @@ sniffing_test_SOURCES = sniffing-test.c  $(TEST_SRCS)
 ssl_test_SOURCES = ssl-test.c  $(TEST_SRCS)
 streaming_test_SOURCES = streaming-test.c $(TEST_SRCS)
 timeout_test_SOURCES = timeout-test.c $(TEST_SRCS)
+tld_test_SOURCES = tld-test.c $(TEST_SRCS)
 uri_parsing_SOURCES = uri-parsing.c $(TEST_SRCS)
 xmlrpc_test_SOURCES = xmlrpc-test.c $(TEST_SRCS)
 xmlrpc_server_test_SOURCES = xmlrpc-server-test.c $(TEST_SRCS)
@@ -621,6 +625,9 @@ streaming-test$(EXEEXT): $(streaming_test_OBJECTS) $(streaming_test_DEPENDENCIES
 timeout-test$(EXEEXT): $(timeout_test_OBJECTS) $(timeout_test_DEPENDENCIES) $(EXTRA_timeout_test_DEPENDENCIES) 
        @rm -f timeout-test$(EXEEXT)
        $(AM_V_CCLD)$(LINK) $(timeout_test_OBJECTS) $(timeout_test_LDADD) $(LIBS)
+tld-test$(EXEEXT): $(tld_test_OBJECTS) $(tld_test_DEPENDENCIES) $(EXTRA_tld_test_DEPENDENCIES) 
+       @rm -f tld-test$(EXEEXT)
+       $(AM_V_CCLD)$(LINK) $(tld_test_OBJECTS) $(tld_test_LDADD) $(LIBS)
 uri-parsing$(EXEEXT): $(uri_parsing_OBJECTS) $(uri_parsing_DEPENDENCIES) $(EXTRA_uri_parsing_DEPENDENCIES) 
        @rm -f uri-parsing$(EXEEXT)
        $(AM_V_CCLD)$(LINK) $(uri_parsing_OBJECTS) $(uri_parsing_LDADD) $(LIBS)
@@ -665,6 +672,7 @@ distclean-compile:
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/streaming-test.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-utils.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/timeout-test.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/tld-test.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/uri-parsing.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xmlrpc-server-test.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xmlrpc-test.Po@am__quote@
index f35c41b..5b3ec34 100644 (file)
@@ -49,8 +49,8 @@ check_good (SoupDateFormat format, const char *strdate)
        char *strdate2;
 
        date = make_date (strdate);
-       if (date)
-               strdate2 = soup_date_to_string (date, format);
+       g_assert (date);
+       strdate2 = soup_date_to_string (date, format);
        if (!check_ok (strdate, date))
                return;
 
diff --git a/tests/tld-test.c b/tests/tld-test.c
new file mode 100644 (file)
index 0000000..7be0ae7
--- /dev/null
@@ -0,0 +1,131 @@
+/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
+/*
+ * Copyright (C) 2012 Igalia S.L.
+ */
+
+#include <glib.h>
+#include <libsoup/soup.h>
+#include <string.h>
+
+#include "test-utils.h"
+
+/* From http://publicsuffix.org/list/test.txt */
+static struct {
+  const char *hostname;
+  const char *result;
+} tld_tests[] = {
+  /* NULL input. Not checked here because the API requires a valid hostname. */
+  /* { NULL, NULL }, */
+  /* Mixed case. Not checked because the API requires a valid hostname. */
+  /* { "COM", NULL }, */
+  /* { "example.COM", "example.com" }, */
+  /* { "WwW.example.COM", "example.com" }, */
+  /* Leading dot. */
+  { ".com", NULL },
+  { ".example", NULL },
+  { ".example.com", NULL },
+  { ".example.example", NULL },
+  /* Unlisted TLD. Not checked because we do not want to force every URL to have a public suffix.*/
+  /* { "example", NULL }, */
+  /* { "example.example", NULL }, */
+  /* { "b.example.example", NULL }, */
+  /* { "a.b.example.example", NULL }, */
+  /* Listed, but non-Internet, TLD. */
+  /*{ "local", NULL }, */
+  /*{ "example.local", NULL }, */
+  /*{ "b.example.local", NULL }, */
+  /*{ "a.b.example.local", NULL }, */
+  /* TLD with only 1 rule. */
+  { "biz", NULL },
+  { "domain.biz", "domain.biz" },
+  { "b.domain.biz", "domain.biz" },
+  { "a.b.domain.biz", "domain.biz" },
+  /* TLD with some 2-level rules. */
+  { "com", NULL },
+  { "example.com", "example.com" },
+  { "b.example.com", "example.com" },
+  { "a.b.example.com", "example.com" },
+  { "uk.com", NULL },
+  { "example.uk.com", "example.uk.com" },
+  { "b.example.uk.com", "example.uk.com" },
+  { "a.b.example.uk.com", "example.uk.com" },
+  { "test.ac", "test.ac" },
+  /* TLD with only 1 (wildcard) rule. */
+  { "cy", NULL },
+  { "c.cy", NULL },
+  { "b.c.cy", "b.c.cy" },
+  { "a.b.c.cy", "b.c.cy" },
+  /* More complex TLD. */
+  { "jp", NULL },
+  { "test.jp", "test.jp" },
+  { "www.test.jp", "test.jp" },
+  { "ac.jp", NULL },
+  { "test.ac.jp", "test.ac.jp" },
+  { "www.test.ac.jp", "test.ac.jp" },
+  { "kyoto.jp", NULL },
+  { "c.kyoto.jp", NULL },
+  { "b.c.kyoto.jp", "b.c.kyoto.jp" },
+  { "a.b.c.kyoto.jp", "b.c.kyoto.jp" },
+  { "pref.kyoto.jp", "pref.kyoto.jp" },        /* Exception rule. */
+  { "www.pref.kyoto.jp", "pref.kyoto.jp" },    /* Exception rule. */
+  { "city.kyoto.jp", "city.kyoto.jp" },        /* Exception rule. */
+  { "www.city.kyoto.jp", "city.kyoto.jp" },    /* Exception rule. */
+  /* TLD with a wildcard rule and exceptions. */
+  { "om", NULL },
+  { "test.om", NULL },
+  { "b.test.om", "b.test.om" },
+  { "a.b.test.om", "b.test.om" },
+  { "songfest.om", "songfest.om" },
+  { "www.songfest.om", "songfest.om" },
+  /* US K12. */
+  { "us", NULL },
+  { "test.us", "test.us" },
+  { "www.test.us", "test.us" },
+  { "ak.us", NULL },
+  { "test.ak.us", "test.ak.us" },
+  { "www.test.ak.us", "test.ak.us" },
+  { "k12.ak.us", NULL },
+  { "test.k12.ak.us", "test.k12.ak.us" },
+  { "www.test.k12.ak.us", "test.k12.ak.us" },
+  /* This is not in http://publicsuffix.org/list/test.txt but we want to check it anyway. */
+  { "co.uk", NULL },
+  /* The original list does not include non-ASCII tests. Let's add a couple. */
+  { "公司.cn", NULL },
+  { "a.b.åfjord.no", "b.åfjord.no" }
+};
+
+int
+main (int argc, char **argv)
+{
+       int i;
+
+       test_init (argc, argv, NULL);
+
+       errors = 0;
+       for (i = 0; i < G_N_ELEMENTS (tld_tests); ++i) {
+               gboolean is_public = soup_tld_domain_is_public_suffix (tld_tests[i].hostname);
+               const char *base_domain = soup_tld_get_base_domain (tld_tests[i].hostname, NULL);
+
+               if (tld_tests[i].result) {
+                       /* Public domains have NULL expected results. */
+                       if (is_public || g_strcmp0 (tld_tests[i].result, base_domain)) {
+                               debug_printf (1, "ERROR: %s got %s (%s expected)\n",
+                                             tld_tests[i].hostname, base_domain, tld_tests[i].result);
+                               ++errors;
+                       }
+               } else {
+                       /* If there is no expected result then either the domain is public or
+                        * the hostname invalid (for example starts with a leading dot).
+                        */
+                       if (!is_public && base_domain) {
+                               debug_printf (1, "ERROR: public domain %s got %s (none expected)\n",
+                                             tld_tests[i].hostname, base_domain);
+                               ++errors;
+                       }
+              }
+       }
+
+       test_cleanup ();
+
+       return errors != 0;
+}