Compare commits

...
Sign in to create a new pull request.

14 commits

Author SHA1 Message Date
Philippe Makowski
d37f7f1a1e update to 2.5.9 (End of Series) 2019-08-22 15:27:10 +02:00
Philippe Makowski
f8b05df2f0 update to 2.5.8 2018-08-31 11:49:31 +02:00
makowski
0ac263a760 - update to 2.5.7
- security fix (#1425332)
2017-02-21 14:21:20 +01:00
makowski
64e7dd8a2a update to 2.5.6 2016-12-29 10:16:39 +01:00
Philippe Makowski
90627064a1 - move fb_config (#1297506)
- fixe CVE-2016-1569 (#1297447 #1297450 #1297451)
2016-02-05 14:24:46 +01:00
Philippe Makowski
1f3db57096 update to 2.5.5 2015-11-19 15:23:36 +01:00
Philippe Makowski
1d643130b8 update to 2.5.4 2015-04-02 15:42:52 +02:00
Philippe Makowski
b35b5a9154 security fix firebird CORE-4630 2014-12-07 18:14:46 +01:00
Philippe Makowski
6d4e3ae4a8 update from upstream 2.5.3
- update arm64 patch
2014-07-26 18:43:02 +02:00
Philippe Makowski
0312417cb7 add missing BR on libstdc++-static 2014-01-21 21:12:51 +01:00
Philippe Makowski
79a3374eff make fb_config executable (bug #985335) 2013-08-01 22:23:38 +02:00
Philippe Makowski
90f5de0961 Provide fb_config in firebird-devel (bug #985335) 2013-07-23 23:15:34 +02:00
Philippe Makowski
81bfd9c793 Firebird fails to build for aarch64 (bug #969851) 2013-06-03 22:01:51 +02:00
Philippe Makowski
6b7897dc8d set PIE compiler flags (bug #955274) 2013-04-27 14:57:13 +02:00
6 changed files with 78 additions and 179 deletions

6
.gitignore vendored
View file

@ -3,3 +3,9 @@ Firebird-2.1.3.18185-0.RC2.tar.bz2
/Firebird-2.5.1.26349-0.tar.bz2
/Firebird-2.5.1.26351-0.tar.bz2
/Firebird-2.5.2.26539-0.tar.bz2
/Firebird-2.5.3.26778-0.tar.bz2
/Firebird-2.5.5.26952-0.tar.bz2
/Firebird-2.5.6.27020-0.tar.bz2
/Firebird-2.5.7.27050-0.tar.bz2
/Firebird-2.5.8.27089-0.tar.bz2
/Firebird-2.5.9.27139-0.tar.bz2

View file

@ -1,151 +0,0 @@
--- src/jrd/unicode_util.cpp 2012/10/12 09:56:14 57235
+++ src/jrd/unicode_util.cpp 2012/10/12 21:20:30 57236
@@ -42,6 +42,9 @@
#include "unicode/ucnv.h"
#include "unicode/ucol.h"
+// The next major ICU version after 4.8 is 49.
+#define ICU_NEW_VERSION_MEANING 49
+
using namespace Firebird;
@@ -49,8 +52,16 @@
namespace Jrd {
+#if U_ICU_VERSION_MAJOR_NUM >= ICU_NEW_VERSION_MEANING
+const char* const UnicodeUtil::DEFAULT_ICU_VERSION = STRINGIZE(U_ICU_VERSION_MAJOR_NUM);
+#else
const char* const UnicodeUtil::DEFAULT_ICU_VERSION =
STRINGIZE(U_ICU_VERSION_MAJOR_NUM)"."STRINGIZE(U_ICU_VERSION_MINOR_NUM);
+#endif
+
+
+static void formatFilename(PathName& filename, const char* templateName,
+ int majorVersion, int minorVersion);
// encapsulate ICU collations libraries
@@ -79,6 +90,11 @@
{
string symbol;
+ symbol.printf("%s_%d", name, majorVersion);
+ module->findSymbol(symbol, ptr);
+ if (ptr)
+ return;
+
symbol.printf("%s_%d_%d", name, majorVersion, minorVersion);
module->findSymbol(symbol, ptr);
if (ptr)
@@ -157,14 +173,25 @@
RWLock lock;
};
-namespace {
- GlobalPtr<UnicodeUtil::ICUModules> icuModules;
-}
+static GlobalPtr<UnicodeUtil::ICUModules> icuModules;
static const char* const COLL_30_VERSION = "41.128.4.4"; // ICU 3.0 collator version
+static void formatFilename(PathName& filename, const char* templateName,
+ int majorVersion, int minorVersion)
+{
+ string s;
+ if (majorVersion >= ICU_NEW_VERSION_MEANING)
+ s.printf("%d", majorVersion);
+ else
+ s.printf("%d%d", majorVersion, minorVersion);
+
+ filename.printf(templateName, s.c_str());
+}
+
+
static void getVersions(const string& configInfo, ObjectsArray<string>& versions)
{
charset cs;
@@ -758,17 +785,17 @@
const Firebird::string& configInfo)
{
#if defined(WIN_NT)
- const char* const inTemplate = "icuin%d%d.dll";
- const char* const ucTemplate = "icuuc%d%d.dll";
+ const char* const inTemplate = "icuin%s.dll";
+ const char* const ucTemplate = "icuuc%s.dll";
#elif defined(DARWIN)
const char* const inTemplate = "/Library/Frameworks/Firebird.framework/Versions/A/Libraries/libicui18n.dylib";
const char* const ucTemplate = "/Library/Frameworks/Firebird.framework/versions/A/Libraries/libicuuc.dylib";
#elif defined(HPUX)
- const char* const inTemplate = "libicui18n.sl.%d%d";
- const char* const ucTemplate = "libicuuc.sl.%d%d";
+ const char* const inTemplate = "libicui18n.sl.%s";
+ const char* const ucTemplate = "libicuuc.sl.%s";
#else
- const char* const inTemplate = "libicui18n.so.%d%d";
- const char* const ucTemplate = "libicuuc.so.%d%d";
+ const char* const inTemplate = "libicui18n.so.%s";
+ const char* const ucTemplate = "libicuuc.so.%s";
#endif
ObjectsArray<string> versions;
@@ -776,24 +803,28 @@
string version = icuVersion.isEmpty() ? versions[0] : icuVersion;
if (version == "default")
- {
- version.printf("%d.%d", U_ICU_VERSION_MAJOR_NUM, U_ICU_VERSION_MINOR_NUM);
- }
+ version = DEFAULT_ICU_VERSION;
for (ObjectsArray<string>::const_iterator i(versions.begin()); i != versions.end(); ++i)
{
int majorVersion, minorVersion;
+ int n = sscanf((*i == "default" ? version : *i).c_str(), "%d.%d",
+ &majorVersion, &minorVersion);
- if (*i == "default")
- {
- majorVersion = U_ICU_VERSION_MAJOR_NUM;
- minorVersion = U_ICU_VERSION_MINOR_NUM;
- }
- else if (sscanf(i->c_str(), "%d.%d", &majorVersion, &minorVersion) != 2)
+ if (n == 1)
+ minorVersion = 0;
+ else if (n != 2)
continue;
string configVersion;
- configVersion.printf("%d.%d", majorVersion, minorVersion);
+
+ if (majorVersion >= ICU_NEW_VERSION_MEANING)
+ {
+ minorVersion = 0;
+ configVersion.printf("%d", majorVersion);
+ }
+ else
+ configVersion.printf("%d.%d", majorVersion, minorVersion);
if (version != configVersion)
continue;
@@ -805,7 +836,7 @@
return icu;
PathName filename;
- filename.printf(ucTemplate, majorVersion, minorVersion);
+ formatFilename(filename, ucTemplate, majorVersion, minorVersion);
icu = FB_NEW(*getDefaultMemoryPool()) ICU(majorVersion, minorVersion);
@@ -822,7 +853,7 @@
continue;
}
- filename.printf(inTemplate, majorVersion, minorVersion);
+ formatFilename(filename, inTemplate, majorVersion, minorVersion);
icu->inModule = ModuleLoader::loadModule(filename);
if (!icu->inModule)

View file

@ -1,11 +0,0 @@
--- src/remote/inet.cpp (révision 57727)
+++ src/remote/inet.cpp (révision 57728)
@@ -1252,7 +1252,7 @@
case CNCT_group:
{
const size_t length = id.getClumpLength();
- if (length != 0)
+ if (length <= sizeof(eff_gid) && length > 0)
{
eff_gid = 0;
memcpy(&eff_gid, id.getBytes(), length);

View file

@ -0,0 +1,11 @@
--- extern/btyacc/Makefile.ori 2013-03-19 09:38:04.000000000 +0100
+++ extern/btyacc/Makefile 2013-04-27 13:20:35.964379129 +0200
@@ -12,7 +12,7 @@ HDRS = defs.h mstring.h
# across all of our supported compilers/platforms.
# Vanilla CFLAGS
-CFLAGS=
+#CFLAGS=
# No LDFLAGS
#LDFLAGS=

View file

@ -1,19 +1,19 @@
%global pkgname Firebird-2.5.2.26539-0
%global pkgname Firebird-2.5.9.27139-0
%global fbroot %{_libdir}/%{name}
%global major 2.5.2
%global major 2.5.9
%global _hardened_build 1
Summary: SQL relational database management system
Name: firebird
Version: 2.5.2.26539.0
Release: 3%{?dist}
Version: 2.5.9.27139.0
Release: 1%{?dist}
Group: Applications/Databases
License: Interbase
URL: http://www.firebirdsql.org/
BuildRoot: %{_tmppath}/%{name}-%{version}-buildroot
Source0: http://downloads.sourceforge.net/firebird/%{pkgname}.tar.bz2
Source0: https://github.com/FirebirdSQL/firebird/releases/download/R2_5_9/%{pkgname}.tar.bz2
Source1: firebird-logrotate
Source2: README.Fedora
Source3: firebird.conf
@ -23,8 +23,7 @@ Source6: firebird-superclassic.service
Source7: firebird-superserver.service
# from upstream
Patch0: firebird-2.5.2-svn-CORE-3946.patch
Patch1: firebird-2.5.2-svn-CORE-4058.patch
Patch2: firebird-btyacc-fpie.patch
BuildRequires: autoconf
BuildRequires: automake
@ -35,9 +34,7 @@ BuildRequires: libtermcap-devel
BuildRequires: libicu-devel
BuildRequires: libedit-devel
BuildRequires: gcc-c++
%if 0%{?fedora}>=14
BuildRequires: libstdc++-static
%endif
%ifnarch %{ix86} x86_64
BuildRequires: libatomic_ops-devel
%endif
@ -159,8 +156,7 @@ Multi-process, local client libraries for Firebird SQL RDBMS
%prep
%setup -q -n %{pkgname}
%patch0
%patch1
%patch2
# convert intl character to UTF-8
iconv -f ISO-8859-1 -t utf-8 -c ./doc/README.intl -o ./doc/README.intl
@ -264,6 +260,8 @@ cp -d %{_builddir}/%{pkgname}/gen/buildroot%{_sysconfdir}/%{name}/* %{buildroot}
cp -d %{_builddir}/%{pkgname}/gen/buildroot-classic%{fbroot}/bin-classic/* %{buildroot}%{fbroot}/bin-classic
cp -d %{_builddir}/%{pkgname}/gen/buildroot-classic%{_sbindir}/fb_config %{buildroot}%{fbroot}/bin-classic/fb_config
sed "s@-classic@-superserver@" %{_builddir}/%{pkgname}/gen/buildroot-classic%{_sbindir}/fb_config > %{buildroot}%{fbroot}/bin-superserver/fb_config
sed "s@-classic@@" %{_builddir}/%{pkgname}/gen/buildroot-classic%{_sbindir}/fb_config > %{buildroot}%{_libdir}/fb_config
sed -i '/plugins/d' %{buildroot}%{_libdir}/fb_config
cp -d %{_builddir}/%{pkgname}/gen/buildroot-classic%{_sbindir}/fbguard %{buildroot}%{_sbindir}/fbguard
cp -d %{_builddir}/%{pkgname}/gen/buildroot-classic%{_sbindir}/fb_inet_server %{buildroot}%{_sbindir}/fb_inet_server
cp -d %{_builddir}/%{pkgname}/gen/buildroot-classic%{_sbindir}/fb_lock_print %{buildroot}%{_sbindir}/fb_lock_print
@ -318,7 +316,6 @@ ln -s %{fbroot}/bin/gstat .%{_bindir}/gstat-fb
ln -s %{fbroot}/bin/isql .%{_bindir}/isql-fb
ln -s %{fbroot}/bin/nbackup .%{_bindir}/nbackup
ln -s %{fbroot}/bin/qli .%{_bindir}/qli
ln -s %{fbroot}/bin/fb_config .%{_bindir}/fb_config
%clean
rm -Rf %{buildroot}
@ -456,6 +453,8 @@ fi
%{_includedir}/%{name}/*.h
%{_libdir}/libfb*.so
%{_libdir}/libgds.so
%defattr(0755,root,root,0755)
%{_libdir}/fb_config
%files filesystem
%defattr(0644,root,root,0755)
@ -517,6 +516,51 @@ fi
%changelog
* Thu Aug 22 2019 Philippe Makowski <makowski@fedoraproject.org> 2.5.9.27139.0-1
- update to 2.5.9 (End of Series)
* Fri Aug 31 2018 Philippe Makowski <makowski@fedoraproject.org> 2.5.8.27089.0-1
- update to 2.5.8
* Tue Feb 21 2017 Philippe Makowski <makowski@fedoraproject.org> 2.5.7.27050.0-1
- update to 2.5.7
- security fix (#1425332)
* Thu Dec 29 2016 Philippe Makowski <makowski@fedoraproject.org> 2.5.6.27020.0-1
- update to 2.5.6
* Fri Feb 05 2016 Philippe Makowski <makowski@fedoraproject.org> - 2.5.5.26952.0-2
- move fb_config (#1297506)
- fix CVE-2016-1569 (#1297447 #1297450 #1297451)
* Thu Nov 19 2015 Philippe Makowski <makowski@fedoraproject.org> 2.5.5.26952.0-1
- update to 2.5.5
* Thu Apr 2 2015 Philippe Makowski <makowski@fedoraproject.org> 2.5.4.26856.0-1
- update to 2.5.4
* Sun Dec 7 2014 Philippe Makowski <makowski@fedoraproject.org> 2.5.3.26778.0-2
- security fix firebird CORE-4630
* Sat Jul 26 2014 Philippe Makowski <makowski@fedoraproject.org> - 2.5.3.26778.0-1
- update from upstream 2.5.3
- update arm64 patch
* Tue Jan 21 2014 Philippe Makowski <makowski@fedoraproject.org> 2.5.2.26539.0-8
- add missing BR on libstdc++-static
* Tue Jul 23 2013 Philippe Makowski <makowski@fedoraproject.org> 2.5.2.26539.0-7
- make fb_config executable (bug #985335)
* Tue Jul 23 2013 Philippe Makowski <makowski@fedoraproject.org> 2.5.2.26539.0-6
- Provide fb_config in firebird-devel (bug #985335)
* Mon Jun 03 2013 Philippe Makowski <makowski@fedoraproject.org> 2.5.2.26539.0-5
- Firebird fails to build for aarch64 (bug #969851)
* Thu Apr 25 2013 Philippe Makowski <makowski@fedoraproject.org> 2.5.2.26539.0-4
- set PIE compiler flags (bug #955274)
* Sun Mar 10 2013 Philippe Makowski <makowski@fedoraproject.org> 2.5.2.26539.0-3
- added patch from upstream to fix Firebird CORE-4058 CVE-2013-2492
@ -602,7 +646,7 @@ fi
* Sat Sep 05 2009 Karsten Hopp <karsten@redhat.com> 2.1.3.18185.0-5
- fix build on s390x for F-12 mass rebuild (Dan Horák)
* Mon Aug 11 2009 Philippe Makowski <makowski at fedoraproject.org> 2.1.3.18185.0-4
* Tue Aug 11 2009 Philippe Makowski <makowski at fedoraproject.org> 2.1.3.18185.0-4
- build it against system edit lib
- set correct setuid for Classic lock manager
- set correct permission for /var/run/firebird
@ -661,7 +705,7 @@ fi
* Sat Mar 28 2009 Philippe Makowski <makowski at firebird-fr.eu.org> 2.1.1.17910.0-5
- Major packaging restructuring
* Mon Mar 21 2009 Philippe Makowski <makowski at firebird-fr.eu.org> 2.1.1.17190.0-4
* Sat Mar 21 2009 Philippe Makowski <makowski at firebird-fr.eu.org> 2.1.1.17190.0-4
- Create a doc package
- major cleaning to avoid rpmlint errors
- revert to 2.1.1 (last stable build published)
@ -671,7 +715,7 @@ fi
- Add libicu-devel in BuildRequires
- Use iconv for convert files to UTF-8
* Fri Mar 05 2009 Jonathan MERCIER <bioinfornatics at gmail.com> 2.1.2.18116.0-2
* Thu Mar 05 2009 Jonathan MERCIER <bioinfornatics at gmail.com> 2.1.2.18116.0-2
- Update to 2.1.2
- Use %%global instead of %%define
- Change ${SOURCE1} to %%{SOURCE1}

View file

@ -1 +1 @@
adf2d2f9d48a53dc6c490ba1e44631fd Firebird-2.5.2.26539-0.tar.bz2
SHA512 (Firebird-2.5.9.27139-0.tar.bz2) = 3d99f2965ef30770949662d58149e800109b6e8ceb2e19950788d03c1f3c7141a9dfa82acd7d6e25d7074f59c8ce44995b54a357698058a5a35864bd8d6d8a5d