Skip to content

Use commons 3.2.2 to pick up BouncyCastle 1.86 - #1190

Merged
vharseko merged 2 commits into
OpenIdentityPlatform:masterfrom
vharseko:bump-commons-3.2.2-snapshot
Oct 21, 2026
Merged

vharseko merged 2 commits into
OpenIdentityPlatform:masterfrom
vharseko:bump-commons-3.2.2-snapshot

Conversation

@vharseko

@vharseko vharseko commented Oct 13, 2026 •

Copy link
Copy Markdown
Member

Bumps commons.version from 3.2.1 to 3.2.2.

commons 3.2.2 manages bc-jdk18on-bom 1.86 (OpenIdentityPlatform/commons#326), which fixes CVE-2026-8763 (critical) and CVE-2026-13506 in bcprov-jdk18on 1.84.

OpenDJ itself uses only the FIPS artifacts, and bc.fips.version is already 2.1.3 on master. The bump matters for OpenICF: it imports opendj-parent as its BOM, and that is where its bcprov-jdk18on version comes from. Trivy flags bcprov-jdk18on-1.84.jar in OpenICF's lib/framework.

Between 3.2.1 and 3.2.2 the commons parent moves two managed versions: the BouncyCastle BOM (1.84 → 1.86) and org.json:json (20231013 → 20260814); no OpenDJ module depends on either. The ban-jvnet-parent enforcer rule that 3.2.2 adds reaches only the projects that inherit the commons parent; OpenDJ imports it as a BOM, so the jaxb-api and jaxb-core dependencies of opendj-core are not affected.

Merge order: the OpenICF PR that moves opendj.version to 5.2.0-SNAPSHOT follows this one.

Also fixes #1196. The retention scan of the JSON access logger that #1196 reports (TimestampFilenameFilter, JsonFileWriter) is commons code, tracked as OpenIdentityPlatform/commons#329 and fixed by OpenIdentityPlatform/commons#330, which 3.2.2 includes; this version update is what brings the fix into OpenDJ.

@vharseko
vharseko requested a review from maximthomas October 13, 2026 10:17
@vharseko vharseko added dependencies Pull requests that update a dependency file security Security fixes / CodeQL code-scanning alerts labels Oct 13, 2026
@vharseko
vharseko force-pushed the bump-commons-3.2.2-snapshot branch from e7b8cb8 to 9b93501 Compare October 14, 2026 07:28
vharseko added a commit that referenced this pull request Oct 14, 2026
…ord it leaves (#1193)

## Problem

Since #1184, `build-docker` and `build-docker-alpine` fail every time,
on master too (run 38390334148) and on every PR (e.g. #1190, run
38382364790):

```
=== [2608 s] pre-roles srs volume
##[error]the root password is left in /dev/shm/opendj-join.4444.YKR3cc of dj-1
```

The phase "pre-roles srs volume"
(`.github/scripts/docker-test-replication.sh`) recreates dj-1 on its
kept volume, which has neither `.initialize-pending` nor
`.rejoin-pending`. So `run.sh` writes the health marker at once and
starts `join.sh` in the background. The test waits for "already a member
of the replication topology" and for `healthy`, which both hold at once,
and runs the password check straight away. At that point `join.sh` is
still in `joined()` (`cleanup_departed`, `publish_state`,
`repair_replication_servers`) and keeps its password file in `/dev/shm`.
Its EXIT trap removes the file only when it ends. The dj-1 log in CI
does not even show "the health check may probe it" yet.

The image itself is fine: the file goes away when the join ends. The
test checks too early. It slipped through because only the role phases,
not the whole script, ran locally in round 4 of #1184.

## Fix

- `bootstrap_ended <container>`: true once no `bootstrap/join.sh` or
`bootstrap/replicate.sh` process is left in the container. It looks for
them in `/proc/*/cmdline`; the bracket in `[j]oin` keeps the pattern
from matching the `sh -c` that greps for it.
- The password check waits up to 300 s for it on each container. A join
that never ends still fails the test, by timeout.

## Testing

- `bash -n` passes.
- The helper was run against a stand-in `bootstrap/join.sh` /
`bootstrap/replicate.sh` (`sleep 8`) in `ubuntu:24.04`, `alpine:3.20`
and the OpenDJ image: "running" while the script runs, "ended" after it.
The image's PID 1 is `/opt/opendj/run.sh`, which does not match.
- The whole Docker replication test was not run locally. The
`build-docker` jobs of this PR are the check.
@vharseko vharseko added bug logging Access, error and debug log publishers and their filtering criteria performance Performance / concurrency / lock-contention work labels Oct 15, 2026
@vharseko vharseko changed the title Use commons 3.2.2-SNAPSHOT to pick up BouncyCastle 1.86 Use commons 3.2.2 to pick up BouncyCastle 1.86 Oct 20, 2026
commons 3.2.2-SNAPSHOT manages bc-jdk18on-bom 1.86 (commons PR OpenIdentityPlatform#326),
which fixes CVE-2026-8763 and CVE-2026-13506 in bcprov-jdk18on 1.84.
OpenDJ itself uses only the FIPS artifacts, already at bc-fips 2.1.3;
the bump reaches OpenICF, which imports opendj-parent as its BOM.
@vharseko
vharseko force-pushed the bump-commons-3.2.2-snapshot branch from c2d251c to b855679 Compare October 20, 2026 10:22
@vharseko
vharseko merged commit c1019f8 into OpenIdentityPlatform:master Oct 21, 2026
27 of 28 checks passed
@vharseko
vharseko deleted the bump-commons-3.2.2-snapshot branch October 21, 2026 06:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug dependencies Pull requests that update a dependency file logging Access, error and debug log publishers and their filtering criteria performance Performance / concurrency / lock-contention work security Security fixes / CodeQL code-scanning alerts

Projects

None yet

2 participants