Hello community,
here is the log from the commit of package firebird.15185 for
openSUSE:Leap:15.1:Update checked in at 2020-12-03 12:27:43
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Leap:15.1:Update/firebird.15185 (Old)
and /work/SRC/openSUSE:Leap:15.1:Update/.firebird.15185.new.5913 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "firebird.15185"
Thu Dec 3 12:27:43 2020 rev:1 rq:851783 version:3.0.7.33374
Changes:
--------
New Changes file:
--- /dev/null 2020-11-18 17:46:03.679371574 +0100
+++
/work/SRC/openSUSE:Leap:15.1:Update/.firebird.15185.new.5913/firebird.changes
2020-12-03 12:27:44.851970856 +0100
@@ -0,0 +1,997 @@
+-------------------------------------------------------------------
+Sat Oct 31 19:57:48 UTC 2020 - Michal Kubeček <[email protected]>
+
+- update to upstream version 3.0.7
+ * better diagnostic for the 'Missing security context' error
+ (CORE-6362)
+ * disconnect from the security database when missing plugin data
+ structures cause an error (CORE-6339)
+ * multiple important bug fixes
+
+-------------------------------------------------------------------
+Sat Oct 17 11:52:16 UTC 2020 - Michal Kubeček <[email protected]>
+
+- update to upstream version 3.0.6
+ * add better transaction control in isql (CORE-4933)
+ * increase parse speed of long queries (CORE-6274)
+ * improve performance when using SRP plugin (CORE-6237)
+- refresh
+ * work-around-g-problem-in-SLE11.patch
+
+-------------------------------------------------------------------
+Tue Jun 23 08:39:13 UTC 2020 - Michal Kubecek <[email protected]>
+
+- minor specfile cleanup
+
+-------------------------------------------------------------------
+Sun Jun 21 10:40:08 UTC 2020 - Andreas Stieger <[email protected]>
+
+- update to 3.0.5:
+ * Improve the engine providers compatibility across Firebird
+ versions
+ * Make it possible for the AuthClient plugin to access the
+ authentication block from DPB
+ * Implement option to restore compressed .nbk files without
+ explicitly decompressing them
+
+-------------------------------------------------------------------
+Wed Nov 21 07:39:56 UTC 2018 - [email protected]
+
+- update to upstream version 3.0.4
+ * add support for SRP authentication using SHA-256
+ * ODS (database file format) version raised to 12.2 on some
+ architectures (including i586, not x86_64); new version will be
+ able to open existing ODS 12.0 created on the same architecture
+ but for database transfer between architectures, backup/restore
+ is always recommended
+ * context variables WIRE_COMPRESSED and WIRE_ENCRYPTED were added
+ to the SYSTEM namespace to report compression and encryption
+ status, respectively, of the current connection (CORE-5913)
+ * enhanced reporting of errors when dynamic library fails to load
+ (CORE-5908)
+ * include funciton name when UDF causes "Arithmetic exception,
+ numeric overflow, or string truncation" error (CORE-5876)
+ * context variables LOCALTIME and LOCALTIMESTAMP (synonyms for
+ CURRENT_TIME and CURRENT_TIMESTAMP) for compatibility with 4.0
+ (CORE-5853)
+ * read-only restriction for system tables was relaxed to permit
+ CREATE, ALTER and DROP operations on their indexes (CORE-5746)
+ * fix unauthorized BLOB access vulnerability (CORE-5801)
+ * for a full list of bugfixes and improvements see
+
http://www.firebirdsql.org/file/documentation/release_notes/html/en/3_0/rnfb30-general.html#rnfb30-general-v304
+- drop patches included in new upstream release:
+ Make-it-build-with-icu60.patch
+ An-attempt-to-fix-CORE-5764-need-feedback-on-snapsho.patch
+ Fixed-a-code-somewhy-accepted-by-gcc6.patch
+- refresh patches:
+ work-around-g-problem-in-SLE11.patch
+ use-C-98-on-SLE11.patch
+
+-------------------------------------------------------------------
+Wed Jul 4 11:44:02 UTC 2018 - [email protected]
+
+- replace unicode-handle-the-ICU-version-hack-from-SuSE.patch
+ with more general upstream solution:
+ * An-attempt-to-fix-CORE-5764-need-feedback-on-snapsho.patch
+ * Fixed-a-code-somewhy-accepted-by-gcc6.patch
+- unicode-handle-new-SUSE-ICU-version-hack.patch:
+ search also for "suse%d.%d" soname pattern to fix build after
+ upcoming ICU update (bsc#1095425)
+
+-------------------------------------------------------------------
+Wed Mar 28 06:54:09 UTC 2018 - [email protected]
+
+- move firebitd.xinetd back to firebird-server subpackage on SLE15
+- provide /etc/xinetd.d directory on Tumbleweed and Leap 15.0 as
+ xinetd is no longer guaranteed to be present there; this solution
+ (suggested by Dimstar) is less painful than either having
+ firebird-server depend on xinetd or splitting a new subpackage
+ firebird-server-classic.
+
+-------------------------------------------------------------------
+Fri Mar 23 11:32:28 UTC 2018 - [email protected]
+
+- patch xinetd config file unconditionally; previous change would
+ result in unpatched xinetd config file installed on Tumbleweed
+ so that the service would be enabled by default and firebird
+ binary run as root
+
+-------------------------------------------------------------------
+Thu Mar 22 09:57:02 UTC 2018 - [email protected]
+
+- Move xinetd file to /usr/share/misc/firebird on SLE15/Leap15/TW
+ (bsc#1084459).
+- Do no ship xinetd file on SLE15 (bsc#1084459).
+
+-------------------------------------------------------------------
+Sat Mar 3 17:51:56 UTC 2018 - [email protected]
+
+- update to upstream version 3.0.3
+ * fix conflicting constants; programs using * fb_info_crypt_state
+ constant must be recompiled
+ * provide crypto key name via fb_info_crypt_key item in
+ Attachment::getInfo()
+ * improve handling of concurrent ALTER DATABASE statements
+ * make sure ORDER BY with equivalent expressions are equivalent
+ and use the same plan
+ * avoid serialization of isc_attach_database calls issued by
+ EXECUTE STATEMENT
+ * show date and time of analysis in gstat output
+ * show database info in sweep error message
+ * provide compression details and encryption status of the
+ connection in Attachment::getInfo() API call
+ * fix RDB$RELATION_TYPE when restoring ODS < 11.1 database
+ * the optimizer can now estimate the actual record compression
+ ratio
+ * various performance improvements
+ * various bug fixes, for a list, see release notes at
+
http://www.firebirdsql.org/file/documentation/release_notes/html/en/3_0/rnfb30-bug.html
+- drop patches included in new upstream version:
+ Backported-fix-for-CORE-5549-Errors-building-running.patch
+ Backported-fix-for-CORE-5562-Firebird-crashes-when-U.patch
+ Fixed-CORE-5567-Direct-system-table-modifications-ar.patch
+ Make-the-generated-code-compatible-with-gcc-6-in-C-1.patch
+ Workaround-for-CORE-5566-Server-crashes-while-restor.patch
+- unicode-handle-the-ICU-version-hack-from-SuSE.patch:
+ rework to handle ICU >= 60 (as many versions as upstream)
+- drop firebird-icu60.patch
+ obsoleted by update of the unicode patch
+- Make-it-build-with-icu60.patch
+ upstream post-3.0.3 commit for ICU >= 59 compatibility
+- use-C-98-on-SLE11.patch
+ compatibility patch for SLE11 where gcc 4.3 does not support
+ -stc=gnu++03 (applied only on SLE11)
+
+-------------------------------------------------------------------
+Thu Jan 4 13:29:21 UTC 2018 - [email protected]
+
+- Add firebird-icu60.patch: Fix build with icu 60.x.
+
+-------------------------------------------------------------------
+Fri Jun 30 12:05:54 UTC 2017 - [email protected]
+
+- update to upstream version 3.0.2
+ * allow to to filter out info and warnings from the trace log
+ * enhance control capability when sharing the database crypt key
+ between Superserver attachments
+ * the physical numbers of frequently used data pages are now
+ cached to reduce the number of fetches of pointer pages
+ * in SuperServer mode, read-only transaction will no longer force
+ write the Header\TIP page content to disk immediately after
+ a change
+ * make the database name available to an encryption plug-in
+ * enable nesting of keys in a plug-in configuration
+ * build linux code with --enable-binreloc
+ * trace: provide a filter to INCLUDE / EXCLUDE errors by their
+ mnemonical names
+ * port for ancient Motorola 68000 CPU platform
+ * allow SELECT expressions as valid operands for the BETWEEN
+ predicate
+ * many bug fixes; for a list, see
+
https://www.firebirdsql.org/file/documentation/release_notes/html/en/3_0/rnfb30-bug.html#bug-302
+- Backported-fix-for-CORE-5474-Restrict-UDF-is-not-eff.patch:
+ drop (included in 3.0.2)
+- Backported-fix-for-CORE-5549-Errors-building-running.patch:
+ fix errors when building/running on non-SSE CPU (CORE-5549)
+- Backported-fix-for-CORE-5562-Firebird-crashes-when-U.patch:
+ fix crash on frequent load/unload of UDF (CORE-5562)
+- Workaround-for-CORE-5566-Server-crashes-while-restor.patch:
+ workaround for server crash when restoring a backup while shadow
+ file already exists (CORE-5566)
+- Fixed-CORE-5567-Direct-system-table-modifications-ar.patch:
+ fix the possibility to directly modivy system tables (CORE-5567)
+- drop "--disable-binreloc", no longer needed
+- add a check to fail in prep phase if extern/SfIO wasn't removed
+ (bsc#763446)
+
+-------------------------------------------------------------------
+Sat Feb 18 06:32:57 CET 2017 - [email protected]
+
+- Add missing insserv PreReq
+
+-------------------------------------------------------------------
+Tue Feb 7 10:58:14 UTC 2017 - [email protected]
+
+- Backported-fix-for-CORE-5474-Restrict-UDF-is-not-eff.patch
+ security vulnerability fix for bypassing 'Restrict UDF' value of
+ UdfAccess config directive (bsc#1023990)
++++ 800 more lines (skipped)
++++ between /dev/null
++++ and
/work/SRC/openSUSE:Leap:15.1:Update/.firebird.15185.new.5913/firebird.changes
New:
----
50-server.conf
Firebird-3.0.7.33374-0.tar.xz
Provide-sized-global-delete-operators-when-compiled-.patch
README.SUSE
add-pkgconfig-files.patch
baselibs.conf
disable-xinetd-service-by-default.patch
fbguard-allow-creating-a-guard-pidfile.patch
firebird-clean-tar.sh
firebird.changes
firebird.spec
unicode-handle-new-SUSE-ICU-version-hack.patch
use-C-98-on-SLE11.patch
use-killproc-in-stop-branch-of-SuSE-init-script.patch
work-around-g-problem-in-SLE11.patch
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ firebird.spec ++++++
#
# spec file for package firebird
#
# Copyright (c) 2020 SUSE LLC
#
# 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 up_stage 0
Name: firebird
Version: 3.0.7.33374
Release: 0
Summary: Database system (common files)
License: SUSE-IDPL-1.0 AND SUSE-IBPL-1.0
Group: Productivity/Databases/Servers
URL: https://www.firebirdsql.org/
# https://github.com/FirebirdSQL/firebird/releases/ - fetch and run
firebird-clean-tar.sh
Source: Firebird-%{version}-%{up_stage}.tar.xz
Source1: README.SUSE
Source2: 50-server.conf
Source3: firebird-clean-tar.sh
Source999: baselibs.conf
BuildRequires: autoconf >= 2.67
BuildRequires: gcc-c++
BuildRequires: libedit-devel
BuildRequires: libicu-devel
BuildRequires: libtommath-devel
BuildRequires: libtool
BuildRequires: ncurses-devel
BuildRequires: pkg-config
BuildRequires: xz
BuildRequires: zlib-devel
Requires(pre): pwdutils
Requires(pre): %insserv_prereq
%if 0%{?suse_version} < 1130
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%endif
Patch1: fbguard-allow-creating-a-guard-pidfile.patch
Patch2: use-killproc-in-stop-branch-of-SuSE-init-script.patch
Patch3: disable-xinetd-service-by-default.patch
Patch4: add-pkgconfig-files.patch
Patch5: Provide-sized-global-delete-operators-when-compiled-.patch
Patch6: unicode-handle-new-SUSE-ICU-version-hack.patch
# work around problems with old g++
Patch91: work-around-g-problem-in-SLE11.patch
Patch92: use-C-98-on-SLE11.patch
%description
This package provides common files needed by both client and server
installations of Firebird RDBMS.
Firebird is a relational database offering many ANSI SQL standard
features that runs on Linux, Windows, and a variety of Unix platforms.
Firebird offers excellent concurrency, high performance, and powerful
language support for stored procedures and triggers. It has been used
in production systems, under a variety of names, since 1981.
%prep
%setup -q -n Firebird-%{version}-%{up_stage}
# check for files with unclear licensing (bsc#763446)
if [ -d extern/SfIO ]; then
echo "please repack the tarball without extern/SfIO directory (see
bsc#763446)" >&2
exit 1
fi
# --
%patch1 -p1
%patch2 -p1
%patch3 -p1
%patch4 -p1
%patch5 -p1
%patch6 -p1
# --
# work around a problem with old g++
%if 0%{?suse_version} < 1140
%patch91 -p1
%patch92 -p1
%endif
%build
export CFLAGS="%{optflags} -fno-strict-aliasing"
export CXXFLAGS="${CFLAGS} -fno-delete-null-pointer-checks"
./autogen.sh --prefix=%{_prefix} \
--with-system-editline \
--with-fbbin=%{_bindir} \
--with-fbsbin=%{_sbindir} \
--with-fbconf=%{_sysconfdir}/%{name} \
--with-fblib=%{_libdir} \
--with-fbinclude=%{_includedir} \
--with-fbdoc=%{_docdir}/%{name} \
--with-fbudf=%{_libdir}/%{name}/udf \
--with-fbsample=%{_docdir}/%{name}/sample \
--with-fbsample-db=%{_localstatedir}/lib/%{name}/sample \
--with-fbhelp=%{_libdir}/%{name}/lib \
--with-fbintl=%{_libdir}/%{name}/intl \
--with-fbmisc=%{_datadir}/%{name}/misc \
--with-fbsecure-db=%{_localstatedir}/lib/%{name}/secdb \
--with-fbmsg=%{_libdir}/%{name}/lib \
--with-fblog=%{_localstatedir}/log/%{name} \
--with-fbglock=%{_localstatedir}/run/%{name} \
--with-fbplugins=%{_libdir}/%{name}/plugins
make %{?_smp_mflags}
cd gen
make %{?_smp_mflags} -f Makefile.install buildRoot
chmod -R u+w buildroot%{_docdir}/%{name}
cat >>buildroot%{_sysconfdir}/%{name}/firebird.conf <<EOT
# allow additional config files
include \$(dir_conf)/firebird.conf.d/*.conf
EOT
%install
chmod u+rw,a+rx gen/buildroot/usr/include/firebird/impl
cp -r gen/buildroot/* %{buildroot}/
mkdir -p %{buildroot}%{_initddir}
install -m 755 gen/install/misc/firebird.init.d.suse \
%{buildroot}%{_initddir}/firebird
mkdir -p %{buildroot}%{_libdir}/pkgconfig
cp -v gen/install/misc/*.pc %{buildroot}%{_libdir}/pkgconfig/
cd %{buildroot}
mkdir -p .%{_libdir}/%{name}/utils
mv -v .%{_sbindir}/*.sh .%{_libdir}/%{name}/utils/
mv -v .%{_sbindir}/fb_config .%{_libdir}/%{name}/utils/
rm -vf .%{_libdir}/libicu*.so
mv -vi .%{_bindir}/isql .%{_bindir}/isql-fb
mv -vi .%{_bindir}/gstat .%{_bindir}/gstat-fb
mv -vi .%{_includedir}/ibase.h .%{_includedir}/%{name}/
mv -vi .%{_includedir}/iberror.h .%{_includedir}/%{name}/
mv -vi .%{_includedir}/ib_util.h .%{_includedir}/%{name}/
rm -vf .%{_includedir}/*.h
chmod -R u+w .%{_docdir}/%{name}
rm -vf .%{_datadir}/%{name}/misc/firebird.init.*
rm -vf .%{_datadir}/%{name}/misc/rc.config.firebird
%if 0%{?suse_version} < 1500 || 0%{?is_opensuse}
mkdir -p .%{_sysconfdir}/xinetd.d
mv -v .%{_datadir}/%{name}/misc/firebird.xinetd \
.%{_sysconfdir}/xinetd.d/%{name}
%endif
mv -v .%{_sysconfdir}/%{name}/README .%{_sysconfdir}/%{name}/WhatsNew \
.%{_docdir}/%{name}/
mv -v .%{_sysconfdir}/%{name}/IDPLicense.txt .%{_docdir}/%{name}/
mv -v .%{_sysconfdir}/%{name}/IPLicense.txt .%{_docdir}/%{name}/
chmod -R go+rX .%{_datadir}/%{name}/misc
cp -vi %{SOURCE1} .%{_docdir}/%{name}/
mkdir -p .%{_sysconfdir}/%{name}/firebird.conf.d
cp -v %{SOURCE2} .%{_sysconfdir}/%{name}/firebird.conf.d/
mkdir -p srv/%{name}
ln -s %{_initddir}/firebird usr/sbin/rcfirebird
%files
%defattr(-,root,root)
%dir %{_sysconfdir}/%{name}
%config(noreplace) %{_sysconfdir}/%{name}/firebird.conf
%dir %{_sysconfdir}/%{name}/firebird.conf.d
%dir %{_libdir}/%{name}
%dir %{_datadir}/%{name}
%{_libdir}/%{name}/intl
%{_libdir}/%{name}/lib
%{_libdir}/%{name}/plugins/libEngine12.so
%{_datadir}/%{name}/misc
%if 0%{?suse_version} >= 1500 && !0%{?is_opensuse}
%exclude %{_datadir}/%{name}/misc/firebird.xinetd
%endif
%{_docdir}/%{name}/IDPLicense.txt
%{_docdir}/%{name}/IPLicense.txt
%{_docdir}/%{name}/README.SUSE
%dir %{_localstatedir}/lib/%{name}
%dir %{_localstatedir}/lib/%{name}/secdb
%attr(0750,firebird,firebird) %{_localstatedir}/log/%{name}
%dir %attr(0750,firebird,firebird) /srv/firebird
%pre
getent group firebird >/dev/null || groupadd -r firebird || :
getent passwd firebird >/dev/null \
|| %{_sbindir}/useradd -r -g firebird -c 'Firebird SQL server' \
-d /srv/firebird firebird \
|| :
exit 0
# ----------------------------------------------------------------------------
%package server
Summary: Server files of Firebird RDBMS
Group: Productivity/Databases/Servers
Requires: %{name} = %{version}
Recommends: %{name}-utils
# replaces these two from Leap 42.x and older
Provides: firebird-classic = %{version}
Provides: firebird-superserver = %{version}
Obsoletes: firebird-classic < 3
Obsoletes: firebird-superserver < 3
%description server
This package provides files needed to run Firebird RDBMS as a server.
Firebird is a relational database offering many ANSI SQL standard
features that runs on Linux, Windows, and a variety of Unix platforms.
Firebird offers excellent concurrency, high performance, and powerful
language support for stored procedures and triggers. It has been used
in production systems, under a variety of names, since 1981.
%files server
%defattr(-,root,root)
%{_sbindir}/fb_lock_print
%{_sbindir}/fbguard
%{_sbindir}/firebird
%{_sbindir}/rcfirebird
%config(noreplace) %{_sysconfdir}/%{name}/databases.conf
%config(noreplace) %{_sysconfdir}/%{name}/fbtrace.conf
%config(noreplace) %{_sysconfdir}/%{name}/plugins.conf
%config(noreplace) %{_sysconfdir}/%{name}/firebird.conf.d/50-server.conf
%if 0%{?suse_version} < 1500 || 0%{?is_opensuse}
%if 0%{?suse_version} >= 1500
%dir %{_sysconfdir}/xinetd.d
%endif
%config(noreplace) %{_sysconfdir}/xinetd.d/%{name}
%else
%{_datadir}/%{name}/misc/firebird.xinetd
%endif
%exclude %{_libdir}/%{name}/plugins/libEngine12.so
%{_libdir}/%{name}/plugins
%{_libdir}/%{name}/udf
%{_libdir}/%{name}/utils
%attr(0600,firebird,firebird) %config(noreplace)
%{_localstatedir}/lib/%{name}/secdb/security3.fdb
%attr(755,root,root) %{_initddir}/firebird
%post server
%restart_on_update %{_initddir}/firebird
%preun server
%stop_on_removal %{_initddir}/firebird
%postun server
%restart_on_update %{_initddir}/firebird
%insserv_cleanup
# ----------------------------------------------------------------------------
%package utils
Summary: Firebird RDBMS management utilities
Group: Productivity/Databases/Servers
Requires: %{name} = %{version}
# split out of firebird after 42.x
Provides: %{name}-superserver:%{_bindir}/gbak
%description utils
This package provides for Firebird RDBMS management.
Firebird is a relational database offering many ANSI SQL standard
features that runs on Linux, Windows, and a variety of Unix platforms.
Firebird offers excellent concurrency, high performance, and powerful
language support for stored procedures and triggers. It has been used
in production systems, under a variety of names, since 1981.
%files utils
%defattr(-,root,root)
%{_bindir}/fbsvcmgr
%{_bindir}/fbtracemgr
%{_bindir}/gbak
%{_bindir}/gfix
%{_bindir}/gpre
%{_bindir}/gsec
%{_bindir}/gsplit
%{_bindir}/gstat-fb
%{_bindir}/isql-fb
%{_bindir}/nbackup
%{_bindir}/qli
# ----------------------------------------------------------------------------
%package -n libfbclient2
Summary: Firebird RDBMS client library
Group: System/Libraries
Requires: %{name} >= 3.0
Requires: libib_util
Provides: libfbembed2_5 = %{version}
Obsoletes: libfbembed2_5 < 3
%description -n libfbclient2
Shared client library for Firebird SQL server. Can be used both to
connect to remote servers and to access local databases in embedded
mode.
Firebird is a relational database offering many ANSI SQL standard
features that runs on Linux, Windows, and a variety of Unix platforms.
Firebird offers excellent concurrency, high performance, and powerful
language support for stored procedures and triggers. It has been used
in production systems, under a variety of names, since 1981.
%files -n libfbclient2
%defattr(-,root,root)
%{_libdir}/libfbclient.so.*
%post -n libfbclient2 -p /sbin/ldconfig
%postun -n libfbclient2
/sbin/ldconfig
# ----------------------------------------------------------------------------
%package -n libfbclient-devel
Summary: Development files for Firebird RDBMS client library
Group: Development/Libraries/C and C++
Requires: %{name} = %{version}
Requires: libfbclient2 = %{version}
Suggests: %{name}-examples
Provides: libfbclient2-devel = %{version}
Obsoletes: libfbclient2-devel < 3
Provides: firebird-devel = %{version}
Obsoletes: firebird-devel < 3
# temporary workaround for LibreOffice build
# once FB3 is in Factory, libreoffice buildrequires will be fixed
# and this can be removed
Provides: libfbembed-devel
%description -n libfbclient-devel
This package is needed for development of client applications accessing
Firebird RDBMS.
Firebird is a relational database offering many ANSI SQL standard
features that runs on Linux, Windows, and a variety of Unix platforms.
Firebird offers excellent concurrency, high performance, and powerful
language support for stored procedures and triggers. It has been used
in production systems, under a variety of names, since 1981.
%files -n libfbclient-devel
%defattr(-,root,root)
%exclude %{_includedir}/%{name}/ib_util.h
%{_includedir}/%{name}
%{_libdir}/libfbclient.so
%{_libdir}/pkgconfig/fbclient.pc
# ----------------------------------------------------------------------------
%package -n libib_util
Summary: Firebird RDBMS UDF support library
Group: System/Libraries
Requires: %{name} = %{version}
%description -n libib_util
Library providing utility functions for Firebird RDBMS user defined
functions (UDF).
Note: this library may be also loaded via dlopen() by Engine12
plugin as it's also needed for embedded connections (as long as UDFs
are used).
Firebird is a relational database offering many ANSI SQL standard
features that runs on Linux, Windows, and a variety of Unix platforms.
Firebird offers excellent concurrency, high performance, and powerful
language support for stored procedures and triggers. It has been used
in production systems, under a variety of names, since 1981.
%files -n libib_util
%defattr(-,root,root)
%{_libdir}/libib_util.so
%post -n libib_util -p /sbin/ldconfig
%postun -n libib_util
/sbin/ldconfig
# ----------------------------------------------------------------------------
%package -n libib_util-devel
Summary: Development files for Firebird RDBMS
Group: Development/Libraries/C and C++
Requires: %{name} = %{version}
Requires: libfbclient2 = %{version}
Requires: libib_util = %{version}
Suggests: %{name}-examples
Provides: firebird-devel:%{_includedir}/firebird/ib_util.h
%description -n libib_util-devel
This package provides header files for libib_util, support library for
user defined functions (UDF) for Firebird RDBMS.
Firebird is a relational database offering many ANSI SQL standard
features that runs on Linux, Windows, and a variety of Unix platforms.
Firebird offers excellent concurrency, high performance, and powerful
language support for stored procedures and triggers. It has been used
in production systems, under a variety of names, since 1981.
%files -n libib_util-devel
%defattr(-,root,root)
%{_includedir}/%{name}/ib_util.h
# ----------------------------------------------------------------------------
%package doc
Summary: Documentation for Firebird RDBMS
Group: Documentation/Other
Requires: %{name} = %{version}
%if 0%{?suse_version} > 1110
BuildArch: noarch
%endif
%description doc
Documentation for Firebird RDBMS.
Firebird is a relational database offering many ANSI SQL standard
features that runs on Linux, Windows, and a variety of Unix platforms.
Firebird offers excellent concurrency, high performance, and powerful
language support for stored procedures and triggers. It has been used
in production systems, under a variety of names, since 1981.
%files doc
%defattr(-,root,root)
%{_docdir}/%{name}
%exclude %{_docdir}/%{name}/sample
%exclude %{_docdir}/%{name}/IDPLicense.txt
%exclude %{_docdir}/%{name}/IPLicense.txt
%exclude %{_docdir}/%{name}/README.SUSE
# ----------------------------------------------------------------------------
%package examples
Summary: Example files for Firebird RDBMS
Group: Documentation/Other
Requires: %{name} = %{version}
%description examples
This package provides an example database and API usage examples for
Firebird RDBMS.
Firebird is a relational database offering many ANSI SQL standard
features that runs on Linux, Windows, and a variety of Unix platforms.
Firebird offers excellent concurrency, high performance, and powerful
language support for stored procedures and triggers. It has been used
in production systems, under a variety of names, since 1981.
%files examples
%defattr(-,root,root)
%{_docdir}/%{name}/sample
%dir %{_localstatedir}/lib/%{name}/sample
%attr(0640,firebird,firebird) %{_localstatedir}/lib/%{name}/sample/*
# ----------------------------------------------------------------------------
%changelog
++++++ 50-server.conf ++++++
# Default value Full of DatabaseAccess directive is not very suitable
# for server installations allowing TCP access; restrict the access
# to a directory where databases are supposed to live
DatabaseAccess = Restrict /srv/firebird
++++++ Provide-sized-global-delete-operators-when-compiled-.patch ++++++
From: Michal Kubecek <[email protected]>
Date: Mon, 25 Apr 2016 08:55:36 +0200
Subject: Provide sized global delete operators when compiled in C++14 mode
Patch-mainline: submitted
Git-commit: 038f9fbf559e56032e4cb49eb7ce4c3ead23fda9
References: bsc#964466 CORE-5099
---
src/common/classes/alloc.h | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/src/common/classes/alloc.h b/src/common/classes/alloc.h
index b1026ce2aac4..fda5bfebb0cc 100644
--- a/src/common/classes/alloc.h
+++ b/src/common/classes/alloc.h
@@ -331,6 +331,16 @@ inline void operator delete[](void* mem,
Firebird::MemoryPool& pool ALLOC_PARAMS
MemoryPool::globalFree(mem);
}
+#if __cplusplus >= 201402L
+inline void operator delete(void* mem, std::size_t s ALLOC_PARAMS) throw()
+{
+ MemoryPool::globalFree(mem);
+}
+inline void operator delete[](void* mem, std::size_t s ALLOC_PARAMS) throw()
+{
+ MemoryPool::globalFree(mem);
+}
+#endif
#ifdef DEBUG_GDS_ALLOC
#ifdef __clang__
--
2.8.2
++++++ README.SUSE ++++++
This file focuses on topics specific to openSUSE / SLE packages. For
generic Firebird introduction, read Firebird 3 Quickstart and Release
Notes documents (both provided in firebird-doc package).
1. Upgrade from version 2.5
---------------------------
Firebird 3 brings some incompatible changes which make fully automated
upgrade of existing 2.5 setups impossible.
First, new database file format (On-disk structure, ODS) is used. To
migrate existing databases, backup them with gbak before the upgrade and
restore after the upgrade.
Second, new authentication scheme is used by default so that old
security databases (with users and passwords) cannot be migrated. You
can either create a new security database from scratch as described in
http://www.firebirdsql.org/file/documentation/release_notes/html/en/3_0/rnfb30-compat-initsec.html
or migrate the old one (without passwords) as described in
http://www.firebirdsql.org/file/documentation/release_notes/html/en/3_0/rnfb30-compat-upgrade-secdb.html
Both sections are also available in firebird-doc package in file
/usr/share/doc/packages/firebird/ReleaseNotes.pdf
Chapter 12 "Compatibility Issues" of release notes also lists other
possible incompatibilities and is worth reading for anyone upgrading
from Firebird 2.5 to 3.0 for the first time.
2. Packaging
------------
Package firebird contains only common files needed both for client and
server installations. The rest is divided into subpackages:
firebird-server - server functionality
libfbclient2 - client library (both remote and embedded)
libib_util - utility functions for UDF
firebird-utils - management utilities
firebird-doc - documentation
libfbclient-devel - devel files for libfbclient2
libib_util-devel - devel files for libib_util
firebird-examples - example database and API examples
Two of Firebird utilities - isql and gstat - have names colliding with
tools from other packages. They have been renamed to isql-fb and
gstat-fb respectively.
Unlike in pre-3.0 versions, Firebird 3 provides one executable which can
handle all three threading modes (Classic, SuperClassic and SuperServer)
depending on ServerMode directive in firebird.conf. The client library
libfbclient2 can now be used both to connect to remote servers and to
access local database files in embedded mode.
By default, the server listens on TCP port 3050 to both IPv4 and IPv6
connections. This can be configured using RemoteBindAddress,
RemoteServicePort and IPv6V6Only directives.
3. Configuration
----------------
Unlike in Firebird 2.5, no default sysdba password is set by default.
Before using Firebird 3.0, one needs to initialize the security database
as described in
http://www.firebirdsql.org/file/documentation/release_notes/html/en/3_0/rnfb30-compat-initsec.html
(or section "Initializing the Security Database" of release notes
provided in /usr/share/doc/packages/firebird/ReleaseNotes.pdf (package
firebird-doc).
Config files are in /etc/firebird. Default config files are mostly the
same as upstream defaults, the only difference is default value of
DatabaseAccess directive. As upstream default "Full" can be considered
a security flaw, SUSE packages use "Restrict /srv/firebird". To use
a database in different location, either modify the DatabaseAccess
directive or define an alias for it in aliases.conf.
4. Starting the server
----------------------
Set the ServerMode directive in firebird.conf to your preferred
operating mode. Then start the server:
- SuperServer or SuperClassic:
* once: /etc/init.d/firebird start
* always: insserv firebird
- Classic:
* in /etc/xinetd.d/firebird, change value of "disable" to "yes"
* check if xinetd is running and reload its configuration or start it
++++++ add-pkgconfig-files.patch ++++++
From: Michal Kubecek <[email protected]>
Date: Tue, 12 Jun 2012 14:32:44 +0200
Subject: add pkgconfig files
---
builds/install/arch-specific/linux/misc/fbclient.pc.in | 10 ++++++++++
configure.ac | 1 +
2 files changed, 11 insertions(+)
create mode 100644 builds/install/arch-specific/linux/misc/fbclient.pc.in
diff --git a/builds/install/arch-specific/linux/misc/fbclient.pc.in
b/builds/install/arch-specific/linux/misc/fbclient.pc.in
new file mode 100644
index 000000000000..d49fdc5821c5
--- /dev/null
+++ b/builds/install/arch-specific/linux/misc/fbclient.pc.in
@@ -0,0 +1,10 @@
+prefix=@prefix@
+exec_prefix=@exec_prefix@
+libdir=@FB_LIBDIR@
+includedir=@FB_INCDIR@
+
+Name: fbclient
+Description: Firebird client library
+Version: @FIREBIRD_VERSION@
+Cflags: -I${includedir}/firebird
+Libs: -L${libdir} -lfbclient
diff --git a/configure.ac b/configure.ac
index 3e65f10d2a34..c7abfa06d468 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1215,6 +1215,7 @@ case "$PLATFORM" in
gen/install/misc/firebird.init.d.gentoo:builds/install/arch-specific/linux/firebird.init.d.gentoo.in
gen/install/misc/firebird.init.d.slackware:builds/install/arch-specific/linux/firebird.init.d.slackware.in
gen/install/misc/rc.config.firebird:builds/install/arch-specific/linux/rc.config.firebird.in
+
gen/install/misc/fbclient.pc:builds/install/arch-specific/linux/misc/fbclient.pc.in
gen/Release/firebird/bin/linuxLibrary.sh:builds/install/arch-specific/linux/linuxLibrary.sh.in
gen/install/misc/[email protected]:builds/install/arch-specific/linux/firebird-classic.service.in
gen/install/misc/firebird-classic.socket:builds/install/arch-specific/linux/firebird-classic.socket.in
--
2.8.1
++++++ baselibs.conf ++++++
libib_util
+/usr/lib(64)?/libib_util.so
libfbclient2
+/usr/lib(64)?/libfbclient.*
++++++ disable-xinetd-service-by-default.patch ++++++
From: Michal Kubecek <[email protected]>
Date: Tue, 12 Jun 2012 14:09:14 +0200
Subject: disable xinetd service by default
In default xinetd service file, disable the service by default.
Also start the server as user firebird, not root.
---
builds/install/arch-specific/linux/firebird.xinetd.in | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/builds/install/arch-specific/linux/firebird.xinetd.in
b/builds/install/arch-specific/linux/firebird.xinetd.in
index 3f3c46819cb0..aca87f8fc19f 100644
--- a/builds/install/arch-specific/linux/firebird.xinetd.in
+++ b/builds/install/arch-specific/linux/firebird.xinetd.in
@@ -7,11 +7,12 @@
service @FB_SERVICE_NAME@
{
- disable = no
+ disable = yes
flags = REUSE
+ protocol = tcp
socket_type = stream
wait = no
- user = root
+ user = firebird
# These lines cause problems with Windows XP SP2 clients
# using default firewall configuration (SF#1065511)
# log_on_success += USERID
--
2.8.1
++++++ fbguard-allow-creating-a-guard-pidfile.patch ++++++
From: Michal Kubecek <[email protected]>
Date: Tue, 8 May 2012 21:13:41 +0200
Subject: fbguard: allow creating a guard pidfile
To better cooperate with killproc, add option -gpidfile to create
a pidfile with fbguard PID.
---
src/utilities/guard/guard.cpp | 26 +++++++++++++++++++++++++-
1 file changed, 25 insertions(+), 1 deletion(-)
diff --git a/src/utilities/guard/guard.cpp b/src/utilities/guard/guard.cpp
index 2727bdf25756..60f9b090241a 100644
--- a/src/utilities/guard/guard.cpp
+++ b/src/utilities/guard/guard.cpp
@@ -91,6 +91,7 @@ int CLIB_ROUTINE main( int argc, char **argv)
bool daemon = false;
const TEXT* prog_name = argv[0];
const TEXT* pidfilename = 0;
+ const TEXT* gpidfilename = 0;
int guard_exit_code = 0;
const TEXT* const* const end = argc + argv;
@@ -116,9 +117,13 @@ int CLIB_ROUTINE main( int argc, char **argv)
case 'P':
pidfilename = *argv++;
break;
+ case 'G':
+ gpidfilename = *argv++;
+ break;
default:
fprintf(stderr,
- "Usage: %s [-signore | -onetime
| -forever (default)] [-daemon] [-pidfile filename]\n",
+ "Usage: %s [-signore | -onetime
| -forever (default)] [-daemon]\n"
+ " [-pidfile filename]
[-gpidfile filename]\n",
prog_name);
exit(-1);
break;
@@ -213,6 +218,22 @@ int CLIB_ROUTINE main( int argc, char **argv)
}
}
+ if (gpidfilename)
+ {
+ FILE *gpf = fopen(gpidfilename, "w");
+ if (gpf)
+ {
+ unsigned guard_pid = getpid();
+ fprintf(gpf, "%d", guard_pid);
+ fclose(gpf);
+ }
+ else
+ {
+ gds__log("%s: guardian could not open %s for
writing, error %d\n",
+ prog_name, gpidfilename,
errno);
+ }
+ }
+
// wait for child to die, and evaluate exit status
bool shutdown_child = true;
if (!shutting_down)
@@ -283,6 +304,9 @@ int CLIB_ROUTINE main( int argc, char **argv)
if (pidfilename) {
remove(pidfilename);
}
+ if (gpidfilename) {
+ remove(gpidfilename);
+ }
UTIL_ex_unlock(fd_guard);
exit(guard_exit_code);
} // main
--
2.8.1
++++++ firebird-clean-tar.sh ++++++
#!/usr/bin/env bash
#
# Remove documentation files from source archives
#
# Copyright (c) Andreas Stieger <[email protected]>
#
# 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.
#
set -ev
FIREBIRD_VERSION=`rpm -q --queryformat "%{version}\n" --specfile firebird.spec
| head -n1`
FIREBIRD_VERSION=${FIREBIRD_VERSION}-0
bzip2 -dkv Firebird-${FIREBIRD_VERSION}.tar.bz2
tar -v --wildcards --delete -f Firebird-${FIREBIRD_VERSION}.tar \
"Firebird-${FIREBIRD_VERSION}/extern/SfIO"
xz -9 -v Firebird-${FIREBIRD_VERSION}.tar
++++++ unicode-handle-new-SUSE-ICU-version-hack.patch ++++++
From: Michal Kubecek <[email protected]>
Date: Wed, 4 Jul 2018 13:36:57 +0200
Subject: unicode: handle new SUSE ICU version hack
Patch-mainline: Never, SUSE specific
References: bsc#1095425
Right after upstream adopted changes allowing compatibility with the way
openSUSE names ICU libraries, openSUSE came with another hack: to
distinguish ICU libraries built with U_CHARSET_IS_UTF8=0 from those built
with upstream default (1), openSUSE packages added "suse" to soname as
the change affects library ABI.
Add "suse%d.%d" to soname patterns tested when searching for ICU libraries.
---
src/common/unicode_util.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
--- a/src/common/unicode_util.cpp
+++ b/src/common/unicode_util.cpp
@@ -343,7 +343,7 @@ static ModuleLoader::Module* formatAndLoad(const char*
templateName,
// ICU has several schemas for placing version into file name
const char* patterns[] =
{
- "%d", "%d_%d", "%d%d", NULL
+ "suse%d.%d", "%d", "%d_%d", "%d%d", NULL
};
PathName s, filename;
++++++ use-C-98-on-SLE11.patch ++++++
From: Michal Kubecek <[email protected]>
Date: Sat, 3 Mar 2018 17:45:37 +0100
Subject: use C++98 on SLE11
Patch-mainline: Never, SLE11 compatibility hack
The gcc version in SLE11 (4.3) doesn't recognize -std=gnu++03 yet. Use
older gnu++98 (C++98 with GNU extensions) instead.
---
builds/posix/prefix.linux | 2 +-
builds/posix/prefix.linux_amd64 | 2 +-
builds/posix/prefix.linux_generic | 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)
--- a/builds/posix/prefix.linux
+++ b/builds/posix/prefix.linux
@@ -19,7 +19,7 @@
# 2 Oct 2002, Nickolay Samofatov - Major cleanup
COMMON_FLAGS=-ggdb -DFB_SEND_FLAGS=MSG_NOSIGNAL -DLINUX -pipe -MMD -fPIC
-fmessage-length=0 -fno-delete-null-pointer-checks
-CXXFLAGS=-std=gnu++03
+CXXFLAGS=-std=gnu++98
OPTIMIZE_FLAGS=-O3 -march=i586 -mtune=i686 -fno-omit-frame-pointer
WARN_FLAGS=-Wall -Wno-switch -Wno-parentheses -Wno-unknown-pragmas
-Wno-unused-variable -Wno-narrowing
--- a/builds/posix/prefix.linux_amd64
+++ b/builds/posix/prefix.linux_amd64
@@ -19,7 +19,7 @@
# 2 Oct 2002, Nickolay Samofatov - Major cleanup
COMMON_FLAGS=-ggdb -DFB_SEND_FLAGS=MSG_NOSIGNAL -DLINUX -DAMD64 -pipe -MMD
-fPIC -fmessage-length=0 -fno-delete-null-pointer-checks
-CXXFLAGS=-std=gnu++03
+CXXFLAGS=-std=gnu++98
OPTIMIZE_FLAGS=-O3 -fno-omit-frame-pointer
WARN_FLAGS=-Wall -Wno-switch -Wno-parentheses -Wno-unknown-pragmas
-Wno-unused-variable -Wno-invalid-offsetof -Wno-narrowing
-Wno-unused-local-typedefs
--- a/builds/posix/prefix.linux_generic
+++ b/builds/posix/prefix.linux_generic
@@ -19,7 +19,7 @@
# 2 Oct 2002, Nickolay Samofatov - Major cleanup
COMMON_FLAGS=-DLINUX -pipe -MMD -fPIC -DFB_SEND_FLAGS=MSG_NOSIGNAL
-fno-delete-null-pointer-checks
-CXXFLAGS=-std=gnu++03
+CXXFLAGS=-std=gnu++98
PROD_FLAGS=-ggdb -O3 $(COMMON_FLAGS)
DEV_FLAGS=-ggdb -p -Wall -Wno-switch $(COMMON_FLAGS) -Wno-non-virtual-dtor
++++++ use-killproc-in-stop-branch-of-SuSE-init-script.patch ++++++
From: Michal Kubecek <[email protected]>
Date: Tue, 12 Jun 2012 14:07:38 +0200
Subject: use killproc in stop branch of SuSE init script
In "stop" branch of SuSE init script, use killproc and fbguard
pidfile.
---
.../arch-specific/linux/firebird.init.d.suse.in | 19 ++++++++-----------
1 file changed, 8 insertions(+), 11 deletions(-)
diff --git a/builds/install/arch-specific/linux/firebird.init.d.suse.in
b/builds/install/arch-specific/linux/firebird.init.d.suse.in
index 5f3e33cd26b8..b5787ebdde09 100644
--- a/builds/install/arch-specific/linux/firebird.init.d.suse.in
+++ b/builds/install/arch-specific/linux/firebird.init.d.suse.in
@@ -43,6 +43,7 @@ test "$START_FIREBIRD" = yes || exit 0
FIREBIRD=@FB_CONFDIR@
FBRunUser=firebird
+FBRunGroup=firebird
INSTANCE=default
makeFbDir() {
@@ -55,14 +56,15 @@ makeFbDir() {
chmod $mode $mDir
fi
fi
- chown $FBRunUser:$FBRunUser $mDir
+ chown $FBRunUser:$FBRunGroup $mDir
}
-runDir=/var/run/firebird
-makeFbDir $runDir
+runDir=@FB_GUARDDIR@
+makeFbDir $runDir 0755
lockDir=/tmp/firebird
makeFbDir $lockDir 0770
pidfile="$runDir/$INSTANCE.pid"
+gpidfile="$runDir/${INSTANCE}-guard.pid"
export FIREBIRD
@@ -116,7 +118,8 @@ case "$1" in
# NOTE: startproc return 0, even if service is
# already running to match LSB spec.
- startproc -u $FBRunUser $FBSBIN/fbguard -pidfile $pidfile -forever
+ startproc -u $FBRunUser $FBSBIN/fbguard -forever \
+ -pidfile "$pidfile" -gpidfile "$gpidfile"
# Remember status and be verbose
rc_status -v
@@ -126,13 +129,7 @@ case "$1" in
## Stop daemon with killproc(8) and if this fails
## set echo the echo return value.
- ## I had to use generic approach here - I can't test on suse. AP.
- if [ -f $pidfile ]
- then
- kill `cat $pidfile`
- sleep 1
- fi
-
+ killproc -p "$gpidfile" ${FBSBIN}/fbguard
# Remember status and be verbose
rc_status -v
--
2.8.1
++++++ work-around-g-problem-in-SLE11.patch ++++++
From: Michal Kubecek <[email protected]>
Date: Wed, 29 Jun 2016 08:42:27 +0200
Subject: work around g++ problem in SLE11
Patch-mainline: Never, workaround for a bug in old g++
SLE11 version of g++ requires full template parameters when referencing
a base class constructor. As Firebird 3 code uses only class name in
several places, patch it to add full base class specification if built
on SLE11 (or anything older than OpenSuSE 11.4).
Another problem is the MAX_TRA_NUMBER constant: old g++ requires it to
be explicitely marked with LL suffix if it exceeds the range of long int.
---
src/common/StatusHolder.h | 4 ++--
src/common/classes/alloc.cpp | 6 +++---
src/include/firebird/Interface.h | 4 ++--
src/jrd/Mapping.cpp | 4 ++--
src/jrd/constants.h | 2 +-
src/jrd/trace/TraceObjects.h | 4 ++--
src/yvalve/YObjects.h | 2 +-
src/yvalve/why.cpp | 19 ++++++++++---------
8 files changed, 23 insertions(+), 22 deletions(-)
--- a/src/common/StatusHolder.h
+++ b/src/common/StatusHolder.h
@@ -141,7 +141,7 @@ class DynamicStatusVector : public
DynamicVector<ISC_STATUS_LENGTH>
{
public:
DynamicStatusVector()
- : DynamicVector(*getDefaultMemoryPool())
+ : DynamicVector<ISC_STATUS_LENGTH>(*getDefaultMemoryPool())
{ }
ISC_STATUS load(const IStatus* status);
@@ -254,7 +254,7 @@ class StatusHolder : public BaseStatus<StatusHolder>
{
public:
StatusHolder()
- : BaseStatus(*getDefaultMemoryPool()), m_raised(false)
+ : BaseStatus<StatusHolder>(*getDefaultMemoryPool()),
m_raised(false)
{ }
ISC_STATUS save(IStatus* status);
--- a/src/common/classes/alloc.cpp
+++ b/src/common/classes/alloc.cpp
@@ -502,7 +502,7 @@ public:
{
MemBlock* rc = new(memory) MemBlock(size);
- MemBaseHunk::newBlock(size);
+ MemBaseHunk<MemSmallHunk>::newBlock(size);
return rc;
}
@@ -537,7 +537,7 @@ private:
public:
MemMediumHunk(MemMediumHunk** top, size_t spaceAllocated)
- : MemBaseHunk(spaceAllocated, hdrSize()),
+ : MemBaseHunk<MemMediumHunk>(spaceAllocated, hdrSize()),
prev(NULL),
useCount(0)
{
@@ -564,7 +564,7 @@ public:
{
MemBlock* rc = new(memory) MemBlock(size, this);
- MemBaseHunk::newBlock(size);
+ MemBaseHunk<MemMediumHunk>::newBlock(size);
incrUsage();
return rc;
--- a/src/include/firebird/Interface.h
+++ b/src/include/firebird/Interface.h
@@ -300,7 +300,7 @@ namespace Firebird
{
public:
CheckStatusWrapper(IStatus* aStatus)
- : BaseStatusWrapper(aStatus)
+ : BaseStatusWrapper<CheckStatusWrapper>(aStatus)
{
}
@@ -314,7 +314,7 @@ namespace Firebird
{
public:
ThrowStatusWrapper(IStatus* aStatus)
- : BaseStatusWrapper(aStatus)
+ : BaseStatusWrapper<ThrowStatusWrapper>(aStatus)
{
}
--- a/src/jrd/Mapping.cpp
+++ b/src/jrd/Mapping.cpp
@@ -909,11 +909,11 @@ class DbHandle : public AutoPtr<IAttachment,
SimpleRelease>
{
public:
DbHandle()
- : AutoPtr()
+ : AutoPtr<IAttachment, SimpleRelease>()
{ }
DbHandle(IAttachment* att)
- : AutoPtr(att)
+ : AutoPtr<IAttachment, SimpleRelease>(att)
{
if (att)
att->addRef();
--- a/src/jrd/constants.h
+++ b/src/jrd/constants.h
@@ -444,7 +444,7 @@ const int DDL_TRIGGER_DROP_MAPPING
= 47;
#define PASSWORD_SWITCH "PASSWORD"
// The highest transaction number possible
-const TraNumber MAX_TRA_NUMBER = 0x0000FFFFFFFFFFFF; // ~2.8 * 10^14
+const TraNumber MAX_TRA_NUMBER = 0x0000FFFFFFFFFFFFLL; // ~2.8 * 10^14
// Number of streams, conjuncts, indices that will be statically allocated
// in various arrays. Larger numbers will have to be allocated dynamically
--- a/src/jrd/trace/TraceObjects.h
+++ b/src/jrd/trace/TraceObjects.h
@@ -147,7 +147,7 @@ class TraceBLRStatementImpl : public
BLRPrinter<TraceBLRStatementImpl>
{
public:
TraceBLRStatementImpl(const jrd_req* stmt, Firebird::PerformanceInfo*
perf) :
- BLRPrinter(stmt->getStatement()->blr.begin(),
stmt->getStatement()->blr.getCount()),
+
BLRPrinter<TraceBLRStatementImpl>(stmt->getStatement()->blr.begin(),
stmt->getStatement()->blr.getCount()),
m_stmt(stmt),
m_perf(perf)
{}
@@ -165,7 +165,7 @@ class TraceFailedBLRStatement : public
BLRPrinter<TraceFailedBLRStatement>
{
public:
TraceFailedBLRStatement(const unsigned char* blr, unsigned length) :
- BLRPrinter(blr, length)
+ BLRPrinter<TraceFailedBLRStatement>(blr, length)
{}
ISC_INT64 getStmtID() { return 0; }
--- a/src/yvalve/YObjects.h
+++ b/src/yvalve/YObjects.h
@@ -286,7 +286,7 @@ public:
private:
YTransaction(YTransaction* from)
- : YHelper(from->next),
+ : YHelper<YTransaction,
Firebird::ITransactionImpl<YTransaction, Firebird::CheckStatusWrapper>
>(from->next),
attachment(from->attachment.get()),
childBlobs(getPool()),
childCursors(getPool()),
--- a/src/yvalve/why.cpp
+++ b/src/yvalve/why.cpp
@@ -3751,7 +3751,8 @@ YHelper<Impl, Intf>::YHelper(NextInterface* aNext)
YEvents::YEvents(YAttachment* aAttachment, IEvents* aNext, IEventCallback*
aCallback)
- : YHelper(aNext), attachment(aAttachment), callback(aCallback)
+ : YHelper<YEvents, Firebird::IEventsImpl<YEvents,
Firebird::CheckStatusWrapper> >(aNext),
+ attachment(aAttachment), callback(aCallback)
{
aAttachment->childEvents.add(this);
}
@@ -3809,7 +3810,7 @@ void YEvents::cancel(CheckStatusWrapper* status)
YRequest::YRequest(YAttachment* aAttachment, IRequest* aNext)
- : YHelper(aNext),
+ : YHelper<YRequest, Firebird::IRequestImpl<YRequest,
Firebird::CheckStatusWrapper> >(aNext),
attachment(aAttachment),
userHandle(NULL)
{
@@ -3950,7 +3951,7 @@ void YRequest::free(CheckStatusWrapper* status)
YBlob::YBlob(YAttachment* aAttachment, YTransaction* aTransaction, IBlob*
aNext)
- : YHelper(aNext),
+ : YHelper<YBlob, Firebird::IBlobImpl<YBlob,
Firebird::CheckStatusWrapper> >(aNext),
attachment(aAttachment),
transaction(aTransaction)
{
@@ -4076,7 +4077,7 @@ int YBlob::seek(CheckStatusWrapper* status, int mode, int
offset)
YStatement::YStatement(YAttachment* aAttachment, IStatement* aNext)
- : YHelper(aNext),
+ : YHelper<YStatement, Firebird::IStatementImpl<YStatement,
Firebird::CheckStatusWrapper> >(aNext),
attachment(aAttachment), cursor(NULL), input(true), output(false)
{
attachment.get()->childStatements.add(this);
@@ -4464,7 +4465,7 @@ FB_BOOLEAN IscStatement::fetch(CheckStatusWrapper*
status, IMessageMetadata* out
YResultSet::YResultSet(YAttachment* anAttachment, YTransaction* aTransaction,
IResultSet* aNext)
- : YHelper(aNext),
+ : YHelper<YResultSet, Firebird::IResultSetImpl<YResultSet,
Firebird::CheckStatusWrapper> >(aNext),
attachment(anAttachment),
transaction(aTransaction),
statement(NULL)
@@ -4475,7 +4476,7 @@ YResultSet::YResultSet(YAttachment* anAttachment,
YTransaction* aTransaction, IR
YResultSet::YResultSet(YAttachment* anAttachment, YTransaction* aTransaction,
YStatement* aStatement, IResultSet* aNext)
- : YHelper(aNext),
+ : YHelper<YResultSet, Firebird::IResultSetImpl<YResultSet,
Firebird::CheckStatusWrapper> >(aNext),
attachment(anAttachment),
transaction(aTransaction),
statement(aStatement)
@@ -4701,7 +4702,7 @@ void YResultSet::close(CheckStatusWrapper* status)
YTransaction::YTransaction(YAttachment* aAttachment, ITransaction* aNext)
- : YHelper(aNext),
+ : YHelper<YTransaction, Firebird::ITransactionImpl<YTransaction,
Firebird::CheckStatusWrapper> >(aNext),
attachment(aAttachment),
childBlobs(getPool()),
childCursors(getPool()),
@@ -4966,7 +4967,7 @@ YTransaction* YTransaction::enterDtc(CheckStatusWrapper*
status)
YAttachment::YAttachment(IProvider* aProvider, IAttachment* aNext, const
PathName& aDbPath)
- : YHelper(aNext),
+ : YHelper<YAttachment, Firebird::IAttachmentImpl<YAttachment,
Firebird::CheckStatusWrapper> >(aNext),
provider(aProvider),
dbPath(getPool(), aDbPath),
childBlobs(getPool()),
@@ -5543,7 +5544,7 @@ void YAttachment::getNextTransaction(CheckStatusWrapper*
status, ITransaction* t
YService::YService(IProvider* aProvider, IService* aNext, bool utf8)
- : YHelper(aNext),
+ : YHelper<YService, Firebird::IServiceImpl<YService,
Firebird::CheckStatusWrapper> >(aNext),
provider(aProvider),
utf8Connection(utf8)
{
_______________________________________________
openSUSE Commits mailing list -- [email protected]
To unsubscribe, email [email protected]
List Netiquette: https://en.opensuse.org/openSUSE:Mailing_list_netiquette
List Archives:
https://lists.opensuse.org/archives/list/[email protected]