]> git.sesse.net Git - freerainbowtables/blob - BOINC software/BOINC client apps/distrrtgen_cuda/rcuda.h
eeeac69aa9f8c67f4d955d0c1a7a45887fc6f3c5
[freerainbowtables] / BOINC software / BOINC client apps / distrrtgen_cuda / rcuda.h
1 #ifndef RCUDA_H
2 #define RCUDA_H
3
4 namespace rcuda {
5
6 enum RHash { RHASH_UNDEF = -1, RHASH_LM, RHASH_MD4, RHASH_MD5, RHASH_SHA1, RHASH_NTLM };
7
8 struct RCudaTask {
9         RHash hash;
10         unsigned __int64 startIdx;
11         int idxCount;
12         unsigned char* stPlain;
13         int stPlainSize;
14         unsigned int* dimVec;
15         int dimVecSize;
16         unsigned char* charSet;
17         int charSetSize;
18         int *cpPositions;
19         int cpPosSize;
20         unsigned __int64 reduceOffset;
21         unsigned __int64 plainSpaceTotal;
22         unsigned int rainbowChainLen;
23 };
24
25 extern "C" int CalcChainsOnCUDA(const RCudaTask* task, unsigned __int64 *resultBuff);
26 extern "C" int GetChainsBufferSize(int minSize);
27
28 }
29
30 #endif //RCUDA_H