/tools/perf/scripts/python/

d71b0e9c0028f3af910226f995e0074873e16979'/> LITMUS^RT and MC^2 V0 support for the pandaboard.Christopher Joseph Kenna
aboutsummaryrefslogblamecommitdiffstats
path: root/crypto/internal.h
blob: d4384b08ab29563b9d529666c2c01f5766c4cd5f (plain) (tree)
1
2
3
4
5
6
7
8
9



                                                             
                                                              


                                                                             
                                                                            




                          

                          
                             



                            
                       
                         
                         
                           
                        
                       
                       
 








                                   


                       



                                     
                 

  

                                          
                                                  
 

                                   
                                   


                                         

                                         

      
                                                                        
 
                                

 
                                                                          



                                
                                                          
                                                                           
                                                                               
 


                                                     


                                                      
                                                                                

                                                                              
                                                               
                                                  
 
                                              

                                                                       

                                                            


                                                                      

                                                                               
 

                                                          
                                                      
 





                                                                      









                                                                




                                                          









                                                                     
                                                            
 
                                                            

 

                                
/*
 * Cryptographic API.
 *
 * Copyright (c) 2002 James Morris <jmorris@intercode.com.au>
 * Copyright (c) 2005 Herbert Xu <herbert@gondor.apana.org.au>
 *
 * This program is free software; you can redistribute it and/or modify it
 * under the terms of the GNU General Public License as published by the Free
 * Software Foundation; either version 2 of the License, or (at your option)
 * any later version.
 *
 */
#ifndef _CRYPTO_INTERNAL_H
#define _CRYPTO_INTERNAL_H

#include <crypto/algapi.h>
#include <linux/completion.h>
#include <linux/mm.h>
#include <linux/highmem.h>
#include <linux/interrupt.h>
#include <linux/init.h>
#include <linux/list.h>
#include <linux/module.h>
#include <linux/kernel.h>
#include <linux/notifier.h>
#include <linux/rwsem.h>
#include <linux/slab.h>
#include <linux/fips.h>

/* Crypto notification events. */
enum {
	CRYPTO_MSG_ALG_REQUEST,
	CRYPTO_MSG_ALG_REGISTER,
	CRYPTO_MSG_ALG_UNREGISTER,
	CRYPTO_MSG_TMPL_REGISTER,
	CRYPTO_MSG_TMPL_UNREGISTER,
};

struct crypto_instance;
struct crypto_template;

struct crypto_larval {
	struct crypto_alg alg;
	struct crypto_alg *adult;
	struct completion completion;
	u32 mask;
};

extern struct list_head crypto_alg_list;
extern struct rw_semaphore crypto_alg_sem;
extern struct blocking_notifier_head crypto_chain;

#ifdef CONFIG_PROC_FS
void __init crypto_init_proc(void);
void __exit crypto_exit_proc(void);
#else
static inline void crypto_init_proc(void)
{ }
static inline void crypto_exit_proc(void)
{ }
#endif

static inline unsigned int crypto_cipher_ctxsize(struct crypto_alg *alg)
{
	return alg->cra_ctxsize;
}

static inline unsigned int crypto_compress_ctxsize(struct crypto_alg *alg)
{
	return alg->cra_ctxsize;
}