aboutsummaryrefslogtreecommitdiff
path: root/src/Database.cpp
AgeCommit message (Collapse)Author
2020-08-18Follow cppcheck suggestionsdec05eba
2020-08-18Add methods to allow pingingdec05eba
2020-08-18Do not crash if ntp has been synced once and it fails next time (can happen ↵dec05eba
when laptop lid is closed)
2020-08-18Add sql debug, fix action counter in request wrong numberdec05eba
2020-08-18Fix bug with action gaps in response (invalid reference to local array)dec05eba
2020-08-18more debugdec05eba
2020-08-18Output action gapdec05eba
2020-08-18Ping node before sending old datadec05eba
2020-08-18Update memory usage testdec05eba
2020-08-18Resend data if it failsdec05eba
2020-08-18Fix bug where addData/addUser doesn't get send to listening peersdec05eba
2020-08-18Fix node raw data bug (data type mismatch), add debug statementsdec05eba
2020-08-18Add debug outputdec05eba
2020-08-18Fix info hash not hashing inputdec05eba
2020-08-18Add delay to sending old nodes to prevent spamming (and getting disconnected)dec05eba
2020-08-18Fix memory leak (mismatch free/delete/delete[]), fix invalid memory accessdec05eba
2020-08-18Store node encryption key with user data, fix encryption bug when using ↵dec05eba
additional data
2020-08-18Remove duplicate permission checking for ADD_DATA operationdec05eba
2020-08-18Return stored node users decrypted as hash map instead of vectordec05eba
2020-08-18Add functions to send/receive custom messagesdec05eba
2020-08-18Add method to get user groupsdec05eba
2020-08-18Remove duplicate authorization for add user (to group)dec05eba
2020-08-18Allow storing user without nodesdec05eba
2020-08-18Add methods to store/retrieve encrypted user (using argon2 for hash)dec05eba
2020-08-18Add versioning to request old data structuredec05eba
2020-08-18Store known remote nodes and connect to them next timedec05eba
2020-08-18Implement node load/fetch orderdec05eba
2020-08-18Ignore our own requests when requesting old packetsdec05eba
2020-08-18Only download nodes that we are missingdec05eba
2020-08-18Remove user/group classes, user public key/group id directly to database insteaddec05eba
2020-08-18Replace files with sqlitedec05eba
Using sqlite because sqlite has transactions, storing/loading from files automatically, unloading data that is not accessed often. Removed cosmetic data (node name, username). They can be added using addData by the application that uses odhtdb instead. Database callback functions can now be called with stored data using database.loadNode function. TODO: Add local user storage (with password) back, it has been temorary disabled
2020-08-18Remove commit, maybe readd it laterdec05eba
2020-08-18Temporary remove timestamp checkdec05eba
2020-08-18Update ntp dependency with bug fix, make error messages betterdec05eba
2020-08-18Remove unnecessary dependency 'fmt'dec05eba
2020-08-18Include fraction in timestamp. Timestamp is now in microsecondsdec05eba
2020-08-18Fail if ntp failsdec05eba
2020-08-18Make ntp sync more robust with retriesdec05eba
2020-08-18blalbadec05eba
2020-08-18Add stop seeding functiondec05eba
2020-08-18Add decryption (and caching) of data, even when adding encryption key after ↵dec05eba
data has been added
2020-08-18Change local storage to fit dchat betterdec05eba
2020-08-18Add local user storage function (locally stored encrypted user private key)dec05eba
2020-08-18Improve database startup by moving timestamp sync to where it's neededdec05eba
2020-08-18Store opendht identity in storage file (cached)dec05eba
2020-08-18Store database storage to files, also loadingdec05eba
2020-08-18Add callback functions for operationsdec05eba
2020-08-18Expose include dirdec05eba
2020-08-18Fix add data operation not working correctlydec05eba
Reminder: do not get reference to hash map value... duh Add thread-safe logging (log is in order now!). Store data immediately to database when WE add it instead of waiting for response from remote peers. TODO: Test with multiple peers (not only localhost)
2020-08-18Add operation to allow users to be added to groupdec05eba
WARNING! Lazy implementation everywhere, does not handle out-of-order packets