Lines Matching defs:index_key

163 static void hash_key_type_and_desc(struct keyring_index_key *index_key)
167 const char *description = index_key->description;
171 int n, desc_len = index_key->desc_len;
173 type = (unsigned long)index_key->type;
176 piece = (unsigned long)index_key->domain_tag;
203 if (index_key->type != &key_type_keyring && (hash & fan_mask) == 0)
205 else if (index_key->type == &key_type_keyring && (hash & fan_mask) != 0)
207 index_key->hash = hash;
214 void key_set_index_key(struct keyring_index_key *index_key)
217 size_t n = min_t(size_t, index_key->desc_len, sizeof(index_key->desc));
219 memcpy(index_key->desc, index_key->description, n);
221 if (!index_key->domain_tag) {
222 if (index_key->type->flags & KEY_TYPE_NET_DOMAIN)
223 index_key->domain_tag = current->nsproxy->net_ns->key_domain;
225 index_key->domain_tag = &default_domain_tag;
228 hash_key_type_and_desc(index_key);
270 const struct keyring_index_key *index_key = data;
273 int desc_len = index_key->desc_len, n = sizeof(chunk);
278 return index_key->hash;
280 return index_key->x;
282 return (unsigned long)index_key->type;
284 return (unsigned long)index_key->domain_tag;
287 if (desc_len <= sizeof(index_key->desc))
290 d = index_key->description + sizeof(index_key->desc);
292 desc_len -= sizeof(index_key->desc);
306 return keyring_get_key_chunk(&key->index_key, level);
311 const struct keyring_index_key *index_key = data;
314 return key->index_key.type == index_key->type &&
315 key->index_key.domain_tag == index_key->domain_tag &&
316 key->index_key.desc_len == index_key->desc_len &&
317 memcmp(key->index_key.description, index_key->description,
318 index_key->desc_len) == 0;
328 const struct keyring_index_key *a = &key_a->index_key;
584 if (key->type != ctx->index_key.type) {
653 &ctx->index_key);
680 ctx->index_key.type->name,
681 ctx->index_key.description);
687 if (ctx->index_key.description)
688 key_set_index_key(&ctx->index_key);
694 keyring_compare_object(keyring, &ctx->index_key)) {
742 if ((shortcut->index_key[0] & ASSOC_ARRAY_FAN_MASK) != 0)
943 .index_key.type = type,
944 .index_key.description = description,
945 .index_key.desc_len = strlen(description),
1099 const struct keyring_index_key *index_key)
1107 keyring->serial, index_key->type->name, index_key->description);
1110 index_key);
1216 .index_key = A->index_key,
1237 const struct keyring_index_key *index_key)
1249 if (index_key->type == &key_type_keyring)
1259 const struct keyring_index_key *index_key)
1283 if (index_key->type == &key_type_keyring)
1293 const struct keyring_index_key *index_key,
1300 keyring->serial, index_key->type->name, index_key->description);
1302 BUG_ON(index_key->desc_len == 0);
1316 index_key,
1383 const struct keyring_index_key *index_key,
1388 BUG_ON(index_key->type == NULL);
1389 kenter("%d,%s,", keyring->serial, index_key->type->name);
1400 if (index_key->type == &key_type_keyring)
1445 ret = __key_link_lock(keyring, &key->index_key);
1449 ret = __key_link_begin(keyring, &key->index_key, &edit);
1461 __key_link_end(keyring, &key->index_key, edit);
1492 &key->index_key);
1607 ret = __key_move_lock(from_keyring, to_keyring, &key->index_key);
1613 ret = __key_link_begin(to_keyring, &key->index_key, &to_edit);
1631 __key_link_end(to_keyring, &key->index_key, to_edit);