/* request a key with auxiliary data for the upcaller */
struct key* request_key_with_auxdata(struct key_type *type, const char *description, const void *callout_info, size_t callout_len, void *aux)
/* request a key with auxiliary data for the upcaller */
struct key* request_key_with_auxdata(struct key_type *type, const char *description, const void *callout_info, size_t callout_len, void *aux)
{
	struct key *key;
	int ret;
	key = request_key_and_link(type, description, callout_info, callout_len,
				   aux, NULL, KEY_ALLOC_IN_QUOTA);
	if (!IS_ERR(key)) {
		ret = wait_for_key_construction(key, false);
		if (ret < 0) {
			key_put(key);
			return ERR_PTR(ret);
		}
	}
	return key;
}