MCPcopy Create free account
hub / github.com/ceph/ceph / add_fscrypt_key

Method add_fscrypt_key

src/client/Client.cc:18473–18491  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

18471
18472#if defined(__linux__)
18473int Client::add_fscrypt_key(const char *key_data, int key_len,
18474 char* keyid, int user)
18475{
18476 auto& key_store = fscrypt->get_key_store();
18477
18478 FSCryptKeyHandlerRef kh;
18479
18480 int r = key_store.create((const char *)key_data, key_len, kh, user);
18481 if (r < 0) {
18482 ldout(cct, 0) << __func__ << "(): failed to create a new key: r=" << r << dendl;
18483 return r;
18484 }
18485
18486 auto& k = kh->get_key();
18487 if (keyid) {
18488 memcpy(keyid, &k->get_identifier().raw, FSCRYPT_KEY_IDENTIFIER_SIZE);
18489 }
18490 return 0;
18491}
18492
18493int Client::remove_fscrypt_key(fscrypt_remove_key_arg* kid, int user)
18494{

Callers 2

ceph_add_fscrypt_keyFunction · 0.80
fuse_ll_ioctlFunction · 0.80

Calls 2

createMethod · 0.45
get_keyMethod · 0.45

Tested by

no test coverage detected