|
|
@ -539,21 +539,17 @@ u64 brain_compute_attack_wordlist (const char *filename)
|
|
|
|
|
|
|
|
|
|
|
|
char buf[FBUFSZ];
|
|
|
|
char buf[FBUFSZ];
|
|
|
|
|
|
|
|
|
|
|
|
// FILE *fd = fopen (filename, "rb");
|
|
|
|
|
|
|
|
HCFILE fp;
|
|
|
|
HCFILE fp;
|
|
|
|
|
|
|
|
|
|
|
|
hc_fopen (&fp, filename, "rb");
|
|
|
|
hc_fopen (&fp, filename, "rb");
|
|
|
|
|
|
|
|
|
|
|
|
// while (!feof (fd))
|
|
|
|
|
|
|
|
while (!hc_feof (&fp))
|
|
|
|
while (!hc_feof (&fp))
|
|
|
|
{
|
|
|
|
{
|
|
|
|
// const size_t nread = fread (buf, 1, FBUFSZ, fd);
|
|
|
|
|
|
|
|
const size_t nread = hc_fread (buf, 1, FBUFSZ, &fp);
|
|
|
|
const size_t nread = hc_fread (buf, 1, FBUFSZ, &fp);
|
|
|
|
|
|
|
|
|
|
|
|
XXH64_update (state, buf, nread);
|
|
|
|
XXH64_update (state, buf, nread);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// fclose (fd);
|
|
|
|
|
|
|
|
hc_fclose (&fp);
|
|
|
|
hc_fclose (&fp);
|
|
|
|
|
|
|
|
|
|
|
|
const u64 hash = XXH64_digest (state);
|
|
|
|
const u64 hash = XXH64_digest (state);
|
|
|
@ -615,10 +611,8 @@ u32 brain_auth_challenge (void)
|
|
|
|
|
|
|
|
|
|
|
|
static const char *urandom = "/dev/urandom";
|
|
|
|
static const char *urandom = "/dev/urandom";
|
|
|
|
|
|
|
|
|
|
|
|
// FILE *fd = fopen (urandom, "rb");
|
|
|
|
|
|
|
|
HCFILE fp;
|
|
|
|
HCFILE fp;
|
|
|
|
|
|
|
|
|
|
|
|
// if (fd == NULL)
|
|
|
|
|
|
|
|
if (hc_fopen (&fp, urandom, "rb") == false)
|
|
|
|
if (hc_fopen (&fp, urandom, "rb") == false)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
brain_logging (stderr, 0, "%s: %s\n", urandom, strerror (errno));
|
|
|
|
brain_logging (stderr, 0, "%s: %s\n", urandom, strerror (errno));
|
|
|
@ -626,18 +620,15 @@ u32 brain_auth_challenge (void)
|
|
|
|
return val;
|
|
|
|
return val;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// if (fread (&val, sizeof (val), 1, fd) != 1)
|
|
|
|
|
|
|
|
if (hc_fread (&val, sizeof (val), 1, &fp) != 1)
|
|
|
|
if (hc_fread (&val, sizeof (val), 1, &fp) != 1)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
brain_logging (stderr, 0, "%s: %s\n", urandom, strerror (errno));
|
|
|
|
brain_logging (stderr, 0, "%s: %s\n", urandom, strerror (errno));
|
|
|
|
|
|
|
|
|
|
|
|
// fclose (fd);
|
|
|
|
|
|
|
|
hc_fclose (&fp);
|
|
|
|
hc_fclose (&fp);
|
|
|
|
|
|
|
|
|
|
|
|
return val;
|
|
|
|
return val;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// fclose (fd);
|
|
|
|
|
|
|
|
hc_fclose (&fp);
|
|
|
|
hc_fclose (&fp);
|
|
|
|
|
|
|
|
|
|
|
|
#endif
|
|
|
|
#endif
|
|
|
@ -1606,10 +1597,8 @@ bool brain_server_read_hash_dump (brain_server_db_hash_t *brain_server_db_hash,
|
|
|
|
return false;
|
|
|
|
return false;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// FILE *fd = fopen (file, "rb");
|
|
|
|
|
|
|
|
HCFILE fp;
|
|
|
|
HCFILE fp;
|
|
|
|
|
|
|
|
|
|
|
|
// if (fd == NULL)
|
|
|
|
|
|
|
|
if (hc_fopen (&fp, file, "rb") == false)
|
|
|
|
if (hc_fopen (&fp, file, "rb") == false)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
brain_logging (stderr, 0, "%s: %s\n", file, strerror (errno));
|
|
|
|
brain_logging (stderr, 0, "%s: %s\n", file, strerror (errno));
|
|
|
@ -1624,20 +1613,17 @@ bool brain_server_read_hash_dump (brain_server_db_hash_t *brain_server_db_hash,
|
|
|
|
{
|
|
|
|
{
|
|
|
|
brain_logging (stderr, 0, "%s\n", MSG_ENOMEM);
|
|
|
|
brain_logging (stderr, 0, "%s\n", MSG_ENOMEM);
|
|
|
|
|
|
|
|
|
|
|
|
// fclose (fd);
|
|
|
|
|
|
|
|
hc_fclose (&fp);
|
|
|
|
hc_fclose (&fp);
|
|
|
|
|
|
|
|
|
|
|
|
return false;
|
|
|
|
return false;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// const size_t nread = fread (brain_server_db_hash->long_buf, sizeof (brain_server_hash_long_t), temp_cnt, fd);
|
|
|
|
|
|
|
|
const size_t nread = hc_fread (brain_server_db_hash->long_buf, sizeof (brain_server_hash_long_t), temp_cnt, &fp);
|
|
|
|
const size_t nread = hc_fread (brain_server_db_hash->long_buf, sizeof (brain_server_hash_long_t), temp_cnt, &fp);
|
|
|
|
|
|
|
|
|
|
|
|
if (nread != (size_t) temp_cnt)
|
|
|
|
if (nread != (size_t) temp_cnt)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
brain_logging (stderr, 0, "%s: only %" PRIu64 " bytes read\n", file, (u64) nread * sizeof (brain_server_hash_long_t));
|
|
|
|
brain_logging (stderr, 0, "%s: only %" PRIu64 " bytes read\n", file, (u64) nread * sizeof (brain_server_hash_long_t));
|
|
|
|
|
|
|
|
|
|
|
|
// fclose (fd);
|
|
|
|
|
|
|
|
hc_fclose (&fp);
|
|
|
|
hc_fclose (&fp);
|
|
|
|
|
|
|
|
|
|
|
|
return false;
|
|
|
|
return false;
|
|
|
@ -1647,7 +1633,6 @@ bool brain_server_read_hash_dump (brain_server_db_hash_t *brain_server_db_hash,
|
|
|
|
|
|
|
|
|
|
|
|
brain_server_db_hash->write_hashes = false;
|
|
|
|
brain_server_db_hash->write_hashes = false;
|
|
|
|
|
|
|
|
|
|
|
|
// fclose (fd);
|
|
|
|
|
|
|
|
hc_fclose (&fp);
|
|
|
|
hc_fclose (&fp);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
@ -1668,10 +1653,8 @@ bool brain_server_write_hash_dump (brain_server_db_hash_t *brain_server_db_hash,
|
|
|
|
|
|
|
|
|
|
|
|
// write to file
|
|
|
|
// write to file
|
|
|
|
|
|
|
|
|
|
|
|
// FILE *fd = fopen (file, "wb");
|
|
|
|
|
|
|
|
HCFILE fp;
|
|
|
|
HCFILE fp;
|
|
|
|
|
|
|
|
|
|
|
|
// if (fd == NULL)
|
|
|
|
|
|
|
|
if (hc_fopen (&fp, file, "wb") == false)
|
|
|
|
if (hc_fopen (&fp, file, "wb") == false)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
brain_logging (stderr, 0, "%s: %s\n", file, strerror (errno));
|
|
|
|
brain_logging (stderr, 0, "%s: %s\n", file, strerror (errno));
|
|
|
@ -1682,20 +1665,17 @@ bool brain_server_write_hash_dump (brain_server_db_hash_t *brain_server_db_hash,
|
|
|
|
{
|
|
|
|
{
|
|
|
|
fp.is_gzip = false;
|
|
|
|
fp.is_gzip = false;
|
|
|
|
|
|
|
|
|
|
|
|
// const size_t nwrite = fwrite (brain_server_db_hash->long_buf, sizeof (brain_server_hash_long_t), brain_server_db_hash->long_cnt, fd);
|
|
|
|
|
|
|
|
const size_t nwrite = hc_fwrite (brain_server_db_hash->long_buf, sizeof (brain_server_hash_long_t), brain_server_db_hash->long_cnt, &fp);
|
|
|
|
const size_t nwrite = hc_fwrite (brain_server_db_hash->long_buf, sizeof (brain_server_hash_long_t), brain_server_db_hash->long_cnt, &fp);
|
|
|
|
|
|
|
|
|
|
|
|
if (nwrite != (size_t) brain_server_db_hash->long_cnt)
|
|
|
|
if (nwrite != (size_t) brain_server_db_hash->long_cnt)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
brain_logging (stderr, 0, "%s: only %" PRIu64 " bytes written\n", file, (u64) nwrite * sizeof (brain_server_hash_long_t));
|
|
|
|
brain_logging (stderr, 0, "%s: only %" PRIu64 " bytes written\n", file, (u64) nwrite * sizeof (brain_server_hash_long_t));
|
|
|
|
|
|
|
|
|
|
|
|
// fclose (fd);
|
|
|
|
|
|
|
|
hc_fclose (&fp);
|
|
|
|
hc_fclose (&fp);
|
|
|
|
|
|
|
|
|
|
|
|
return false;
|
|
|
|
return false;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// fclose (fd);
|
|
|
|
|
|
|
|
hc_fclose (&fp);
|
|
|
|
hc_fclose (&fp);
|
|
|
|
|
|
|
|
|
|
|
|
brain_server_db_hash->write_hashes = false;
|
|
|
|
brain_server_db_hash->write_hashes = false;
|
|
|
@ -1818,10 +1798,8 @@ bool brain_server_read_attack_dump (brain_server_db_attack_t *brain_server_db_at
|
|
|
|
return false;
|
|
|
|
return false;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// FILE *fd = fopen (file, "rb");
|
|
|
|
|
|
|
|
HCFILE fp;
|
|
|
|
HCFILE fp;
|
|
|
|
|
|
|
|
|
|
|
|
// if (fd == NULL)
|
|
|
|
|
|
|
|
if (hc_fopen (&fp, file, "rb") == false)
|
|
|
|
if (hc_fopen (&fp, file, "rb") == false)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
brain_logging (stderr, 0, "%s: %s\n", file, strerror (errno));
|
|
|
|
brain_logging (stderr, 0, "%s: %s\n", file, strerror (errno));
|
|
|
@ -1836,20 +1814,17 @@ bool brain_server_read_attack_dump (brain_server_db_attack_t *brain_server_db_at
|
|
|
|
{
|
|
|
|
{
|
|
|
|
brain_logging (stderr, 0, "%s\n", MSG_ENOMEM);
|
|
|
|
brain_logging (stderr, 0, "%s\n", MSG_ENOMEM);
|
|
|
|
|
|
|
|
|
|
|
|
// fclose (fd);
|
|
|
|
|
|
|
|
hc_fclose (&fp);
|
|
|
|
hc_fclose (&fp);
|
|
|
|
|
|
|
|
|
|
|
|
return false;
|
|
|
|
return false;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// const size_t nread = fread (brain_server_db_attack->long_buf, sizeof (brain_server_attack_long_t), temp_cnt, fd);
|
|
|
|
|
|
|
|
const size_t nread = hc_fread (brain_server_db_attack->long_buf, sizeof (brain_server_attack_long_t), temp_cnt, &fp);
|
|
|
|
const size_t nread = hc_fread (brain_server_db_attack->long_buf, sizeof (brain_server_attack_long_t), temp_cnt, &fp);
|
|
|
|
|
|
|
|
|
|
|
|
if (nread != (size_t) temp_cnt)
|
|
|
|
if (nread != (size_t) temp_cnt)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
brain_logging (stderr, 0, "%s: only %" PRIu64 " bytes read\n", file, (u64) nread * sizeof (brain_server_attack_long_t));
|
|
|
|
brain_logging (stderr, 0, "%s: only %" PRIu64 " bytes read\n", file, (u64) nread * sizeof (brain_server_attack_long_t));
|
|
|
|
|
|
|
|
|
|
|
|
// fclose (fd);
|
|
|
|
|
|
|
|
hc_fclose (&fp);
|
|
|
|
hc_fclose (&fp);
|
|
|
|
|
|
|
|
|
|
|
|
return false;
|
|
|
|
return false;
|
|
|
@ -1859,7 +1834,6 @@ bool brain_server_read_attack_dump (brain_server_db_attack_t *brain_server_db_at
|
|
|
|
|
|
|
|
|
|
|
|
brain_server_db_attack->write_attacks = false;
|
|
|
|
brain_server_db_attack->write_attacks = false;
|
|
|
|
|
|
|
|
|
|
|
|
// fclose (fd);
|
|
|
|
|
|
|
|
hc_fclose (&fp);
|
|
|
|
hc_fclose (&fp);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
@ -1880,10 +1854,8 @@ bool brain_server_write_attack_dump (brain_server_db_attack_t *brain_server_db_a
|
|
|
|
|
|
|
|
|
|
|
|
// write to file
|
|
|
|
// write to file
|
|
|
|
|
|
|
|
|
|
|
|
// FILE *fd = fopen (file, "wb");
|
|
|
|
|
|
|
|
HCFILE fp;
|
|
|
|
HCFILE fp;
|
|
|
|
|
|
|
|
|
|
|
|
// if (fd == NULL)
|
|
|
|
|
|
|
|
if (hc_fopen (&fp, file, "wb") == false)
|
|
|
|
if (hc_fopen (&fp, file, "wb") == false)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
brain_logging (stderr, 0, "%s: %s\n", file, strerror (errno));
|
|
|
|
brain_logging (stderr, 0, "%s: %s\n", file, strerror (errno));
|
|
|
@ -1896,20 +1868,17 @@ bool brain_server_write_attack_dump (brain_server_db_attack_t *brain_server_db_a
|
|
|
|
|
|
|
|
|
|
|
|
// storing should not include reserved attacks only finished
|
|
|
|
// storing should not include reserved attacks only finished
|
|
|
|
|
|
|
|
|
|
|
|
// const size_t nwrite = fwrite (brain_server_db_attack->long_buf, sizeof (brain_server_attack_long_t), brain_server_db_attack->long_cnt, fd);
|
|
|
|
|
|
|
|
const size_t nwrite = hc_fwrite (brain_server_db_attack->long_buf, sizeof (brain_server_attack_long_t), brain_server_db_attack->long_cnt, &fp);
|
|
|
|
const size_t nwrite = hc_fwrite (brain_server_db_attack->long_buf, sizeof (brain_server_attack_long_t), brain_server_db_attack->long_cnt, &fp);
|
|
|
|
|
|
|
|
|
|
|
|
if (nwrite != (size_t) brain_server_db_attack->long_cnt)
|
|
|
|
if (nwrite != (size_t) brain_server_db_attack->long_cnt)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
brain_logging (stderr, 0, "%s: only %" PRIu64 " bytes written\n", file, (u64) nwrite * sizeof (brain_server_attack_long_t));
|
|
|
|
brain_logging (stderr, 0, "%s: only %" PRIu64 " bytes written\n", file, (u64) nwrite * sizeof (brain_server_attack_long_t));
|
|
|
|
|
|
|
|
|
|
|
|
// fclose (fd);
|
|
|
|
|
|
|
|
hc_fclose (&fp);
|
|
|
|
hc_fclose (&fp);
|
|
|
|
|
|
|
|
|
|
|
|
return false;
|
|
|
|
return false;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// fclose (fd);
|
|
|
|
|
|
|
|
hc_fclose (&fp);
|
|
|
|
hc_fclose (&fp);
|
|
|
|
|
|
|
|
|
|
|
|
brain_server_db_attack->write_attacks = false;
|
|
|
|
brain_server_db_attack->write_attacks = false;
|
|
|
|