]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/commit
rgw/kms/vault - need libicu to make canonical json for encryption contexts.
authorMarcus Watts <mwatts@redhat.com>
Mon, 7 Dec 2020 22:20:49 +0000 (17:20 -0500)
committerMarcus Watts <mwatts@redhat.com>
Fri, 5 Mar 2021 22:15:24 +0000 (17:15 -0500)
commit8afd92425b69c7556bda040c02833d3a4a39210d
tree2d6acbbc50f0e4c51ddd2d08959efbf6e3d5f04a
parentb89f585df3bbbcce9a98ca9365a475b4815cc298
rgw/kms/vault - need libicu to make canonical json for encryption contexts.

for encryption, aws s3 provides an "encryption" context to vary per-object
keys.  The encryption context is a base64 encoded json structure, which
must be converted to a determinstic form -- "canonical json".  This
requires converting all strings to a normalized canonical form: "utf-8 nfc",
it also requires thta keys in objects be sorted in a fixed order; so some
form of sorting based on nfc.

It turns out that libicu was the best way to produce utf-8 nfc (boost also
provides a mechanism, but it has many quirks).  So, here are the hooks
to pull the system libicu into the build.

Fixes: http://tracker.ceph.com/issues/48746
Signed-off-by: Marcus Watts <mwatts@redhat.com>
ceph.spec.in
debian/control
src/rgw/CMakeLists.txt