Граф коммитов

3 Коммитов

Автор SHA1 Сообщение Дата
Raul Garcia 5054191902
Removing a dangerous fscanf usage (#84)
* Fixing a potential BO that could happen if the ID assigned by the trustee would exceed the limit in the ballot files.
Adding a test for the fix.

* Fixing a potential BO that could happen if the ID assigned by the trustee would exceed the limit in the ballot files and adding a test for the fix.

* Adding the parameter for ballot_samples to Makefile

* Update exploit
Update exploit

* test update ubuntu workflow runner & cmake version

* pin release runner version to 18.04

Co-authored-by: Matt Wilhelm <github@addressxception.com>
2020-03-31 09:18:37 -04:00
Matt Wilhelm 7f59e712a5
build shared libs in debug mode (#77)
useful for library consumers
2020-01-29 10:55:45 -05:00
Matt Wilhelm d9dd0a1037 Support external_ballot_identifer as a string (#71)
* Support external_ballot_identifer as a string.  Export/import ballots 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.

* Remove Simple Example, add api doc stubs

Add stubs for the api documentation.  Remove the simple example and use the api sample in the PR pipeline workflow

* Fix Merge Issue

* Verify malloc success

* Address PR Feedback

* Fix LGTM alerts

* Add soft delete of encrypter files

* Free CP Proof

* Fix windows Makefile

* test fix pr workflow on windows

* use secure api's

* explicitly compile release

* flush file write before read

* clean up makefile

* Document consumers resonsible for free

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

* Rename static coordinators in API to differentiate local vars

add an underscore prefix to static coordinator instance handles to differentiate vars until #62 is complete

* add new enum cases to the end on voting coordinator

* Add convenience logging

* Handle error cases on file access

use convenience logging

* use consistent file formatting when rebuilding tracker string

* optimize null check

* explicitly set tracker array positions to NULL on failure

* Reformat refactor Decryption_Coordinator_receive_share

* guard tallies_initialized when freeing resources

explicitly initialize num_tallies

* rename _encrypted_ballot_count

* don't return early

* do not fail soft delete if rename fails

* fix assignment

* adjust number of ballots to force a rebuild
2020-01-28 09:44:07 -05:00