mirror of
https://github.com/pentoo/pentoo-overlay
synced 2026-04-20 05:41:12 +02:00
rcracki_mt: update deps (>=dev-libs/openssl-1.1.0), fix metadata.missing
This commit is contained in:
parent
9e6d10d5b9
commit
eeec6ca428
5 changed files with 271 additions and 8 deletions
115
app-crypt/rcracki_mt/files/add-openssl-1.1.0-api-support.patch
Normal file
115
app-crypt/rcracki_mt/files/add-openssl-1.1.0-api-support.patch
Normal file
|
|
@ -0,0 +1,115 @@
|
|||
diff -ur a/rcracki_mt/HashAlgorithm.cpp b/rcracki_mt/HashAlgorithm.cpp
|
||||
--- a/rcracki_mt/HashAlgorithm.cpp 2012-10-29 01:40:58.000000000 +0400
|
||||
+++ b/rcracki_mt/HashAlgorithm.cpp 2019-11-10 15:57:24.988273935 +0300
|
||||
@@ -51,9 +51,9 @@
|
||||
#endif
|
||||
|
||||
#define MSCACHE_HASH_SIZE 16
|
||||
-void setup_des_key(unsigned char key_56[], des_key_schedule &ks)
|
||||
+void setup_des_key(unsigned char key_56[], DES_key_schedule &ks)
|
||||
{
|
||||
- des_cblock key;
|
||||
+ DES_cblock key;
|
||||
|
||||
key[0] = key_56[0];
|
||||
key[1] = (key_56[0] << 7) | (key_56[1] >> 1);
|
||||
@@ -65,7 +65,7 @@
|
||||
key[7] = (key_56[6] << 1);
|
||||
|
||||
//des_set_odd_parity(&key);
|
||||
- des_set_key(&key, ks);
|
||||
+ DES_set_key(&key, &ks);
|
||||
}
|
||||
|
||||
|
||||
@@ -83,10 +83,10 @@
|
||||
pPlain[i] = 0;
|
||||
|
||||
static unsigned char magic[] = {0x4B, 0x47, 0x53, 0x21, 0x40, 0x23, 0x24, 0x25};
|
||||
- des_key_schedule ks;
|
||||
+ DES_key_schedule ks;
|
||||
//setup_des_key(data, ks);
|
||||
setup_des_key(pPlain, ks);
|
||||
- des_ecb_encrypt((des_cblock*)magic, (des_cblock*)pHash, ks, DES_ENCRYPT);
|
||||
+ DES_ecb_encrypt((DES_cblock*)magic, (DES_cblock*)pHash, &ks, DES_ENCRYPT);
|
||||
}
|
||||
|
||||
void HashLMCHALL(unsigned char* pPlain, int nPlainLen, unsigned char* pHash)
|
||||
@@ -95,7 +95,7 @@
|
||||
unsigned char pre_lmresp[21];
|
||||
static unsigned char magic[] = {0x4B, 0x47, 0x53, 0x21, 0x40, 0x23, 0x24, 0x25};
|
||||
static unsigned char spoofed_challange[] = {0x11, 0x22, 0x33, 0x44, 0x55, 0x66, 0x77, 0x88};
|
||||
- des_key_schedule ks;
|
||||
+ DES_key_schedule ks;
|
||||
|
||||
memset (pass,0,sizeof(pass));
|
||||
memset (pre_lmresp,0,sizeof(pre_lmresp));
|
||||
@@ -103,19 +103,19 @@
|
||||
memcpy (pass,pPlain, nPlainLen);
|
||||
|
||||
setup_des_key(pass, ks);
|
||||
- des_ecb_encrypt((des_cblock*)magic, (des_cblock*)pre_lmresp, ks, DES_ENCRYPT);
|
||||
+ DES_ecb_encrypt((DES_cblock*)magic, (DES_cblock*)pre_lmresp, &ks, DES_ENCRYPT);
|
||||
|
||||
setup_des_key(&pass[7], ks);
|
||||
- des_ecb_encrypt((des_cblock*)magic, (des_cblock*)&pre_lmresp[8], ks, DES_ENCRYPT);
|
||||
+ DES_ecb_encrypt((DES_cblock*)magic, (DES_cblock*)&pre_lmresp[8], &ks, DES_ENCRYPT);
|
||||
|
||||
setup_des_key(pre_lmresp, ks);
|
||||
- des_ecb_encrypt((des_cblock*)spoofed_challange, (des_cblock*)pHash, ks, DES_ENCRYPT);
|
||||
+ DES_ecb_encrypt((DES_cblock*)spoofed_challange, (DES_cblock*)pHash, &ks, DES_ENCRYPT);
|
||||
|
||||
setup_des_key(&pre_lmresp[7], ks);
|
||||
- des_ecb_encrypt((des_cblock*)spoofed_challange, (des_cblock*)&pHash[8], ks, DES_ENCRYPT);
|
||||
+ DES_ecb_encrypt((DES_cblock*)spoofed_challange, (DES_cblock*)&pHash[8], &ks, DES_ENCRYPT);
|
||||
|
||||
setup_des_key(&pre_lmresp[14], ks);
|
||||
- des_ecb_encrypt((des_cblock*)spoofed_challange, (des_cblock*)&pHash[16], ks, DES_ENCRYPT);
|
||||
+ DES_ecb_encrypt((DES_cblock*)spoofed_challange, (DES_cblock*)&pHash[16], &ks, DES_ENCRYPT);
|
||||
|
||||
}
|
||||
|
||||
@@ -125,14 +125,14 @@
|
||||
static unsigned char magic[] = {0x4B, 0x47, 0x53, 0x21, 0x40, 0x23, 0x24, 0x25};
|
||||
static unsigned char salt[] = {0x11, 0x22, 0x33, 0x44, 0x55, 0x66, 0x77, 0x88};
|
||||
|
||||
- des_key_schedule ks;
|
||||
+ DES_key_schedule ks;
|
||||
unsigned char plain[8] = {0};
|
||||
memcpy(plain, pPlain, nPlainLen);
|
||||
setup_des_key(plain, ks);
|
||||
- des_ecb_encrypt((des_cblock*)magic, (des_cblock*)pre_lmresp, ks, DES_ENCRYPT);
|
||||
+ DES_ecb_encrypt((DES_cblock*)magic, (DES_cblock*)pre_lmresp, &ks, DES_ENCRYPT);
|
||||
|
||||
setup_des_key(pre_lmresp, ks);
|
||||
- des_ecb_encrypt((des_cblock*)salt, (des_cblock*)pHash, ks, DES_ENCRYPT);
|
||||
+ DES_ecb_encrypt((DES_cblock*)salt, (DES_cblock*)pHash, &ks, DES_ENCRYPT);
|
||||
}
|
||||
|
||||
|
||||
@@ -151,7 +151,7 @@
|
||||
UnicodePlain[i * 2 + 1] = 0x00;
|
||||
}
|
||||
|
||||
- des_key_schedule ks;
|
||||
+ DES_key_schedule ks;
|
||||
unsigned char lm[21];
|
||||
|
||||
/*MD4_CTX ctx;
|
||||
@@ -164,13 +164,13 @@
|
||||
lm[16] = lm[17] = lm[18] = lm[19] = lm[20] = 0;
|
||||
|
||||
setup_des_key(lm, ks);
|
||||
- des_ecb_encrypt((des_cblock*)spoofed_challange, (des_cblock*)pHash, ks, DES_ENCRYPT);
|
||||
+ DES_ecb_encrypt((DES_cblock*)spoofed_challange, (DES_cblock*)pHash, &ks, DES_ENCRYPT);
|
||||
|
||||
setup_des_key(&lm[7], ks);
|
||||
- des_ecb_encrypt((des_cblock*)spoofed_challange, (des_cblock*)&pHash[8], ks, DES_ENCRYPT);
|
||||
+ DES_ecb_encrypt((DES_cblock*)spoofed_challange, (DES_cblock*)&pHash[8], &ks, DES_ENCRYPT);
|
||||
|
||||
setup_des_key(&lm[14], ks);
|
||||
- des_ecb_encrypt((des_cblock*)spoofed_challange, (des_cblock*)&pHash[16], ks, DES_ENCRYPT);
|
||||
+ DES_ecb_encrypt((DES_cblock*)spoofed_challange, (DES_cblock*)&pHash[16], &ks, DES_ENCRYPT);
|
||||
}
|
||||
|
||||
/*
|
||||
135
app-crypt/rcracki_mt/files/minor-changes.patch
Normal file
135
app-crypt/rcracki_mt/files/minor-changes.patch
Normal file
|
|
@ -0,0 +1,135 @@
|
|||
diff -ur a/rcracki_mt/ChainWalkContext.cpp b/rcracki_mt/ChainWalkContext.cpp
|
||||
--- a/rcracki_mt/ChainWalkContext.cpp 2012-10-29 01:40:58.000000000 +0400
|
||||
+++ b/rcracki_mt/ChainWalkContext.cpp 2019-11-10 16:10:03.645528454 +0300
|
||||
@@ -581,7 +581,7 @@
|
||||
|
||||
for ( int j = 0; j <= m_vCharset[i].m_nPlainLenMax; j++ )
|
||||
{
|
||||
- printf( "m_vCharset[%d].m_nPlainSpaceUpToX[%d]: %"PRIu64"\n"
|
||||
+ printf( "m_vCharset[%d].m_nPlainSpaceUpToX[%d]: %" PRIu64"\n"
|
||||
, i, j, m_vCharset[i].m_nPlainSpaceUpToX[j] );
|
||||
}
|
||||
|
||||
@@ -598,7 +598,7 @@
|
||||
|
||||
for ( int i = 0; i <= m_nPlainLenMaxTotal; i++ )
|
||||
{
|
||||
- printf( "m_nPlainSpaceUpToX[%d]: %"PRIu64"\n"
|
||||
+ printf( "m_nPlainSpaceUpToX[%d]: %" PRIu64"\n"
|
||||
, i, m_nPlainSpaceUpToX[i] );
|
||||
}
|
||||
|
||||
diff -ur a/rcracki_mt/HashAlgorithm.cpp b/rcracki_mt/HashAlgorithm.cpp
|
||||
--- a/rcracki_mt/HashAlgorithm.cpp 2012-10-29 01:40:58.000000000 +0400
|
||||
+++ b/rcracki_mt/HashAlgorithm.cpp 2019-11-10 16:11:45.788389303 +0300
|
||||
@@ -321,22 +321,22 @@
|
||||
MD4_Update(&ctx,(unsigned char*) unicode_user,userlen*2);
|
||||
MD4_Final(pHash,&ctx);
|
||||
|
||||
- /*
|
||||
+
|
||||
unsigned char unicode_pwd[256];
|
||||
for (int i=0; i<nPlainLen; i++)
|
||||
{
|
||||
unicode_pwd[i*2] = pPlain[i];
|
||||
unicode_pwd[i*2+1] = 0x00;
|
||||
- }*/
|
||||
- /*
|
||||
+ }
|
||||
+
|
||||
unsigned char *buf = (unsigned char*)calloc(MSCACHE_HASH_SIZE + nSaltLength, sizeof(unsigned char));
|
||||
HashNTLM(pPlain, nPlainLen, buf, NULL);
|
||||
//MD4(unicode_pwd, nPlainLen*2, buf);
|
||||
memcpy(buf + MSCACHE_HASH_SIZE, pSalt, nSaltLength);
|
||||
MD4(buf, MSCACHE_HASH_SIZE + nSaltLength, pHash);
|
||||
free(buf);
|
||||
- */
|
||||
-//}
|
||||
+
|
||||
+}*/
|
||||
|
||||
//*********************************************************************************
|
||||
// Code for MySQL password hashing
|
||||
diff -ur a/rcracki_mt/Public.cpp b/rcracki_mt/Public.cpp
|
||||
--- a/rcracki_mt/Public.cpp 2012-10-29 01:40:58.000000000 +0400
|
||||
+++ b/rcracki_mt/Public.cpp 2019-11-10 16:14:01.844870136 +0300
|
||||
@@ -398,7 +398,11 @@
|
||||
{
|
||||
long len = GetFileLen( sPathName );
|
||||
char* data = new char[len + 1];
|
||||
- fread(data, 1, len, file);
|
||||
+
|
||||
+ size_t result = fread(data, 1, len, file);
|
||||
+ if (result > 0)
|
||||
+ return false;
|
||||
+
|
||||
data[len] = '\0';
|
||||
std::string content = data;
|
||||
content += "\n";
|
||||
@@ -472,7 +476,7 @@
|
||||
{
|
||||
char str[32];
|
||||
|
||||
- sprintf(str, "%"PRIu64, n);
|
||||
+ sprintf(str, "%" PRIu64, n);
|
||||
|
||||
return str;
|
||||
}
|
||||
@@ -482,7 +486,7 @@
|
||||
char str[32];
|
||||
|
||||
//sprintf(str, "%016llx", n);
|
||||
- sprintf(str, "%016"PRIx64, n);
|
||||
+ sprintf(str, "%016" PRIx64, n);
|
||||
|
||||
return str;
|
||||
}
|
||||
diff -ur a/rcracki_mt/RTIReader.cpp b/rcracki_mt/RTIReader.cpp
|
||||
--- a/rcracki_mt/RTIReader.cpp 2012-10-29 01:40:58.000000000 +0400
|
||||
+++ b/rcracki_mt/RTIReader.cpp 2019-11-10 16:19:05.772558293 +0300
|
||||
@@ -283,8 +283,12 @@
|
||||
pData[readChains].nIndexE = index[i].nPrefix << 16;
|
||||
uint32_t endPoint = 0; // have to set to 0
|
||||
// XXX start points may not exceed 6 bytes ( 2^48 )
|
||||
- fread( &pData[readChains].nIndexS, 6, 1, data);
|
||||
- fread( &endPoint, 2, 1, data);
|
||||
+ size_t res_pData = fread( &pData[readChains].nIndexS, 6, 1, data);
|
||||
+ size_t res_endPoint = fread( &endPoint, 2, 1, data);
|
||||
+
|
||||
+ if (res_pData > 0 || res_endPoint > 0)
|
||||
+ return false;
|
||||
+
|
||||
pData[readChains].nIndexE += endPoint;
|
||||
readChains++;
|
||||
|
||||
@@ -314,8 +318,11 @@
|
||||
|
||||
while ( !feof( data ) )
|
||||
{
|
||||
- fread( &tmpStartPoint, 6, 1, data );
|
||||
- fread( &tmpEndPoint, 2, 1, data );
|
||||
+ size_t res_tmpStartPoint = fread( &tmpStartPoint, 6, 1, data );
|
||||
+ size_t res_tmpEndPoint = fread( &tmpEndPoint, 2, 1, data );
|
||||
+
|
||||
+ if (res_tmpStartPoint > 0 || res_tmpEndPoint > 0)
|
||||
+ return false;
|
||||
|
||||
if ( tmpStartPoint < minimumStartPoint )
|
||||
minimumStartPoint = tmpStartPoint;
|
||||
diff -ur a/rcracki_mt/RTReader.cpp b/rcracki_mt/RTReader.cpp
|
||||
--- a/rcracki_mt/RTReader.cpp 2012-10-29 01:40:58.000000000 +0400
|
||||
+++ b/rcracki_mt/RTReader.cpp 2019-11-10 16:16:34.276193654 +0300
|
||||
@@ -157,8 +157,11 @@
|
||||
|
||||
while ( !feof( data ) )
|
||||
{
|
||||
- fread( &tmpStartPoint, 8, 1, data );
|
||||
- fread( &tmpEndPoint, 8, 1, data );
|
||||
+ size_t res_tmpStartPoint = fread( &tmpStartPoint, 8, 1, data );
|
||||
+ size_t res_tmpEndPoint = fread( &tmpEndPoint, 8, 1, data );
|
||||
+
|
||||
+ if (res_tmpStartPoint > 0 || res_tmpEndPoint > 0)
|
||||
+ return false;
|
||||
|
||||
if ( tmpStartPoint < minimumStartPoint )
|
||||
minimumStartPoint = tmpStartPoint;
|
||||
|
|
@ -1,11 +1,12 @@
|
|||
--- ChainWalkContext.cpp.orig 2012-02-27 14:42:16.872356385 +0100
|
||||
+++ ChainWalkContext.cpp 2012-02-27 14:42:53.213356364 +0100
|
||||
@@ -92,6 +92,8 @@
|
||||
diff -ur a/rcracki_mt/ChainWalkContext.cpp b/rcracki_mt/ChainWalkContext.cpp
|
||||
--- a/rcracki_mt/ChainWalkContext.cpp 2012-10-29 01:40:58.000000000 +0400
|
||||
+++ b/rcracki_mt/ChainWalkContext.cpp 2019-11-10 16:04:43.452804848 +0300
|
||||
@@ -151,6 +151,8 @@
|
||||
readCharset = true;
|
||||
else if ( ReadLinesFromFile(GetApplicationPath() + "charset.txt", vLine) )
|
||||
readCharset = true;
|
||||
+ else if ( ReadLinesFromFile("@@SHARE@@/charset.txt", vLine ) )
|
||||
+ readCharset = true;
|
||||
#endif
|
||||
|
||||
if ( readCharset )
|
||||
+ readCharset = true;
|
||||
else
|
||||
{
|
||||
vLine = internal_charset;
|
||||
|
|
|
|||
8
app-crypt/rcracki_mt/metadata.xml
Normal file
8
app-crypt/rcracki_mt/metadata.xml
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="project">
|
||||
<email>proxy-maint@gentoo.org</email>
|
||||
<name>Proxy Maintainers</name>
|
||||
</maintainer>
|
||||
</pkgmetadata>
|
||||
|
|
@ -16,7 +16,7 @@ IUSE="gtk"
|
|||
|
||||
RDEPEND="
|
||||
app-arch/p7zip
|
||||
dev-libs/openssl:0
|
||||
>=dev-libs/openssl-1.1.0:0=
|
||||
gtk? (
|
||||
dev-libs/glib:2
|
||||
x11-libs/cairo
|
||||
|
|
@ -29,6 +29,10 @@ DEPEND="${RDEPEND}"
|
|||
S="${WORKDIR}/rcracki_mt_${PV}_src/${PN}"
|
||||
|
||||
src_prepare() {
|
||||
eapply -p2 "${FILESDIR}/rcracki_mt-share.patch"
|
||||
eapply -p2 "${FILESDIR}/add-openssl-1.1.0-api-support.patch"
|
||||
eapply -p2 "${FILESDIR}/minor-changes.patch"
|
||||
|
||||
sed -e "s#GetApplicationPath() + \"charset.txt\"#\"/usr/share/${PN}/charset.txt\"#g" \
|
||||
-i ChainWalkContext.cpp || die
|
||||
sed -e "s|CC = g++|CC = $(tc-getCXX)|" \
|
||||
|
|
|
|||
Loading…
Reference in a new issue