Mercurial > pidgin
view libpurple/protocols/mxit/aes.h @ 28655:06fabb28bc69
The "packed" attribute on the raw_chunk data-structure seems to be a GCC extension.
(ie, no alignment padding between members of the structure)
To build with compilers which don't support this packed attribute, we've now use
methods to access/modify the fields in the packed MXit chunk header.
author | andrew.victor@mxit.com |
---|---|
date | Tue, 24 Nov 2009 13:23:27 +0000 |
parents | 69aa4660401a |
children |
line wrap: on
line source
// advanced encryption standard // author: karl malbrain, malbrain@yahoo.com /* This work, including the source code, documentation and related data, is placed into the public domain. The orginal author is Karl Malbrain. THIS SOFTWARE IS PROVIDED AS-IS WITHOUT WARRANTY OF ANY KIND, NOT EVEN THE IMPLIED WARRANTY OF MERCHANTABILITY. THE AUTHOR OF THIS SOFTWARE, ASSUMES _NO_ RESPONSIBILITY FOR ANY CONSEQUENCE RESULTING FROM THE USE, MODIFICATION, OR REDISTRIBUTION OF THIS SOFTWARE. */ #ifndef AES_MALBRAIN #define AES_MALBRAIN // AES only supports Nb=4 #define Nb 4 // number of columns in the state & expanded key #define Nk 4 // number of columns in a key #define Nr 10 // number of rounds in encryption typedef unsigned char uchar; void ExpandKey (uchar *key, uchar *expkey); void Encrypt (uchar *in, uchar *expkey, uchar *out); void Decrypt (uchar *in, uchar *expkey, uchar *out); #endif /* AES_MALBRAIN */