1
0
mirror of https://github.com/mariadb-corporation/mariadb-columnstore-engine.git synced 2025-07-29 08:21:15 +03:00

Initial commit for Encode/Decode.

This commit is contained in:
benthompson15
2020-11-06 15:23:24 -06:00
parent 84fb821c47
commit 3e9b7b3401
9 changed files with 320 additions and 4 deletions

40
utils/funcexp/sql_crypt.h Normal file
View File

@ -0,0 +1,40 @@
#ifndef _SQL_CRYPT_H_
#define _SQL_CRYPT_H_
//#include "my_global.h"
/* Macros to make switching between C and C++ mode easier */
#ifdef __cplusplus
#define C_MODE_START extern "C" {
#define C_MODE_END }
#else
#define C_MODE_START
#define C_MODE_END
#endif
#include "my_rnd.h"
namespace funcexp
{
class SQL_CRYPT
{
struct my_rnd_struct rand,org_rand;
char decode_buff[256],encode_buff[256];
uint shift;
public:
SQL_CRYPT() {}
SQL_CRYPT(ulong *seed)
{
init(seed);
}
~SQL_CRYPT() {}
void init(ulong *seed);
void reinit() { shift=0; rand=org_rand; }
void encode(char *str, uint length);
void decode(char *str, uint length);
};
}
#endif /* _SQL_CRYPT_H_ */