X-Git-Url: http://git.osdn.net/view?p=rec10%2Frec10-git.git;a=blobdiff_plain;f=tstools%2FDtsEdit%2Fsrc%2Fgpac%2Finternal%2Fcrypt_dev.h;fp=tstools%2FDtsEdit%2Fsrc%2Fgpac%2Finternal%2Fcrypt_dev.h;h=0000000000000000000000000000000000000000;hp=8e00a5ff6de27c3c3ec5e94e61a3b567f7e36b97;hb=930d3dbdc17ad4179a9b512f4e787a896a544943;hpb=d63ca135202a679bd918561b65e806966f94546e diff --git a/tstools/DtsEdit/src/gpac/internal/crypt_dev.h b/tstools/DtsEdit/src/gpac/internal/crypt_dev.h deleted file mode 100644 index 8e00a5f..0000000 --- a/tstools/DtsEdit/src/gpac/internal/crypt_dev.h +++ /dev/null @@ -1,158 +0,0 @@ -/* - * GPAC - Multimedia Framework C SDK - * - * Copyright (c) Jean Le Feuvre 2000-2005 - * All rights reserved - * - * This file is part of GPAC / Crypto Tools sub-project - * - * GPAC is free software; you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as published by - * the Free Software Foundation; either version 2, or (at your option) - * any later version. - * - * GPAC is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; see the file COPYING. If not, write to - * the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. - * - */ - -#ifndef _GF_CRYPT_DEV_H_ -#define _GF_CRYPT_DEV_H_ - -#ifdef __cplusplus -extern "C" { -#endif - -#include - -/*the samllest version of the lib: only AES-128-CTR supported*/ -#define GPAC_CRYPT_ISMA_ONLY - - -#if !defined(GPAC_CRYPT_ISMA_ONLY) && defined(GPAC_READ_ONLY) -#define GPAC_CRYPT_ISMA_ONLY -#endif - -typedef void (*mcryptfunc)(void*,void*); -typedef GF_Err (*mcrypt_setkeystream)(void *, const void *, int, const void *, int); -typedef GF_Err (*mcrypt_setkeyblock) (void *, const void *, int); -typedef GF_Err (*mcrypt_docrypt) (void *, const void *, int); - -/*private - do not use*/ -typedef struct _tag_crypt_stream -{ - const char *algo_name; - u32 algo_version; - const char *mode_name; - u32 mode_version; - - /* Holds the algorithm's internal key */ - char *akey; - /* holds the mode's internal buffers */ - char *abuf; - /* holds the key */ - char *keyword_given; - - /*all below are static vars for mode and algo - sizes are in bytes*/ - - /*modes access*/ - GF_Err (*_init_mcrypt) (void *, void *, int, void *, int); - void (*_end_mcrypt) (void *); - GF_Err (*_mcrypt) (void *, void *, int, int, void *, mcryptfunc func, mcryptfunc func2); - GF_Err (*_mdecrypt) (void *, void *, int, int, void *, mcryptfunc func, mcryptfunc func2); - GF_Err (*_mcrypt_set_state) (void *, void *, int ); - GF_Err (*_mcrypt_get_state) (void *, void *, int *); - /*algo access*/ - void *a_encrypt; - void *a_decrypt; - void *a_set_key; - - u32 algo_size; - u32 algo_block_size; - u32 key_size; - u32 num_key_sizes; - u32 key_sizes[MAX_KEY_SIZES]; - u32 algo_IV_size; - - u32 mode_size; - Bool is_block_algo, is_block_algo_mode, is_block_mode, has_IV; -} GF_CryptStream; - -/*modes*/ -void gf_crypt_register_cbc(GF_Crypt *td); -void gf_crypt_register_cfb(GF_Crypt *td); -void gf_crypt_register_ctr(GF_Crypt *td); -void gf_crypt_register_ecb(GF_Crypt *td); -void gf_crypt_register_ncfb(GF_Crypt *td); -void gf_crypt_register_nofb(GF_Crypt *td); -void gf_crypt_register_ofb(GF_Crypt *td); -void gf_crypt_register_stream(GF_Crypt *td); -/*algos*/ -void gf_crypt_register_des(GF_Crypt *td); -void gf_crypt_register_3des(GF_Crypt *td); -void gf_crypt_register_rijndael_128(GF_Crypt *td); -void gf_crypt_register_rijndael_192(GF_Crypt *td); -void gf_crypt_register_rijndael_256(GF_Crypt *td); - - -#define rotl32(x,n) (((x) << ((u32)(n))) | ((x) >> (32 - (u32)(n)))) -#define rotr32(x,n) (((x) >> ((u32)(n))) | ((x) << (32 - (u32)(n)))) -#define rotl16(x,n) (((x) << ((u16)(n))) | ((x) >> (16 - (u16)(n)))) -#define rotr16(x,n) (((x) >> ((u16)(n))) | ((x) << (16 - (u16)(n)))) - -/* Use hardware rotations.. when available */ -#ifdef swap32 -# define byteswap32(x) swap32(x) -#else -# ifdef swap_32 -# define byteswap32(x) swap_32(x) -# else -# ifdef bswap_32 -# define byteswap32(x) bswap_32(x) -# else -# define byteswap32(x) ((rotl32(x, 8) & 0x00ff00ff) | (rotr32(x, 8) & 0xff00ff00)) -# endif -# endif -#endif - -#ifdef swap16 -# define byteswap16(x) swap16(x) -#else -# ifdef swap_16 -# define byteswap16(x) swap_16(x) -# else -# ifdef bswap_16 -# define byteswap16(x) bswap_16(x) -# else -# define byteswap16(x) ((rotl16(x, 8) & 0x00ff) | (rotr16(x, 8) & 0xff00)) -# endif -# endif -#endif - -GFINLINE static -void memxor(unsigned char *o1, unsigned char *o2, int length) -{ - int i; - - for (i = 0; i < length; i++) { - o1[i] ^= o2[i]; - } - return; -} - - -#define Bzero(x, y) memset(x, 0, y) - - -#ifdef __cplusplus -} -#endif - -#endif /*_GF_CRYPT_DEV_H_*/ -