From d543cfc4a003c890c2091e38dbff5243383673d5 Mon Sep 17 00:00:00 2001 From: eabdullin Date: Wed, 11 Jun 2025 08:51:30 +0000 Subject: [PATCH] import OL 389-ds-base-2.6.1-9.el9_6 --- .389-ds-base.metadata | 2 +- .gitignore | 2 +- ...e-concread-to-0.5.4-and-refactor-sta.patch | 478 ------------------ ...{Cargo-2.6.1-1.lock => Cargo-2.6.1-2.lock} | 334 +++++++----- SPECS/389-ds-base.spec | 78 +-- 5 files changed, 248 insertions(+), 646 deletions(-) delete mode 100644 SOURCES/0025-Issue-6553-Update-concread-to-0.5.4-and-refactor-sta.patch rename SOURCES/{Cargo-2.6.1-1.lock => Cargo-2.6.1-2.lock} (81%) diff --git a/.389-ds-base.metadata b/.389-ds-base.metadata index 184efc0..9153039 100644 --- a/.389-ds-base.metadata +++ b/.389-ds-base.metadata @@ -1,3 +1,3 @@ 25969f6e65d79aa29671eff7185e4307ff3c08a0 SOURCES/389-ds-base-2.6.1.tar.bz2 1c8f2d0dfbf39fa8cd86363bf3314351ab21f8d4 SOURCES/jemalloc-5.3.0.tar.bz2 -110a41a9286255a008309620c3be3b3965e579dc SOURCES/vendor-2.6.1-1.tar.gz +090f63456eb32f0e369383be485a1ce09eea5f8d SOURCES/vendor-2.6.1-2.tar.gz diff --git a/.gitignore b/.gitignore index 12d14d9..c803004 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,3 @@ SOURCES/389-ds-base-2.6.1.tar.bz2 SOURCES/jemalloc-5.3.0.tar.bz2 -SOURCES/vendor-2.6.1-1.tar.gz +SOURCES/vendor-2.6.1-2.tar.gz diff --git a/SOURCES/0025-Issue-6553-Update-concread-to-0.5.4-and-refactor-sta.patch b/SOURCES/0025-Issue-6553-Update-concread-to-0.5.4-and-refactor-sta.patch deleted file mode 100644 index 259086e..0000000 --- a/SOURCES/0025-Issue-6553-Update-concread-to-0.5.4-and-refactor-sta.patch +++ /dev/null @@ -1,478 +0,0 @@ -From 3ea3e8697de1602c2ecaa58b4cbad69fe775af35 Mon Sep 17 00:00:00 2001 -From: Simon Pichugin -Date: Wed, 19 Feb 2025 18:56:34 -0800 -Subject: [PATCH] Issue 6553 - Update concread to 0.5.4 and refactor statistics - tracking (#6607) - -Description: Implement new cache statistics tracking with atomic counters -and dedicated stats structs. -Update concread dependency to 0.5.4 for improved cache performance. -Add tests for cache statistics functionality. - -Fixes: https://github.com/389ds/389-ds-base/issues/6553 - -Reviewed by: @firstyear ---- - ldap/servers/slapd/dn.c | 4 +- - src/Cargo.lock | 457 ++++++++++++++++++------------------- - src/librslapd/Cargo.toml | 3 +- - src/librslapd/src/cache.rs | 331 ++++++++++++++++++++++++--- - 4 files changed, 526 insertions(+), 269 deletions(-) - -diff --git a/ldap/servers/slapd/dn.c b/ldap/servers/slapd/dn.c -index 093019e28..5fbe67d07 100644 ---- a/ldap/servers/slapd/dn.c -+++ b/ldap/servers/slapd/dn.c -@@ -58,7 +58,7 @@ struct ndn_cache { - - /* - * This means we need 1 MB minimum per thread -- * -+ * - */ - #define NDN_CACHE_MINIMUM_CAPACITY 1048576 - /* -@@ -3008,7 +3008,7 @@ ndn_cache_get_stats(uint64_t *hits, uint64_t *tries, uint64_t *size, uint64_t *m - uint64_t freq_evicts; - uint64_t recent_evicts; - uint64_t p_weight; -- cache_char_stats(cache, -+ cache_char_stats(cache, - &reader_hits, - &reader_includes, - &write_hits, -diff --git a/src/librslapd/Cargo.toml b/src/librslapd/Cargo.toml -index 6d8d63de4..6d9b621fc 100644 ---- a/src/librslapd/Cargo.toml -+++ b/src/librslapd/Cargo.toml -@@ -16,8 +16,7 @@ crate-type = ["staticlib", "lib"] - [dependencies] - slapd = { path = "../slapd" } - libc = "0.2" --concread = "^0.2.20" -+concread = "0.5.4" - - [build-dependencies] - cbindgen = "0.26" -- -diff --git a/src/librslapd/src/cache.rs b/src/librslapd/src/cache.rs -index b025c830a..e3c692865 100644 ---- a/src/librslapd/src/cache.rs -+++ b/src/librslapd/src/cache.rs -@@ -1,38 +1,171 @@ - // This exposes C-FFI capable bindings for the concread concurrently readable cache. -+use concread::arcache::stats::{ARCacheWriteStat, ReadCountStat}; - use concread::arcache::{ARCache, ARCacheBuilder, ARCacheReadTxn, ARCacheWriteTxn}; --use std::convert::TryInto; -+use concread::cowcell::CowCell; - use std::ffi::{CStr, CString}; - use std::os::raw::c_char; - -+#[derive(Clone, Debug, Default)] -+struct CacheStats { -+ reader_hits: u64, // Hits from read transactions (main + local) -+ reader_includes: u64, // Number of includes from read transactions -+ write_hits: u64, // Hits from write transactions -+ write_inc_or_mod: u64, // Number of includes/modifications from write transactions -+ freq_evicts: u64, // Number of evictions from frequent set -+ recent_evicts: u64, // Number of evictions from recent set -+ p_weight: u64, // Current cache weight between recent and frequent. -+ shared_max: u64, // Maximum number of items in the shared cache. -+ freq: u64, // Number of items in the frequent set at this point in time. -+ recent: u64, // Number of items in the recent set at this point in time. -+ all_seen_keys: u64, // Number of total keys seen through the cache's lifetime. -+} -+ -+impl CacheStats { -+ fn new() -> Self { -+ CacheStats::default() -+ } -+ -+ fn update_from_read_stat(&mut self, stat: ReadCountStat) { -+ self.reader_hits += stat.main_hit + stat.local_hit; -+ self.reader_includes += stat.include + stat.local_include; -+ } -+ -+ fn update_from_write_stat(&mut self, stat: &FFIWriteStat) { -+ self.write_hits += stat.read_hits; -+ self.write_inc_or_mod += stat.includes + stat.modifications; -+ self.freq_evicts += stat.freq_evictions; -+ self.recent_evicts += stat.recent_evictions; -+ self.p_weight = stat.p_weight; -+ self.shared_max = stat.shared_max; -+ self.freq = stat.freq; -+ self.recent = stat.recent; -+ self.all_seen_keys = stat.all_seen_keys; -+ } -+} -+ -+#[derive(Debug, Default)] -+pub struct FFIWriteStat { -+ pub read_ops: u64, -+ pub read_hits: u64, -+ pub p_weight: u64, -+ pub shared_max: u64, -+ pub freq: u64, -+ pub recent: u64, -+ pub all_seen_keys: u64, -+ pub includes: u64, -+ pub modifications: u64, -+ pub freq_evictions: u64, -+ pub recent_evictions: u64, -+ pub ghost_freq_revives: u64, -+ pub ghost_rec_revives: u64, -+ pub haunted_includes: u64, -+} -+ -+impl ARCacheWriteStat for FFIWriteStat { -+ fn cache_clear(&mut self) { -+ self.read_ops = 0; -+ self.read_hits = 0; -+ } -+ -+ fn cache_read(&mut self) { -+ self.read_ops += 1; -+ } -+ -+ fn cache_hit(&mut self) { -+ self.read_hits += 1; -+ } -+ -+ fn p_weight(&mut self, p: u64) { -+ self.p_weight = p; -+ } -+ -+ fn shared_max(&mut self, i: u64) { -+ self.shared_max = i; -+ } -+ -+ fn freq(&mut self, i: u64) { -+ self.freq = i; -+ } -+ -+ fn recent(&mut self, i: u64) { -+ self.recent = i; -+ } -+ -+ fn all_seen_keys(&mut self, i: u64) { -+ self.all_seen_keys = i; -+ } -+ -+ fn include(&mut self, _k: &K) { -+ self.includes += 1; -+ } -+ -+ fn include_haunted(&mut self, _k: &K) { -+ self.haunted_includes += 1; -+ } -+ -+ fn modify(&mut self, _k: &K) { -+ self.modifications += 1; -+ } -+ -+ fn ghost_frequent_revive(&mut self, _k: &K) { -+ self.ghost_freq_revives += 1; -+ } -+ -+ fn ghost_recent_revive(&mut self, _k: &K) { -+ self.ghost_rec_revives += 1; -+ } -+ -+ fn evict_from_recent(&mut self, _k: &K) { -+ self.recent_evictions += 1; -+ } -+ -+ fn evict_from_frequent(&mut self, _k: &K) { -+ self.freq_evictions += 1; -+ } -+} -+ - pub struct ARCacheChar { - inner: ARCache, -+ stats: CowCell, - } - - pub struct ARCacheCharRead<'a> { -- inner: ARCacheReadTxn<'a, CString, CString>, -+ inner: ARCacheReadTxn<'a, CString, CString, ReadCountStat>, -+ cache: &'a ARCacheChar, - } - - pub struct ARCacheCharWrite<'a> { -- inner: ARCacheWriteTxn<'a, CString, CString>, -+ inner: ARCacheWriteTxn<'a, CString, CString, FFIWriteStat>, -+ cache: &'a ARCacheChar, -+} -+ -+impl ARCacheChar { -+ fn new(max: usize, read_max: usize) -> Option { -+ ARCacheBuilder::new() -+ .set_size(max, read_max) -+ .set_reader_quiesce(false) -+ .build() -+ .map(|inner| Self { -+ inner, -+ stats: CowCell::new(CacheStats::new()), -+ }) -+ } - } - - #[no_mangle] - pub extern "C" fn cache_char_create(max: usize, read_max: usize) -> *mut ARCacheChar { -- let inner = if let Some(cache) = ARCacheBuilder::new().set_size(max, read_max).build() { -- cache -+ if let Some(cache) = ARCacheChar::new(max, read_max) { -+ Box::into_raw(Box::new(cache)) - } else { -- return std::ptr::null_mut(); -- }; -- let cache: Box = Box::new(ARCacheChar { inner }); -- Box::into_raw(cache) -+ std::ptr::null_mut() -+ } - } - - #[no_mangle] - pub extern "C" fn cache_char_free(cache: *mut ARCacheChar) { -- // Should we be responsible to drain and free everything? - debug_assert!(!cache.is_null()); - unsafe { -- let _drop = Box::from_raw(cache); -+ drop(Box::from_raw(cache)); - } - } - -@@ -53,22 +186,22 @@ pub extern "C" fn cache_char_stats( - ) { - let cache_ref = unsafe { - debug_assert!(!cache.is_null()); -- &(*cache) as &ARCacheChar -+ &(*cache) - }; -- let stats = cache_ref.inner.view_stats(); -- *reader_hits = stats.reader_hits.try_into().unwrap(); -- *reader_includes = stats.reader_includes.try_into().unwrap(); -- *write_hits = stats.write_hits.try_into().unwrap(); -- *write_inc_or_mod = (stats.write_includes + stats.write_modifies) -- .try_into() -- .unwrap(); -- *shared_max = stats.shared_max.try_into().unwrap(); -- *freq = stats.freq.try_into().unwrap(); -- *recent = stats.recent.try_into().unwrap(); -- *freq_evicts = stats.freq_evicts.try_into().unwrap(); -- *recent_evicts = stats.recent_evicts.try_into().unwrap(); -- *p_weight = stats.p_weight.try_into().unwrap(); -- *all_seen_keys = stats.all_seen_keys.try_into().unwrap(); -+ -+ // Get stats snapshot -+ let stats_read = cache_ref.stats.read(); -+ *reader_hits = stats_read.reader_hits; -+ *reader_includes = stats_read.reader_includes; -+ *write_hits = stats_read.write_hits; -+ *write_inc_or_mod = stats_read.write_inc_or_mod; -+ *freq_evicts = stats_read.freq_evicts; -+ *recent_evicts = stats_read.recent_evicts; -+ *p_weight = stats_read.p_weight; -+ *shared_max = stats_read.shared_max; -+ *freq = stats_read.freq; -+ *recent = stats_read.recent; -+ *all_seen_keys = stats_read.all_seen_keys; - } - - // start read -@@ -79,7 +212,8 @@ pub extern "C" fn cache_char_read_begin(cache: *mut ARCacheChar) -> *mut ARCache - &(*cache) as &ARCacheChar - }; - let read_txn = Box::new(ARCacheCharRead { -- inner: cache_ref.inner.read(), -+ inner: cache_ref.inner.read_stats(ReadCountStat::default()), -+ cache: cache_ref, - }); - Box::into_raw(read_txn) - } -@@ -87,8 +221,20 @@ pub extern "C" fn cache_char_read_begin(cache: *mut ARCacheChar) -> *mut ARCache - #[no_mangle] - pub extern "C" fn cache_char_read_complete(read_txn: *mut ARCacheCharRead) { - debug_assert!(!read_txn.is_null()); -+ - unsafe { -- let _drop = Box::from_raw(read_txn); -+ let read_txn_box = Box::from_raw(read_txn); -+ let read_stats = read_txn_box.inner.finish(); -+ let write_stats = read_txn_box -+ .cache -+ .inner -+ .try_quiesce_stats(FFIWriteStat::default()); -+ -+ // Update stats -+ let mut stats_write = read_txn_box.cache.stats.write(); -+ stats_write.update_from_read_stat(read_stats); -+ stats_write.update_from_write_stat(&write_stats); -+ stats_write.commit(); - } - } - -@@ -141,7 +287,8 @@ pub extern "C" fn cache_char_write_begin( - &(*cache) as &ARCacheChar - }; - let write_txn = Box::new(ARCacheCharWrite { -- inner: cache_ref.inner.write(), -+ inner: cache_ref.inner.write_stats(FFIWriteStat::default()), -+ cache: cache_ref, - }); - Box::into_raw(write_txn) - } -@@ -149,15 +296,21 @@ pub extern "C" fn cache_char_write_begin( - #[no_mangle] - pub extern "C" fn cache_char_write_commit(write_txn: *mut ARCacheCharWrite) { - debug_assert!(!write_txn.is_null()); -- let wr = unsafe { Box::from_raw(write_txn) }; -- (*wr).inner.commit(); -+ unsafe { -+ let write_txn_box = Box::from_raw(write_txn); -+ let current_stats = write_txn_box.inner.commit(); -+ -+ let mut stats_write = write_txn_box.cache.stats.write(); -+ stats_write.update_from_write_stat(¤t_stats); -+ stats_write.commit(); -+ } - } - - #[no_mangle] - pub extern "C" fn cache_char_write_rollback(write_txn: *mut ARCacheCharWrite) { - debug_assert!(!write_txn.is_null()); - unsafe { -- let _drop = Box::from_raw(write_txn); -+ drop(Box::from_raw(write_txn)); - } - } - -@@ -182,7 +335,7 @@ pub extern "C" fn cache_char_write_include( - - #[cfg(test)] - mod tests { -- use crate::cache::*; -+ use super::*; - - #[test] - fn test_cache_basic() { -@@ -199,4 +352,116 @@ mod tests { - cache_char_read_complete(read_txn); - cache_char_free(cache_ptr); - } -+ -+ #[test] -+ fn test_cache_stats() { -+ let cache = cache_char_create(100, 8); -+ -+ // Variables to store stats -+ let mut reader_hits = 0; -+ let mut reader_includes = 0; -+ let mut write_hits = 0; -+ let mut write_inc_or_mod = 0; -+ let mut shared_max = 0; -+ let mut freq = 0; -+ let mut recent = 0; -+ let mut freq_evicts = 0; -+ let mut recent_evicts = 0; -+ let mut p_weight = 0; -+ let mut all_seen_keys = 0; -+ -+ // Do some operations -+ let key = CString::new("stats_test").unwrap(); -+ let value = CString::new("value").unwrap(); -+ -+ let write_txn = cache_char_write_begin(cache); -+ cache_char_write_include(write_txn, key.as_ptr(), value.as_ptr()); -+ cache_char_write_commit(write_txn); -+ -+ let read_txn = cache_char_read_begin(cache); -+ let _ = cache_char_read_get(read_txn, key.as_ptr()); -+ cache_char_read_complete(read_txn); -+ -+ // Get stats -+ cache_char_stats( -+ cache, -+ &mut reader_hits, -+ &mut reader_includes, -+ &mut write_hits, -+ &mut write_inc_or_mod, -+ &mut shared_max, -+ &mut freq, -+ &mut recent, -+ &mut freq_evicts, -+ &mut recent_evicts, -+ &mut p_weight, -+ &mut all_seen_keys, -+ ); -+ -+ // Verify that stats were updated -+ assert!(write_inc_or_mod > 0); -+ assert!(all_seen_keys > 0); -+ -+ cache_char_free(cache); -+ } -+ -+ #[test] -+ fn test_cache_read_write_operations() { -+ let cache = cache_char_create(100, 8); -+ -+ // Create test data -+ let key = CString::new("test_key").unwrap(); -+ let value = CString::new("test_value").unwrap(); -+ -+ // Test write operation -+ let write_txn = cache_char_write_begin(cache); -+ cache_char_write_include(write_txn, key.as_ptr(), value.as_ptr()); -+ cache_char_write_commit(write_txn); -+ -+ // Test read operation -+ let read_txn = cache_char_read_begin(cache); -+ let result = cache_char_read_get(read_txn, key.as_ptr()); -+ assert!(!result.is_null()); -+ -+ // Verify the value -+ let retrieved_value = unsafe { CStr::from_ptr(result) }; -+ assert_eq!(retrieved_value.to_bytes(), value.as_bytes()); -+ -+ cache_char_read_complete(read_txn); -+ cache_char_free(cache); -+ } -+ -+ #[test] -+ fn test_cache_miss() { -+ let cache = cache_char_create(100, 8); -+ let read_txn = cache_char_read_begin(cache); -+ -+ let missing_key = CString::new("nonexistent").unwrap(); -+ let result = cache_char_read_get(read_txn, missing_key.as_ptr()); -+ assert!(result.is_null()); -+ -+ cache_char_read_complete(read_txn); -+ cache_char_free(cache); -+ } -+ -+ #[test] -+ fn test_write_rollback() { -+ let cache = cache_char_create(100, 8); -+ -+ let key = CString::new("rollback_test").unwrap(); -+ let value = CString::new("value").unwrap(); -+ -+ // Start write transaction and rollback -+ let write_txn = cache_char_write_begin(cache); -+ cache_char_write_include(write_txn, key.as_ptr(), value.as_ptr()); -+ cache_char_write_rollback(write_txn); -+ -+ // Verify key doesn't exist -+ let read_txn = cache_char_read_begin(cache); -+ let result = cache_char_read_get(read_txn, key.as_ptr()); -+ assert!(result.is_null()); -+ -+ cache_char_read_complete(read_txn); -+ cache_char_free(cache); -+ } - } --- -2.48.1 - diff --git a/SOURCES/Cargo-2.6.1-1.lock b/SOURCES/Cargo-2.6.1-2.lock similarity index 81% rename from SOURCES/Cargo-2.6.1-1.lock rename to SOURCES/Cargo-2.6.1-2.lock index 9d249d4..66e1bec 100644 --- a/SOURCES/Cargo-2.6.1-1.lock +++ b/SOURCES/Cargo-2.6.1-2.lock @@ -19,29 +19,15 @@ checksum = "512761e0bb2578dd7380c6baaa0f4ce03e84f95e960231d1dec8bf4d7d6e2627" [[package]] name = "ahash" -version = "0.8.11" +version = "0.7.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011" +checksum = "891477e0c6a8957309ee5c45a6368af3ae14bb510732d2684ffa19af310920f9" dependencies = [ - "cfg-if", - "getrandom 0.2.15", + "getrandom 0.2.16", "once_cell", "version_check", - "zerocopy", ] -[[package]] -name = "allocator-api2" -version = "0.2.21" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "683d7910e743518b0e34f1186f92494becacb047c7b6bf616c96772180fef923" - -[[package]] -name = "arc-swap" -version = "1.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "69f7f8c3906b62b754cd5326047894316021dcfe5a194c8ea52bdd94934a3457" - [[package]] name = "atty" version = "0.2.14" @@ -61,9 +47,9 @@ checksum = "ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26" [[package]] name = "backtrace" -version = "0.3.74" +version = "0.3.75" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d82cb332cdfaed17ae235a638438ac4d4839913cc2af585c3c6746e8f8bee1a" +checksum = "6806a6321ec58106fea15becdad98371e28d92ccbc7c8f1b3b6dd724fe8f1002" dependencies = [ "addr2line", "cfg-if", @@ -88,9 +74,9 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" [[package]] name = "bitflags" -version = "2.9.0" +version = "2.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c8214115b7bf84099f1309324e63141d4c5d7cc26862f97a0a857dbefe165bd" +checksum = "1b8e56985ec62d17e9c1001dc89c88ecd7dc08e47eba5ec7c29c7b5eeecde967" [[package]] name = "byteorder" @@ -119,9 +105,9 @@ dependencies = [ [[package]] name = "cc" -version = "1.2.18" +version = "1.2.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "525046617d8376e3db1deffb079e91cef90a89fc3ca5c185bbf8c9ecdd15cd5c" +checksum = "d0fc897dc1e865cc67c0e05a836d9d3f1df3cbe442aa4a9473b18e12624a4951" dependencies = [ "jobserver", "libc", @@ -160,20 +146,51 @@ dependencies = [ [[package]] name = "concread" -version = "0.5.5" +version = "0.2.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cdefc169c45893a578093c2f90733e3c56b60e67b0a8670a16ade3437b2fe392" +checksum = "dcc9816f5ac93ebd51c37f7f9a6bf2b40dfcd42978ad2aea5d542016e9244cf6" dependencies = [ "ahash", - "arc-swap", + "crossbeam", + "crossbeam-epoch", + "crossbeam-utils", + "lru", + "parking_lot", + "rand", + "smallvec", + "tokio", +] + +[[package]] +name = "crossbeam" +version = "0.8.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1137cd7e7fc0fb5d3c5a8678be38ec56e819125d8d7907411fe24ccb943faca8" +dependencies = [ + "crossbeam-channel", + "crossbeam-deque", "crossbeam-epoch", "crossbeam-queue", "crossbeam-utils", - "lru", - "smallvec", - "sptr", - "tokio", - "tracing", +] + +[[package]] +name = "crossbeam-channel" +version = "0.5.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "82b8f8f868b36967f9606790d1903570de9ceaf870a7bf9fbbd3016d636a2cb2" +dependencies = [ + "crossbeam-utils", +] + +[[package]] +name = "crossbeam-deque" +version = "0.8.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9dd111b7b7f7d55b72c0a6ae361660ee5853c9af73f70c3c2ef6858b950e2e51" +dependencies = [ + "crossbeam-epoch", + "crossbeam-utils", ] [[package]] @@ -222,17 +239,11 @@ dependencies = [ "uuid", ] -[[package]] -name = "equivalent" -version = "1.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f" - [[package]] name = "errno" -version = "0.3.11" +version = "0.3.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "976dd42dc7e85965fe702eb8164f21f450704bdde31faefd6471dba214cb594e" +checksum = "cea14ef9355e3beab063703aa9dab15afd25f0667c341310c1e5274bb1d0da18" dependencies = [ "libc", "windows-sys", @@ -252,17 +263,11 @@ checksum = "93804560e638370a8be6d59ce71ed803e55e230abdbf42598e666b41adda9b1f" dependencies = [ "base64", "byteorder", - "getrandom 0.2.15", + "getrandom 0.2.16", "openssl", "zeroize", ] -[[package]] -name = "foldhash" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d9c4f5dac5e15c24eb999c26181a6ca40b39fe946cbe4c263c7209467bc83af2" - [[package]] name = "foreign-types" version = "0.3.2" @@ -280,9 +285,9 @@ checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b" [[package]] name = "getrandom" -version = "0.2.15" +version = "0.2.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7" +checksum = "335ff9f135e4384c8150d6f27c6daed433577f86b4750418338c01a1a2528592" dependencies = [ "cfg-if", "libc", @@ -291,9 +296,9 @@ dependencies = [ [[package]] name = "getrandom" -version = "0.3.2" +version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "73fea8450eea4bac3940448fb7ae50d91f034f941199fcd9d909a5a07aa455f0" +checksum = "26145e563e54f2cadc477553f1ec5ee650b00862f0a58bcd12cbdc5f0ea2d2f4" dependencies = [ "cfg-if", "libc", @@ -312,16 +317,8 @@ name = "hashbrown" version = "0.12.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" - -[[package]] -name = "hashbrown" -version = "0.15.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf151400ff0baff5465007dd2f3e717f3fe502074ca563069ce3a6629d07b289" dependencies = [ - "allocator-api2", - "equivalent", - "foldhash", + "ahash", ] [[package]] @@ -346,7 +343,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99" dependencies = [ "autocfg", - "hashbrown 0.12.3", + "hashbrown", +] + +[[package]] +name = "instant" +version = "0.1.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e0242819d153cba4b4b05a5a8f2a7e9bbf97b6055b2a002b395c96b5ff3c0222" +dependencies = [ + "cfg-if", ] [[package]] @@ -361,15 +367,15 @@ version = "0.1.33" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "38f262f097c174adebe41eb73d66ae9c06b2844fb0da69969647bbddd9b0538a" dependencies = [ - "getrandom 0.3.2", + "getrandom 0.3.3", "libc", ] [[package]] name = "libc" -version = "0.2.171" +version = "0.2.172" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c19937216e9d3aa9956d9bb8dfc0b0c8beb6058fc4f7a4dc4d850edf86a237d6" +checksum = "d750af042f7ef4f724306de029d18836c26c1765a54a6a3f094cbd23a7267ffa" [[package]] name = "librnsslapd" @@ -392,9 +398,19 @@ dependencies = [ [[package]] name = "linux-raw-sys" -version = "0.9.3" +version = "0.9.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fe7db12097d22ec582439daf8618b8fdd1a7bef6270e9af3b1ebcd30893cf413" +checksum = "cd945864f07fe9f5371a27ad7b52a172b4b499999f1d97574c9fa68373937e12" + +[[package]] +name = "lock_api" +version = "0.4.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "96936507f153605bddfcda068dd804796c84324ed2510809e5b2a624c81da765" +dependencies = [ + "autocfg", + "scopeguard", +] [[package]] name = "log" @@ -404,11 +420,11 @@ checksum = "13dc2df351e3202783a1fe0d44375f7295ffb4049267b0f3018346dc122a1d94" [[package]] name = "lru" -version = "0.13.0" +version = "0.7.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "227748d55f2f0ab4735d87fd623798cb6b664512fe979705f829c9f81c934465" +checksum = "e999beba7b6e8345721bd280141ed958096a2e4abdf74f67ff4ce49b4b54e47a" dependencies = [ - "hashbrown 0.15.2", + "hashbrown", ] [[package]] @@ -443,11 +459,11 @@ checksum = "42f5e15c9953c5e4ccceeb2e7382a716482c34515315f7b03532b8b4e8393d2d" [[package]] name = "openssl" -version = "0.10.72" +version = "0.10.73" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fedfea7d58a1f73118430a55da6a286e7b044961736ce96a16a17068ea25e5da" +checksum = "8505734d46c8ab1e19a1dce3aef597ad87dcb4c37e7188231769bd6bd51cebf8" dependencies = [ - "bitflags 2.9.0", + "bitflags 2.9.1", "cfg-if", "foreign-types", "libc", @@ -464,14 +480,14 @@ checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.100", + "syn 2.0.101", ] [[package]] name = "openssl-sys" -version = "0.9.107" +version = "0.9.109" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8288979acd84749c744a9014b4382d42b8f7b2592847b5afb2ed29e5d16ede07" +checksum = "90096e2e47630d78b7d1c20952dc621f957103f8bc2c8359ec81290d75238571" dependencies = [ "cc", "libc", @@ -485,6 +501,31 @@ version = "6.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e2355d85b9a3786f481747ced0e0ff2ba35213a1f9bd406ed906554d7af805a1" +[[package]] +name = "parking_lot" +version = "0.11.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7d17b78036a60663b797adeaee46f5c9dfebb86948d1255007a1d6be0271ff99" +dependencies = [ + "instant", + "lock_api", + "parking_lot_core", +] + +[[package]] +name = "parking_lot_core" +version = "0.8.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "60a2cfe6f0ad2bfc16aefa463b497d5c7a5ecd44a23efa72aa342d90177356dc" +dependencies = [ + "cfg-if", + "instant", + "libc", + "redox_syscall", + "smallvec", + "winapi", +] + [[package]] name = "paste" version = "0.1.18" @@ -516,6 +557,15 @@ version = "0.3.32" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7edddbd0b52d732b21ad9a5fab5c704c14cd949e5e9a1ec5929a24fded1b904c" +[[package]] +name = "ppv-lite86" +version = "0.2.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "85eae3c4ed2f50dcfe72643da4befc30deadb458a9b590d720cde2f2b1e97da9" +dependencies = [ + "zerocopy", +] + [[package]] name = "proc-macro-hack" version = "0.5.20+deprecated" @@ -524,9 +574,9 @@ checksum = "dc375e1527247fe1a97d8b7156678dfe7c1af2fc075c9a4db3690ecd2a148068" [[package]] name = "proc-macro2" -version = "1.0.94" +version = "1.0.95" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a31971752e70b8b2686d7e46ec17fb38dad4051d94024c88df49b667caea9c84" +checksum = "02b3e5e68a3a1a02aad3ec490a98007cbc13c37cbe84a3cd7b8e406d76e7f778" dependencies = [ "unicode-ident", ] @@ -559,6 +609,45 @@ version = "5.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "74765f6d916ee2faa39bc8e68e4f3ed8949b48cccdac59983d287a7cb71ce9c5" +[[package]] +name = "rand" +version = "0.8.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" +dependencies = [ + "libc", + "rand_chacha", + "rand_core", +] + +[[package]] +name = "rand_chacha" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" +dependencies = [ + "ppv-lite86", + "rand_core", +] + +[[package]] +name = "rand_core" +version = "0.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" +dependencies = [ + "getrandom 0.2.16", +] + +[[package]] +name = "redox_syscall" +version = "0.2.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fb5a58c1855b4b6819d59012155603f0b22ad30cad752600aadfcb695265519a" +dependencies = [ + "bitflags 1.3.2", +] + [[package]] name = "rustc-demangle" version = "0.1.24" @@ -567,11 +656,11 @@ checksum = "719b953e2095829ee67db738b3bfa9fa368c94900df327b3f07fe6e794d2fe1f" [[package]] name = "rustix" -version = "1.0.5" +version = "1.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d97817398dd4bb2e6da002002db259209759911da105da92bec29ccb12cf58bf" +checksum = "c71e83d6afe7ff64890ec6b71d6a69bb8a610ab78ce364b3352876bb4c801266" dependencies = [ - "bitflags 2.9.0", + "bitflags 2.9.1", "errno", "libc", "linux-raw-sys", @@ -584,6 +673,12 @@ version = "1.0.20" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "28d3b2b1366ec20994f1fd18c3c594f05c5dd4bc44d8bb0c1c632c8d6829481f" +[[package]] +name = "scopeguard" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" + [[package]] name = "serde" version = "1.0.219" @@ -601,7 +696,7 @@ checksum = "5b0276cf7f2c73365f7157c8123c21cd9a50fbbd844757af28ca1f5925fc2a00" dependencies = [ "proc-macro2", "quote", - "syn 2.0.100", + "syn 2.0.101", ] [[package]] @@ -644,12 +739,6 @@ version = "1.15.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8917285742e9f3e1683f0a9c4e6b57960b7314d0b08d30d1ecd426713ee2eee9" -[[package]] -name = "sptr" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b9b39299b249ad65f3b7e96443bad61c02ca5cd3589f46cb6d610a0fd6c0d6a" - [[package]] name = "strsim" version = "0.10.0" @@ -669,9 +758,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.100" +version = "2.0.101" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b09a44accad81e1ba1cd74a32461ba89dee89095ba17b32f5d03683b1b1fc2a0" +checksum = "8ce2b7fc941b3a24138a0a7cf8e858bfc6a992e7978a068a5c760deb0ed43caf" dependencies = [ "proc-macro2", "quote", @@ -680,12 +769,12 @@ dependencies = [ [[package]] name = "tempfile" -version = "3.19.1" +version = "3.20.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7437ac7763b9b123ccf33c338a5cc1bac6f69b45a136c19bdd8a65e3916435bf" +checksum = "e8a64e3985349f2441a1a9ef0b853f869006c3855f2cda6862a94d26ebb9d6a1" dependencies = [ "fastrand", - "getrandom 0.3.2", + "getrandom 0.3.3", "once_cell", "rustix", "windows-sys", @@ -708,12 +797,24 @@ checksum = "c13547615a44dc9c452a8a534638acdf07120d4b6847c8178705da06306a3057" [[package]] name = "tokio" -version = "1.44.2" +version = "1.45.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6b88822cbe49de4185e3a4cbf8321dd487cf5fe0c5c65695fef6346371e9c48" +checksum = "75ef51a33ef1da925cea3e4eb122833cb377c61439ca401b770f54902b806779" dependencies = [ "backtrace", "pin-project-lite", + "tokio-macros", +] + +[[package]] +name = "tokio-macros" +version = "2.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6e06d43f1345a3bcd39f6a56dbb7dcab2ba47e68e8ac134855e7e2bdbaf8cab8" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.101", ] [[package]] @@ -725,37 +826,6 @@ dependencies = [ "serde", ] -[[package]] -name = "tracing" -version = "0.1.41" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "784e0ac535deb450455cbfa28a6f0df145ea1bb7ae51b821cf5e7927fdcfbdd0" -dependencies = [ - "pin-project-lite", - "tracing-attributes", - "tracing-core", -] - -[[package]] -name = "tracing-attributes" -version = "0.1.28" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "395ae124c09f9e6918a2310af6038fba074bcf474ac352496d5910dd59a2226d" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.100", -] - -[[package]] -name = "tracing-core" -version = "0.1.33" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e672c95779cf947c5311f83787af4fa8fffd12fb27e4993211a84bdfd9610f9c" -dependencies = [ - "once_cell", -] - [[package]] name = "unicode-ident" version = "1.0.18" @@ -768,7 +838,7 @@ version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bc5cf98d8186244414c848017f0e2676b3fcb46807f6668a97dfe67359a3c4b7" dependencies = [ - "getrandom 0.2.15", + "getrandom 0.2.16", ] [[package]] @@ -908,27 +978,27 @@ version = "0.39.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6f42320e61fe2cfd34354ecb597f86f413484a798ba44a8ca1165c58d42da6c1" dependencies = [ - "bitflags 2.9.0", + "bitflags 2.9.1", ] [[package]] name = "zerocopy" -version = "0.7.35" +version = "0.8.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b9b4fd18abc82b8136838da5d50bae7bdea537c574d8dc1a34ed098d6c166f0" +checksum = "a1702d9583232ddb9174e01bb7c15a2ab8fb1bc6f227aa1233858c351a3ba0cb" dependencies = [ "zerocopy-derive", ] [[package]] name = "zerocopy-derive" -version = "0.7.35" +version = "0.8.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e" +checksum = "28a6e20d751156648aa063f3800b706ee209a32c0b4d9f24be3d980b01be55ef" dependencies = [ "proc-macro2", "quote", - "syn 2.0.100", + "syn 2.0.101", ] [[package]] @@ -948,5 +1018,5 @@ checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" dependencies = [ "proc-macro2", "quote", - "syn 2.0.100", + "syn 2.0.101", ] diff --git a/SPECS/389-ds-base.spec b/SPECS/389-ds-base.spec index 4a57d9c..fa129b7 100644 --- a/SPECS/389-ds-base.spec +++ b/SPECS/389-ds-base.spec @@ -47,8 +47,8 @@ ExcludeArch: i686 Summary: 389 Directory Server (base) Name: 389-ds-base Version: 2.6.1 -Release: 8%{?dist} -License: GPL-3.0-or-later WITH GPL-3.0-389-ds-base-exception AND (0BSD OR Apache-2.0 OR MIT) AND (Apache-2.0 OR Apache-2.0 WITH LLVM-exception OR MIT) AND (Apache-2.0 OR BSD-2-Clause OR MIT) AND (Apache-2.0 OR BSL-1.0) AND (Apache-2.0 OR LGPL-2.1-or-later OR MIT) AND (Apache-2.0 OR MIT OR Zlib) AND (Apache-2.0 OR MIT) AND (MIT OR Apache-2.0) AND Unicode-3.0 AND (MIT OR Unlicense) AND Apache-2.0 AND MIT AND MPL-2.0 AND Zlib +Release: 9%{?dist} +License: GPL-3.0-or-later WITH GPL-3.0-389-ds-base-exception AND (0BSD OR Apache-2.0 OR MIT) AND (Apache-2.0 OR Apache-2.0 WITH LLVM-exception OR MIT) AND (Apache-2.0 OR BSD-2-Clause OR MIT) AND (Apache-2.0 OR BSL-1.0) AND (Apache-2.0 OR LGPL-2.1-or-later OR MIT) AND (Apache-2.0 OR MIT OR Zlib) AND (Apache-2.0 OR MIT) AND (MIT OR Apache-2.0) AND Unicode-3.0 AND (MIT OR Unlicense) AND Apache-2.0 AND BSD-3-Clause AND MIT AND MPL-2.0 URL: https://www.port389.org Conflicts: selinux-policy-base < 3.9.8 Conflicts: freeipa-server < 4.0.3 @@ -60,78 +60,84 @@ Provides: ldif2ldbm >= 0 ##### Bundled cargo crates list - START ##### Provides: bundled(crate(addr2line)) = 0.24.2 Provides: bundled(crate(adler2)) = 2.0.0 -Provides: bundled(crate(ahash)) = 0.8.11 -Provides: bundled(crate(allocator-api2)) = 0.2.21 -Provides: bundled(crate(arc-swap)) = 1.7.1 +Provides: bundled(crate(ahash)) = 0.7.8 Provides: bundled(crate(atty)) = 0.2.14 Provides: bundled(crate(autocfg)) = 1.4.0 -Provides: bundled(crate(backtrace)) = 0.3.74 +Provides: bundled(crate(backtrace)) = 0.3.75 Provides: bundled(crate(base64)) = 0.13.1 -Provides: bundled(crate(bitflags)) = 2.9.0 +Provides: bundled(crate(bitflags)) = 2.9.1 Provides: bundled(crate(byteorder)) = 1.5.0 Provides: bundled(crate(cbindgen)) = 0.26.0 -Provides: bundled(crate(cc)) = 1.2.18 +Provides: bundled(crate(cc)) = 1.2.25 Provides: bundled(crate(cfg-if)) = 1.0.0 Provides: bundled(crate(clap)) = 3.2.25 Provides: bundled(crate(clap_lex)) = 0.2.4 -Provides: bundled(crate(concread)) = 0.5.5 +Provides: bundled(crate(concread)) = 0.2.21 +Provides: bundled(crate(crossbeam)) = 0.8.4 +Provides: bundled(crate(crossbeam-channel)) = 0.5.15 +Provides: bundled(crate(crossbeam-deque)) = 0.8.6 Provides: bundled(crate(crossbeam-epoch)) = 0.9.18 Provides: bundled(crate(crossbeam-queue)) = 0.3.12 Provides: bundled(crate(crossbeam-utils)) = 0.8.21 -Provides: bundled(crate(equivalent)) = 1.0.2 -Provides: bundled(crate(errno)) = 0.3.11 +Provides: bundled(crate(errno)) = 0.3.12 Provides: bundled(crate(fastrand)) = 2.3.0 Provides: bundled(crate(fernet)) = 0.1.4 -Provides: bundled(crate(foldhash)) = 0.1.5 Provides: bundled(crate(foreign-types)) = 0.3.2 Provides: bundled(crate(foreign-types-shared)) = 0.1.1 -Provides: bundled(crate(getrandom)) = 0.3.2 +Provides: bundled(crate(getrandom)) = 0.3.3 Provides: bundled(crate(gimli)) = 0.31.1 -Provides: bundled(crate(hashbrown)) = 0.15.2 +Provides: bundled(crate(hashbrown)) = 0.12.3 Provides: bundled(crate(heck)) = 0.4.1 Provides: bundled(crate(hermit-abi)) = 0.1.19 Provides: bundled(crate(indexmap)) = 1.9.3 +Provides: bundled(crate(instant)) = 0.1.13 Provides: bundled(crate(itoa)) = 1.0.15 Provides: bundled(crate(jobserver)) = 0.1.33 -Provides: bundled(crate(libc)) = 0.2.171 -Provides: bundled(crate(linux-raw-sys)) = 0.9.3 +Provides: bundled(crate(libc)) = 0.2.172 +Provides: bundled(crate(linux-raw-sys)) = 0.9.4 +Provides: bundled(crate(lock_api)) = 0.4.13 Provides: bundled(crate(log)) = 0.4.27 -Provides: bundled(crate(lru)) = 0.13.0 +Provides: bundled(crate(lru)) = 0.7.8 Provides: bundled(crate(memchr)) = 2.7.4 Provides: bundled(crate(miniz_oxide)) = 0.8.8 Provides: bundled(crate(object)) = 0.36.7 Provides: bundled(crate(once_cell)) = 1.21.3 -Provides: bundled(crate(openssl)) = 0.10.72 +Provides: bundled(crate(openssl)) = 0.10.73 Provides: bundled(crate(openssl-macros)) = 0.1.1 -Provides: bundled(crate(openssl-sys)) = 0.9.107 +Provides: bundled(crate(openssl-sys)) = 0.9.109 Provides: bundled(crate(os_str_bytes)) = 6.6.1 +Provides: bundled(crate(parking_lot)) = 0.11.2 +Provides: bundled(crate(parking_lot_core)) = 0.8.6 Provides: bundled(crate(paste)) = 0.1.18 Provides: bundled(crate(paste-impl)) = 0.1.18 Provides: bundled(crate(pin-project-lite)) = 0.2.16 Provides: bundled(crate(pkg-config)) = 0.3.32 +Provides: bundled(crate(ppv-lite86)) = 0.2.21 Provides: bundled(crate(proc-macro-hack)) = 0.5.20+deprecated -Provides: bundled(crate(proc-macro2)) = 1.0.94 +Provides: bundled(crate(proc-macro2)) = 1.0.95 Provides: bundled(crate(quote)) = 1.0.40 Provides: bundled(crate(r-efi)) = 5.2.0 +Provides: bundled(crate(rand)) = 0.8.5 +Provides: bundled(crate(rand_chacha)) = 0.3.1 +Provides: bundled(crate(rand_core)) = 0.6.4 +Provides: bundled(crate(redox_syscall)) = 0.2.16 Provides: bundled(crate(rustc-demangle)) = 0.1.24 -Provides: bundled(crate(rustix)) = 1.0.5 +Provides: bundled(crate(rustix)) = 1.0.7 Provides: bundled(crate(ryu)) = 1.0.20 +Provides: bundled(crate(scopeguard)) = 1.2.0 Provides: bundled(crate(serde)) = 1.0.219 Provides: bundled(crate(serde_derive)) = 1.0.219 Provides: bundled(crate(serde_json)) = 1.0.140 Provides: bundled(crate(shlex)) = 1.3.0 Provides: bundled(crate(smallvec)) = 1.15.0 -Provides: bundled(crate(sptr)) = 0.3.2 Provides: bundled(crate(strsim)) = 0.10.0 -Provides: bundled(crate(syn)) = 2.0.100 -Provides: bundled(crate(tempfile)) = 3.19.1 +Provides: bundled(crate(syn)) = 2.0.101 +Provides: bundled(crate(tempfile)) = 3.20.0 Provides: bundled(crate(termcolor)) = 1.4.1 Provides: bundled(crate(textwrap)) = 0.16.2 -Provides: bundled(crate(tokio)) = 1.44.2 +Provides: bundled(crate(tokio)) = 1.45.1 +Provides: bundled(crate(tokio-macros)) = 2.5.0 Provides: bundled(crate(toml)) = 0.5.11 -Provides: bundled(crate(tracing)) = 0.1.41 -Provides: bundled(crate(tracing-attributes)) = 0.1.28 -Provides: bundled(crate(tracing-core)) = 0.1.33 Provides: bundled(crate(unicode-ident)) = 1.0.18 Provides: bundled(crate(uuid)) = 0.8.2 Provides: bundled(crate(vcpkg)) = 0.2.15 @@ -152,8 +158,8 @@ Provides: bundled(crate(windows_x86_64_gnu)) = 0.52.6 Provides: bundled(crate(windows_x86_64_gnullvm)) = 0.52.6 Provides: bundled(crate(windows_x86_64_msvc)) = 0.52.6 Provides: bundled(crate(wit-bindgen-rt)) = 0.39.0 -Provides: bundled(crate(zerocopy)) = 0.7.35 -Provides: bundled(crate(zerocopy-derive)) = 0.7.35 +Provides: bundled(crate(zerocopy)) = 0.8.25 +Provides: bundled(crate(zerocopy-derive)) = 0.8.25 Provides: bundled(crate(zeroize)) = 1.8.1 Provides: bundled(crate(zeroize_derive)) = 1.4.2 ##### Bundled cargo crates list - END ##### @@ -288,8 +294,8 @@ Source3: https://github.com/jemalloc/%{jemalloc_name}/releases/download Source4: 389-ds-base.sysusers # Vendored cargo crates update -Source5: vendor-%{version}-1.tar.gz -Source6: Cargo-%{version}-1.lock +Source5: vendor-%{version}-2.tar.gz +Source6: Cargo-%{version}-2.lock Patch: 0001-Issue-6468-Fix-building-for-older-versions-of-Python.patch Patch: 0002-Issue-6489-After-log-rotation-refresh-the-FD-pointer.patch @@ -315,8 +321,8 @@ Patch: 0021-Issue-6704-UI-Add-error-log-buffering-config.patch Patch: 0022-Issue-6700-CLI-UI-include-superior-objectclasses-all.patch Patch: 0023-Issue-6464-UI-Fixed-spelling-in-cockpit-messages.patch Patch: 0024-Issue-6481-When-ports-that-are-in-use-are-used-to-up.patch -Patch: 0025-Issue-6553-Update-concread-to-0.5.4-and-refactor-sta.patch -Patch: 0026-Security-fix-for-CVE-2025-2487.patch +#Patch: 0025-Issue-6553-Update-concread-to-0.5.4-and-refactor-sta.patch +Patch: 0026-Security-fix-for-CVE-2025-2487.patch %description 389 Directory Server is an LDAPv3 compliant server. The base package includes @@ -762,6 +768,10 @@ exit 0 %endif %changelog +* Thu Jun 05 2025 Viktor Ashirov - 2.6.1-9 +- Reverts: RHEL-80713 - Increased memory consumption caused by NDN cache [rhel-9.6.z] +- Resolves: RHEL-95443 - ns-slapd[xxxx]: segfault at 10d7d0d0 ip 00007ff734050cdb sp 00007ff6de9f1430 error 6 in libslapd.so.0.1.0[7ff733ec0000+1b3000] [rhel-9.6.z] + * Wed Apr 09 2025 Viktor Ashirov - 2.6.1-8 - Resolves: RHEL-83876 - CVE-2025-2487 389-ds-base: null pointer dereference leads to denial of service [rhel-9.6]