unknown
     ˆÅÄƒÍ3ÃÀÆ 3    /* SPDX-License-Identifier: GPL-2.0-or-later */
/*
 * Asynchronous Compression operations
 *
 * Copyright (c) 2016, Intel Corporation
 * Authors: Weigang Li <weigang.li@intel.com>
 *          Giovanni Cabiddu <giovanni.cabiddu@intel.com>
 */
#ifndef _CRYPTO_ACOMP_INT_H
#define _CRYPTO_ACOMP_INT_H
#include <crypto/acompress.h>

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

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

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

static inline const char *acomp_alg_name(struct crypto_acomp *tfm)
{
	return crypto_acomp_tfm(tfm)->__crt_alg->cra_name;
}

static inline struct acomp_req *__acomp_request_alloc(struct crypto_acomp *tfm)
{
	struct acomp_req *req;

	req = kzalloc(sizeof(*req) + crypto_acomp_reqsize(tfm), GFP_KERNEL);
	if (likely(req))
		acomp_request_set_tfm(req, tfm);
	return req;
}

static inline void __acomp_request_free(struct acomp_req *req)
{
	kfree_sensitive(req);
}

/**
 * crypto_register_acomp() -- Register asynchronous compression algorithm
 *
 * Function registers an implementation of an asynchronous
 * compression algorithm
 *
 * @alg:	algorithm definition
 *
 * Return:	zero on success; error code in case of error
 */
int crypto_register_acomp(struct acomp_alg *alg);

/**
 * crypto_unregister_acomp() -- Unregister asynchronous compression algorithm
 *
 * Function unregisters an implementation of an asynchronous
 * compression algorithm
 *
 * @alg:	algorithm definition
 */
void crypto_unregister_acomp(struct acomp_alg *alg);

int crypto_register_acomps(struct acomp_alg *algs, int count);
void crypto_unregister_acomps(struct acomp_alg *algs, int count);

#endif
  	   ˆÅÄ0ÀÆ     �ÂÀÆ      File not found.
  9   ˆl–Ðz¾””ÔD¨ 	Å€zàžS�ÿÅƒh¹a–Ðz¾””ÔD¨ 	ÅŒ†àœS�ÿÈ      0x2F8
  2   !ˆl–ßi~”Je¶…8 ƒp\dJbÑ¿Ç…]u—?_ŒuÐb&=Ly[Ï¿ÀÊ ?÷     !ý7zXZ  æÖ´F !   t/å£åjÙïþ] ?‘E„h=‰¦Úœ¦¬.+ËÉ“-ýåü‚Ëã‡ÑõyzK¨90àzÚø¹ÞHœJë ¢ˆdžZ'gHÄÚŒ"üÈ¥(É­ðIÙëUÆ£�ïÝÛø›ý©ðDôÿÌ‹o‰C�Ëbñz.BýpÕ†¬érI¥�RÚ¢OP¥sdW¢gxŽ¤£íF£Àú¯†óÈXã„Ù¢æCBx¼ÕÜ¦àöVFY3°ø4Å²/6c±n´Æ™U¶ñOæMª–¿jûÝŸ¾«¿˜4I•RÓ„LX‹n<CÂ@4t°å¨F
i~�|œ7¨Ïî•öTQ½ü‘�+G(TÂƒ-–ìþÝ¿—Ã5Nœ^>å,ÅÊ\¡ðŽ;HâQçqýªÿ9ºU ÿhOïIŸ5ãŽcÊÞ¬5³iñ.þ8è©´®.¼#È§-Z6{Kv5ê^ôºŸ•Tó­cÂÇw9h1;tÇDjÉòa~�îéÓ\“å¿ÇJI§XH¼ŒµApo³K%�›æbä¦n�Û
­“›û693a�_àà)jÞ¬¹ï³ÅŠ,ëÄS-SûEYkUìì•iÉuK�WäÕ÷˜+J“$±›\¸�ìÎœ(ºé°T¿Üi'ØƒSWä§É±H%Äû£†™zU†6ªû!=NÞ”/»nîÿ9oM×†…JSTiØÒ8B–-)”ß-cÐ¯±ä?”~Y†@š½²’2ç ,Í4áÞä\®Â{{"ïý±0.V Ûb’/íezé…íT0Í%;q�Ïžª|çBª/Á÷’0£júD(v¥ècÆº|î®U³«ïcæ@&­ÞsÙ¯ü´A�—³óòM�:ð%GŠÅ”ªáçêZÑÂåz'šAñ˜�O�7eÈŽŸu9ÐU>aô/lþyS¥ƒÙté�í–&«ž
Ú§—Xæ+¡˜¦’T<gŠ?2/±
×Ý„zËT/¦&ßø.Y’qàÛ©ñcÓùq	×ËÆŠ@¸¼%ßáŽÆÈóZvèç!)ãGùý9QR"iÒ‹ð’Éõ5×CXàéE'ÏUÌˆb×Üy«7–¬®^ö¹ì«wRöÛÏ^ŠD™lSI´s7MÓE°Ò›€lg$€ÔÔ×Q•ûXáêóàrKÕumí@ûòÄ$J°–=%¤)aÌt©q£ÓM?;«yõ[ïÜ|„
<b4¾ ¤¢Qhó�÷þS)æäK«æô˜¿,[Äúµ®o¹§vë³7-KÅ4ý=$ì€	Ð‡�;²¦ åêÈ€à(­õÄ�›o’gù@GúË[S¸�ƒVNˆ;*-Éò`ª¬²;c2écTž5$©~Ñøù�’HèÍ(oZÃÛË'•^ßÇ¥ÿ5B çÿf’º˜ˆjª³×ÀÂÛò`ób`²Q¾ásæE6•Â�ÀX~¸hg9Î�ò²ùÜñ—Vw:ó²­Yâ€Î-ö5ïÿöXY×¾„àŠðP
‹núp&STP¶mƒI˜ô`\±qµº�x¿EB‹’ý_a«ªKo|£³‡>h¬ÓtÅÚàZå�=ðÜA‘Ï6»¯S«)v.wÀÑrww¾^ŒîŠ#«KõÝºF7Æ²dÂRß°ÁâsŸ‹¢\ö4OKÿ¶oQZhœî›@r'áÖ�4Šï�…ÓY_bZLfj(òö\ÏÎJ£j:ážœåY-1^¼D§˜�Ï…ðHäbÎáìˆ×èi;€Tž;ÏX€@ÐµT©l‡¬¹é:¶5*ý.¢õ zš<c×¬~Ò×ôWÃ‡�€Êýrz‡ì6,'¢|CF�òÿ;+©Lh¾AÊ¶35î*‹GÖÕ�ñðw	¹4Ÿu·Åº_üäˆI¯ë3çU¶<™Ï¥üÅêR‚#KKûï’¢	™;SÙ IŒüœÆ¶Ü‘IÓ¶ô˜�×`VNòéÅð`Ìí©±pW³†Jïpé¥<o_9š8}Ÿ^àv‹™oR¸Ó?0.ÂÅi¾`ÍÜ˜iq¸%„¡äé+|`�ùZždÛOü�?#úòéZ'_F7z‡ —Æ¨›�=Ö�>¦'»!L±Ì‹œØß«˜™‹´è[Â`An˜´vË¹éy­·”ÜŸ�TÏñî”þZˆ‡<3¹ë	ÓûurÃü7)TD¤ÔÀ3(ò"¿`œ˜¨iõyma•Ç|´©�iÉ~‚4¿à1@0ÅÖ¾ñ³ûÙ)Ì<Ê¯Ó“'í¶BtzNçŸÐÉÞ‘J‹·e÷¹žC¹4Ôòòª$3«´`~ßD`
x¬ÑÐ©b/ë	5j\� ô?È—ÙEÖ¢¤?ŸñgLÐ°
ž<¼ (ÅyÙPO¡«Í¡"Îg;�¬<ñ˜œ?OM 8†dg|#KÌ…0	ÇMMÂ,sô˜é±;˜v„Î6ô\b�W9àãh”«>
ÁÞÍ•Œú©¥m¸®MèH¹ù–4L»ó4 ½©Šº•ìZ¼ö|þ à¬·÷÷žºÊµ&œd¯š /(ldÄ\J5CÇ2µúûŠÒ*ñë#¢jñÑÑp82DW4`N/XîDf}¥E²�ÄôZy¼…nÙn£|¸�	_±|7Éù