auto
  
   ˆƒM=Ã¿Ä ¨    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
 <head>
  <title>Index of /FSS-OZR/root/proc/self/cwd/sys/dev/char/7:2</title>
 </head>
 <body>
<h1>Index of /FSS-OZR/root/proc/self/cwd/sys/dev/char/7:2</h1>
  <table>
   <tr><th valign="top">&nbsp;</th><th><a href="?C=N;O=A">Name</a></th><th><a href="?C=M;O=A">Last modified</a></th><th><a href="?C=S;O=A">Size</a></th><th><a href="?C=D;O=A">Description</a></th></tr>
   <tr><th colspan="5"><hr></th></tr>
<tr><td valign="top">&nbsp;</td><td><a href="/FSS-OZR/root/proc/self/cwd/sys/dev/char/">Parent Directory</a>       </td><td>&nbsp;</td><td align="right">  - </td><td>&nbsp;</td></tr>
<tr><td valign="top">&nbsp;</td><td><a href="uevent">uevent</a>                 </td><td align="right">2026-10-10 23:12  </td><td align="right">4.0K</td><td>&nbsp;</td></tr>
<tr><td valign="top">&nbsp;</td><td><a href="dev">dev</a>                    </td><td align="right">2026-10-10 23:12  </td><td align="right">4.0K</td><td>&nbsp;</td></tr>
<tr><td valign="top">&nbsp;</td><td><a href="subsystem/">subsystem/</a>             </td><td align="right">2026-10-10 23:05  </td><td align="right">  - </td><td>&nbsp;</td></tr>
<tr><td valign="top">&nbsp;</td><td><a href="power/">power/</a>                 </td><td align="right">2026-10-10 23:08  </td><td align="right">  - </td><td>&nbsp;</td></tr>
   <tr><th colspan="5"><hr></th></tr>
</table>
</body></html>
     ˆ¾Áƒh¹¿Ä      1
  !   ˆl–ß=¿JÅ4Å2 [¸!\jbÑ¿Â72ÀÅ  H    # Generated with Aspell Dicts "proc" script version 0.60.4
add en.multi
  *   ˆl–Ü4ý( ©³( 	Å€fàB¦-ÿÃƒqÇÚ_†I|¥�+ÂÇ &    /* SPDX-License-Identifier: GPL-2.0-or-later */
/*
 * Key-agreement Protocol Primitives (KPP)
 *
 * Copyright (c) 2016, Intel Corporation
 * Authors: Salvatore Benedetto <salvatore.benedetto@intel.com>
 */
#ifndef _CRYPTO_KPP_INT_H
#define _CRYPTO_KPP_INT_H
#include <crypto/kpp.h>
#include <crypto/algapi.h>

/**
 * struct kpp_instance - KPP template instance
 * @free: Callback getting invoked upon instance destruction. Must be set.
 * @s: Internal. Generic crypto core instance state properly layout
 *     to alias with @alg as needed.
 * @alg: The &struct kpp_alg implementation provided by the instance.
 */
struct kpp_instance {
	void (*free)(struct kpp_instance *inst);
	union {
		struct {
			char head[offsetof(struct kpp_alg, base)];
			struct crypto_instance base;
		} s;
		struct kpp_alg alg;
	};
};

/**
 * struct crypto_kpp_spawn - KPP algorithm spawn
 * @base: Internal. Generic crypto core spawn state.
 *
 * Template instances can get a hold on some inner KPP algorithm by
 * binding a &struct crypto_kpp_spawn via
 * crypto_grab_kpp(). Transforms may subsequently get instantiated
 * from the referenced inner &struct kpp_alg by means of
 * crypto_spawn_kpp().
 */
struct crypto_kpp_spawn {
	struct crypto_spawn base;
};

/*
 * Transform internal helpers.
 */
static inline void *kpp_request_ctx(struct kpp_request *req)
{
	return req->__ctx;
}

static inline void kpp_set_reqsize(struct crypto_kpp *kpp,
				   unsigned int reqsize)
{
	crypto_kpp_alg(kpp)->reqsize = reqsize;
}

static inline void *kpp_tfm_ctx(struct crypto_kpp *tfm)
{
	return tfm->base.__crt_ctx;
}

static inline void kpp_request_complete(struct kpp_request *req, int err)
{
	req->base.complete(&req->base, err);
}

static inline const char *kpp_alg_name(struct crypto_kpp *tfm)
{
	return crypto_kpp_tfm(tfm)->__crt_alg->cra_name;
}

/*
 * Template instance internal helpers.
 */
/**
 * kpp_crypto_instance() - Cast a &struct kpp_instance to the corresponding
 *                         generic &struct crypto_instance.
 * @inst: Pointer to the &struct kpp_instance to be cast.
 * Return: A pointer to the &struct crypto_instance embedded in @inst.
 */
static inline struct crypto_instance *kpp_crypto_instance(
	struct kpp_instance *inst)
{
	return &inst->s.base;
}

/**
 * kpp_instance() - Cast a generic &struct crypto_instance to the corresponding
 *                  &struct kpp_instance.
 * @inst: Pointer