Sync from SUSE:SLFO:Main libpsl revision a3b56a3c8602a1f0bd6441cdbc21e8a0

This commit is contained in:
Adrian Schröter 2024-05-03 15:30:54 +02:00
commit 7193543287
8 changed files with 476 additions and 0 deletions

23
.gitattributes vendored Normal file
View File

@ -0,0 +1,23 @@
## Default LFS
*.7z filter=lfs diff=lfs merge=lfs -text
*.bsp filter=lfs diff=lfs merge=lfs -text
*.bz2 filter=lfs diff=lfs merge=lfs -text
*.gem filter=lfs diff=lfs merge=lfs -text
*.gz filter=lfs diff=lfs merge=lfs -text
*.jar filter=lfs diff=lfs merge=lfs -text
*.lz filter=lfs diff=lfs merge=lfs -text
*.lzma filter=lfs diff=lfs merge=lfs -text
*.obscpio filter=lfs diff=lfs merge=lfs -text
*.oxt filter=lfs diff=lfs merge=lfs -text
*.pdf filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.rpm filter=lfs diff=lfs merge=lfs -text
*.tbz filter=lfs diff=lfs merge=lfs -text
*.tbz2 filter=lfs diff=lfs merge=lfs -text
*.tgz filter=lfs diff=lfs merge=lfs -text
*.ttf filter=lfs diff=lfs merge=lfs -text
*.txz filter=lfs diff=lfs merge=lfs -text
*.whl filter=lfs diff=lfs merge=lfs -text
*.xz filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text

3
_multibuild Normal file
View File

@ -0,0 +1,3 @@
<multibuild>
<flavor>psl-make-dafsa</flavor>
</multibuild>

1
baselibs.conf Normal file
View File

@ -0,0 +1 @@
libpsl5

BIN
libpsl-0.21.2.tar.gz (Stored with Git LFS) Normal file

Binary file not shown.

169
libpsl.changes Normal file
View File

@ -0,0 +1,169 @@
-------------------------------------------------------------------
Tue Dec 27 21:16:58 UTC 2022 - Andreas Stieger <andreas.stieger@gmx.de>
- update to 0.21.2:
* Increased internal label size
* Fix undefined behavior in library code
* Ensure that calls to fopen() and stat() can handle largefiles
- add multibuild definition
-------------------------------------------------------------------
Fri Jul 17 08:44:57 UTC 2020 - Andreas Stieger <andreas.stieger@gmx.de>
- update to 0.21.1:
* fix build with recent platform.sh changes to publicsuffix
-------------------------------------------------------------------
Sun May 19 13:11:18 UTC 2019 - Andreas Stieger <andreas.stieger@gmx.de>
- update to 0.21.0:
* Add -b/--batch to 'psl' to suppress printing the domain
-------------------------------------------------------------------
Sat Apr 28 13:02:20 UTC 2018 - astieger@suse.com
- update to 0.20.2:
* Fix non srcdir builds
* Add API decoration
* Detection fallback from libidn2 to libcu, libidn
-------------------------------------------------------------------
Tue Feb 27 15:50:37 UTC 2018 - astieger@suse.com
- update to 0.20.1:
* Fix issue introduced with PSL_TYPE_NO_STAR_RULE in V0.20.0
* Fix SO_VERSION to 8:0:3
* Improve unit tests
-------------------------------------------------------------------
Thu Feb 22 15:14:07 UTC 2018 - fvogt@suse.com
- Use %license (boo#1082318)
-------------------------------------------------------------------
Thu Feb 22 09:37:13 UTC 2018 - astieger@suse.com
- update to 0.20.0:
* Remove hard-coded gcc flag in Makefile.am
* Prevent excessive CPU cycles on large inputs
* New flag PSL_TYPE_NO_STAR_RULE to skip star rule
-------------------------------------------------------------------
Wed Jan 3 20:38:32 UTC 2018 - tchvatal@suse.com
- Make sure to use python3 during build instead of calling env
-------------------------------------------------------------------
Thu Nov 9 19:15:04 UTC 2017 - astieger@suse.com
- update to 0.19.1:
* New function psl_free_string()
* psl_make_dafsa now works with python2 and python3
* psl_*count() functions now return -1 if info is not available
* Fixed unsigned integer overflow in _mem_is_ascii()
* Add -fsanitize-address-use-after-scope to --enable-asan if
available
-------------------------------------------------------------------
Thu Jul 20 13:48:27 UTC 2017 - astieger@suse.com
- update to 0.18.0:
* Fix order of files in psl_latest()
* Add fuzzing architecture
* Fix memleak in _psl_is_public_suffix()
* Add configure option --enable-asan (Address sanitizer)
* Add configure option --enable-usan (Undefined sanitizer)
* Add configure option --enable-cfi (Control Flow Integrity)
* Fix finding libidn2 for static builds
* Fix use of uninitialized stack value
* Fix buffer overflow in libicu build
* Use libidn2 as default for builds (former libicu)
* Add pkg-config support for libidn and libidn2
-------------------------------------------------------------------
Thu Apr 6 14:41:26 UTC 2017 - coolo@suse.com
- Use idn2 runtime instead of libicu - as libicu requires 30MB
of unicode data - while idn2 is already part of minimal system
-------------------------------------------------------------------
Thu Jan 19 14:10:41 UTC 2017 - shshyukriev@suse.com
- libpsl 0.17.0:
* Use TR46 non-transitional for IDNA (libicu, libidn2 >= 0.14)
* Fix coverage upload from TravisCI to Coveralls
* New tests to cover psl_latest() and psl_dist_filename()
-------------------------------------------------------------------
Thu Dec 15 12:18:33 UTC 2016 - astieger@suse.com
- libpsl 0.16.1:
This version enables consumers of the library to dynamically load
the latest public suffix data from a binary data file in the
publicsuffix package which can then updated without re-building
libpsl.
* Add functions psl_latest() and psl_dist_filename()
* Do not taint out variable on error in psl_str_to_utf8lower()
* Replace psl2c by psl-make-dafsa
- correct licenses for package and subpackages
- package HTML docs in -devel package
-------------------------------------------------------------------
Mon Nov 14 15:26:42 UTC 2016 - astieger@suse.com
- libpsl 0.15.0:
* Python3 compatibility for psl-make-dafsa
* Support for UTF-8 in DAFSA data
* Skip punycode conversion if DAFSA has UTF-8
* Better code coverage by test suite
* Code cleanup and enhancements
* Install man pages for psl-make-dafsa and psl
* Enhancements to the documentation
-------------------------------------------------------------------
Mon Aug 1 11:37:20 UTC 2016 - astieger@suse.com
- libpsl 0.14.0:
* Remove unneeded libraries from tools/psl link step
* Use https instead of http where possible
* Add man page for tools/psl
* Add header magic to DAFSA files
* Rename make_dafsa.py to psl-make-dafsa
* Add man page for psl-make-dafsa
-------------------------------------------------------------------
Wed Mar 9 08:50:51 UTC 2016 - astieger@suse.com
- libpsl 0.13.0:
* Use tests.txt as PSL test file by default
* Slightly shorter DAFSA array when sorting input
* Check for python 2.7+ in configure.ac
* Fix python3 incompatibilities in make_dafsa.py
-------------------------------------------------------------------
Fri Feb 5 17:16:56 UTC 2016 - idonmez@suse.com
- Add baselibs.conf
-------------------------------------------------------------------
Thu Jan 7 22:28:27 UTC 2016 - astieger@suse.com
- libpsl 0.12.0 (libpsl.so.5 5:0:0)
* Remove psl_builtin_compile_time()
* Add function psl_is_public_suffix2()
* Avoid libicu dependency with --enable-runtime=no
- drop upstreamed 0001-Remove-include-of-bits-stat.h.patch
-------------------------------------------------------------------
Sat Nov 28 14:06:39 UTC 2015 - astieger@suse.com
- fix SLE 11 build:
* adding 0001-Remove-include-of-bits-stat.h.patch
* skip IDN feature
- update descriptions and categories
-------------------------------------------------------------------
Sun Nov 15 19:22:17 UTC 2015 - astieger@suse.com
- initial package for libpsl based on Fedora Spec

137
libpsl.spec Normal file
View File

@ -0,0 +1,137 @@
#
# spec file for package libpsl
#
# Copyright (c) 2022 SUSE LLC
# Copyright (c) 2015 rpm@cicku.me
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
%define somajor 5
Name: libpsl
Version: 0.21.2
Release: 0
Summary: C library for the Publix Suffix List
License: BSD-3-Clause AND MIT AND MPL-2.0
Group: Development/Libraries/C and C++
URL: https://rockdaboot.github.io/libpsl
Source: https://github.com/rockdaboot/libpsl/releases/download/%{version}/%{name}-%{version}.tar.gz
Source1000: baselibs.conf
BuildRequires: libidn2-devel >= 0.14
BuildRequires: libunistring-devel
BuildRequires: pkgconfig >= 0.9.0
BuildRequires: publicsuffix
BuildRequires: python3-base
%description
libpsl is a C library to handle the Public Suffix List. A "public suffix" is a
domain name under which Internet users can directly register own names.
HTTP user agents can use it to avoid privacy-leaking "supercookies" and "super
domain" certificates. It is also use do highlight domain parts in a user interface
and sorting domain lists by site.
%package -n %{name}%{somajor}
Summary: C library for the Publix Suffix List
# The libary code is MIT, with built-in data from publicsuffix
License: MIT AND MPL-2.0
Group: System/Libraries
Recommends: publicsuffix
%description -n %{name}%{somajor}
libpsl is a C library to handle the Public Suffix List. A "public suffix" is a
domain name under which Internet users can directly register own names.
HTTP user agents can use it to avoid privacy-leaking "supercookies" and "super
domain" certificates. It is also use do highlight domain parts in a user interface
and sorting domain lists by site.
%package devel
Summary: Development files for %{name}
License: MIT
Group: Development/Libraries/C and C++
Requires: %{name}%{somajor} = %{version}
%description devel
libpsl is a C library to handle the Public Suffix List. A "public suffix" is a
domain name under which Internet users can directly register own names.
HTTP user agents can use it to avoid privacy-leaking "supercookies" and "super
domain" certificates. It is also use do highlight domain parts in a user interface
and sorting domain lists by site.
This package contains libraries and header files.
Developer documentation is in %{_docdir}/libpsl-devel/html .
%package -n psl
Summary: Commandline utility to explore the Public Suffix List
License: MIT
Group: Productivity/Networking/Other
%description -n psl
This package contains a commandline utility to explore the Public Suffix List,
for example it checks if domains are public suffixes, checks if cookie-domain
is acceptable for domains and so on.
HTTP user agents can use it to avoid privacy-leaking "supercookies" and "super
domain" certificates. It is also use do highlight domain parts in a user interface
and sorting domain lists by site.
%prep
%setup -q
# fix env shebang to call py3 directly
sed -i -e "1s|#!.*|#!%{_bindir}/python3|" src/psl-make-dafsa
%build
# default is libicu, but this just too heavy dependency. This library is part of the
# minimal system as curl uses it - but libidn2 is already used by curl directly, while
# icu is not
%configure \
--disable-silent-rules \
--disable-static \
--with-psl-file=%{_datadir}/publicsuffix/public_suffix_list.dat \
--with-psl-distfile=%{_datadir}/publicsuffix/public_suffix_list.dafsa
%make_build
%install
%make_install
find %{buildroot} -type f -name "*.la" -delete -print
# in psl-make-dafsa package to break build cycle
make DESTDIR=%{buildroot} install-man
rm %{buildroot}%{_mandir}/man1/psl-make-dafsa.1
%check
%make_build check || (cat tests/test-suite.log; exit 42)
%post -n %{name}%{somajor} -p /sbin/ldconfig
%postun -n %{name}%{somajor} -p /sbin/ldconfig
%files -n %{name}%{somajor}
%license COPYING
%{_libdir}/libpsl.so.%{somajor}*
%files devel
%license COPYING
%doc AUTHORS NEWS
%doc docs/libpsl/html
%{_includedir}/libpsl.h
%{_libdir}/libpsl.so
%{_libdir}/pkgconfig/libpsl.pc
%files -n psl
%license COPYING
%doc AUTHORS NEWS
%{_bindir}/psl
%{_mandir}/man1/psl.1%{?ext_man}
%changelog

81
psl-make-dafsa.changes Normal file
View File

@ -0,0 +1,81 @@
-------------------------------------------------------------------
Tue Dec 27 21:16:58 UTC 2022 - Andreas Stieger <andreas.stieger@gmx.de>
- update to 0.21.2:
- add multibuild definition
-------------------------------------------------------------------
Fri Jul 17 08:44:57 UTC 2020 - Andreas Stieger <andreas.stieger@gmx.de>
- update to 0.21.1:
* no changes for psl-make-dafsa
-------------------------------------------------------------------
Sun Jun 2 18:39:53 UTC 2019 - Jan Engelhardt <jengelh@inai.de>
- Use noun phrase in summary.
-------------------------------------------------------------------
Sun May 19 13:11:18 UTC 2019 - Andreas Stieger <andreas.stieger@gmx.de>
- update to 0.21.0:
* no changes for psl-make-dafsa
-------------------------------------------------------------------
Sat Apr 28 13:02:20 UTC 2018 - astieger@suse.com
- update to 0.20.2:
* no changes for psl-make-dafsa
-------------------------------------------------------------------
Tue Feb 27 15:50:37 UTC 2018 - astieger@suse.com
- update to 0.20.1:
* no changes for psl-make-dafsa
-------------------------------------------------------------------
Thu Feb 22 15:14:07 UTC 2018 - fvogt@suse.com
- Use %license (boo#1082318)
-------------------------------------------------------------------
Thu Feb 22 09:37:13 UTC 2018 - astieger@suse.com
- update to 0.20.0:
* remove explicit plain TLD rule
-------------------------------------------------------------------
Wed Jan 3 20:38:11 UTC 2018 - tchvatal@suse.com
- Make sure to use python3 instead of env python call
-------------------------------------------------------------------
Thu Nov 9 19:15:04 UTC 2017 - astieger@suse.com
- update to 0.19.1:
* psl_make_dafsa now works with python2 and python3
-------------------------------------------------------------------
Thu Jul 20 13:48:27 UTC 2017 - astieger@suse.com
- update to 0.18.0:
* no changes for psl-make-dafsa
-------------------------------------------------------------------
Thu Jan 19 15:07:22 UTC 2017 - shshyukriev@suse.com
- update to 0.17.0:
* no changes for psl-make-dafsa
-------------------------------------------------------------------
Thu Dec 15 12:18:33 UTC 2016 - astieger@suse.com
- update to 0.16.1:
* no changes for psl-make-dafsa
-------------------------------------------------------------------
Thu Nov 24 10:32:02 UTC 2016 - astieger@suse.com
- package psl-make-dafsa, for converting the PSL list into the
DAFSA binary format
- split from libpsl package to break build cycle

59
psl-make-dafsa.spec Normal file
View File

@ -0,0 +1,59 @@
#
# spec file for package psl-make-dafsa
#
# Copyright (c) 2022 SUSE LLC
# Copyright (c) 2015 rpm@cicku.me
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
Name: psl-make-dafsa
Version: 0.21.2
Release: 0
Summary: Tool to create a binary DAFSA from a Public Suffix List
License: BSD-3-Clause
Group: Development/Libraries/C and C++
URL: https://rockdaboot.github.io/libpsl
Source: https://github.com/rockdaboot/libpsl/releases/download/%{version}/libpsl-%{version}.tar.gz
Requires: python3-base
BuildArch: noarch
%description
psl-make-dafsa converts ASCII string into C source or a binary format,
The format used is DAFSA, deterministic acyclic finate state automaton.
libpsl is capable of using this compact binary form of the Public Suffix List (PSL).
This package is a build dependency for the publicsuffix package.
%prep
%setup -q -n libpsl-%{version}
# fix env shebang to call py3 directly
sed -i -e "1s|#!.*|#!%{_bindir}/python3|" src/psl-make-dafsa
%build
:
%install
mkdir -p %{buildroot}%{_bindir}
install src/psl-make-dafsa %{buildroot}%{_bindir}
mkdir -p %{buildroot}%{_mandir}/man1
install -m 644 src/psl-make-dafsa.1 %{buildroot}%{_mandir}/man1
%files
%license src/LICENSE.chromium
%doc AUTHORS NEWS
%{_bindir}/psl-make-dafsa
%{_mandir}/man1/psl-make-dafsa.1%{?ext_man}
%changelog