ceph-csi/vendor/github.com/gemalto/kmip-go
dependabot[bot] 3bbd20a1bc rebase: bump the github-dependencies group with 3 updates
Bumps the github-dependencies group with 3 updates: [github.com/aws/aws-sdk-go](https://github.com/aws/aws-sdk-go), [github.com/gemalto/kmip-go](https://github.com/gemalto/kmip-go) and [github.com/onsi/ginkgo/v2](https://github.com/onsi/ginkgo).


Updates `github.com/aws/aws-sdk-go` from 1.45.12 to 1.45.16
- [Release notes](https://github.com/aws/aws-sdk-go/releases)
- [Commits](https://github.com/aws/aws-sdk-go/compare/v1.45.12...v1.45.16)

Updates `github.com/gemalto/kmip-go` from 0.0.9 to 0.0.10
- [Release notes](https://github.com/gemalto/kmip-go/releases)
- [Commits](https://github.com/gemalto/kmip-go/compare/v0.0.9...v0.0.10)

Updates `github.com/onsi/ginkgo/v2` from 2.12.0 to 2.12.1
- [Release notes](https://github.com/onsi/ginkgo/releases)
- [Changelog](https://github.com/onsi/ginkgo/blob/master/CHANGELOG.md)
- [Commits](https://github.com/onsi/ginkgo/compare/v2.12.0...v2.12.1)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: github-dependencies
- dependency-name: github.com/gemalto/kmip-go
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: github-dependencies
- dependency-name: github.com/onsi/ginkgo/v2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: github-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-09-26 12:52:26 +00:00
..
internal/kmiputil rebase: vendor files required for kmip 2022-08-18 07:41:42 +00:00
kmip14 rebase: make use of v0.0.8 of kmip go client 2022-10-19 09:27:37 +00:00
ttlv rebase: make use of v0.0.8 of kmip go client 2022-10-19 09:27:37 +00:00
.dockerignore rebase: vendor files required for kmip 2022-08-18 07:41:42 +00:00
.gitignore rebase: vendor files required for kmip 2022-08-18 07:41:42 +00:00
.golangci.yml rebase: bump the github-dependencies group with 3 updates 2023-09-26 12:52:26 +00:00
attributes.go rebase: vendor files required for kmip 2022-08-18 07:41:42 +00:00
base_objects.go rebase: make use of v0.0.8 of kmip go client 2022-10-19 09:27:37 +00:00
docker-compose.yml rebase: vendor files required for kmip 2022-08-18 07:41:42 +00:00
Dockerfile rebase: vendor files required for kmip 2022-08-18 07:41:42 +00:00
docs.go rebase: vendor files required for kmip 2022-08-18 07:41:42 +00:00
errors.go rebase: vendor files required for kmip 2022-08-18 07:41:42 +00:00
LICENSE rebase: vendor files required for kmip 2022-08-18 07:41:42 +00:00
Makefile rebase: Bump github.com/gemalto/kmip-go from 0.0.8 to 0.0.9 2023-03-07 12:11:59 +00:00
managed_objects.go rebase: vendor files required for kmip 2022-08-18 07:41:42 +00:00
op_create_key_pair.go rebase: vendor files required for kmip 2022-08-18 07:41:42 +00:00
op_create.go rebase: vendor files required for kmip 2022-08-18 07:41:42 +00:00
op_destroy.go rebase: make use of v0.0.8 of kmip go client 2022-10-19 09:27:37 +00:00
op_discover_versions.go rebase: vendor files required for kmip 2022-08-18 07:41:42 +00:00
op_get.go rebase: make use of v0.0.8 of kmip go client 2022-10-19 09:27:37 +00:00
op_register.go rebase: vendor files required for kmip 2022-08-18 07:41:42 +00:00
README.md rebase: vendor files required for kmip 2022-08-18 07:41:42 +00:00
requests.go rebase: vendor files required for kmip 2022-08-18 07:41:42 +00:00
types_messages.go rebase: vendor files required for kmip 2022-08-18 07:41:42 +00:00
types.go rebase: vendor files required for kmip 2022-08-18 07:41:42 +00:00

kmip-go GoDoc Go Report Card Build

kmip-go is a go implemenation of KMIP protocol primitives. It supports marshaling data in TTLV, XML, or JSON encodings to and from go values and structs. It can be used to implement KMIP clients or servers.

Installation

go get github.com/gemalto/kmip-go

Or, to just install the ppkmip pretty printing tool:

go install github.com/gemalto/kmip-go/cmd/ppkmip

Packages

The ttlv package implements the core encoder and decoder logic.

The kmip14 package contains constants for all the tags, types, enumerations and bitmasks defined in the KMIP 1.4 specification. It also contains mappings from these values to the normalized names used in the JSON and XML encodings, and the canonical names used in Attribute structures.
The kmip14 definitions are all automatically registered with ttlv.DefaultRegistry.

The kmip20 package adds additional enumeration values from the 2.0 specification. It is meant to be registered on top of the 1.4 definitions.

The root package defines golang structures for some of the significant Structure definitions in the 1.4 specification, like Attributes, Request, Response, etc. It is incomplete, but can be used as an example for defining other structures. It also contains an example of a client and server.

cmd/kmipgen is a code generation tool which generates the tag and enum constants from a JSON specification input. It can also be used independently in your own code to generate additional tags and constants. make install to build and install the tool. See kmip14/kmip_1_4.go for an example of using the tool.

cmd/kmipgen is a tool for pretty printing kmip values. It can accept KMIP input from stdin or files, encoded in TTLV, XML, or JSON, and output in a variety of formats. make install to intall the tool, and ppkmip --help to see usage.

Contributing

To build, be sure to have a recent go SDK, and make. Run make tools to install other dependencies.

There is also a dockerized build, which only requires make and docker-compose: make docker. You can also do make fish or make bash to shell into the docker build container.

Merge requests are welcome! Before submitting, please run make and make sure all tests pass and there are no linter findings.