diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..8a49101 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +SOURCES/0.4.15.tar.gz diff --git a/.libproxy.metadata b/.libproxy.metadata new file mode 100644 index 0000000..cc31ad1 --- /dev/null +++ b/.libproxy.metadata @@ -0,0 +1 @@ +2dc0fc31cad78ce3d7a5ceb8fa8df07010f5c13e SOURCES/0.4.15.tar.gz diff --git a/SOURCES/libproxy-0.4.11-crash.patch b/SOURCES/libproxy-0.4.11-crash.patch new file mode 100644 index 0000000..ed9f1a9 --- /dev/null +++ b/SOURCES/libproxy-0.4.11-crash.patch @@ -0,0 +1,41 @@ +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); + } diff --git a/SOURCES/proxy.1 b/SOURCES/proxy.1 new file mode 100644 index 0000000..a8c2d83 --- /dev/null +++ b/SOURCES/proxy.1 @@ -0,0 +1,23 @@ +.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 . diff --git a/SPECS/libproxy.spec b/SPECS/libproxy.spec new file mode 100644 index 0000000..e53bb84 --- /dev/null +++ b/SPECS/libproxy.spec @@ -0,0 +1,422 @@ +# When we are bootstrapping, we drop some dependencies. +# Set this to 0 after bootstrapping. +%{!?_with_bootstrap: %global bootstrap 0} + +Name: libproxy +Version: 0.4.15 +Release: 5.2%{?dist} +Summary: A library handling all the details of proxy configuration + +Group: System Environment/Libraries +License: LGPLv2+ +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 + +BuildRequires: libmodman-devel >= 2.0.1 +BuildRequires: cmake >= 2.6.0 + +%if ! 0%{?bootstrap} +# gnome +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 + + +%description +libproxy offers the following features: + + * extremely small core footprint (< 35K) + * no external dependencies within libproxy core + (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 + + +%package bin +Summary: Binary to test %{name} +Group: Applications/System +Requires: %{name}%{?_isa} = %{version}-%{release} + +%description bin +The %{name}-bin package contains the proxy binary for %{name} + +%if ! 0%{?bootstrap} +%package -n python3-%{name} +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} +The python3 binding for %{name} + +%package gnome +Summary: Plugin for %{name} and gnome +Group: System Environment/Libraries +Requires: %{name}%{?_isa} = %{version}-%{release} + +%description gnome +The %{name}-gnome package contains the %{name} plugin for gnome. + +%package networkmanager +Summary: Plugin for %{name} and networkmanager +Group: System Environment/Libraries +Requires: %{name}%{?_isa} = %{version}-%{release} + +%description networkmanager +The %{name}-networkmanager package contains the %{name} plugin +for networkmanager. + +%package webkitgtk4 +Summary: Plugin for %{name} and webkitgtk3 +Group: System Environment/Libraries +Requires: %{name}%{?_isa} = %{version}-%{release} +Provides: %{name}-pac = %{version}-%{release} + +%description webkitgtk4 +The %{name}-webkitgtk4 package contains the %{name} plugin for +webkitgtk3. + +%endif + +%package devel +Summary: Development files for %{name} +Group: Development/Libraries +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 +%{cmake} \ + -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 + + +%install +%make_install INSTALL="install -p" + +#In case all modules are disabled +mkdir -p %{buildroot}%{_libdir}/%{name}/%{version}/modules + +# Man page. +install -Dpm 0644 %{SOURCE1} %{buildroot}/%{_mandir}/man1/proxy.1 + + +%check +make test + +%post -p /sbin/ldconfig + +%postun -p /sbin/ldconfig + + +%files +%doc AUTHORS README +%license COPYING +%{_libdir}/*.so.* +%dir %{_libdir}/%{name} +%dir %{_libdir}/%{name}/%{version} +%dir %{_libdir}/%{name}/%{version}/modules + +%files bin +%{_bindir}/proxy +%{_mandir}/man1/proxy.1* + +%if ! 0%{?bootstrap} +%files -n python3-%{name} +%{python3_sitelib}/__pycache__/* +%{python3_sitelib}/%{name}.* + +%files gnome +%{_libdir}/%{name}/%{version}/modules/config_gnome3.so +%{_libexecdir}/pxgsettings + +%files networkmanager +%{_libdir}/%{name}/%{version}/modules/network_networkmanager.so + +%files webkitgtk4 +%{_libdir}/%{name}/%{version}/modules/pacrunner_webkit.so +%endif + +%files devel +%{_includedir}/proxy.h +%{_libdir}/*.so +%{_libdir}/pkgconfig/libproxy-1.0.pc +%{_datadir}/cmake/Modules/Findlibproxy.cmake + + +%changelog +* Thu May 31 2018 Dan Winship - 0.4.15-5.2 +- Drop pacrunner-mozjs (#1571640) + +* Wed May 30 2018 Dan Winship - 0.4.15-5.1 +- Drop python2 subpackage (#1559092) +- 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 - 0.4.15-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Thu Aug 03 2017 Fedora Release Engineering - 0.4.15-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild + +* Wed Jul 26 2017 Fedora Release Engineering - 0.4.15-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Thu Jul 13 2017 David King - 0.4.15-2 +- Use pkgconfig for BuildRequires +- Fix crash in pacrunner module (#1459779) + +* Tue May 16 2017 Peter Robinson 0.4.15-1 +- Update to 0.4.15 + +* Fri Feb 10 2017 Fedora Release Engineering - 0.4.14-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Mon Jan 09 2017 David King - 0.4.14-1 +- Update to 0.4.14 + +* Sun Jan 01 2017 David King - 0.4.13-1 +- Update to 0.4.13 + +* Mon Dec 19 2016 Miro HronĨok - 0.4.12-5 +- Rebuild for Python 3.6 + +* Tue Jul 19 2016 Fedora Release Engineering - 0.4.12-4 +- https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages + +* Mon Apr 04 2016 David King - 0.4.12-3 +- Install bindings for both Python 2 and 3 (#1323251) + +* Fri Mar 04 2016 David King - 0.4.12-2 +- Fix a Python bindings crash on 64-bit systems (#1296817) + +* Mon Feb 29 2016 David King - 0.4.12-1 +- Update to 0.4.12 +- Simplify conditional macros +- Use isa macro when requiring base package +- Use license macro for COPYING +- Use pkgconfig for BuildRequires +- Use javascriptcoregtk-4.0 +- Apply an upstream patch to pair new[] with delete[] +- Fix slowdown in KDE plugin +- Make the pacrunner subpackage depend on pacrunner (#1171679) +- Install man page from Debian + +* Thu Feb 04 2016 Fedora Release Engineering - 0.4.11-13 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + +* Wed Jun 17 2015 Fedora Release Engineering - 0.4.11-12 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + +* Sat May 02 2015 Kalev Lember - 0.4.11-11 +- Rebuilt for GCC 5 C++11 ABI change + +* Sun Aug 17 2014 Fedora Release Engineering - 0.4.11-10 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild + +* Sat Jun 07 2014 Fedora Release Engineering - 0.4.11-9 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + +* Mon Nov 11 2013 Dan Winship - 0.4.11-8 +- Really fix the JS_AbortIfWrongThread crash (#998232) + +* Thu Sep 19 2013 Dan Winship - 0.4.11-7 +- Fix file descriptor leak (#911066) +- Fix crash when pacrunner fails (probably because of EMFILE...) (#998232) + +* Sat Aug 03 2013 Fedora Release Engineering - 0.4.11-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild + +* Thu Jul 18 2013 David Woodhouse - 0.4.11-5 +- Add PacRunner module now that Fedora has PacRunner + +* Mon Jun 03 2013 Colin Walters - 0.4.11-4 +- Add patch to build with mozjs17, use it by default + +* Thu Feb 14 2013 Fedora Release Engineering - 0.4.11-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild + +* Thu Jan 3 2013 Dan Winship - 0.4.11-2 +- Minor dependency fixes + +* Mon Dec 03 2012 Nicolas Chauvet - 0.4.11-1 +- Update to 0.4.11 - CVE-2012-5580 + +* Tue Oct 16 2012 Nicolas Chauvet - 0.4.10-1 +- Update to 0.4.10 +- Fix CVE-2012-4504 + +* Thu Jul 19 2012 Fedora Release Engineering - 0.4.7-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild + +* Mon Feb 27 2012 Peter Robinson - 0.4.7-4 +- Add upstream patches to use js rather than xulrunner +- Add patch to fix FTBFS on gcc 4.7 +- Cleanup spec for latest updates and remove obsolete bits + +* Fri Jan 13 2012 Fedora Release Engineering - 0.4.7-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild + +* Tue Dec 06 2011 Adam Jackson - 0.4.7-2 +- Rebuild for new libpng + +* Tue Jun 07 2011 Nicolas Chauvet - 0.4.7-1 +- Update to 0.4.7 +- libproxy-1.0.pc is now reliable starting with 0.4.7 + +* Tue Apr 12 2011 Nicolas Chauvet - 0.4.7-0.1svn20110412 +- Update to 0.4.7 svn20110412 +- Add support for webkitgtk3 +- Add support for xulrunner 2.0 +- fix #683015 - libproxy fails with autoconfiguration +- fix #683018 - libproxy needs BR: NetworkManager-glib-devel (f14) +- Manually fix libproxy-1.0.pc version field - #664781 / #674854 + +* Wed Nov 24 2010 Nicolas Chauvet - 0.4.6-3 +- Fix mozjs/webkit obsoletion - rhbz#656849 +- Workaround unreliable Version field in pkg-config - rhbz#656484 + +* Sun Nov 07 2010 Nicolas Chauvet - 0.4.6-1 +- Update to 0.4.6 +- Fix python module not arch dependant + +* Mon Sep 06 2010 Nicolas Chauvet - 0.4.5-2 +- Update to 0.4.5 +- Disable mozjs on fedora >= 15 +- Disable webkit +- Add libproxy bootstrap option to disable modules. + +* Wed Jul 21 2010 David Malcolm - 0.4.4-7 +- Rebuilt for https://fedoraproject.org/wiki/Features/Python_2.7/MassRebuild + +* Tue Jul 13 2010 Nicolas Chauvet - 0.4.4-6 +- Fix libproxy-1.0.pc + +* Mon Jul 05 2010 Nathaniel McCallum - 0.4.4-5 +- Re-enable mozjs and webkit + +* Mon Jul 05 2010 Nathaniel McCallum - 0.4.4-4 +- Disable mozjs to get around a build error temporarily + +* Mon Jul 05 2010 Nathaniel McCallum - 0.4.4-3 +- Disable webkit subpackage in order to resolve circular dep + +* Sat Jul 03 2010 Nathaniel McCallum - 0.4.4-2 +- Fix missing BuildRequires: libmodman-devel + +* Sun Jun 13 2010 Nathaniel McCallum - 0.4.4-1 +- Update to 0.4.4 +- Removed install workarounds (fixed upstream) +- Removed patches (fixed upstream) +- Moved -python to noarch +- Downgrade cmake requirement (upstream change) +- Disabled perl bindings +- Run tests + +* Thu Mar 11 2010 Nicolas Chauvet - 0.3.1-4 +- Add missing libXmu-devel + +* Sun Feb 21 2010 Nicolas Chauvet - 0.3.1-4 +- Globalism and update gecko to 1.9.2 +- Avoid rpath on _libdir +- Fix BR for kde4 to kdelibs-devel + +* Sun Dec 27 2009 Nicolas Chauvet - 0.3.1-1 +- Update to 0.3.1 +- Avoid dependecies on -python and -bin subpackages +- Create -networkmanager sub-package. + +* Thu Sep 24 2009 kwizart < kwizart at gmail.com > - 0.3.0-1 +- Update to 0.3.0 + +* Thu Sep 17 2009 kwizart < kwizart at gmail.com > - 0.2.3-12 +- Remove Requirement of %%{name}-pac virtual provides + from the main package - #524043 + +* Sat Jul 25 2009 Fedora Release Engineering - 0.2.3-11 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild + +* Mon Mar 9 2009 kwizart < kwizart at gmail.com > - 0.2.3-10 +- Rebuild for webkit +- Raise requirement for xulrunner to 1.9.1 + +* Wed Feb 25 2009 Fedora Release Engineering - 0.2.3-9 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild + +* Thu Jan 22 2009 kwizart < kwizart at gmail.com > - 0.2.3-8 +- Merge NetworkManager module into the main libproxy package +- Main Requires the -python and -bin subpackage + (splitted for multilibs compliance). + +* Fri Oct 24 2008 kwizart < kwizart at gmail.com > - 0.2.3-7 +- Disable Gnome/KDE default support via builtin modules. + (it needs to be integrated via Gconf2/neon instead). + +* Tue Oct 21 2008 kwizart < kwizart at gmail.com > - 0.2.3-6 +- Disable Obsoletes. +- Requires ev instead of evr for optionnals sub-packages. + +* Tue Oct 21 2008 kwizart < kwizart at gmail.com > - 0.2.3-5 +- Use conditionals build. + +* Mon Sep 15 2008 kwizart < kwizart at gmail.com > - 0.2.3-4 +- Remove plugin- in the name of the packages + +* Mon Aug 4 2008 kwizart < kwizart at gmail.com > - 0.2.3-3 +- Move proxy.h to libproxy/proxy.h + This will prevent it to be included in the default include path +- Split main to libs and util and use libproxy to install all + +* Mon Aug 4 2008 kwizart < kwizart at gmail.com > - 0.2.3-2 +- Rename binding-python to python +- Add Requires: gecko-libs >= %%{gecko_version} +- Fix some descriptions +- Add plugin-webkit package + +* Fri Jul 11 2008 kwizart < kwizart at gmail.com > - 0.2.3-1 +- Convert to Fedora spec + +* Fri Jun 6 2008 - dominique-rpm@leuenberger.net +- Updated to version 0.2.3 +* Wed Jun 4 2008 - dominique-rpm@leuenberger.net +- Extended spec file to build all available plugins +* Tue Jun 3 2008 - dominique-rpm@leuenberger.net +- Initial spec file for Version 0.2.2 +