af32fff
b767ad9
%global pkgname   dirsrv
0322ebf
%global srcname   389-ds-base
482fad4
0852ce9
# Exclude i686 bit arches
0852ce9
ExcludeArch: i686 
482fad4
fd7f020
# for a pre-release, define the prerel field e.g. .a1 .rc2 - comment out for official release
5fd2662
# also remove the space between % and global - this space is needed because
5fd2662
# fedpkg verrel stupidly ignores comment lines
196b017
#% global prerel .rc3
fd7f020
# also need the relprefix field for a pre-release e.g. .0 - also comment out for official release
196b017
#% global relprefix 0.
088940d
Noriko Hosoi d970bf2
# If perl-Socket-2.000 or newer is available, set 0 to use_Socket6.
Noriko Hosoi d970bf2
%global use_Socket6 0
58a8b17
09fb13d
%global use_asan 0
a5985f5
%global use_rust 1
c458a61
%global bundle_jemalloc 1
09fb13d
%if %{use_asan}
34cc859
%global bundle_jemalloc 0
58a8b17
%endif
c458a61
c458a61
%if %{bundle_jemalloc}
c458a61
%global jemalloc_name jemalloc
6f9c53b
%global jemalloc_ver 5.2.1
a108692
%global __provides_exclude ^libjemalloc\\.so.*$
09fb13d
%endif
af32fff
2c0caed
# Use Clang instead of GCC
2c0caed
%global use_clang 0
2c0caed
75facac
# Build cockpit plugin
75facac
%global use_cockpit 1
75facac
df3a6cc
# fedora 15 and later uses tmpfiles.d
df3a6cc
# otherwise, comment this out
df3a6cc
%{!?with_tmpfiles_d: %global with_tmpfiles_d %{_sysconfdir}/tmpfiles.d}
df3a6cc
96d52cc
# systemd support
96d52cc
%global groupname %{pkgname}.target
96d52cc
f5b17ab
# set PIE flag
f5b17ab
%global _hardened_build 1
f5b17ab
7466cff
# Filter argparse-manpage from autogenerated package Requires
7466cff
%global __requires_exclude ^python.*argparse-manpage
7466cff
af32fff
Summary:          389 Directory Server (base)
af32fff
Name:             389-ds-base
7466cff
Version:          2.0.7
1feedc3
Release:          %{?relprefix}1%{?prerel}%{?dist}.1
cf285c2
License:          GPLv3+ and MIT and (ASL 2.0 or MIT) and (ASL 2.0 or Boost) and MPLv2.0 and ASL 2.0 and BSD and (ASL 2.0 with exceptions or ASL 2.0 or MIT) and (Unlicense or MIT)
a1ed3b7
URL:              https://www.port389.org
Nathan Kinder a2c95ac
Conflicts:        selinux-policy-base < 3.9.8
29e8ae0
Conflicts:        freeipa-server < 4.0.3
c458a61
Obsoletes:        %{name} <= 1.4.0.9
1aab708
Obsoletes:        %{name}-legacy-tools < 1.4.4.6
1aab708
Obsoletes:        %{name}-legacy-tools-debuginfo < 1.4.4.6
0322ebf
Provides:         ldif2ldbm >= 0
af32fff
Simon Pichugin a04e9ff
##### Bundled cargo crates list - START #####
Simon Pichugin a04e9ff
Provides:  bundled(crate(ahash)) = 0.7.2
Simon Pichugin a04e9ff
Provides:  bundled(crate(ansi_term)) = 0.11.0
Simon Pichugin a04e9ff
Provides:  bundled(crate(atty)) = 0.2.14
Simon Pichugin a04e9ff
Provides:  bundled(crate(autocfg)) = 1.0.1
Simon Pichugin a04e9ff
Provides:  bundled(crate(base64)) = 0.13.0
Simon Pichugin a04e9ff
Provides:  bundled(crate(bitflags)) = 1.2.1
Simon Pichugin a04e9ff
Provides:  bundled(crate(byteorder)) = 1.4.3
Simon Pichugin a04e9ff
Provides:  bundled(crate(cbindgen)) = 0.9.1
Simon Pichugin a04e9ff
Provides:  bundled(crate(cc)) = 1.0.67
Simon Pichugin a04e9ff
Provides:  bundled(crate(cfg-if)) = 1.0.0
Simon Pichugin a04e9ff
Provides:  bundled(crate(clap)) = 2.33.3
831791b
Provides:  bundled(crate(concread)) = 0.2.9
Simon Pichugin a04e9ff
Provides:  bundled(crate(crossbeam)) = 0.8.0
831791b
Provides:  bundled(crate(crossbeam-channel)) = 0.5.1
Simon Pichugin a04e9ff
Provides:  bundled(crate(crossbeam-deque)) = 0.8.0
b8d7d0e
Provides:  bundled(crate(crossbeam-epoch)) = 0.9.3
Simon Pichugin a04e9ff
Provides:  bundled(crate(crossbeam-queue)) = 0.3.1
b8d7d0e
Provides:  bundled(crate(crossbeam-utils)) = 0.8.3
Simon Pichugin a04e9ff
Provides:  bundled(crate(entryuuid)) = 0.1.0
Simon Pichugin a04e9ff
Provides:  bundled(crate(entryuuid_syntax)) = 0.1.0
831791b
Provides:  bundled(crate(fernet)) = 0.1.4
Simon Pichugin a04e9ff
Provides:  bundled(crate(foreign-types)) = 0.3.2
Simon Pichugin a04e9ff
Provides:  bundled(crate(foreign-types-shared)) = 0.1.1
Simon Pichugin a04e9ff
Provides:  bundled(crate(getrandom)) = 0.2.2
Simon Pichugin a04e9ff
Provides:  bundled(crate(hermit-abi)) = 0.1.18
Simon Pichugin a04e9ff
Provides:  bundled(crate(instant)) = 0.1.9
Simon Pichugin a04e9ff
Provides:  bundled(crate(itoa)) = 0.4.7
b8d7d0e
Provides:  bundled(crate(jobserver)) = 0.1.21
Simon Pichugin a04e9ff
Provides:  bundled(crate(lazy_static)) = 1.4.0
831791b
Provides:  bundled(crate(libc)) = 0.2.93
Simon Pichugin a04e9ff
Provides:  bundled(crate(librnsslapd)) = 0.1.0
Simon Pichugin a04e9ff
Provides:  bundled(crate(librslapd)) = 0.1.0
831791b
Provides:  bundled(crate(lock_api)) = 0.4.3
Simon Pichugin a04e9ff
Provides:  bundled(crate(log)) = 0.4.14
831791b
Provides:  bundled(crate(memoffset)) = 0.6.3
Simon Pichugin a04e9ff
Provides:  bundled(crate(once_cell)) = 1.7.2
b8d7d0e
Provides:  bundled(crate(openssl)) = 0.10.33
b8d7d0e
Provides:  bundled(crate(openssl-sys)) = 0.9.61
Simon Pichugin a04e9ff
Provides:  bundled(crate(parking_lot)) = 0.11.1
Simon Pichugin a04e9ff
Provides:  bundled(crate(parking_lot_core)) = 0.8.3
Simon Pichugin a04e9ff
Provides:  bundled(crate(paste)) = 0.1.18
Simon Pichugin a04e9ff
Provides:  bundled(crate(paste-impl)) = 0.1.18
Simon Pichugin a04e9ff
Provides:  bundled(crate(pkg-config)) = 0.3.19
Simon Pichugin a04e9ff
Provides:  bundled(crate(ppv-lite86)) = 0.2.10
Simon Pichugin a04e9ff
Provides:  bundled(crate(proc-macro-hack)) = 0.5.19
831791b
Provides:  bundled(crate(proc-macro2)) = 1.0.26
Simon Pichugin a04e9ff
Provides:  bundled(crate(pwdchan)) = 0.1.0
Simon Pichugin a04e9ff
Provides:  bundled(crate(quote)) = 1.0.9
Simon Pichugin a04e9ff
Provides:  bundled(crate(rand)) = 0.8.3
Simon Pichugin a04e9ff
Provides:  bundled(crate(rand_chacha)) = 0.3.0
Simon Pichugin a04e9ff
Provides:  bundled(crate(rand_core)) = 0.6.2
Simon Pichugin a04e9ff
Provides:  bundled(crate(rand_hc)) = 0.3.0
831791b
Provides:  bundled(crate(redox_syscall)) = 0.2.6
Simon Pichugin a04e9ff
Provides:  bundled(crate(remove_dir_all)) = 0.5.3
Simon Pichugin a04e9ff
Provides:  bundled(crate(ryu)) = 1.0.5
Simon Pichugin a04e9ff
Provides:  bundled(crate(scopeguard)) = 1.1.0
831791b
Provides:  bundled(crate(serde)) = 1.0.125
831791b
Provides:  bundled(crate(serde_derive)) = 1.0.125
Simon Pichugin a04e9ff
Provides:  bundled(crate(serde_json)) = 1.0.64
Simon Pichugin a04e9ff
Provides:  bundled(crate(slapd)) = 0.1.0
Simon Pichugin a04e9ff
Provides:  bundled(crate(slapi_r_plugin)) = 0.1.0
Simon Pichugin a04e9ff
Provides:  bundled(crate(smallvec)) = 1.6.1
Simon Pichugin a04e9ff
Provides:  bundled(crate(strsim)) = 0.8.0
831791b
Provides:  bundled(crate(syn)) = 1.0.69
831791b
Provides:  bundled(crate(synstructure)) = 0.12.4
Simon Pichugin a04e9ff
Provides:  bundled(crate(tempfile)) = 3.2.0
Simon Pichugin a04e9ff
Provides:  bundled(crate(textwrap)) = 0.11.0
Simon Pichugin a04e9ff
Provides:  bundled(crate(toml)) = 0.5.8
Simon Pichugin a04e9ff
Provides:  bundled(crate(unicode-width)) = 0.1.8
b8d7d0e
Provides:  bundled(crate(unicode-xid)) = 0.2.1
Simon Pichugin a04e9ff
Provides:  bundled(crate(uuid)) = 0.8.2
b8d7d0e
Provides:  bundled(crate(vcpkg)) = 0.2.11
Simon Pichugin a04e9ff
Provides:  bundled(crate(vec_map)) = 0.8.2
Simon Pichugin a04e9ff
Provides:  bundled(crate(version_check)) = 0.9.3
Simon Pichugin a04e9ff
Provides:  bundled(crate(wasi)) = 0.10.2+wasi_snapshot_preview1
Simon Pichugin a04e9ff
Provides:  bundled(crate(winapi)) = 0.3.9
Simon Pichugin a04e9ff
Provides:  bundled(crate(winapi-i686-pc-windows-gnu)) = 0.4.0
Simon Pichugin a04e9ff
Provides:  bundled(crate(winapi-x86_64-pc-windows-gnu)) = 0.4.0
831791b
Provides:  bundled(crate(zeroize)) = 1.2.0
831791b
Provides:  bundled(crate(zeroize_derive)) = 1.0.1
Simon Pichugin a04e9ff
##### Bundled cargo crates list - END #####
Simon Pichugin a04e9ff
af32fff
BuildRequires:    nspr-devel
a7312c5
BuildRequires:    nss-devel >= 3.34
a0ed453
BuildRequires:    openldap-devel
Noriko Hosoi 61d1908
BuildRequires:    libdb-devel
af32fff
BuildRequires:    cyrus-sasl-devel
af32fff
BuildRequires:    icu
af32fff
BuildRequires:    libicu-devel
9d46490
BuildRequires:    pcre-devel
a108692
BuildRequires:    cracklib-devel
2c0caed
%if %{use_clang}
482fad4
BuildRequires:    libatomic
2c0caed
BuildRequires:    clang
2c0caed
%else
a7312c5
BuildRequires:    gcc
Noriko Hosoi d970bf2
BuildRequires:    gcc-c++
2c0caed
%endif
af32fff
# The following are needed to build the snmp ldap-agent
af32fff
BuildRequires:    net-snmp-devel
af32fff
BuildRequires:    lm_sensors-devel
af32fff
BuildRequires:    bzip2-devel
af32fff
BuildRequires:    zlib-devel
af32fff
BuildRequires:    openssl-devel
af32fff
# the following is for the pam passthru auth plug-in
af32fff
BuildRequires:    pam-devel
96d52cc
BuildRequires:    systemd-units
16ea67f
BuildRequires:    systemd-devel
a7312c5
%if %{use_asan}
a7312c5
BuildRequires:    libasan
a7312c5
%endif
a7312c5
# If rust is enabled
a7312c5
%if %{use_rust}
a7312c5
BuildRequires: cargo
a7312c5
BuildRequires: rust
a7312c5
%endif
a880a76
BuildRequires:    pkgconfig
a880a76
BuildRequires:    pkgconfig(systemd)
c086e06
BuildRequires:    pkgconfig(krb5)
a880a76
ac1f6b4
# Needed to support regeneration of the autotool artifacts.
ac1f6b4
BuildRequires:    autoconf
ac1f6b4
BuildRequires:    automake
ac1f6b4
BuildRequires:    libtool
0322ebf
# For our documentation
0322ebf
BuildRequires:    doxygen
0322ebf
# For tests!
0322ebf
BuildRequires:    libcmocka-devel
0322ebf
BuildRequires:    libevent-devel
e77ad85
# For lib389 and related components
4e7c5c2
BuildRequires:    python%{python3_pkgversion}-devel
4e7c5c2
BuildRequires:    python%{python3_pkgversion}-setuptools
e77ad85
BuildRequires:    python%{python3_pkgversion}-ldap
e77ad85
BuildRequires:    python%{python3_pkgversion}-six
e77ad85
BuildRequires:    python%{python3_pkgversion}-pyasn1
e77ad85
BuildRequires:    python%{python3_pkgversion}-pyasn1-modules
e77ad85
BuildRequires:    python%{python3_pkgversion}-dateutil
e77ad85
BuildRequires:    python%{python3_pkgversion}-argcomplete
e77ad85
BuildRequires:    python%{python3_pkgversion}-argparse-manpage
a85ad4c
BuildRequires:    python%{python3_pkgversion}-libselinux
a85ad4c
BuildRequires:    python%{python3_pkgversion}-policycoreutils
e77ad85
c458a61
# For cockpit
75facac
%if %{use_cockpit}
c458a61
BuildRequires:    rsync
75facac
%endif
0322ebf
38eed59
Requires:         %{name}-libs = %{version}-%{release}
38eed59
Requires:         python%{python3_pkgversion}-lib389 = %{version}-%{release}
38eed59
83e7c49
# this is needed for using semanage from our setup scripts
cd23285
Requires:         policycoreutils-python-utils
2db9b3e
Requires:         /usr/sbin/semanage
7a4f749
Requires:         libsemanage-python%{python3_pkgversion}
83e7c49
c458a61
Requires:         selinux-policy >= 3.14.1-29
839f3f3
af32fff
# the following are needed for some of our scripts
a0ed453
Requires:         openldap-clients
Matus Honek 5b3e513
Requires:         /usr/bin/c_rehash
7a4f749
Requires:         python%{python3_pkgversion}-ldap
17bfc6a
af32fff
# this is needed to setup SSL if you are not using the
af32fff
# administration server package
af32fff
Requires:         nss-tools
e77ad85
Requires:         nss >= 3.34
af32fff
af32fff
# these are not found by the auto-dependency method
af32fff
# they are required to support the mandatory LDAP SASL mechs
af32fff
Requires:         cyrus-sasl-gssapi
af32fff
Requires:         cyrus-sasl-md5
0118736
Requires:         cyrus-sasl-plain
af32fff
af32fff
# this is needed for verify-db.pl
Noriko Hosoi 61d1908
Requires:         libdb-utils
af32fff
c086e06
# Needed for password dictionary checks
c086e06
Requires:         cracklib-dicts
c086e06
c458a61
# Needed by logconv.pl
c458a61
Requires:         perl-DB_File
c458a61
Requires:         perl-Archive-Tar
af32fff
c458a61
# Picks up our systemd deps.
c458a61
%{?systemd_requires}
Noriko Hosoi 12a64b8
36aef54
Obsoletes:        %{name} <= 1.3.5.4
a7312c5
7028097
Source0:          https://releases.pagure.org/389-ds-base/%{name}-%{version}%{?prerel}.tar.bz2
af32fff
# 389-ds-git.sh should be used to generate the source tarball from git
af32fff
Source1:          %{name}-git.sh
af32fff
Source2:          %{name}-devel.README
c458a61
%if %{bundle_jemalloc}
c458a61
Source3:          https://github.com/jemalloc/%{jemalloc_name}/releases/download/%{jemalloc_ver}/%{jemalloc_name}-%{jemalloc_ver}.tar.bz2
c458a61
%endif
af32fff
af32fff
%description
af32fff
389 Directory Server is an LDAPv3 compliant server.  The base package includes
af32fff
the LDAP server and command line utilities for server administration.
a7312c5
%if %{use_asan}
a7312c5
WARNING! This build is linked to Address Sanitisation libraries. This probably
a7312c5
isn't what you want. Please contact support immediately.
a7312c5
Please see http://seclists.org/oss-sec/2016/q1/363 for more information.
a7312c5
%endif
af32fff
5142ec0
%package          libs
5142ec0
Summary:          Core libraries for 389 Directory Server
5142ec0
BuildRequires:    nspr-devel
482fad4
BuildRequires:    nss-devel >= 3.34
5142ec0
BuildRequires:    openldap-devel
Noriko Hosoi 61d1908
BuildRequires:    libdb-devel
5142ec0
BuildRequires:    cyrus-sasl-devel
5142ec0
BuildRequires:    libicu-devel
5142ec0
BuildRequires:    pcre-devel
d02e06a
BuildRequires:    libtalloc-devel
d02e06a
BuildRequires:    libevent-devel
d02e06a
BuildRequires:    libtevent-devel
c458a61
Requires:         krb5-libs
0322ebf
Requires:         libevent
16ea67f
BuildRequires:    systemd-devel
a5985f5
BuildRequires:    make
a880a76
Provides:         svrcore = 4.1.4
a880a76
Conflicts:        svrcore
a880a76
Obsoletes:        svrcore <= 4.1.3
5142ec0
5142ec0
%description      libs
5142ec0
Core libraries for the 389 Directory Server base package.  These libraries
5142ec0
are used by the main package and the -devel package.  This allows the -devel
5142ec0
package to be installed with just the -libs package and without the main package.
5142ec0
af32fff
%package          devel
af32fff
Summary:          Development libraries for 389 Directory Server
5142ec0
Requires:         %{name}-libs = %{version}-%{release}
Nathan Kinder 50e6b48
Requires:         pkgconfig
5142ec0
Requires:         nspr-devel
a7312c5
Requires:         nss-devel >= 3.34
a0ed453
Requires:         openldap-devel
d02e06a
Requires:         libtalloc
d02e06a
Requires:         libevent
d02e06a
Requires:         libtevent
16ea67f
Requires:         systemd-libs
94780b6
Provides:         svrcore-devel = 4.1.4
94780b6
Conflicts:        svrcore-devel
94780b6
Obsoletes:        svrcore-devel <= 4.1.3
af32fff
af32fff
%description      devel
af32fff
Development Libraries and headers for the 389 Directory Server base package.
af32fff
d10e9af
%package          snmp
d10e9af
Summary:          SNMP Agent for 389 Directory Server
d10e9af
Requires:         %{name} = %{version}-%{release}
d10e9af
f536eab
Obsoletes:        %{name} <= 1.4.0.0
d10e9af
36aef54
%description      snmp
36aef54
SNMP Agent for the 389 Directory Server base package.
36aef54
09fb13d
%package -n python%{python3_pkgversion}-lib389
09fb13d
Summary:  A library for accessing, testing, and configuring the 389 Directory Server
09fb13d
BuildArch:        noarch
09fb13d
Requires: openssl
09fb13d
Requires: iproute
a253fc7
Recommends: bash-completion
762e206
Requires: python%{python3_pkgversion}
903ed99
Requires: python%{python3_pkgversion}-distro
d2303c9
Requires: python%{python3_pkgversion}-ldap
09fb13d
Requires: python%{python3_pkgversion}-six
09fb13d
Requires: python%{python3_pkgversion}-pyasn1
09fb13d
Requires: python%{python3_pkgversion}-pyasn1-modules
09fb13d
Requires: python%{python3_pkgversion}-dateutil
e77ad85
Requires: python%{python3_pkgversion}-argcomplete
a85ad4c
Requires: python%{python3_pkgversion}-libselinux
7d09a11
Requires: python%{python3_pkgversion}-setuptools
09fb13d
%{?python_provide:%python_provide python%{python3_pkgversion}-lib389}
e77ad85
09fb13d
%description -n python%{python3_pkgversion}-lib389
09fb13d
This module contains tools and libraries for accessing, testing,
09fb13d
 and configuring the 389 Directory Server.
09fb13d
75facac
%if %{use_cockpit}
c458a61
%package -n cockpit-389-ds
c458a61
Summary:          Cockpit UI Plugin for configuring and administering the 389 Directory Server
c458a61
BuildArch:        noarch
a0a8d33
Requires:         cockpit
a0a8d33
Requires:         389-ds-base
c458a61
Requires:         python%{python3_pkgversion}
c458a61
Requires:         python%{python3_pkgversion}-lib389
c458a61
c458a61
%description -n cockpit-389-ds
c458a61
A cockpit UI Plugin for configuring and administering the 389 Directory Server
75facac
%endif
c458a61
af32fff
%prep
cbe8697
%autosetup -p1 -v -n %{name}-%{version}%{?prerel}
c458a61
c458a61
%if %{bundle_jemalloc}
c458a61
%setup -q -n %{name}-%{version}%{?prerel} -T -D -b 3
c458a61
%endif
c458a61
af32fff
cp %{SOURCE2} README.devel
af32fff
af32fff
%build
d02e06a
a0ed453
OPENLDAP_FLAG="--with-openldap"
df3a6cc
%{?with_tmpfiles_d: TMPFILES_FLAG="--with-tmpfiles-d=%{with_tmpfiles_d}"}
9a4ab77
# hack hack hack https://bugzilla.redhat.com/show_bug.cgi?id=833529
a880a76
NSSARGS="--with-nss-lib=%{_libdir} --with-nss-inc=%{_includedir}/nss3"
3ca61b7
09fb13d
%if %{use_asan}
09fb13d
ASAN_FLAGS="--enable-asan --enable-debug"
09fb13d
%endif
09fb13d
a7312c5
%if %{use_rust}
a5985f5
RUST_FLAGS="--enable-rust --enable-rust-offline"
a7312c5
%endif
a7312c5
75facac
%if !%{use_cockpit}
75facac
COCKPIT_FLAGS="--disable-cockpit"
75facac
%endif 
75facac
482fad4
%if %{use_clang}
482fad4
export CC=clang
482fad4
export CXX=clang++
482fad4
CLANG_FLAGS="--enable-clang"
482fad4
%endif
482fad4
c458a61
%if %{bundle_jemalloc}
bfdd824
# Override page size, bz #1545539
bfdd824
# 4K
bfdd824
%ifarch %ix86 %arm x86_64 s390x
bfdd824
%define lg_page --with-lg-page=12
bfdd824
%endif
bfdd824
bfdd824
# 64K
bfdd824
%ifarch ppc64 ppc64le aarch64
bfdd824
%define lg_page --with-lg-page=16
bfdd824
%endif
bfdd824
bfdd824
# Override huge page size on aarch64
bfdd824
# 2M instead of 512M
bfdd824
%ifarch aarch64
bfdd824
%define lg_hugepage --with-lg-hugepage=21
bfdd824
%endif
bfdd824
c458a61
# Build jemalloc
c458a61
pushd ../%{jemalloc_name}-%{jemalloc_ver}
c458a61
%configure \
c458a61
        --libdir=%{_libdir}/%{pkgname}/lib \
bfdd824
        --bindir=%{_libdir}/%{pkgname}/bin \
bfdd824
        --enable-prof
bfdd824
make %{?_smp_mflags}
c458a61
popd
c458a61
%endif
c458a61
a880a76
# Enforce strict linking
5a57533
%define _ld_strict_symbol_defs 1
a880a76
ac1f6b4
# Rebuild the autotool artifacts now.
ac1f6b4
autoreconf -fiv
ac1f6b4
c086e06
%configure --enable-autobind --with-selinux $TMPFILES_FLAG \
c458a61
           --with-systemd \
96d52cc
           --with-systemdsystemunitdir=%{_unitdir} \
96d52cc
           --with-systemdsystemconfdir=%{_sysconfdir}/systemd/system \
c458a61
           --with-systemdgroupname=%{groupname}  \
c458a61
           --libexecdir=%{_libexecdir}/%{pkgname} \
1aab708
           $NSSARGS $ASAN_FLAGS $RUST_FLAGS $CLANG_FLAGS $COCKPIT_FLAGS \
9a0edfc
           --enable-cmocka \
9a0edfc
           --enable-perl
9a0edfc
af32fff
09fb13d
# lib389
09fb13d
pushd ./src/lib389
0322ebf
%py3_build
09fb13d
popd
a108692
# argparse-manpage dynamic man pages have hardcoded man v1 in header,
a108692
# need to change it to v8
a108692
sed -i  "1s/\"1\"/\"8\"/" %{_builddir}/%{name}-%{version}%{?prerel}/src/lib389/man/dsconf.8
a108692
sed -i  "1s/\"1\"/\"8\"/" %{_builddir}/%{name}-%{version}%{?prerel}/src/lib389/man/dsctl.8
a108692
sed -i  "1s/\"1\"/\"8\"/" %{_builddir}/%{name}-%{version}%{?prerel}/src/lib389/man/dsidm.8
a108692
sed -i  "1s/\"1\"/\"8\"/" %{_builddir}/%{name}-%{version}%{?prerel}/src/lib389/man/dscreate.8
09fb13d
09fb13d
# Generate symbolic info for debuggers
09fb13d
export XCFLAGS=$RPM_OPT_FLAGS
09fb13d
a880a76
#make %{?_smp_mflags}
a880a76
make
088940d
af32fff
%install
d02e06a
ca673ec
mkdir -p %{buildroot}%{_datadir}/gdb/auto-load%{_sbindir}
75facac
%if %{use_cockpit}
c458a61
mkdir -p %{buildroot}%{_datadir}/cockpit
75facac
%endif
c458a61
make DESTDIR="$RPM_BUILD_ROOT" install
c458a61
75facac
%if %{use_cockpit}
c458a61
find %{buildroot}%{_datadir}/cockpit/389-console -type d | sed -e "s@%{buildroot}@@" | sed -e 's/^/\%dir /' > cockpit.list
c458a61
find %{buildroot}%{_datadir}/cockpit/389-console -type f | sed -e "s@%{buildroot}@@" >> cockpit.list
75facac
%endif
af32fff
0322ebf
# Copy in our docs from doxygen.
0322ebf
cp -r %{_builddir}/%{name}-%{version}%{?prerel}/man/man3 $RPM_BUILD_ROOT/%{_mandir}/man3
0322ebf
09fb13d
# lib389
09fb13d
pushd src/lib389
09fb13d
%py3_install
09fb13d
popd
09fb13d
af32fff
mkdir -p $RPM_BUILD_ROOT/var/log/%{pkgname}
af32fff
mkdir -p $RPM_BUILD_ROOT/var/lib/%{pkgname}
af32fff
mkdir -p $RPM_BUILD_ROOT/var/lock/%{pkgname}
af32fff
96d52cc
# for systemd
96d52cc
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/systemd/system/%{groupname}.wants
96d52cc
1aab708
# remove libtool archives and static libs
1aab708
rm -f $RPM_BUILD_ROOT%{_libdir}/%{pkgname}/*.a
1aab708
rm -f $RPM_BUILD_ROOT%{_libdir}/%{pkgname}/*.la
1aab708
rm -f $RPM_BUILD_ROOT%{_libdir}/%{pkgname}/plugins/*.a
1aab708
rm -f $RPM_BUILD_ROOT%{_libdir}/%{pkgname}/plugins/*.la
1aab708
rm -f $RPM_BUILD_ROOT%{_libdir}/libsvrcore.a
1aab708
rm -f $RPM_BUILD_ROOT%{_libdir}/libsvrcore.la
a7312c5
c458a61
%if %{bundle_jemalloc}
c458a61
pushd ../%{jemalloc_name}-%{jemalloc_ver}
c458a61
make DESTDIR="$RPM_BUILD_ROOT" install_lib install_bin
c458a61
cp -pa COPYING ../%{name}-%{version}%{?prerel}/COPYING.jemalloc
c458a61
cp -pa README ../%{name}-%{version}%{?prerel}/README.jemalloc
c458a61
popd
c458a61
%endif
c458a61
c458a61
%check
a7312c5
# This checks the code, if it fails it prints why, then re-raises the fail to shortcircuit the rpm build.
c458a61
if ! make DESTDIR="$RPM_BUILD_ROOT" check; then cat ./test-suite.log && false; fi
c458a61
31909e6
%post
c458a61
if [ -n "$DEBUGPOSTTRANS" ] ; then
c458a61
    output=$DEBUGPOSTTRANS
c458a61
    output2=${DEBUGPOSTTRANS}.upgrade
c458a61
else
c458a61
    output=/dev/null
c458a61
    output2=/dev/null
c458a61
fi
5e3fefb
# reload to pick up any changes to systemd files
77ca004
/bin/systemctl daemon-reload >$output 2>&1 || :
dc711d1
7317215
# https://fedoraproject.org/wiki/Packaging:UsersAndGroups#Soft_static_allocation
7317215
# Soft static allocation for UID and GID
7317215
USERNAME="dirsrv"
7317215
ALLOCATED_UID=389
7317215
GROUPNAME="dirsrv"
7317215
ALLOCATED_GID=389
7317215
HOMEDIR="/usr/share/dirsrv"
7317215
7317215
getent group $GROUPNAME >/dev/null || /usr/sbin/groupadd -f -g $ALLOCATED_GID -r $GROUPNAME
7317215
if ! getent passwd $USERNAME >/dev/null ; then
7317215
    if ! getent passwd $ALLOCATED_UID >/dev/null ; then
7317215
      /usr/sbin/useradd -r -u $ALLOCATED_UID -g $GROUPNAME -d $HOMEDIR -s /sbin/nologin -c "user for 389-ds-base" $USERNAME
7317215
    else
7317215
      /usr/sbin/useradd -r -g $GROUPNAME -d $HOMEDIR -s /sbin/nologin -c "user for 389-ds-base" $USERNAME
7317215
    fi
dc711d1
fi
dc711d1
a7312c5
# Reload our sysctl before we restart (if we can)
a7312c5
sysctl --system &> $output; true
a7312c5
1aab708
# Gather the running instances so we can restart them
fde90d9
instbase="%{_sysconfdir}/%{pkgname}"
1aab708
ninst=0
fde90d9
for dir in $instbase/slapd-* ; do
fde90d9
    echo dir = $dir >> $output 2>&1 || :
fde90d9
    if [ ! -d "$dir" ] ; then continue ; fi
fde90d9
    case "$dir" in *.removed) continue ;; esac
fde90d9
    basename=`basename $dir`
fde90d9
    inst="%{pkgname}@`echo $basename | sed -e 's/slapd-//g'`"
fde90d9
    echo found instance $inst - getting status  >> $output 2>&1 || :
96d52cc
    if /bin/systemctl -q is-active $inst ; then
392f7da
       echo instance $inst is running >> $output 2>&1 || :
31909e6
       instances="$instances $inst"
31909e6
    else
392f7da
       echo instance $inst is not running >> $output 2>&1 || :
31909e6
    fi
31909e6
    ninst=`expr $ninst + 1`
31909e6
done
31909e6
if [ $ninst -eq 0 ] ; then
392f7da
    echo no instances to upgrade >> $output 2>&1 || :
31909e6
    exit 0 # have no instances to upgrade - just skip the rest
392f7da
else
1aab708
    # restart running instances
1aab708
    echo shutting down all instances . . . >> $output 2>&1 || :
1aab708
    for inst in $instances ; do
1aab708
        echo stopping instance $inst >> $output 2>&1 || :
1aab708
        /bin/systemctl stop $inst >> $output 2>&1 || :
1aab708
    done
1aab708
    for inst in $instances ; do
1aab708
        echo starting instance $inst >> $output 2>&1 || :
1aab708
        /bin/systemctl start $inst >> $output 2>&1 || :
1aab708
    done
392f7da
fi
392f7da
a7312c5
1aab708
%preun
1aab708
if [ $1 -eq 0 ]; then # Final removal
1aab708
    # remove instance specific service files/links
1aab708
    rm -rf %{_sysconfdir}/systemd/system/%{groupname}.wants/* > /dev/null 2>&1 || :
1aab708
fi
256eebf
1aab708
%postun
1aab708
if [ $1 = 0 ]; then # Final removal
1aab708
    rm -rf /var/run/%{pkgname}
1aab708
fi
1aab708
1aab708
%post snmp
1aab708
%systemd_post %{pkgname}-snmp.service
1aab708
1aab708
%preun snmp
1aab708
%systemd_preun %{pkgname}-snmp.service %{groupname}
1aab708
1aab708
%postun snmp
1aab708
%systemd_postun_with_restart %{pkgname}-snmp.service
1aab708
1aab708
exit 0
d10e9af
af32fff
%files
c458a61
%if %{bundle_jemalloc}
e77ad85
%doc LICENSE LICENSE.GPLv3+ LICENSE.openssl README.jemalloc
e77ad85
%license COPYING.jemalloc
c458a61
%else
d02e06a
%doc LICENSE LICENSE.GPLv3+ LICENSE.openssl
c458a61
%endif
af32fff
%dir %{_sysconfdir}/%{pkgname}
af32fff
%dir %{_sysconfdir}/%{pkgname}/schema
af32fff
%config(noreplace)%{_sysconfdir}/%{pkgname}/schema/*.ldif
af32fff
%dir %{_sysconfdir}/%{pkgname}/config
96d52cc
%dir %{_sysconfdir}/systemd/system/%{groupname}.wants
af32fff
%config(noreplace)%{_sysconfdir}/%{pkgname}/config/slapd-collations.conf
af32fff
%config(noreplace)%{_sysconfdir}/%{pkgname}/config/certmap.conf
af32fff
%{_datadir}/%{pkgname}
ca673ec
%{_datadir}/gdb/auto-load/*
96d52cc
%{_unitdir}
c458a61
%{_bindir}/dbscan
c458a61
%{_mandir}/man1/dbscan.1.gz
c458a61
%{_bindir}/ds-replcheck
c458a61
%{_mandir}/man1/ds-replcheck.1.gz
c458a61
%{_bindir}/ds-logpipe.py
c458a61
%{_mandir}/man1/ds-logpipe.py.1.gz
c458a61
%{_bindir}/ldclt
c458a61
%{_mandir}/man1/ldclt.1.gz
c458a61
%{_bindir}/logconv.pl
c458a61
%{_mandir}/man1/logconv.pl.1.gz
c458a61
%{_bindir}/pwdhash
c458a61
%{_mandir}/man1/pwdhash.1.gz
a85ad4c
#%caps(CAP_NET_BIND_SERVICE=pe) {_sbindir}/ns-slapd
a85ad4c
%{_sbindir}/ns-slapd
79a8179
%{_mandir}/man8/ns-slapd.8.gz
1aab708
%{_sbindir}/openldap_to_ds
1aab708
%{_mandir}/man8/openldap_to_ds.8.gz
c458a61
%{_libexecdir}/%{pkgname}/ds_systemd_ask_password_acl
e77ad85
%{_mandir}/man5/99user.ldif.5.gz
e77ad85
%{_mandir}/man5/certmap.conf.5.gz
e77ad85
%{_mandir}/man5/slapd-collations.conf.5.gz
e77ad85
%{_mandir}/man5/dirsrv.5.gz
e77ad85
%{_mandir}/man5/dirsrv.systemd.5.gz
66d6780
%{_libdir}/%{pkgname}/python
af32fff
%dir %{_libdir}/%{pkgname}/plugins
af32fff
%{_libdir}/%{pkgname}/plugins/*.so
c458a61
# This has to be hardcoded to /lib - $libdir changes between lib/lib64, but
c458a61
# sysctl.d is always in /lib.
c458a61
%{_prefix}/lib/sysctl.d/*
af32fff
%dir %{_localstatedir}/lib/%{pkgname}
af32fff
%dir %{_localstatedir}/log/%{pkgname}
09ca048
%ghost %dir %{_localstatedir}/lock/%{pkgname}
d10e9af
%exclude %{_sbindir}/ldap-agent*
d10e9af
%exclude %{_mandir}/man1/ldap-agent.1.gz
a7312c5
%exclude %{_unitdir}/%{pkgname}-snmp.service
c458a61
%if %{bundle_jemalloc}
c458a61
%{_libdir}/%{pkgname}/lib/
c458a61
%{_libdir}/%{pkgname}/bin/
d2303c9
%exclude %{_libdir}/%{pkgname}/bin/jemalloc-config
d2303c9
%exclude %{_libdir}/%{pkgname}/bin/jemalloc.sh
d2303c9
%exclude %{_libdir}/%{pkgname}/lib/libjemalloc.a
d2303c9
%exclude %{_libdir}/%{pkgname}/lib/libjemalloc.so
d2303c9
%exclude %{_libdir}/%{pkgname}/lib/libjemalloc_pic.a
868bfa1
%exclude %{_libdir}/%{pkgname}/lib/pkgconfig
c458a61
%endif
af32fff
af32fff
%files devel
d02e06a
%doc LICENSE LICENSE.GPLv3+ LICENSE.openssl README.devel
a7312c5
%{_mandir}/man3/*
a880a76
%{_includedir}/svrcore.h
af32fff
%{_includedir}/%{pkgname}
a880a76
%{_libdir}/libsvrcore.so
5142ec0
%{_libdir}/%{pkgname}/libslapd.so
d10e9af
%{_libdir}/%{pkgname}/libns-dshttpd.so
ca673ec
%{_libdir}/%{pkgname}/libldaputil.so
a880a76
%{_libdir}/pkgconfig/svrcore.pc
a880a76
%{_libdir}/pkgconfig/dirsrv.pc
af32fff
5142ec0
%files libs
d02e06a
%doc LICENSE LICENSE.GPLv3+ LICENSE.openssl README.devel
5142ec0
%dir %{_libdir}/%{pkgname}
a880a76
%{_libdir}/libsvrcore.so.*
5142ec0
%{_libdir}/%{pkgname}/libslapd.so.*
0322ebf
%{_libdir}/%{pkgname}/libns-dshttpd-*.so
ca673ec
%{_libdir}/%{pkgname}/libldaputil.so.*
bfdd824
%{_libdir}/%{pkgname}/librewriters.so*
c458a61
%if %{bundle_jemalloc}
868bfa1
%{_libdir}/%{pkgname}/lib/libjemalloc.so.2
c458a61
%endif
5142ec0
d10e9af
%files snmp
d10e9af
%doc LICENSE LICENSE.GPLv3+ LICENSE.openssl README.devel
d10e9af
%config(noreplace)%{_sysconfdir}/%{pkgname}/config/ldap-agent.conf
d10e9af
%{_sbindir}/ldap-agent*
d10e9af
%{_mandir}/man1/ldap-agent.1.gz
ca673ec
%{_unitdir}/%{pkgname}-snmp.service
d10e9af
09fb13d
%files -n python%{python3_pkgversion}-lib389
09fb13d
%doc LICENSE LICENSE.GPLv3+
09fb13d
%{python3_sitelib}/lib389*
e77ad85
%{_sbindir}/dsconf
e77ad85
%{_mandir}/man8/dsconf.8.gz
e77ad85
%{_sbindir}/dscreate
e77ad85
%{_mandir}/man8/dscreate.8.gz
e77ad85
%{_sbindir}/dsctl
e77ad85
%{_mandir}/man8/dsctl.8.gz
e77ad85
%{_sbindir}/dsidm
e77ad85
%{_mandir}/man8/dsidm.8.gz
00c5c5c
%{_libexecdir}/%{pkgname}/dscontainer
09fb13d
75facac
%if %{use_cockpit}
c458a61
%files -n cockpit-389-ds -f cockpit.list
c086e06
%{_datarootdir}/metainfo/389-console/org.port389.cockpit_console.metainfo.xml
c458a61
%doc README.md
75facac
%endif
c458a61
af32fff
%changelog
1feedc3
* Wed Jul 21 2021 Fedora Release Engineering <releng@fedoraproject.org> - 2.0.7-1.1
1feedc3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
1feedc3
7466cff
* Thu Jul 15 2021 Mark Reynolds <mreynolds@redhat.com> - 2.0.7-1
7466cff
- Bump version to 2.0.7
7466cff
- Issue 4443 - Internal unindexed searches in syncrepl/retro changelog
7466cff
- Issue 4603 - Reindexing a single backend (#4831)
7466cff
- Issue 4169 - UI - migrate Server Tab forms to PF4
7466cff
- Issue 4817 - BUG - locked crypt accounts on import may allow all passwords (#4819)
7466cff
- Issue 4820 - RFE - control flow integrity (#4821)
7466cff
- Issue 4706 - negative wtime for compare operations (#4780)
7466cff
- Issue 4414 - SIGFPE crash in rhds disk monitoring routine (#4829)
7466cff
- Issue 4262 - Fix Index out of bound in fractional test (#4828)
7466cff
- Issue 4826 - Filter argparse-manpage from autogenerated requires
7466cff
- Issue 4822 - Fix CI temporary password: fixture leftover breaks them (#4823)
7466cff
- Issue 2820 - Fix CI test suite issues
7466cff
831791b
* Thu Jun 24 2021 Thierry Bordaz <tbordaz@redhat.com> - 2.0.6-1
831791b
- Bump version to 2.0.6
831791b
- Issue 4803 - Improve DB Locks Monitoring Feature Descriptions
831791b
- Issue 4803 - Improve DB Locks Monitoring Feature Descriptions (#4810)
831791b
- Issue 4169 - UI - Migrate Typeaheads to PF4 (#4808)
831791b
- Issue 4414 - disk monitoring - prevent division by zero crash
831791b
- Issue 4788 - CLI should support Temporary Password Rules attributes (#4793)
831791b
- Issue 4656 - Fix replication plugin rename dependency issues
831791b
- Issue 4656 - replication name change upgrade code causes crash with dynamic plugins
831791b
- Issue 4506 - Improve SASL logging
831791b
- Issue 4709 - Fix double free in dbscan
831791b
- Issue 4093 - Fix MEP test case
831791b
- Issue 4747 - Remove unstable/unstatus tests (followup) (#4809)
831791b
- Issue 4791 - Missing dependency for RetroCL RFE (#4792)
831791b
- Issue 4794 - BUG - don't capture container output (#4798)
831791b
- Issue 4593 - Log an additional message if the server certificate nickname doesn't match nsSSLPersonalitySSL value
831791b
- Issue 4797 - ACL IP ADDRESS evaluation may corrupt c_isreplication_session connection flags (#4799)
831791b
- Issue 4169 - UI Migrate checkbox to PF4 (#4769)
831791b
- Issue 4447 - Crash when the Referential Integrity log is manually edited
831791b
- Issue 4773 - Add CI test for DNA interval assignment
831791b
- Issue 4789 - Temporary password rules are not enforce with local password policy (#4790)
831791b
- Issue 4379 - fixing regression in test_info_disclosure
831791b
- Issue 4379 - Allow more than 1 empty AttributeDescription for ldapsearch, without the risk of denial of service
831791b
- Issue 4379 - Allow more than 1 empty AttributeDescription for ldapsearch, without the risk of denial of service
831791b
- Issue 4575 Update test docstrings metadata
831791b
- Issue 4753 - Adjust our tests to 389-ds-base-snmp missing in RHEL 9 Appstream
831791b
- removed the snmp_present() from utils.py as we have get_rpm_version() in conftest.py
831791b
- Issue 4753 - Adjust our tests to 389-ds-base-snmp missing in RHEL 9 Appstream
831791b
d1e505d
* Fri Jun 04 2021 Python Maint <python-maint@redhat.com> - 2.0.5-1.1
d1e505d
- Rebuilt for Python 3.10
d1e505d
4b440cd
* Sun May 30 2021 Mark Reynolds <mreynolds@redhat.com> - 2.0.5-1
4b440cd
- Bump version to 2.0.5
4b440cd
- Issue 4778 - RFE - Allow setting TOD for db compaction and add task
4b440cd
- Issue 4169 - UI - Port plugin tables to PF4
4b440cd
- Issue 4656 - Allow backward compatilbity for replication plugin name change
4b440cd
- Issue 4764 - replicated operation sometime checks ACI (#4783)
4b440cd
- Issue 2820 - Fix CI test suite issues
4b440cd
- Issue 4781 - There are some typos in man-pages
4b440cd
- Issue 4773 - Enable interval feature of DNA plugin
4b440cd
- Issue 4623 - RFE - Monitor the current DB locks (#4762)
4b440cd
- Issue 3555 - Fix UI audit issue
4b440cd
- Issue 4725 - Fix compiler warnings
4b440cd
- Issue 4770 - Lower FIPS logging severity
4b440cd
- Issue 4765 - database suffix unexpectdly changed from .db to .db4 (#4766)
4b440cd
- Issue 4725 - [RFE] DS - Update the password policy to support a Temporary Password Rules (#4727)
4b440cd
- Issue 4747 - Remove unstable/unstatus tests from PRCI (#4748)
4b440cd
- Issue 4759 - Fix coverity issue (#4760)
4b440cd
- Issue 4169 - UI - Migrate Buttons to PF4 (#4745)
4b440cd
- Issue 4714 - dscontainer fails with rootless podman
4b440cd
- Issue 4750 - Fix compiler warning in retrocl (#4751)
4b440cd
- Issue 4742 - UI - should always use LDAPI path when calling CLI
4b440cd
- Issue 4169 - UI - Migrate Server, Security, and Schema tables to PF4
4b440cd
- Issue 4667 - incorrect accounting of readers in vattr rwlock (#4732)
4b440cd
- Issue 4701 - RFE - Exclude attributes from retro changelog (#4723)
4b440cd
- Issue 4740 - Fix CI lib389 userPwdPolicy and subtreePwdPolicy (#4741)
4b440cd
- Issue 4711 - SIGSEV with sync_repl (#4738)
4b440cd
- Issue 4734 - import of entry with no parent warning (#4735)
4b440cd
- Issue 4729 - GitHub Actions fails to run pytest tests
4b440cd
- Issue 4656 - Remove problematic language from source code
4b440cd
- Issue 4632 - dscontainer: SyntaxWarning: "is" with a literal.
4b440cd
- Issue 4169 - UI - migrate replication tables to PF4
4b440cd
- Issue 4637 - ndn cache leak (#4724)
4b440cd
- Issue 4577 - Fix ASAN flags in specfile
4b440cd
- Issue 4169 - UI - PF4 migration - database tables
4b440cd
- issue 4653 - refactor ldbm backend to allow replacement of BDB - phase 3e - dbscan (#4709)
4b440cd
7a74457
* Thu May 20 2021 Christian Heimes <cheimes@redhat.com> - 2.0.4-4
7a74457
- Enable interval feature of DNA plugin (resolves: rhbz#1962671)
7a74457
7f1440c
* Wed May 19 2021 Pete Walter <pwalter@fedoraproject.org> - 2.0.4-3.2
7f1440c
- Rebuild for ICU 69
7f1440c
b7bca6f
* Wed May 19 2021 Pete Walter <pwalter@fedoraproject.org> - 2.0.4-3.1
b7bca6f
- Rebuild for ICU 69
b7bca6f
cf285c2
* Wed May 19 2021 Thierry Bordaz <tbordaz@redhat.com> - 2.0.4-3
cf285c2
- Issue 4765 - database suffix unexpectdly changed from .db to .db4 (#4766)
cf285c2
0b0735d
* Fri May 07 2021 Viktor Ashirov <vashirov@redhat.com> - 2.0.4-2
0b0735d
- Rebuilt to fix NVR
0b0735d
Simon Pichugin a04e9ff
* Fri Apr 09 2021 Simon Pichugin <spichugi@redhat.com> - 2.0.4-1.1
Simon Pichugin a04e9ff
- Add Rust bundled Provides and Update License
Simon Pichugin a04e9ff
fa350ec
* Thu Apr 08 2021 Thierry Bordaz <tbordaz@redhat.com> - 2.0.4-1
fa350ec
- Bump version to 2.0.4
fa350ec
- Issue 4680 - 389ds coredump (@389ds/389-ds-base-nightly) in replica install with CA (#4715)
fa350ec
- Issue 3965 - RFE - Implement the Password Policy attribute "pwdReset" (#4713)
fa350ec
- Issue 4700 - Regression in winsync replication agreement (#4712)
fa350ec
- Issue 3965 - RFE - Implement the Password Policy attribute "pwdReset" (#4710)
fa350ec
- Issue 4169 - UI - migrate monitor tables to PF4
fa350ec
- issue 4585 - backend redesign phase 3c - dbregion test removal (#4665)
fa350ec
- Issue 2736 - remove remaining perl references
fa350ec
- Issue 2736 - https://github.com/389ds/389-ds-base/issues/2736
fa350ec
- Issue 4706 - negative wtime in access log for CMP operations
fa350ec
- Issue 3585 - LDAP server returning controltype in different sequence
fa350ec
- Issue 4127 - With Accounts/Account module delete fuction is not working (#4697)
fa350ec
- Issue 4666 - BUG - cb_ping_farm can fail with anonymous binds disabled (#4669)
fa350ec
- Issue 4671 - UI - Fix browser crashes
fa350ec
- Issue 4169 - UI - Add PF4 charts for server stats
fa350ec
- Issue 4648 - Fix some issues and improvement around CI tests (#4651)
fa350ec
- Issue  4654  Updates to tickets/ticket48234_test.py  (#4654)
fa350ec
- Issue 4229 - Fix Rust linking
fa350ec
- Issue 4673 - Update Rust crates
fa350ec
- Issue 4658 - monitor - connection start date is incorrect
fa350ec
- Issue 4169 - UI - migrate modals to PF4
fa350ec
- Issue 4656 - remove problematic language from ds-replcheck
fa350ec
- Issue 4459 - lib389 - Default paths should use dse.ldif if the server is down
fa350ec
- Issue 4656 - Remove problematic language from UI/CLI/lib389
fa350ec
- Issue 4661 - RFE - allow importing openldap schemas (#4662)
fa350ec
- Issue 4659 - restart after openldap migration to enable plugins (#4660)
fa350ec
- Merge pull request #4664 from mreynolds389/issue4663
fa350ec
- issue 4552 - Backup Redesign phase 3b - use dbimpl in replicatin plugin (#4622)
fa350ec
- Issue 4643 - Add a tool that generates Rust dependencies for a specfile (#4645)
fa350ec
- Issue 4646 - CLI/UI - revise DNA plugin management
fa350ec
- Issue 4644 - Large updates can reset the CLcache to the beginning of the changelog (#4647)
fa350ec
- Issue 4649 - crash in sync_repl when a MODRDN create a cenotaph (#4652)
fa350ec
- Issue 4169 - UI - Migrate alerts to PF4
fa350ec
- Issue 4169 - UI - Migrate Accordians to PF4 ExpandableSection
fa350ec
- Issue 4595 - Paged search lookthroughlimit bug (#4602)
fa350ec
- Issue 4169 - UI - port charts to PF4
fa350ec
- Issue 2820 - Fix CI test suite issues
fa350ec
- Issue 4513 - CI - make acl ip address tests more robust
fa350ec
94b5c17
* Tue Mar 02 2021 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 2.0.3-3.1
94b5c17
- Rebuilt for updated systemd-rpm-macros
94b5c17
  See https://pagure.io/fesco/issue/2583.
94b5c17
d593e73
* Fri Feb 26 2021 Alexander Bokovoy <abokovoy@redhat.com> - 2.0.3-3
d593e73
- Remove a revert of the fix for Issue 4609 - CVE - info disclosure when authenticating(breaks Dogtag)
d593e73
- Dogtag has fixed own code that failed in the presence of the fix for Issue 4609
d593e73
cbe8697
* Fri Feb 19 2021 Mark Reynolds <mreynolds@redhat.com> - 2.0.3-2
cbe8697
- Bump version to 2.0.3-2
cbe8697
- Revert Issue 4609 - CVE - info disclosure when authenticating(breaks DogTag)
cbe8697
5a57533
* Fri Feb 12 2021 Mark Reynolds <mreynolds@redhat.com> - 2.0.3-1
5a57533
- Bump version to 2.0.3
5a57533
- Issue 4619 - remove pytest requirement from lib389
5a57533
- Issue 4615 - log message when psearch first exceeds max threads per conn
5a57533
- Issue 4469 - Backend redesing phase 3a - implement dbimpl API and use it in back-ldbm (#4618)
5a57533
- Issue 4324 - Some architectures the cache line size file does not exist
5a57533
- Issue 4593 - RFE - Print help when nsSSLPersonalitySSL is not found (#4614)
5a57533
- Issue 4469 - Backend redesign phase 3a - bdb dependency removal from back-ldbm
5a57533
- PR 4564 - Update dscontainer
5a57533
- Issue 4149 - UI - port TreeView and opther components to PF4
5a57533
- Issue 4577 - Add GitHub actions
5a57533
- Issue 4591 - RFE - improve openldap_to_ds help and features (#4607)
5a57533
- issue 4612 - Fix pytest fourwaymmr_test for non root user (#4613)
5a57533
- Issue 4609 - CVE - info disclosure when authenticating
5a57533
- Issue 4348 - Add tests for dsidm
5a57533
- Issue 4571 - Stale libdb-utils dependency
5a57533
- Issue 4600 - performance modify rate: reduce lock contention on the object extension factory (#4601)
5a57533
- Issue 4577 - Add GitHub actions
5a57533
- Issue 4588 - BUG - unable to compile without xcrypt (#4589)
5a57533
- Issue 4579 - libasan detects heap-use-after-free in URP test (#4584)
5a57533
- Issue 4581 - A failed re-indexing leaves the database in broken state (#4582)
5a57533
- Issue 4348 - Add tests for dsidm
5a57533
- Issue 4577 - Add GitHub actions
5a57533
- Issue 4563 - Failure on s390x: 'Fails to split RDN "o=pki-tomcat-CA" into components' (#4573)
5a57533
- Issue 4093 - fix compiler warnings and update doxygen
5a57533
- Issue 4575 - Update test docstrings metadata
5a57533
- Issue 4526 - sync_repl: when completing an operation in the pending list, it can select the wrong operation (#4553)
5a57533
- Issue 4324 - Performance search rate: change entry cache monitor to recursive pthread mutex (#4569)
5a57533
- Issue 4513 - Add DS version check to SSL version test (#4570)
5a57533
- Issue 5442 - Search results are different between RHDS10 and RHDS11
5a57533
- Issue 4396 - Minor memory leak in backend (#4558)
5a57533
- Issue 4513 - Fix replication CI test failures (#4557)
5a57533
- Issue 4513 - Fix replication CI test failures (#4557)
5a57533
- Issue 4153 - Added a CI test (#4556)
5a57533
- Issue 4506 - BUG - fix oob alloc for fds (#4555)
5a57533
- Issue 4548 - CLI - dsconf needs better root DN access control plugin validation
5a57533
- Issue 4506 - Temporary fix for io issues (#4516)
5a57533
- Issue 4535 - lib389 - Fix log function in backends.py
5a57533
- Issue 4534 - libasan read buffer overflow in filtercmp (#4541)
5a57533
- Issue 4544 - Compiler warnings on krb5 functions (#4545)
5a57533
- Update rpm.mk for RUST tarballs
5a57533
f841ce7
* Mon Jan 25 2021 Fedora Release Engineering <releng@fedoraproject.org> - 2.0.2-1.1
f841ce7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
f841ce7
a5985f5
* Thu Jan 14 2021 Mark Reynolds <mreynolds@redhat.com> - 2.0.2-1
a5985f5
- Bump version to 2.0.2
a5985f5
- Issue 4539 - BUG - no such file if no overlays in openldap during migration (#4540)
a5985f5
- Issue 4528 - Fix cn=monitor SCOPE_ONE search (#4529)
a5985f5
- Issue 4535 - lib389 - healthcheck throws exception if backend is not replicated
a5985f5
- Issue 4537 - Use KRB5_CLIENT_KTNAME for client keytabs (#4523)
a5985f5
- Issue 4513 - CI Tests - fix test failures
a5985f5
- Issue 4504 - insure that repl_monitor_test use ldapi (for RHEL) - fix merge issue (#4533)
a5985f5
- Issue 4315 - performance search rate: nagle triggers high rate of setsocketopt
a5985f5
- Issue 4504 - pytest test_dsconf_replication_monitor fails on RHEL - Fix merging issue (#4530)
a5985f5
- Issue 4504 - Insure ldapi is enabled in repl_monitor_test.py (Needed on RHEL) (#4527)
a5985f5
- Issue 4506 - BUG - Fix bounds on fd table population (#4520)
a5985f5
- Issue 4521 - DS crash in deref plugin if dereferenced entry exists but is not returned by internal search (#4525)
a5985f5
- Issue 4219 - Log internal unindexed searches (notes=A)
a5985f5
- Issue 4384 - Separate eventq into REALTIME and MONOTONIC
a5985f5
- Issue 4381 - RFE - LDAPI authentication DN rewritter
a5985f5
- Issue 4513 - Fix schema test and lib389 task module (#4514)
a5985f5
- Issue 4414 - disk monitoring - prevent division by zero crash
a5985f5
- Issue 4517 - BUG: Multiple systemd pin warnings (#4518)
a5985f5
- Issue 4507 - Improve csngen testing task (#4508)
a5985f5
- Issue 4498 - BUG - entryuuid replication may not work (#4503)
a5985f5
- Issue 4480 - Unexpected info returned to ldap request (#4491)
a5985f5
- Issue 4504 - Fix pytest test_dsconf_replication_monitor (#4505)
a5985f5
- Issue 4373 - BUG - one line cleanup, free results in mt if ent 0 (#4502)
a5985f5
- Issue 4500 - Add cockpit enabling to dsctl
a5985f5
- Issue 4272 - RFE - add support for gost-yescrypt for hashing passwords (#4497)
a5985f5
- Issue 1795 - RFE - Enable logging for libldap and libber in error log (#4481)
a5985f5
- Issue 3522 - Remove DES to AES conversion code
a5985f5
- Issue 4492 - Changelog cache can upload updates from a wrong starting point (CSN) (#4493)
a5985f5
- Issue 4373 - BUG - calloc of size 0 in MT build (#4496)
a5985f5
- Issue 4483 - heap-use-after-free in slapi_be_getsuffix
a5985f5
- Issue 4486 - Remove random ldif file generation from import test (#4487)
a5985f5
- Issue 4224 - cleanup specfile after libsds removal
a5985f5
- Issue 4421 - Unable to build with Rust enabled in closed environment
a5985f5
- Issue 4489 - Remove return statement from a void function (#4490)
a5985f5
- Issue 4229 - RFE - Improve rust linking and build performance (#4474)
a5985f5
- Issue 4224 - openldap can become confused with entryuuid
a5985f5
- Issue 4313 - improve tests and improve readme re refdel
a5985f5
- Issue 4313 - fix potential syncrepl data corruption
a5985f5
- Issue 4419 - Warn users of skipped entries during ldif2db online import (#4476)
a5985f5
- Issue 4243 - Fix test (4th): SyncRepl plugin provides a wrong (#4475)
a5985f5
- Issue 4315 - performance search rate: nagle triggers high rate of setsocketopt (#4437)
a5985f5
- Issue 4460 - BUG - add machine name to subject alt names in SSCA (#4472)
a5985f5
- Issue 4446 - RFE - openldap password hashers
a5985f5
- Issue 4284 - dsidm fails to delete an organizationalUnit entry
a5985f5
- Issue 4243 - Fix test: SyncRepl plugin provides a wrong cookie (#4466) (#4466)
a5985f5
- Issue 4464 - RFE - clang with ds+asan+rust
a5985f5
- Issue 4105 - Remove python.six (fix regression)
a5985f5
- Issue 4384 - Use MONOTONIC clock for all timing events and conditions
a5985f5
- Issue 4418 - ldif2db - offline. Warn the user of skipped entries
a5985f5
- Issue 4243 - Fix test: SyncRepl plugin provides a wrong cookie (#4467)
a5985f5
- Issue 4460 - BUG  - lib389 should use system tls policy
a5985f5
- Issue 3657 - Add options to dsctl for dsrc file
a5985f5
- Issue 4454 - RFE - fix version numbers to allow object caching
a5985f5
- Issue 3986 - UI - Handle objectclasses that do not have X-ORIGIN set
a5985f5
- Issue 4297 - 2nd fix for on ADD replication URP issue internal searches with filter containing unescaped chars (#4439)
a5985f5
- Issue 4112 - Added a CI test (#4441)
a5985f5
- Issue 4449 - dsconf replication monitor fails to retrieve database RUV - consumer (Unavailable) (#4451)
a5985f5
- Issue 4105 - Remove python.six from lib389 (#4456)
a5985f5
- Issue 4440 - BUG - ldifgen with --start-idx option fails with unsupported operand (#4444)
a5985f5
- Issue 4410 - RFE - ndn cache with arc in rust
a5985f5
- Issue 4373 - BUG - Mapping Tree nodes can be created that are invalid
a5985f5
- Issue 4428 - BUG Paged Results with critical false causes sigsegv in chaining
a5985f5
- Issue 4428 - Paged Results with Chaining Test Case
a5985f5
- Issue 2054 - do not add referrals for masters with different data generation
a5985f5
- Issue 4383 - Do not normalize escaped spaces in a DN
a5985f5
- Issue 4432 - After a failed online import the next imports are very slow
a5985f5
- Issue 4316 - performance search rate: useless poll on network send callback (#4424)
a5985f5
- Issue 4281 - dsidm user status fails with Error: 'nsUserAccount' object has no attribute 'is_locked'
a5985f5
- Issue 4429 - NULL dereference in revert_cache()
a5985f5
- Issue 4412 - Fix CLI repl-agmt requirement for parameters (#4422)
a5985f5
- Issue 4407 - RFE - remove http client and presence plugin (#4409)
a5985f5
- Issue 4398 - build problems at alpine linux
a5985f5
- Issue 4415 - unable to query schema if there are extra parenthesis
a5985f5
ded5ac3
* Thu Oct 29 2020 Mark Reynolds <mreynolds@redhat.com> - 2.0.1-1
ded5ac3
- Bump version to 2.0.1
ded5ac3
- Issue 4420 - change NVR to use X.X.X instead of X.X.X.X
ded5ac3
- Issue 4391 - DSE config modify does not call be_postop (#4394)
ded5ac3
- Issue 4218 - Verify the new wtime and optime access log keywords (#4397)
ded5ac3
- Issue 4176 - CL trimming causes high CPU
ded5ac3
- Issue 2058 - Add keep alive entry after on-line initialization - second version (#4399)
ded5ac3
- Issue 4403 - RFE - OpenLDAP pw hash migration tests (#4408)
ded5ac3
aa29d08
* Wed Oct 28 2020 Mark Reynolds <mreynolds@redhat.com> - 1.4.5.0-1
aa29d08
- Bump version to 1.4.5.0
aa29d08
- Issue 4262 - more perl removal cleanup
aa29d08
- Issue 2526 - retrocl backend created out of order
6c4e197
1aab708
* Mon Oct 26 2020 Mark Reynolds <mreynolds@redhat.com> - 1.4.4.6-1
1aab708
- Bump version to 1.4.4.6
1aab708
- Issue 4262 - Remove legacy tools subpackage (final cleanup)
1aab708
- Issue 4262 - Remove legacy tools subpackage (restart instances after rpm install)
1aab708
- Issue 4262 - Remove legacy tools subpackage
1aab708
- Issue 2526 - revert API change in slapi_be_getsuffix()
1aab708
- Issue 4363 - Sync repl: per thread structure was incorrectly initialized (#4395)
1aab708
- Issue 4392 - Update create_test.py
1aab708
- Issue 2820 - Fix CI tests (#4365)
1aab708
- Issue 2526 - suffix management in backends incorrect
1aab708
- Issue 4389 - errors log with incorrectly formatted message parent_update_on_childchange
1aab708
- Issue 4295 - Fix a closing quote issue (#4386)
1aab708
- Issue 1199 - Misleading message in access log for idle timeout (#4385)
1aab708
- Issue 3600 - RFE - openldap migration tooling (#4318)
1aab708
- Issue 4176 - import ldif2cl task should not close all changelogs
1aab708
- Issue 4159 - Healthcheck code DSBLE0002 not returned on disabled suffix
1aab708
- Issue 4379 - allow more than 1 empty AttributeDescription for ldapsearch, without the risk of denial of service (#4380)
1aab708
- Issue 4329 - Sync repl - if a serie of updates target the same entry then the cookie get wrong changenumber (#4356)
1aab708
- Issue 3555 - Fix npm audit issues (#4370)
1aab708
- Issue 4372 - BUG - Chaining DB did not validate bind mech parameters (#4374)
1aab708
- Issue 4334 - RFE - Task timeout may cause larger dataset imports to fail (#4359)
1aab708
- Issue 4361 - RFE - add - dscreate --advanced flag to avoid user confusion
1aab708
- Issue 4368 - ds-replcheck crashes when processing glue entries
1aab708
- Issue 4366 - lib389 - Fix account status inactivity checks
1aab708
- Issue 4265 - UI - Make the secondary plugins read-only (#4364)
1aab708
- Issue 4360 - password policy max sequence sets is not working as expected
1aab708
- Issue 4348 - Add tests for dsidm
1aab708
- Issue 4350 - One line, fix invalid type error in tls_cacertdir check (#4358)
1aab708