Commit Graph

329 Commits

Author SHA1 Message Date
surtur 934c658fde
util: add gen_block_size field
All checks were successful
continuous-integration/drone/push Build is passing
2022-01-01 08:19:50 +01:00
surtur 71207ed742
refactor(pre-commit): split the test target
All checks were successful
continuous-integration/drone/push Build is passing
2022-01-01 07:45:41 +01:00
surtur 3d125af2ed
refactor(DoTask): formatting and naming
All checks were successful
continuous-integration/drone/push Build is passing
2022-01-01 07:38:06 +01:00
surtur 55cb3b6ec7
chore(cmake): improve legibility
All checks were successful
continuous-integration/drone/push Build is passing
2022-01-01 07:11:21 +01:00
surtur 928011dd54
chore(cmake): record gcc switches for debugging
All checks were successful
continuous-integration/drone/push Build is passing
2021-12-30 22:34:22 +01:00
surtur 6408b1ded7
add fmtlog library
All checks were successful
continuous-integration/drone/push Build is passing
"fmtlog is a performant fmtlib-style logging library with latency in nanoseconds."
ref: https://github.com/MengRao/fmtlog
2021-12-30 22:30:41 +01:00
surtur 81e627998e
refactor(SeedFileManager)
All checks were successful
continuous-integration/drone/push Build is passing
2021-12-29 04:51:40 +01:00
surtur 56e6aa6b15
pre-commit: no need for args
All checks were successful
continuous-integration/drone/push Build is passing
as per the website:
  When creating local hooks, there's no reason to put command arguments
  into args as there is nothing which can override them -- instead put
  your arguments directly in the hook entry.

ref: https://pre-commit.com/#arguments-pattern-in-hooks

also add some little niceness to 'make test'
2021-12-29 04:45:23 +01:00
surtur b5601acfbd
refactor: non-semantic cleanup
All checks were successful
continuous-integration/drone/push Build is passing
2021-12-29 03:55:01 +01:00
surtur 2086861776
accumulator: implement add_source()
All checks were successful
continuous-integration/drone/push Build is passing
2021-12-29 03:49:36 +01:00
surtur 234b87ff1f
accumulator: use a Generator pointer
All checks were successful
continuous-integration/drone/push Build is passing
2021-12-29 02:56:57 +01:00
surtur 01c402300c
accumulator: add generator-interacting methods
All checks were successful
continuous-integration/drone/push Build is passing
..and a way to work with the generator
2021-12-13 13:22:50 +01:00
surtur 129516a48f
add seed_file_management.h holding SeedFileManager
All checks were successful
continuous-integration/drone/push Build is passing
2021-12-13 05:59:27 +01:00
surtur 04bbf16731
pool: set_s -> append_s as it fits better
All checks were successful
continuous-integration/drone/push Build is passing
2021-12-13 05:24:59 +01:00
surtur af1b4cf5ad
pool: make get_id const as it just reads
All checks were successful
continuous-integration/drone/push Build is passing
2021-12-13 05:24:17 +01:00
surtur 7eaaef2fdb
fortuna: handle reseeds+clear pools for seed
All checks were successful
continuous-integration/drone/push Build is passing
* actually clear out entropy of the pools before a reseed
* correctly prepare the seed for the reseed
* add a couple of helper methods to Pool that assist with getting
  length, retrieving and clearing of the collected entropy
* catch exceptions in main(), handle them gracefully
2021-12-13 05:11:17 +01:00
surtur 65c476dbd6
add Util class + perform general refactor
All checks were successful
continuous-integration/drone/push Build is passing
* rm duplicate do_sha() code, consolidate in Util
* make reseed() public so that it can be called from outside
* rm reseed() from do_crypto() where it has no place
2021-12-13 05:10:07 +01:00
surtur da48e61cc2
add da_threading lib
All checks were successful
continuous-integration/drone/push Build is passing
retrieved from https://stackoverflow.com/a/46135882
original author LWimsey <https://stackoverflow.com/users/6651824/lwimsey> (c) 2017
edited and made into a header-only lib by wanderer <a_mirre at utb.cz> (c) 2021
2021-12-12 22:50:06 +01:00
surtur cf41d323a4
fortuna: add task runner "do_task"; link pthread
All checks were successful
continuous-integration/drone/push Build is passing
2021-12-12 18:42:47 +01:00
surtur 2a67a37cbe
generator: add is_seeded method
All checks were successful
continuous-integration/drone/push Build is passing
2021-12-12 18:40:29 +01:00
surtur b55ca33e24
chore(fortuna): add random_data() checks, batch 1
All checks were successful
continuous-integration/drone/push Build is passing
2021-12-12 06:14:58 +01:00
surtur d907c9db6e
generator: tweak generate_random_data logic
All checks were successful
continuous-integration/drone/push Build is passing
2021-12-11 21:33:42 +01:00
surtur fb02ef9a23
generator: make dtor noexcept
All checks were successful
continuous-integration/drone/push Build is passing
2021-12-11 20:43:48 +01:00
surtur 55a19e6681
chore(event_adder_impl): pool int -> uint8_t
All checks were successful
continuous-integration/drone/push Build is passing
2021-12-11 20:16:24 +01:00
surtur 2d20242b3e
accumulator(pool): (partly) implement add_entropy
All checks were successful
continuous-integration/drone/push Build is passing
2021-12-11 02:53:47 +01:00
surtur 0ccd60ce1b
Merge branch 'fixing-generator' into add-random-sources
All checks were successful
continuous-integration/drone/push Build is passing
* fixing-generator:
  generator: use a proper uin64_t literal
  chore(generator): erase -> clear
  generator: memcpy -> memmove
  fix(generator): incorrect copying, no protections
2021-12-11 02:35:06 +01:00
surtur a6719d4947
accumulator: add add_source
All checks were successful
continuous-integration/drone/push Build is passing
2021-12-11 02:27:52 +01:00
surtur d0e9b08886
accumulator: add urandom_entropy_src
All checks were successful
continuous-integration/drone/push Build is passing
2021-12-11 02:24:40 +01:00
surtur a5b988ba71
accumulator: add event_scheduler,entropy_src ifces
All checks were successful
continuous-integration/drone/push Build is passing
2021-12-11 02:12:49 +01:00
surtur 2fbf5464a0
fortuna: erase -> clear
All checks were successful
continuous-integration/drone/push Build is passing
2021-12-11 01:20:34 +01:00
surtur 25cbddf41f
generator: use a proper uin64_t literal
All checks were successful
continuous-integration/drone/push Build is passing
2021-12-11 01:13:01 +01:00
surtur b9676226c5
chore(generator): erase -> clear
All checks were successful
continuous-integration/drone/push Build is passing
2021-12-11 01:10:14 +01:00
surtur a7e8caa26e
generator: memcpy -> memmove
All checks were successful
continuous-integration/drone/push Build is passing
2021-12-11 01:04:57 +01:00
surtur 595245fbce
fix(generator): incorrect copying, no protections
All checks were successful
continuous-integration/drone/push Build is passing
* use try-catch whenever possible
* perform memcpy operations in the right direction
* make greater use of local constants
* use more of the braced initializations
* there were memcpy operations of incorrect sizes in place, particularly
  in regard to generator key (G.k) and counter (G.ctr), which resulted
  in key bytes being set to garbage
2021-12-10 20:02:30 +01:00
surtur 801d605e2a
chore(clang-tidy): unify flags
All checks were successful
continuous-integration/drone/push Build is passing
also add a status message to CMake's output
2021-12-10 18:57:25 +01:00
surtur 053d2187a2
chore(accumulator): make use of init_pool_num
All checks were successful
continuous-integration/drone/push Build is passing
2021-12-09 14:11:39 +01:00
surtur 8b4cd4b6e8
fortuna(random_data): time-tracking precision++
All checks were successful
continuous-integration/drone/push Build is passing
using floats does wonders
2021-12-08 23:17:37 +01:00
surtur 82288fe20d
chore(event_adder_impl): reuse constant p_size
All checks were successful
continuous-integration/drone/push Build is passing
size of pools array will stay the same anyway
2021-12-08 04:19:22 +01:00
surtur c401a47ca7
event_adder_impl: loop with a pre-computed value
All checks were successful
continuous-integration/drone/push Build is passing
2021-12-08 04:07:14 +01:00
surtur 872e6f7f9f
add event_adder_impl
All checks were successful
continuous-integration/drone/push Build is passing
2021-12-08 03:58:18 +01:00
surtur 33f6620662
chore(pool): stop spamming at initialization
All checks were successful
continuous-integration/drone/push Build is passing
2021-12-08 03:40:08 +01:00
surtur 0e3caebb6d
chore(fortuna): formatting
[skip ci]
2021-12-08 03:31:47 +01:00
surtur f02952d72a
fortuna(random_data): add basic time tracking
All checks were successful
continuous-integration/drone/push Build is passing
2021-12-07 15:55:29 +01:00
surtur 9f799c83a9
fortuna: add incr_reseed_ctr
All checks were successful
continuous-integration/drone/push Build is passing
2021-12-07 15:46:01 +01:00
surtur b96ce5d644
fortuna: wrap pool initialization in a try-catch
All checks were successful
continuous-integration/drone/push Build is passing
2021-12-07 02:48:37 +01:00
surtur bc5bb6e700
add EventAdder interface
All checks were successful
continuous-integration/drone/push Build is passing
will be used as a base implementations of sources of random events
2021-12-06 01:02:43 +01:00
surtur 5557f0d9e6
refactor(generator): clean up includes a little
All checks were successful
continuous-integration/drone/push Build is passing
2021-12-06 00:08:32 +01:00
surtur b14600c352
makefile: refactor "clean" target; add "distclean"
All checks were successful
continuous-integration/drone/push Build is passing
* clean now just removes the object files, dwo debugging objects, .cmake
  and intermediary .bin files but keeps CMakeCache and similar
* a new target - distclean - is introduced to do what was previously
  done by "clean", essentially: completely remove the build folders
2021-12-05 15:27:47 +01:00
surtur 7f05984946
integrate clang-tidy into cmake
All checks were successful
continuous-integration/drone/push Build is passing
* consolidate everything with the makefile, the "tidy" target now just
  sets the env var that is checked for in CMakeLists
* rm clang-tidy from pre-commit as it's run as part of the "test"
  makefile target later in the file anyway
2021-12-05 05:13:07 +01:00
surtur 53645ea160
generator: add more try-catch blocks internally
All checks were successful
continuous-integration/drone/push Build is passing
one around initialization and another when calling reseed()
2021-12-05 03:13:47 +01:00