Skip to content

Percona-Lab/libkmip

libkmip

libkmip is an ISO C11 implementation of the Key Management Interoperability Protocol (KMIP), an OASIS communication standard for the management of objects stored and maintained by key management systems. KMIP defines how key management operations and operation data should be encoded and communicated, between client and server applications. Supported operations include creating, retrieving, and destroying keys. Supported object types include:

  • symmetric and asymmetric encryption keys

For more information on KMIP, check out the OASIS KMIP Technical Committee and the OASIS KMIP Documentation.

For more information on libkmip, check out the project Documentation.

Build

Configure and build with CMake:

cmake -S . -B cmake-build-debug -DCMAKE_BUILD_TYPE=Debug
cmake --build cmake-build-debug -j

By default, BUILD_KMIP_TESTS is OFF.

Run Demos

Demo binaries are created in cmake-build-debug/libkmip/src/. For example:

./cmake-build-debug/libkmip/src/demo_query

Run Tests

Enable tests at configure time, then run them with CTest:

cmake -S . -B cmake-build-tests -DCMAKE_BUILD_TYPE=Debug -DBUILD_KMIP_TESTS=ON
cmake --build cmake-build-tests -j
ctest --test-dir cmake-build-tests --output-on-failure

BUILD_KMIP_TESTS=ON builds libkmip/src/tests.c into the kmip_tests target and registers it with CTest.

Build with ASAN

AddressSanitizer can be enabled with WITH_ASAN=ON (Clang/GCC):

cmake -S . -B cmake-build-asan -DCMAKE_BUILD_TYPE=Debug -DWITH_ASAN=ON -DBUILD_KMIP_TESTS=ON
cmake --build cmake-build-asan -j
ctest --test-dir cmake-build-asan --output-on-failure

Installation

Install using CMake:

cmake -S . -B cmake-build-release -DCMAKE_BUILD_TYPE=Release
cmake --build cmake-build-release -j
cmake --install cmake-build-release

To install to a custom prefix, add -DCMAKE_INSTALL_PREFIX=/your/prefix/path when configuring.

See Installation for more information.

About

No description, website, or topics provided.

Resources

License

Unknown and 2 other licenses found

Licenses found

Unknown
LICENSE
Apache-2.0
LICENSE.APACHE
BSD-3-Clause
LICENSE.BSD

Stars

Watchers

Forks

Packages

 
 
 

Contributors