Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/github-actions.yml
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ jobs:
uses: actions/checkout@v4
with:
repository: IBM/OpenCryptographyKitC
ref: f3dde51a02675270adf994dc22c7f2853dc86ba6 # Branch V_8.9.18 on Jan 2nd 2026.
ref: dc6dbf5c79365cba7092f917162124eb24c2b5a6 # Branch V_8.9.21 on May 19th 2026.
path: ${{ github.workspace }}/OpenCryptographyKitC
- name: Compile Open Cryptography Kit C
run: |
Expand Down
3 changes: 2 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,8 @@ Follow these steps to build the `OpenJCEPlus` and `OpenJCEPlusFIPS` providers al

Based on the platform, the library file (i.e., `$LIBJGSKIT_LIBRARY`) is named differently. The values are as follows:
* AIX/Linux: `libjgsk8iccs_64.so`
* Mac OS X: `libjgsk8iccs.dylib`
* Mac OS X (aarch64): `libjgsk8iccs_64.dylib`
* Mac OS X (x86-64): `libjgsk8iccs.dylib`
* Windows: `jgsk8iccs_64.dll`

Create the `lib64` directory and copy the `$LIBJGSKIT_LIBRARY` library to that location:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -153,7 +153,9 @@ static void preloadOCK() {
// Mac OS X: lib<OCK_CORE_LIBRARY_NAME>_64.so
// Windows* amd64: <OCK_CORE_LIBRARY_NAME>_64.dll
// --------------------------------------------------------------
if (osName.equals("Mac OS X")) {
if (osName.equals("Mac OS X") && osArch.equals("aarch64")) {
loadFile = new File(ockPath, "lib" + OCK_CORE_LIBRARY_NAME + "_64.dylib");
} else if (osName.equals("Mac OS X")) {
loadFile = new File(ockPath, "lib" + OCK_CORE_LIBRARY_NAME + ".dylib");
} else if (osName.startsWith("Windows") && osArch.equals("amd64")) {
loadFile = new File(ockPath, OCK_CORE_LIBRARY_NAME + "_64.dll");
Expand Down
7 changes: 6 additions & 1 deletion src/main/native/ock/jgskit.mac.mak
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,12 @@ NATIVE_DIR = ${NATIVE_TOPDIR}/ock
NATIVE_LIB_HOME = ${GSKIT_HOME}
JNI_CLASS = ${TOPDIR}/src/main/java/com/ibm/crypto/plus/provider/ock/NativeOCKImplementation.java
JNI_HEADER = com_ibm_crypto_plus_provider_ock_NativeOCKImplementation.h
TARGET_LIBS := -L ${GSKIT_HOME}/lib64 -l jgsk8iccs

ifeq (${PLATFORM},aarch64-mac)
TARGET_LIBS := -L ${GSKIT_HOME}/lib64 -l jgsk8iccs_64
else
TARGET_LIBS := -L ${GSKIT_HOME}/lib64 -l jgsk8iccs
endif

OBJS = \
${HOSTOUT}/AESKeyWrap.o \
Expand Down
10 changes: 4 additions & 6 deletions utils.groovy
Original file line number Diff line number Diff line change
Expand Up @@ -65,11 +65,7 @@ def getOCKTarget(hardware, software) {
def getBinaries(hardware, software) {
def ockRelease = OCK_RELEASE
if (ockRelease == "") {
if (hardware == "s390x") { // covers LoZ and z/OS
ockRelease = "20260219_8.9.21"
} else {
ockRelease = "20251128_8.9.18"
}
ockRelease = "20260415_8.9.22"
}
def target = getOCKTarget(hardware, software)
def gskit_bin = "https://na.artifactory.swg-devops.com/artifactory/sec-gskit-javasec-generic-local/gskit8/$ockRelease/$target/jgsk_crypto.tar"
Expand Down Expand Up @@ -97,7 +93,9 @@ def getBinaries(hardware, software) {
}

def jgsk8Lib = 'libjgsk8iccs_64.so'
if (target.contains('osx')) {
if (target == 'osx64_arm') {
jgsk8Lib = 'libjgsk8iccs_64.dylib'
} else if (target == 'osx64_x86') {
jgsk8Lib = 'libjgsk8iccs.dylib'
} else if (target.contains('win')) {
jgsk8Lib = 'jgsk8iccs_64.dll'
Expand Down
Loading