fix(idp): 389ds patches

This commit is contained in:
arcnmx 2024-04-09 11:06:15 -07:00
parent 9a65b1c8dc
commit 31461743b6
2 changed files with 48 additions and 1 deletions

View file

@ -1,5 +1,28 @@
final: prev: {
final: prev: let
inherit (final) lib;
in {
krb5-ldap = final.krb5.override {
withLdap = true;
};
_389-ds-base = let
inherit (prev) _389-ds-base;
drv = _389-ds-base.overrideAttrs (old: {
patches = old.patches or [ ] ++ [
../packages/389-ds-base-fix.patch
(final.fetchpatch {
name = "389-ds-base-5973-f_un.patch";
url = "https://github.com/389ds/389-ds-base/pull/5974.patch";
sha256 = "sha256-WtctQPZVZSAbPg2tjY7wD8ysI4SKkfyS5tQx0NPhSmY=";
})
(final.fetchpatch {
name = "389-ds-base-5962-f_un.patch";
url = "https://github.com/389ds/389-ds-base/pull/6089.patch";
sha256 = "sha256-b0HSaDjuEUKERIXKg8np+lZDdZNmrCTAXybJzF+0hq0=";
})
];
meta = old.meta // {
broken = false;
};
});
in if _389-ds-base.meta.broken or false && _389-ds-base.version == "2.4.3" then drv else lib.warn "389-ds patch/overlay no longer needed" _389-ds-base;
}

View file

@ -0,0 +1,24 @@
diff --git a/ldap/servers/slapd/back-ldbm/cache.c b/ldap/servers/slapd/back-ldbm/cache.c
index 0dd53d72b..782987195 100644
--- a/ldap/servers/slapd/back-ldbm/cache.c
+++ b/ldap/servers/slapd/back-ldbm/cache.c
@@ -533,7 +533,6 @@ dbgec_test_if_entry_pointer_is_valid(void *e, void *prev, int slot, int line)
*/
slapi_log_err(SLAPI_LOG_FATAL, "dbgec_test_if_entry_pointer_is_valid", "cache.c[%d]: Wrong entry address: %p Previous entry address is: %p hash table slot is %d\n", line, e, prev, slot);
slapi_log_backtrace(SLAPI_LOG_FATAL);
- *(char*)23 = 1; /* abort() somehow corrupt gdb stack backtrace so lets generate a SIGSEGV */
abort();
}
}
diff --git a/ldap/servers/slapd/tools/dbscan.c b/ldap/servers/slapd/tools/dbscan.c
index abfd0113b..159096bd5 100644
--- a/ldap/servers/slapd/tools/dbscan.c
+++ b/ldap/servers/slapd/tools/dbscan.c
@@ -1127,7 +1127,6 @@ importdb(const char *dbimpl_name, const char *filename, const char *dump_name)
if (!dump) {
printf("Failed to open dump file %s. Error %d: %s\n", dump_name, errno, strerror(errno));
- fclose(dump);
return 1;
}