diff --git a/COPYING b/COPYING
deleted file mode 120000
index caeca07..0000000
--- a/COPYING
+++ /dev/null
@@ -1 +0,0 @@
-/usr/share/automake-1.14/COPYING
\ No newline at end of file
diff --git a/COPYING b/COPYING
new file mode 100644
index 0000000..1c94b98
--- /dev/null
+++ b/COPYING
@@ -0,0 +1,17 @@
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+ * DEALINGS IN THE SOFTWARE.
diff --git a/LICENSE b/LICENSE
index bde60ce..1c94b98 100644
--- a/LICENSE
+++ b/LICENSE
@@ -1,165 +1,17 @@
-GNU LESSER GENERAL PUBLIC LICENSE
- Version 3, 29 June 2007
-
- Copyright (C) 2007 Free Software Foundation, Inc.
- Everyone is permitted to copy and distribute verbatim copies
- of this license document, but changing it is not allowed.
-
-
- This version of the GNU Lesser General Public License incorporates
-the terms and conditions of version 3 of the GNU General Public
-License, supplemented by the additional permissions listed below.
-
- 0. Additional Definitions.
-
- As used herein, "this License" refers to version 3 of the GNU Lesser
-General Public License, and the "GNU GPL" refers to version 3 of the GNU
-General Public License.
-
- "The Library" refers to a covered work governed by this License,
-other than an Application or a Combined Work as defined below.
-
- An "Application" is any work that makes use of an interface provided
-by the Library, but which is not otherwise based on the Library.
-Defining a subclass of a class defined by the Library is deemed a mode
-of using an interface provided by the Library.
-
- A "Combined Work" is a work produced by combining or linking an
-Application with the Library. The particular version of the Library
-with which the Combined Work was made is also called the "Linked
-Version".
-
- The "Minimal Corresponding Source" for a Combined Work means the
-Corresponding Source for the Combined Work, excluding any source code
-for portions of the Combined Work that, considered in isolation, are
-based on the Application, and not on the Linked Version.
-
- The "Corresponding Application Code" for a Combined Work means the
-object code and/or source code for the Application, including any data
-and utility programs needed for reproducing the Combined Work from the
-Application, but excluding the System Libraries of the Combined Work.
-
- 1. Exception to Section 3 of the GNU GPL.
-
- You may convey a covered work under sections 3 and 4 of this License
-without being bound by section 3 of the GNU GPL.
-
- 2. Conveying Modified Versions.
-
- If you modify a copy of the Library, and, in your modifications, a
-facility refers to a function or data to be supplied by an Application
-that uses the facility (other than as an argument passed when the
-facility is invoked), then you may convey a copy of the modified
-version:
-
- a) under this License, provided that you make a good faith effort to
- ensure that, in the event an Application does not supply the
- function or data, the facility still operates, and performs
- whatever part of its purpose remains meaningful, or
-
- b) under the GNU GPL, with none of the additional permissions of
- this License applicable to that copy.
-
- 3. Object Code Incorporating Material from Library Header Files.
-
- The object code form of an Application may incorporate material from
-a header file that is part of the Library. You may convey such object
-code under terms of your choice, provided that, if the incorporated
-material is not limited to numerical parameters, data structure
-layouts and accessors, or small macros, inline functions and templates
-(ten or fewer lines in length), you do both of the following:
-
- a) Give prominent notice with each copy of the object code that the
- Library is used in it and that the Library and its use are
- covered by this License.
-
- b) Accompany the object code with a copy of the GNU GPL and this license
- document.
-
- 4. Combined Works.
-
- You may convey a Combined Work under terms of your choice that,
-taken together, effectively do not restrict modification of the
-portions of the Library contained in the Combined Work and reverse
-engineering for debugging such modifications, if you also do each of
-the following:
-
- a) Give prominent notice with each copy of the Combined Work that
- the Library is used in it and that the Library and its use are
- covered by this License.
-
- b) Accompany the Combined Work with a copy of the GNU GPL and this license
- document.
-
- c) For a Combined Work that displays copyright notices during
- execution, include the copyright notice for the Library among
- these notices, as well as a reference directing the user to the
- copies of the GNU GPL and this license document.
-
- d) Do one of the following:
-
- 0) Convey the Minimal Corresponding Source under the terms of this
- License, and the Corresponding Application Code in a form
- suitable for, and under terms that permit, the user to
- recombine or relink the Application with a modified version of
- the Linked Version to produce a modified Combined Work, in the
- manner specified by section 6 of the GNU GPL for conveying
- Corresponding Source.
-
- 1) Use a suitable shared library mechanism for linking with the
- Library. A suitable mechanism is one that (a) uses at run time
- a copy of the Library already present on the user's computer
- system, and (b) will operate properly with a modified version
- of the Library that is interface-compatible with the Linked
- Version.
-
- e) Provide Installation Information, but only if you would otherwise
- be required to provide such information under section 6 of the
- GNU GPL, and only to the extent that such information is
- necessary to install and execute a modified version of the
- Combined Work produced by recombining or relinking the
- Application with a modified version of the Linked Version. (If
- you use option 4d0, the Installation Information must accompany
- the Minimal Corresponding Source and Corresponding Application
- Code. If you use option 4d1, you must provide the Installation
- Information in the manner specified by section 6 of the GNU GPL
- for conveying Corresponding Source.)
-
- 5. Combined Libraries.
-
- You may place library facilities that are a work based on the
-Library side by side in a single library together with other library
-facilities that are not Applications and are not covered by this
-License, and convey such a combined library under terms of your
-choice, if you do both of the following:
-
- a) Accompany the combined library with a copy of the same work based
- on the Library, uncombined with any other library facilities,
- conveyed under the terms of this License.
-
- b) Give prominent notice with the combined library that part of it
- is a work based on the Library, and explaining where to find the
- accompanying uncombined form of the same work.
-
- 6. Revised Versions of the GNU Lesser General Public License.
-
- The Free Software Foundation may publish revised and/or new versions
-of the GNU Lesser General Public License from time to time. Such new
-versions will be similar in spirit to the present version, but may
-differ in detail to address new problems or concerns.
-
- Each version is given a distinguishing version number. If the
-Library as you received it specifies that a certain numbered version
-of the GNU Lesser General Public License "or any later version"
-applies to it, you have the option of following the terms and
-conditions either of that published version or of any later version
-published by the Free Software Foundation. If the Library as you
-received it does not specify a version number of the GNU Lesser
-General Public License, you may choose any version of the GNU Lesser
-General Public License ever published by the Free Software Foundation.
-
- If the Library as you received it specifies that a proxy can decide
-whether future versions of the GNU Lesser General Public License shall
-apply, that proxy's public statement of acceptance of any version is
-permanent authorization for you to choose that version for the
-Library.
\ No newline at end of file
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+ * DEALINGS IN THE SOFTWARE.
diff --git a/include/Makefile.am b/include/Makefile.am
index dd315d8..a45de59 100644
--- a/include/Makefile.am
+++ b/include/Makefile.am
@@ -1 +1 @@
-include_HEADERS = libpsl.h libpsl-inline.h
+include_HEADERS = libpsl.h
diff --git a/include/libpsl-inline.h b/include/libpsl-inline.h
deleted file mode 100644
index d4ad50f..0000000
--- a/include/libpsl-inline.h
+++ /dev/null
@@ -1,78 +0,0 @@
-/*
- * Copyright(c) 2014 Tim Ruehsen
- *
- * This file is part of libpsl.
- *
- * Libpsl is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * Libpsl is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with libpsl. If not, see .
- *
- *
- * Header file for libpsl library routines
- *
- * Changelog
- * 22.03.2014 Tim Ruehsen created
- *
- */
-
-#ifndef _LIBPSL_LIBPSL_INLINE_H
-#define _LIBPSL_LIBPSL_INLINE_H
-
-#include
-
-// Let C++ include C headers
-#ifdef __cplusplus
-# define PSL_BEGIN_DECLS extern "C" {
-# define PSL_END_DECLS }
-#else
-# define PSL_BEGIN_DECLS
-# define PSL_END_DECLS
-#endif
-
-#if ENABLE_NLS != 0
-# include
-# define _(STRING) gettext(STRING)
-#else
-# define _(STRING) STRING
-# define ngettext(STRING1,STRING2,N) STRING2
-#endif
-
-PSL_BEGIN_DECLS
-
-void
- psl_inline_init(void);
-void
- psl_inline_deinit(void);
-int
- psl_inline_is_public(const char *domain);
-
-/* does not include exceptions */
-int
- psl_inline_suffix_count(void);
-/* just counts exceptions */
-int
- psl_inline_suffix_exception_count(void);
-
-// returns compilation time
-time_t
- psl_inline_builtin_compile_time(void);
-// returns mtime of PSL source file
-time_t
- psl_inline_builtin_file_time(void);
-
-// returns MD5 checksum (hex-encoded, lowercase) of PSL source file
-const char *
- psl_inline_builtin_sha1sum(void);
-
-PSL_END_DECLS
-
-#endif /* _LIBPSL_LIBPSL_INLINE_H */
diff --git a/src/psl-inline.c b/src/psl-inline.c
deleted file mode 100644
index 51600d9..0000000
--- a/src/psl-inline.c
+++ /dev/null
@@ -1,166 +0,0 @@
-/*
- * Copyright(c) 2014 Tim Ruehsen
- *
- * This file is part of MGet.
- *
- * Mget is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * Mget is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with Mget. If not, see .
- *
- *
- * Public Suffix List routines (right now experimental)
- *
- * Changelog
- * 22.03.2014 Tim Ruehsen created
- *
- */
-
-#if HAVE_CONFIG_H
-# include
-#endif
-
-#include
-#include
-#include
-#include
-
-#include
-
-#define countof(a) (sizeof(a)/sizeof(*(a)))
-
-typedef struct {
- char
- label_buf[48];
- const char *
- label;
- unsigned short
- length;
- unsigned char
- nlabels, // number of labels
- wildcard; // this is a wildcard rule (e.g. *.sapporo.jp)
-} _psl_entry_t;
-
-#include "suffixes.c"
-
-// by this kind of sorting, we can easily see if a domain matches or not (match = supercookie !)
-
-static int _suffix_compare(const _psl_entry_t *s1, const _psl_entry_t *s2)
-{
- int n;
-
- if ((n = s2->nlabels - s1->nlabels))
- return n; // most labels first
-
- if ((n = s1->length - s2->length))
- return n; // shorter rules first
-
- return strcmp(s1->label, s2->label);
-}
-
-void psl_inline_init(void)
-{
- size_t it;
-
- for (it = 0; it < countof(suffixes); it++)
- suffixes[it].label = suffixes[it].label_buf;
-
- for (it = 0; it < countof(suffix_exceptions); it++)
- suffix_exceptions[it].label = suffix_exceptions[it].label_buf;
-}
-
-void psl_inline_deinit(void)
-{
-}
-
-int psl_inline_is_public(const char *domain)
-{
- _psl_entry_t suffix, *rule;
- const char *p, *label_bak;
- unsigned short length_bak;
-
- // this function should be called without leading dots, just make sure
- suffix.label = domain + (*domain == '.');
- suffix.length = strlen(suffix.label);
- suffix.wildcard = 0;
- suffix.nlabels = 1;
-
- for (p = suffix.label; *p; p++)
- if (*p == '.')
- suffix.nlabels++;
-
- // if domain has enough labels, it is public
- rule = &suffixes[0];
- if (!rule || rule->nlabels < suffix.nlabels - 1)
- return 1;
-
- rule = bsearch(&suffix, suffixes, countof(suffixes), sizeof(suffixes[0]), (int(*)(const void *, const void *))_suffix_compare);
- if (rule) {
- // definitely a match, no matter if the found rule is a wildcard or not
- return 0;
- }
-
- label_bak = suffix.label;
- length_bak = suffix.length;
-
- if ((suffix.label = strchr(suffix.label, '.'))) {
- suffix.label++;
- suffix.length = strlen(suffix.label);
- suffix.nlabels--;
-
- rule = bsearch(&suffix, suffixes, countof(suffixes), sizeof(suffixes[0]), (int(*)(const void *, const void *))_suffix_compare);
- if (rule) {
- if (rule->wildcard) {
- // now that we matched a wildcard, we have to check for an exception
- suffix.label = label_bak;
- suffix.length = length_bak;
- suffix.nlabels++;
-
- if (bsearch(&suffix, suffix_exceptions, countof(suffix_exceptions), sizeof(suffix_exceptions[0]), (int(*)(const void *, const void *))_suffix_compare))
- return 1; // found an exception, so 'domain' is public
-
- return 0;
- }
- }
- }
-
- return 1;
-}
-
-/* does not include exceptions */
-int psl_inline_suffix_count(void)
-{
- return countof(suffixes);
-}
-
-/* just counts exceptions */
-int psl_inline_suffix_exception_count(void)
-{
- return countof(suffix_exceptions);
-}
-
-// returns compilation time
-time_t psl_inline_builtin_compile_time(void)
-{
- return _psl_compile_time;
-}
-
-// returns mtime of PSL source file
-time_t psl_inline_builtin_file_time(void)
-{
- return _psl_file_time;
-}
-
-// returns MD5 checksum (hex-encoded, lowercase) of PSL source file
-const char *psl_inline_builtin_sha1sum(void)
-{
- return _psl_sha1_checksum;
-}
diff --git a/src/psl2c.c b/src/psl2c.c
index d18f280..25bba97 100644
--- a/src/psl2c.c
+++ b/src/psl2c.c
@@ -1,22 +1,26 @@
/*
* Copyright(c) 2014 Tim Ruehsen
*
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+ * DEALINGS IN THE SOFTWARE.
+ *
* This file is part of libpsl.
*
- * Libpsl is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * Libpsl is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with libpsl. If not, see .
- *
- *
* Precompile Public Suffix List into
*
* Changelog
@@ -109,25 +113,6 @@ static _psl_entry_t *_vector_get(const _psl_vector_t *v, int pos)
return v->entry[pos];
}
-// the entries must be sorted by
-static int _vector_find(const _psl_vector_t *v, const _psl_entry_t *elem)
-{
- if (v) {
- int l, r, m;
- int res;
-
- // binary search for element (exact match)
- for (l = 0, r = v->cur - 1; l <= r;) {
- m = (l + r) / 2;
- if ((res = v->cmp(elem, v->entry[m])) > 0) l = m + 1;
- else if (res < 0) r = m - 1;
- else return m;
- }
- }
-
- return -1; // not found
-}
-
static int _vector_add(_psl_vector_t *v, const _psl_entry_t *elem)
{
if (v) {
diff --git a/tests/Makefile.am b/tests/Makefile.am
index b644ffb..f7e21cf 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -1,15 +1,12 @@
#DEFS = @DEFS@ -DDATADIR=\"$(datadir)/@PACKAGE@\" -DSRCDIR=\"$(srcdir)\"
DEFS = @DEFS@ -DDATADIR=\"$(top_srcdir)/data\" -DSRCDIR=\"$(srcdir)\"
-AM_CPPFLAGS = -Wno-missing-field-initializers -I$(top_srcdir)/include
-AM_LDFLAGS = -static
+AM_CPPFLAGS = -I$(top_srcdir)/include
+#AM_LDFLAGS = -static
LDADD = ../src/libpsl-@LIBPSL_API_VERSION@.la
-PSL_TESTS = test-is-public test-is-public-inline
+PSL_TESTS = test-is-public test-is-public-builtin
check_PROGRAMS = $(PSL_TESTS)
-#test_is_public_inline_SOURCES = test-is-public-inline.c
-#test_is_public_inline_LDADD = ../src/libpsl-inline-@LIBPSL_API_VERSION@.la
-
TESTS_ENVIRONMENT = TESTS_VALGRIND="@VALGRIND_ENVIRONMENT@"
TESTS = $(PSL_TESTS)
diff --git a/tests/test-is-public-inline.c b/tests/test-is-public-builtin.c
similarity index 67%
rename from tests/test-is-public-inline.c
rename to tests/test-is-public-builtin.c
index 8ab4ad2..adc28d4 100644
--- a/tests/test-is-public-inline.c
+++ b/tests/test-is-public-builtin.c
@@ -1,23 +1,27 @@
/*
* Copyright(c) 2014 Tim Ruehsen
*
- * This file is part of MGet.
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
*
- * Mget is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
*
- * Mget is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+ * DEALINGS IN THE SOFTWARE.
*
- * You should have received a copy of the GNU General Public License
- * along with Mget. If not, see .
+ * This file is part of the test suite of libpsl.
*
- *
- * Public Suffix List routines (right now experimental)
+ * Test case for psl built-in functions
*
* Changelog
* 19.03.2014 Tim Ruehsen created from libmget/cookie.c
diff --git a/tests/test-is-public.c b/tests/test-is-public.c
index 1057fa8..34ad543 100644
--- a/tests/test-is-public.c
+++ b/tests/test-is-public.c
@@ -1,23 +1,27 @@
/*
* Copyright(c) 2014 Tim Ruehsen
*
- * This file is part of MGet.
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
*
- * Mget is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
*
- * Mget is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+ * DEALINGS IN THE SOFTWARE.
*
- * You should have received a copy of the GNU General Public License
- * along with Mget. If not, see .
+ * This file is part of the test suite of libpsl.
*
- *
- * Public Suffix List routines (right now experimental)
+ * Test case for psl_load_file(), psl_is_public(), psl_free()
*
* Changelog
* 19.03.2014 Tim Ruehsen created from libmget/cookie.c