-
Notifications
You must be signed in to change notification settings - Fork 25
Support external_ballot_identifer as a string #71
Conversation
…from encrypter Add support for encrypter to export ballots to the file system. Import encrypter ballots into coordinator. Add a hashtable implementation that tracks ballot cast/spoil state against the external identifier (ballot_collection.c). Support loading ballots into a buffer. Fix memory leaks in bignum.c, crypto.c, decryption/coordinator.c, decryption/trustee.c, voting/coordinator.c, voting/encrypter.c, etc. Rework the API example to demonstrate the new external id and file system changes. Improve debug logging. Add more api documentation. Modify MAX_BALLOT_PAYLOAD to 2000. Explicitly add // TODO: to track remaining work. Note this commit is a work in progress and currently breaks the simple example.
I apologize for the size of this PR. generally we should avoid making PR's so large |
Add stubs for the api documentation. Remove the simple example and use the api sample in the PR pipeline workflow
This pull request introduces 4 alerts when merging 04ac827 into bb04be9 - view on LGTM.com new alerts:
|
This pull request introduces 2 alerts when merging e7d4f8b into bb04be9 - view on LGTM.com new alerts:
|
when calling an api that generates a filename as an out parameter, the caller is responsible for managing the memory of the out parameter when the call is successful
add an underscore prefix to static coordinator instance handles to differentiate vars until #62 is complete
use convenience logging
explicitly initialize num_tallies
This pull request introduces 5 alerts when merging ab0ba22 into 6aa4464 - view on LGTM.com new alerts:
|
This pull request introduces 5 alerts when merging 9f6fc27 into 6aa4464 - view on LGTM.com new alerts:
|
@raulgarciamsft PR feedback addressed to the extent it can be for this effort. Added #74 to address the result code issues you mentioned, and #75 to address error states in an API example. Just a couple of questions outstanding. Thanks for taking the time to look at this so thoroughly. |
This pull request introduces 2 alerts when merging 7a6a588 into 6aa4464 - view on LGTM.com new alerts:
|
This pull request introduces 2 alerts when merging bc26137 into 6aa4464 - view on LGTM.com new alerts:
|
Fixes #65
Checklist
🚨Please review the guidelines for contributing to this repository.
Description
This PR adds support for providing an
external_ballot_identifer
as a string. The identifier is saved as part of the encrypter ballot record on the encrypter device, and is then cached in a hash table when running through ballot registration, cast, and spoil.We also add support to export/import the ballot from the encrypter device as that was missing from the existing implementation.
Additionally a few memory leaks are fixed in in bignum.c, crypto.c, decryption/coordinator.c, decryption/trustee.c, voting/coordinator.c, voting/encrypter.c, etc.
Improve debug logging. Add more api documentation. Modify MAX_BALLOT_PAYLOAD to 2000.
Explicitly add // TODO: to track remaining work.
Remaining Work
Note this PR is a work in progress and currently breaks the simple example.
simple_example
To Test