* project-wide refactor to accomodate removal of "using namespace xyz"
to stop polluting top-level namespace with "std" as recommended by the
Google C++ style guide.
* use a pre-commit hook to enforce this
ref:
https://google.github.io/styleguide/cppguide.html#Namespaces
* link against cryptopp
* use both sha2 and sha3 generation functions
* try calling do_sha() directly
* call reseed() that in turn calls do_sha()
* return a bogus number, not the proper digest for now (see TODOs)
cryptopp needed to be installed to archlinux for the valgrind step to
pass successfully
squashed the following:
commit a28354d585
Author: surtur <a_mirre@utb.cz>
Date: Wed Nov 3 02:14:35 2021 +0100
chore: make G_state a private structure
* make G_state private
* move protected section behind private
* also do cleanup a little -> k and ctr won't exist as part of the
generator outside of the G_state struct
commit 926216fad3
Author: surtur <a_mirre@utb.cz>
Date: Wed Nov 3 01:37:28 2021 +0100
chore: make methods aware of objects
as a consequence we stopped returning the generator state from every
function and equally stopped using it as a parameter to every generator
method that handles the state in any way
commit 01eadae32f
Author: surtur <a_mirre@utb.cz>
Date: Tue Nov 2 05:10:58 2021 +0100
feat: move from structural to object paradigm
* declare and implement Generator class and member methods
* create an instance of Generator in main
* call initialize_generator() from main
* the purpose is to subdivide the global scope
* use 'fortuna' as the top-level namespace
* use 'generator' namespace for the generator functions
* wrap the entire file after includes
multiple changes combined in a single commit, I know...
also, a move towards the use of OOP paradigm is imminent as we now have
to do rewrites at multiple places in the code for any minor change