Compare commits
No commits in common. "c8" and "c10s" have entirely different histories.
12
.gitignore
vendored
12
.gitignore
vendored
@ -1 +1,11 @@
|
|||||||
SOURCES/0.4.15.tar.gz
|
/libproxy-0.*.tar.gz
|
||||||
|
/0.4.12.tar.gz
|
||||||
|
/0.4.13.tar.gz
|
||||||
|
/libproxy-0.4.14.tar.xz
|
||||||
|
/0.4.15.tar.gz
|
||||||
|
/libproxy-0.4.17.tar.xz
|
||||||
|
/libproxy-0.4.18.tar.xz
|
||||||
|
/0.5.1.tar.gz
|
||||||
|
/0.5.2.tar.gz
|
||||||
|
/0.5.3.tar.gz
|
||||||
|
/0.5.5.tar.gz
|
||||||
|
@ -1 +0,0 @@
|
|||||||
2dc0fc31cad78ce3d7a5ceb8fa8df07010f5c13e SOURCES/0.4.15.tar.gz
|
|
@ -1,41 +0,0 @@
|
|||||||
diff -up libproxy-0.4.11/libproxy/extension_pacrunner.cpp.crash libproxy-0.4.11/libproxy/extension_pacrunner.cpp
|
|
||||||
--- libproxy-0.4.11/libproxy/extension_pacrunner.cpp.crash 2010-07-29 08:14:59.000000000 -0400
|
|
||||||
+++ libproxy-0.4.11/libproxy/extension_pacrunner.cpp 2013-11-11 15:23:56.987266457 -0500
|
|
||||||
@@ -22,20 +22,10 @@ using namespace libproxy;
|
|
||||||
|
|
||||||
pacrunner::pacrunner(string, const url&) {}
|
|
||||||
|
|
||||||
-pacrunner_extension::pacrunner_extension() {
|
|
||||||
- this->pr = NULL;
|
|
||||||
-}
|
|
||||||
+pacrunner_extension::pacrunner_extension() {}
|
|
||||||
|
|
||||||
-pacrunner_extension::~pacrunner_extension() {
|
|
||||||
- if (this->pr) delete this->pr;
|
|
||||||
-}
|
|
||||||
+pacrunner_extension::~pacrunner_extension() {}
|
|
||||||
|
|
||||||
pacrunner* pacrunner_extension::get(string pac, const url& pacurl) throw (bad_alloc) {
|
|
||||||
- if (this->pr) {
|
|
||||||
- if (this->last == pac)
|
|
||||||
- return this->pr;
|
|
||||||
- delete this->pr;
|
|
||||||
- }
|
|
||||||
-
|
|
||||||
- return this->pr = this->create(pac, pacurl);
|
|
||||||
+ return this->create(pac, pacurl);
|
|
||||||
}
|
|
||||||
diff -up libproxy-0.4.11/libproxy/proxy.cpp.crash libproxy-0.4.11/libproxy/proxy.cpp
|
|
||||||
--- libproxy-0.4.11/libproxy/proxy.cpp.crash 2013-11-11 15:25:27.309271353 -0500
|
|
||||||
+++ libproxy-0.4.11/libproxy/proxy.cpp 2013-11-11 15:25:31.569271584 -0500
|
|
||||||
@@ -416,7 +416,9 @@ void proxy_factory::run_pac(url &realurl
|
|
||||||
|
|
||||||
/* Run the PAC, but only try one PACRunner */
|
|
||||||
if (debug) cerr << "Using pacrunner: " << typeid(*pacrunners[0]).name() << endl;
|
|
||||||
- string pacresp = pacrunners[0]->get(this->pac, this->pacurl->to_string())->run(realurl);
|
|
||||||
+ pacrunner* runner = pacrunners[0]->get(this->pac, this->pacurl->to_string());
|
|
||||||
+ string pacresp = runner->run(realurl);
|
|
||||||
+ delete runner;
|
|
||||||
if (debug) cerr << "Pacrunner returned: " << pacresp << endl;
|
|
||||||
format_pac_response(pacresp, response);
|
|
||||||
}
|
|
@ -1,57 +0,0 @@
|
|||||||
From a83dae404feac517695c23ff43ce1e116e2bfbe0 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Michael Catanzaro <mcatanzaro@gnome.org>
|
|
||||||
Date: Wed, 9 Sep 2020 11:12:02 -0500
|
|
||||||
Subject: [PATCH] Rewrite url::recvline to be nonrecursive
|
|
||||||
|
|
||||||
This function processes network input. It's semi-trusted, because the
|
|
||||||
PAC ought to be trusted. But we still shouldn't allow it to control how
|
|
||||||
far we recurse. A malicious PAC can cause us to overflow the stack by
|
|
||||||
sending a sufficiently-long line without any '\n' character.
|
|
||||||
|
|
||||||
Also, this function failed to properly handle EINTR, so let's fix that
|
|
||||||
too, for good measure.
|
|
||||||
|
|
||||||
Fixes #134
|
|
||||||
---
|
|
||||||
libproxy/url.cpp | 28 ++++++++++++++++++----------
|
|
||||||
1 file changed, 18 insertions(+), 10 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/libproxy/url.cpp b/libproxy/url.cpp
|
|
||||||
index ee776b2..68d69cd 100644
|
|
||||||
--- a/libproxy/url.cpp
|
|
||||||
+++ b/libproxy/url.cpp
|
|
||||||
@@ -388,16 +388,24 @@ string url::to_string() const {
|
|
||||||
return m_orig;
|
|
||||||
}
|
|
||||||
|
|
||||||
-static inline string recvline(int fd) {
|
|
||||||
- // Read a character.
|
|
||||||
- // If we don't get a character, return empty string.
|
|
||||||
- // If we are at the end of the line, return empty string.
|
|
||||||
- char c = '\0';
|
|
||||||
-
|
|
||||||
- if (recv(fd, &c, 1, 0) != 1 || c == '\n')
|
|
||||||
- return "";
|
|
||||||
-
|
|
||||||
- return string(1, c) + recvline(fd);
|
|
||||||
+static string recvline(int fd) {
|
|
||||||
+ string line;
|
|
||||||
+ int ret;
|
|
||||||
+
|
|
||||||
+ // Reserve arbitrary amount of space to avoid small memory reallocations.
|
|
||||||
+ line.reserve(128);
|
|
||||||
+
|
|
||||||
+ do {
|
|
||||||
+ char c;
|
|
||||||
+ ret = recv(fd, &c, 1, 0);
|
|
||||||
+ if (ret == 1) {
|
|
||||||
+ if (c == '\n')
|
|
||||||
+ return line;
|
|
||||||
+ line += c;
|
|
||||||
+ }
|
|
||||||
+ } while (ret == 1 || (ret == -1 && errno == EINTR));
|
|
||||||
+
|
|
||||||
+ return line;
|
|
||||||
}
|
|
||||||
|
|
||||||
char* url::get_pac() {
|
|
@ -1,93 +0,0 @@
|
|||||||
From 4411b523545b22022b4be7d0cac25aa170ae1d3e Mon Sep 17 00:00:00 2001
|
|
||||||
From: Fei Li <lifeibiren@gmail.com>
|
|
||||||
Date: Fri, 17 Jul 2020 02:18:37 +0800
|
|
||||||
Subject: [PATCH] Fix buffer overflow when PAC is enabled
|
|
||||||
|
|
||||||
The bug was found on Windows 10 (MINGW64) when PAC is enabled. It turned
|
|
||||||
out to be the large PAC file (more than 102400 bytes) returned by a
|
|
||||||
local proxy program with no content-length present.
|
|
||||||
---
|
|
||||||
libproxy/url.cpp | 44 +++++++++++++++++++++++++++++++-------------
|
|
||||||
1 file changed, 31 insertions(+), 13 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/libproxy/url.cpp b/libproxy/url.cpp
|
|
||||||
index ee776b2..8684086 100644
|
|
||||||
--- a/libproxy/url.cpp
|
|
||||||
+++ b/libproxy/url.cpp
|
|
||||||
@@ -54,7 +54,7 @@ using namespace std;
|
|
||||||
#define PAC_MIME_TYPE_FB "text/plain"
|
|
||||||
|
|
||||||
// This is the maximum pac size (to avoid memory attacks)
|
|
||||||
-#define PAC_MAX_SIZE 102400
|
|
||||||
+#define PAC_MAX_SIZE 0x800000
|
|
||||||
// This is the default block size to use when receiving via HTTP
|
|
||||||
#define PAC_HTTP_BLOCK_SIZE 512
|
|
||||||
|
|
||||||
@@ -478,15 +478,13 @@ char* url::get_pac() {
|
|
||||||
}
|
|
||||||
|
|
||||||
// Get content
|
|
||||||
- unsigned int recvd = 0;
|
|
||||||
- buffer = new char[PAC_MAX_SIZE];
|
|
||||||
- memset(buffer, 0, PAC_MAX_SIZE);
|
|
||||||
+ std::vector<char> dynamic_buffer;
|
|
||||||
do {
|
|
||||||
unsigned int chunk_length;
|
|
||||||
|
|
||||||
if (chunked) {
|
|
||||||
// Discard the empty line if we received a previous chunk
|
|
||||||
- if (recvd > 0) recvline(sock);
|
|
||||||
+ if (!dynamic_buffer.empty()) recvline(sock);
|
|
||||||
|
|
||||||
// Get the chunk-length line as an integer
|
|
||||||
if (sscanf(recvline(sock).c_str(), "%x", &chunk_length) != 1 || chunk_length == 0) break;
|
|
||||||
@@ -498,21 +496,41 @@ char* url::get_pac() {
|
|
||||||
|
|
||||||
if (content_length >= PAC_MAX_SIZE) break;
|
|
||||||
|
|
||||||
- while (content_length == 0 || recvd != content_length) {
|
|
||||||
- int r = recv(sock, buffer + recvd,
|
|
||||||
- content_length == 0 ? PAC_HTTP_BLOCK_SIZE
|
|
||||||
- : content_length - recvd, 0);
|
|
||||||
+ while (content_length == 0 || dynamic_buffer.size() != content_length) {
|
|
||||||
+ // Calculate length to recv
|
|
||||||
+ unsigned int length_to_read = PAC_HTTP_BLOCK_SIZE;
|
|
||||||
+ if (content_length > 0)
|
|
||||||
+ length_to_read = content_length - dynamic_buffer.size();
|
|
||||||
+
|
|
||||||
+ // Prepare buffer
|
|
||||||
+ dynamic_buffer.resize(dynamic_buffer.size() + length_to_read);
|
|
||||||
+
|
|
||||||
+ int r = recv(sock, dynamic_buffer.data() + dynamic_buffer.size() - length_to_read, length_to_read, 0);
|
|
||||||
+
|
|
||||||
+ // Shrink buffer to fit
|
|
||||||
+ if (r >= 0)
|
|
||||||
+ dynamic_buffer.resize(dynamic_buffer.size() - length_to_read + r);
|
|
||||||
+
|
|
||||||
+ // PAC size too large, discard
|
|
||||||
+ if (dynamic_buffer.size() >= PAC_MAX_SIZE) {
|
|
||||||
+ chunked = false;
|
|
||||||
+ dynamic_buffer.clear();
|
|
||||||
+ break;
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
if (r <= 0) {
|
|
||||||
chunked = false;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
- recvd += r;
|
|
||||||
}
|
|
||||||
} while (chunked);
|
|
||||||
|
|
||||||
- if (content_length != 0 && string(buffer).size() != content_length) {
|
|
||||||
- delete[] buffer;
|
|
||||||
- buffer = NULL;
|
|
||||||
+ if (content_length == 0 || content_length == dynamic_buffer.size()) {
|
|
||||||
+ buffer = new char[dynamic_buffer.size() + 1];
|
|
||||||
+ if (!dynamic_buffer.empty()) {
|
|
||||||
+ memcpy(buffer, dynamic_buffer.data(), dynamic_buffer.size());
|
|
||||||
+ }
|
|
||||||
+ buffer[dynamic_buffer.size()] = '\0';
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
@ -1,23 +0,0 @@
|
|||||||
.TH PROXY "1" "September 2013" "libproxy" "User Commands"
|
|
||||||
.SH NAME
|
|
||||||
proxy \- Display the proxy server that should be used to reach a given a network resource
|
|
||||||
.SH SYNOPSIS
|
|
||||||
proxy
|
|
||||||
.SH DESCRIPTION
|
|
||||||
Display the proxy server that should be used to reach a given a network resource.
|
|
||||||
.PP
|
|
||||||
libproxy is a library that provides automatic proxy configuration management
|
|
||||||
using different backends.
|
|
||||||
.SH EXAMPLE
|
|
||||||
.B echo http://www.example.com/ | proxy
|
|
||||||
http://webcache:3128 direct://
|
|
||||||
.SH AUTHOR
|
|
||||||
This manual page was written by
|
|
||||||
.MT bigon@debian.org
|
|
||||||
Laurent Bigonville
|
|
||||||
.ME ,
|
|
||||||
for the Debian GNU/Linux system (but may be used by others).
|
|
||||||
.SH SEE ALSO
|
|
||||||
.UR http://code.google.com/p/libproxy/
|
|
||||||
libproxy
|
|
||||||
.UE .
|
|
@ -1,209 +1,151 @@
|
|||||||
# When we are bootstrapping, we drop some dependencies.
|
* Thu Jan 25 2024 Fedora Release Engineering <releng@fedoraproject.org> - 0.5.3-5
|
||||||
# Set this to 0 after bootstrapping.
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
|
||||||
%{!?_with_bootstrap: %global bootstrap 0}
|
|
||||||
|
|
||||||
Name: libproxy
|
* Sun Jan 21 2024 Fedora Release Engineering <releng@fedoraproject.org> - 0.5.3-4
|
||||||
Version: 0.4.15
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
|
||||||
Release: 5.5%{?dist}
|
|
||||||
Summary: A library handling all the details of proxy configuration
|
|
||||||
|
|
||||||
Group: System Environment/Libraries
|
* Thu Nov 02 2023 David King <amigadave@amigadave.com> - 0.5.3-3
|
||||||
License: LGPLv2+
|
- Install a versioned library symlink (#2247508)
|
||||||
URL: https://libproxy.github.io/libproxy/
|
|
||||||
Source0: https://github.com/libproxy/%{name}/archive/%{version}.tar.gz
|
|
||||||
# Taken from the Debian package.
|
|
||||||
Source1: proxy.1
|
|
||||||
Patch1: libproxy-0.4.11-crash.patch
|
|
||||||
|
|
||||||
# https://bugzilla.redhat.com/show_bug.cgi?id=1880350
|
* Thu Jul 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 0.5.3-2
|
||||||
Patch2: libproxy-0.4.15-fix-CVE-2020-25219.patch
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
|
||||||
|
|
||||||
# https://bugzilla.redhat.com/show_bug.cgi?id=1883584
|
* Fri Jul 07 2023 David King <amigadave@amigadave.com> - 0.5.3-1
|
||||||
Patch3: libproxy-0.4.15-fix-pac-buffer-overflow.patch
|
- Update to 0.5.3
|
||||||
|
|
||||||
BuildRequires: libmodman-devel >= 2.0.1
|
* Sun Jun 18 2023 David King <amigadave@amigadave.com> - 0.5.2-1
|
||||||
BuildRequires: cmake >= 2.6.0
|
- Update to 0.5.2
|
||||||
|
|
||||||
%if ! 0%{?bootstrap}
|
* Wed May 24 2023 David King <amigadave@amigadave.com> - 0.5.1-1
|
||||||
# gnome
|
- Update to 0.5.1
|
||||||
BuildRequires: pkgconfig(gio-2.0) >= 2.26
|
|
||||||
# NetworkManager
|
|
||||||
BuildRequires: pkgconfig(libnm)
|
|
||||||
BuildRequires: pkgconfig(dbus-1)
|
|
||||||
# webkit (gtk3)
|
|
||||||
BuildRequires: pkgconfig(javascriptcoregtk-4.0)
|
|
||||||
# Python
|
|
||||||
BuildRequires: python3-devel
|
|
||||||
%else
|
|
||||||
# Obsoletes of disabled subpackages.
|
|
||||||
Provides: %{name}-webkitgtk4 = %{version}-%{release}
|
|
||||||
Obsoletes: %{name}-webkitgtk4 < %{version}-%{release}
|
|
||||||
%endif
|
|
||||||
|
|
||||||
|
* Tue May 23 2023 David King <amigadave@amigadave.com> - 0.5.0-3
|
||||||
|
- Fix libproxy rpath (#2209173)
|
||||||
|
|
||||||
%description
|
* Mon May 22 2023 Adam Williamson <awilliam@redhat.com> - 0.5.0-2
|
||||||
libproxy offers the following features:
|
- Add missing obsolete/provide for libproxy-duktape
|
||||||
|
|
||||||
* extremely small core footprint (< 35K)
|
* Tue May 16 2023 David King <amigadave@amigadave.com> - 0.5.0-1
|
||||||
* no external dependencies within libproxy core
|
- Update to 0.5.0
|
||||||
(libproxy plugins may have dependencies)
|
|
||||||
* only 3 functions in the stable external API
|
|
||||||
* dynamic adjustment to changing network topology
|
|
||||||
* a standard way of dealing with proxy settings across all scenarios
|
|
||||||
* a sublime sense of joy and accomplishment
|
|
||||||
|
|
||||||
|
* Wed Feb 08 2023 Yaakov Selkowitz <yselkowi@redhat.com> - 0.4.18-6
|
||||||
|
- Soften KDE dependency
|
||||||
|
|
||||||
%package bin
|
* Thu Jan 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 0.4.18-5
|
||||||
Summary: Binary to test %{name}
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
|
||||||
Group: Applications/System
|
|
||||||
Requires: %{name}%{?_isa} = %{version}-%{release}
|
|
||||||
|
|
||||||
%description bin
|
* Fri Dec 16 2022 František Zatloukal <fzatlouk@redhat.com> - 0.4.18-4
|
||||||
The %{name}-bin package contains the proxy binary for %{name}
|
- Rebuilt for duktape 2.7.0
|
||||||
|
|
||||||
%if ! 0%{?bootstrap}
|
* Wed Jul 20 2022 Michael Catanzaro <mcatanzaro@redhat.com> - 0.4.18-3
|
||||||
%package -n python3-%{name}
|
- Replace WebKitGTK pacrunner backend with duktape
|
||||||
Summary: Binding for %{name} and python3
|
|
||||||
Group: System Environment/Libraries
|
|
||||||
Requires: %{name} = %{version}-%{release}
|
|
||||||
BuildArch: noarch
|
|
||||||
%{?python_provide:%python_provide python3-%{name}}
|
|
||||||
|
|
||||||
%description -n python3-%{name}
|
* Tue Jul 19 2022 Milan Crha <mcrha@redhat.com> - 0.4.18-2
|
||||||
The python3 binding for %{name}
|
- Change WebKitGTK API dependency to 4.1 (using libsoup3)
|
||||||
|
|
||||||
%package gnome
|
* Tue Jun 21 2022 David King <amigadave@amigadave.com> - 0.4.18-1
|
||||||
Summary: Plugin for %{name} and gnome
|
- Update to 0.4.18
|
||||||
Group: System Environment/Libraries
|
|
||||||
Requires: %{name}%{?_isa} = %{version}-%{release}
|
|
||||||
|
|
||||||
%description gnome
|
* Mon Jun 20 2022 David King <amigadave@amigadave.com> - 0.4.17-6
|
||||||
The %{name}-gnome package contains the %{name} plugin for gnome.
|
- Accept Python 3.11 (#2098739)
|
||||||
|
|
||||||
%package networkmanager
|
* Mon Mar 28 2022 David King <amigadave@amigadave.com> - 0.4.17-5
|
||||||
Summary: Plugin for %{name} and networkmanager
|
- Fix build (#2069137)
|
||||||
Group: System Environment/Libraries
|
|
||||||
Requires: %{name}%{?_isa} = %{version}-%{release}
|
|
||||||
|
|
||||||
%description networkmanager
|
* Thu Jan 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 0.4.17-4
|
||||||
The %{name}-networkmanager package contains the %{name} plugin
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
|
||||||
for networkmanager.
|
|
||||||
|
|
||||||
%package webkitgtk4
|
* Thu Jul 22 2021 Fedora Release Engineering <releng@fedoraproject.org> - 0.4.17-3
|
||||||
Summary: Plugin for %{name} and webkitgtk3
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
|
||||||
Group: System Environment/Libraries
|
|
||||||
Requires: %{name}%{?_isa} = %{version}-%{release}
|
|
||||||
Provides: %{name}-pac = %{version}-%{release}
|
|
||||||
|
|
||||||
%description webkitgtk4
|
* Mon Jun 21 2021 David King <amigadave@amigadave.com> - 0.4.17-2
|
||||||
The %{name}-webkitgtk4 package contains the %{name} plugin for
|
- Rebuilt for Python 3.10 (#1898060)
|
||||||
webkitgtk3.
|
|
||||||
|
|
||||||
%endif
|
* Fri May 28 2021 David King <amigadave@amigadave.com> - 0.4.17-1
|
||||||
|
- Update to 0.4.17
|
||||||
|
|
||||||
%package devel
|
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 0.4.15-30
|
||||||
Summary: Development files for %{name}
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
|
||||||
Group: Development/Libraries
|
|
||||||
Requires: %{name}%{?_isa} = %{version}-%{release}
|
|
||||||
|
|
||||||
%description devel
|
* Mon Nov 30 2020 David King <amigadave@amigadave.com> - 0.4.15-29
|
||||||
The %{name}-devel package contains libraries and header files for
|
- Tweak KDE conditionals to only apply at runtime
|
||||||
developing applications that use %{name}.
|
|
||||||
|
|
||||||
%prep
|
* Mon Nov 30 2020 David King <amigadave@amigadave.com> - 0.4.15-28
|
||||||
%autosetup -p1
|
- Depend on KDE only on Fedora (#1902608)
|
||||||
|
|
||||||
|
* Tue Oct 06 2020 Frantisek Zatloukal <fzatlouk@redhat.com> - 0.4.15-27
|
||||||
|
- Disable mozjs backend by default, obsolete it by webkit subpackage
|
||||||
|
|
||||||
%build
|
* Tue Sep 29 2020 David King <amigadave@amigadave.com> - 0.4.15-26
|
||||||
%{cmake} \
|
- Fix PAC buffer overflow (#1883584)
|
||||||
-DMODULE_INSTALL_DIR=%{_libdir}/%{name}/%{version}/modules \
|
|
||||||
-DWITH_PERL=OFF \
|
|
||||||
-DWITH_PYTHON2=OFF \
|
|
||||||
-DWITH_KDE=OFF \
|
|
||||||
-DWITH_MOZJS=OFF \
|
|
||||||
-DBIPR=0 \
|
|
||||||
%if ! 0%{?bootstrap}
|
|
||||||
-DWITH_GNOME3=ON \
|
|
||||||
-DWITH_PYTHON3=ON \
|
|
||||||
-DWITH_WEBKIT3=ON \
|
|
||||||
%else
|
|
||||||
-DWITH_PYTHON3=OFF \
|
|
||||||
%endif
|
|
||||||
.
|
|
||||||
%make_build
|
|
||||||
|
|
||||||
|
* Fri Sep 18 2020 David King <amigadave@amigadave.com> - 0.4.15-25
|
||||||
|
- Fix CVE-2020-25219 (#1880350)
|
||||||
|
|
||||||
%install
|
* Tue Aug 18 2020 Jeff Law <law@redhat.com> - 0.4.15-24
|
||||||
%make_install INSTALL="install -p"
|
- Force C++14 as this code is not C++17 ready
|
||||||
|
|
||||||
#In case all modules are disabled
|
* Tue Aug 04 2020 Frantisek Zatloukal <fzatlouk@redhat.com> - 0.4.15-23
|
||||||
mkdir -p %{buildroot}%{_libdir}/%{name}/%{version}/modules
|
- build with mozjs68
|
||||||
|
- backport use after free fix for mozjs backend
|
||||||
|
|
||||||
# Man page.
|
* Tue Aug 04 2020 Frantisek Zatloukal <fzatlouk@redhat.com> - 0.4.15-22
|
||||||
install -Dpm 0644 %{SOURCE1} %{buildroot}/%{_mandir}/man1/proxy.1
|
- Fix build by switching to cmake macros instead of make
|
||||||
|
|
||||||
|
* Sat Aug 01 2020 Fedora Release Engineering <releng@fedoraproject.org> - 0.4.15-21
|
||||||
|
- Second attempt - Rebuilt for
|
||||||
|
https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
|
||||||
|
|
||||||
%check
|
* Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 0.4.15-20
|
||||||
make test
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
|
||||||
|
|
||||||
%post -p /sbin/ldconfig
|
* Tue May 26 2020 Miro Hrončok <mhroncok@redhat.com> - 0.4.15-19
|
||||||
|
- Rebuilt for Python 3.9
|
||||||
|
|
||||||
%postun -p /sbin/ldconfig
|
* Thu Feb 13 2020 David King <amigadave@amigadave.com> - 0.4.15-18
|
||||||
|
- Fix build against Python 3.9 (#1791942)
|
||||||
|
|
||||||
|
* Wed Jan 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 0.4.15-17
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
|
||||||
|
|
||||||
%files
|
* Thu Oct 03 2019 Miro Hrončok <mhroncok@redhat.com> - 0.4.15-16
|
||||||
%doc AUTHORS README
|
- Rebuilt for Python 3.8.0rc1 (#1748018)
|
||||||
%license COPYING
|
|
||||||
%{_libdir}/*.so.*
|
|
||||||
%dir %{_libdir}/%{name}
|
|
||||||
%dir %{_libdir}/%{name}/%{version}
|
|
||||||
%dir %{_libdir}/%{name}/%{version}/modules
|
|
||||||
|
|
||||||
%files bin
|
* Mon Aug 19 2019 Miro Hrončok <mhroncok@redhat.com> - 0.4.15-15
|
||||||
%{_bindir}/proxy
|
- Rebuilt for Python 3.8
|
||||||
%{_mandir}/man1/proxy.1*
|
|
||||||
|
|
||||||
%if ! 0%{?bootstrap}
|
* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0.4.15-14
|
||||||
%files -n python3-%{name}
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
|
||||||
%{python3_sitelib}/__pycache__/*
|
|
||||||
%{python3_sitelib}/%{name}.*
|
|
||||||
|
|
||||||
%files gnome
|
* Fri Feb 08 2019 Kalev Lember <klember@redhat.com> - 0.4.15-13
|
||||||
%{_libdir}/%{name}/%{version}/modules/config_gnome3.so
|
- Build with mozjs60
|
||||||
%{_libexecdir}/pxgsettings
|
|
||||||
|
|
||||||
%files networkmanager
|
* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0.4.15-12
|
||||||
%{_libdir}/%{name}/%{version}/modules/network_networkmanager.so
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
|
||||||
|
|
||||||
%files webkitgtk4
|
* Thu Nov 22 2018 David King <amigadave@amigadave.com> - 0.4.15-11
|
||||||
%{_libdir}/%{name}/%{version}/modules/pacrunner_webkit.so
|
- Add Obsoletes on old Python 2 subpackage (#1634211)
|
||||||
%endif
|
|
||||||
|
|
||||||
%files devel
|
* Thu Sep 20 2018 David King <amigadave@amigadave.com> - 0.4.15-10
|
||||||
%{_includedir}/proxy.h
|
- Remove Python 2 subpackage (#1631331)
|
||||||
%{_libdir}/*.so
|
|
||||||
%{_libdir}/pkgconfig/libproxy-1.0.pc
|
|
||||||
%{_datadir}/cmake/Modules/Findlibproxy.cmake
|
|
||||||
|
|
||||||
|
* Sun Aug 26 2018 Peter Robinson <pbrobinson@fedoraproject.org> 0.4.15-9
|
||||||
|
- Add patch and build against mozjs 52
|
||||||
|
|
||||||
%changelog
|
* Fri Jul 20 2018 David King <amigadave@amigadave.com> - 0.4.15-8
|
||||||
* Thu Aug 15 2024 Michael Santana <msantana@redhat.com> - 0.4.15-5.5
|
- Provide direct path to Python 2 (#1604646)
|
||||||
- Bump up version number
|
|
||||||
|
|
||||||
* Tue Jul 30 2024 Michael Santana <msantana@redhat.com> - 0.4.15-5.4
|
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.4.15-8
|
||||||
- Fix PAC buffer overflow (#1869639)
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
|
||||||
|
|
||||||
* Tue Jul 30 2024 Michael Santana <msantana@redhat.com> - 0.4.15-5.3
|
* Tue Jun 19 2018 Miro Hrončok <mhroncok@redhat.com> - 0.4.15-7
|
||||||
- Fix CVE-2020-25219 (#1880349)
|
- Rebuilt for Python 3.7
|
||||||
|
|
||||||
* Thu May 31 2018 Dan Winship <danw@redhat.com> - 0.4.15-5.2
|
* Fri May 04 2018 David King <amigadave@amigadave.com> - 0.4.15-6
|
||||||
- Drop pacrunner-mozjs (#1571640)
|
- Resurrect an old patch (#1459779)
|
||||||
|
- Add BuildRequires on gcc-c++
|
||||||
* Wed May 30 2018 Dan Winship <danw@redhat.com> - 0.4.15-5.1
|
- Switch to %%ldconfig_scriptlets
|
||||||
- Drop python2 subpackage (#1559092)
|
- Remove obsolete Group tags
|
||||||
- Drop PAC runner based on the "pacrunner" package (#1569023)
|
|
||||||
- Replace pacrunner-crash-fix patch with version from RHEL7
|
|
||||||
- Drop kde subpackage (#1538147)
|
|
||||||
|
|
||||||
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.4.15-5
|
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.4.15-5
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
|
6
gating.yaml
Normal file
6
gating.yaml
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
--- !Policy
|
||||||
|
product_versions:
|
||||||
|
- rhel-10
|
||||||
|
decision_context: osci_compose_gate
|
||||||
|
rules:
|
||||||
|
- !PassingTestCaseRule {test_case_name: baseos-ci.brew-build.tier1-gating.functional}
|
124
libproxy.spec
Normal file
124
libproxy.spec
Normal file
@ -0,0 +1,124 @@
|
|||||||
|
%global _privatelibs libpxbackend-1.0[.]so.*
|
||||||
|
%global __provides_exclude ^(%{_privatelibs})$
|
||||||
|
%global __requires_exclude ^(%{_privatelibs})$
|
||||||
|
|
||||||
|
Name: libproxy
|
||||||
|
Version: 0.5.5
|
||||||
|
Release: %autorelease
|
||||||
|
Summary: A library handling all the details of proxy configuration
|
||||||
|
|
||||||
|
License: LGPL-2.1-or-later
|
||||||
|
URL: https://libproxy.github.io/libproxy/
|
||||||
|
Source0: https://github.com/libproxy/%{name}/archive/refs/tags/%{version}.tar.gz
|
||||||
|
|
||||||
|
BuildRequires: gcc
|
||||||
|
BuildRequires: meson
|
||||||
|
BuildRequires: /usr/bin/gi-docgen
|
||||||
|
BuildRequires: /usr/bin/vapigen
|
||||||
|
|
||||||
|
BuildRequires: pkgconfig(duktape)
|
||||||
|
BuildRequires: pkgconfig(gio-2.0) >= 2.71.3
|
||||||
|
BuildRequires: pkgconfig(gobject-introspection-1.0)
|
||||||
|
BuildRequires: pkgconfig(libcurl)
|
||||||
|
BuildRequires: python3-devel
|
||||||
|
# For config-gnome
|
||||||
|
BuildRequires: pkgconfig(gsettings-desktop-schemas)
|
||||||
|
|
||||||
|
# Folded into main package in 0.5.0. Remove in F41.
|
||||||
|
Provides: python3-%{name} = %{version}-%{release}
|
||||||
|
Provides: %{name}-pac = %{version}-%{release}
|
||||||
|
|
||||||
|
# Obsoletes of subpackages prior to 0.5.0 rewrite. Remove in F41.
|
||||||
|
Provides: %{name}-gnome = %{version}-%{release}
|
||||||
|
Obsoletes: %{name}-gnome < %{version}-%{release}
|
||||||
|
Provides: %{name}-kde = %{version}-%{release}
|
||||||
|
Obsoletes: %{name}-kde < %{version}-%{release}
|
||||||
|
Provides: %{name}-mozjs = %{version}-%{release}
|
||||||
|
Obsoletes: %{name}-mozjs < %{version}-%{release}
|
||||||
|
Provides: %{name}-pacrunner = %{version}-%{release}
|
||||||
|
Obsoletes: %{name}-pacrunner < %{version}-%{release}
|
||||||
|
Provides: %{name}-webkitgtk4 = %{version}-%{release}
|
||||||
|
Obsoletes: %{name}-webkitgtk4 < %{version}-%{release}
|
||||||
|
Provides: %{name}-duktape = %{version}-%{release}
|
||||||
|
Obsoletes: %{name}-duktape < %{version}-%{release}
|
||||||
|
|
||||||
|
|
||||||
|
%description
|
||||||
|
libproxy offers the following features:
|
||||||
|
|
||||||
|
* extremely small core footprint
|
||||||
|
* minimal dependencies within libproxy core
|
||||||
|
* only 4 functions in the stable-ish external API
|
||||||
|
* dynamic adjustment to changing network topology
|
||||||
|
* a standard way of dealing with proxy settings across all scenarios
|
||||||
|
* a sublime sense of joy and accomplishment
|
||||||
|
|
||||||
|
|
||||||
|
%package bin
|
||||||
|
Summary: Binary to test %{name}
|
||||||
|
Requires: %{name}%{?_isa} = %{version}-%{release}
|
||||||
|
|
||||||
|
%description bin
|
||||||
|
The %{name}-bin package contains the proxy binary for %{name}
|
||||||
|
|
||||||
|
%package devel
|
||||||
|
Summary: Development files for %{name}
|
||||||
|
Requires: %{name}%{?_isa} = %{version}-%{release}
|
||||||
|
|
||||||
|
%description devel
|
||||||
|
The %{name}-devel package contains libraries and header files for
|
||||||
|
developing applications that use %{name}.
|
||||||
|
|
||||||
|
%prep
|
||||||
|
%autosetup -p1
|
||||||
|
|
||||||
|
|
||||||
|
%build
|
||||||
|
%meson \
|
||||||
|
-Dconfig-gnome=true \
|
||||||
|
-Dconfig-kde=true \
|
||||||
|
-Dconfig-osx=false \
|
||||||
|
-Dconfig-windows=false \
|
||||||
|
-Dintrospection=true \
|
||||||
|
-Dtests=true \
|
||||||
|
-Dvapi=true
|
||||||
|
%meson_build
|
||||||
|
|
||||||
|
|
||||||
|
%install
|
||||||
|
%meson_install
|
||||||
|
|
||||||
|
|
||||||
|
%check
|
||||||
|
%meson_test
|
||||||
|
|
||||||
|
%ldconfig_scriptlets
|
||||||
|
|
||||||
|
|
||||||
|
%files
|
||||||
|
%doc CHANGELOG.md README.md
|
||||||
|
%license COPYING
|
||||||
|
%dir %{_libdir}/girepository-1.0
|
||||||
|
%{_libdir}/girepository-1.0/Libproxy-1.0.typelib
|
||||||
|
%{_libdir}/libproxy.so.*
|
||||||
|
%dir %{_libdir}/libproxy
|
||||||
|
%{_libdir}/libproxy/libpxbackend-1.0.so
|
||||||
|
|
||||||
|
%files bin
|
||||||
|
%{_bindir}/proxy
|
||||||
|
%{_mandir}/man8/proxy.8*
|
||||||
|
|
||||||
|
%files devel
|
||||||
|
%{_docdir}/libproxy-1.0/
|
||||||
|
%{_includedir}/libproxy/
|
||||||
|
%{_libdir}/libproxy.so
|
||||||
|
%{_libdir}/pkgconfig/libproxy-1.0.pc
|
||||||
|
%dir %{_datadir}/gir-1.0
|
||||||
|
%{_datadir}/gir-1.0/Libproxy-1.0.gir
|
||||||
|
%dir %{_datadir}/vala/vapi/
|
||||||
|
%{_datadir}/vala/vapi/libproxy-1.0.deps
|
||||||
|
%{_datadir}/vala/vapi/libproxy-1.0.vapi
|
||||||
|
|
||||||
|
|
||||||
|
%changelog
|
||||||
|
%autochangelog
|
Loading…
Reference in New Issue
Block a user