* Replaced the implementation of Picnic with the optimized version of https://github.com/IAIK/Picnic.git.
Some notes:
- Picnic is now a git submodule, built separately (build_picnic.sh) and linked into OQS.
- The params are part of the Picnic library, no need to generate them separately.
- The Picnic params have been renamed
- Picnic has been disabled in the Visual Studio build (until the library supports VS)
* Deleted script to download old picnic implementation.
* Added picnic build commands to the configure script.
* Updated travis to build new picnic lib.
* Added note that clone must be recursive (to get picnic submodule).
* Removed dependency on m4ri and added picnic build instruction in travis (since apparently the configure scrip is not run as usual).
* Changed build_picnic.sh script invocation.
* install cmake3.8
Fix for PR 190
* commit
* commit
* Pulled down update to picnic submodule.
* pulled picnic update fixing compat macros failure
* Added openssl lib to test_sig linker if openssl is enabled.
* Disable Picnic on gcc < 5.
* Fixed travis.yml syntax error.
* Pulled updates to Picnic submodule (fixing build error on MacOS).
* Removed banned-functions test that only checks for bzero. For some strange reason, it doesn't work on travis while building picnic, even if bzero is not in the code.
* prettyprint
* Changed prettyprint's picnic exclusion dir.
* external lib changes
* Disable LTO in Picnic that prevents lib merging.
* Changed mode on build_picnic.sh.
* Added newline at the end of the file.
* Updated version of Picnic.
* Added patch to picnic to satisfy the global functions namespace convention.
* Added force option to patch to avoid error when rebuilding.
* Updated picnic-related entries, and added cmake files (obtained by travis).
* Updated ignore patch for picnic.
* Ignore mods (patched files) in 3rd party picnic library.
* Changed return code if no sig algs are configured, from error to success.
It's not really an error, and this makes the Travis build fail otherwise.
* Updated external picnic, and modified how it is patched and built (to avoid multiple patching).
* disabled Picnic on gcc 4
* Silenced picnic's dry-run patching (to avoid error messages if lib has already been patched).
* added comments to script
* Ignore (patched) submodule when checking for modified files.
Also delete a "grep -v" for picnic that meant to do the same thing, but
was in the wrong place after refactoring.
* Added --ignore-submodules to second call to git status
* Add temp/ to gitignore, to prevent Travis style-check failure on mac.
* Original newhope avx2 code and a patchfile
* Integrate AVX2 into kex
* Makefile.am is needed whether the algorithm is enabled or not
* Updated patch
style-check
update
update
Life is painful
update
* Update Documentation - How to integrate external implementations
* Remove binary files
* brew update for mac
* Makefile.am included
* Remove patch functionality from travis test
* Revert patch
* Rename files.
* Rename file.
* Enabled and documenented building on ARM32 (Raspberry Pi). A hardcoded 'defined ARM' in ds_benchmark.h must be removed (and integrated in the build system) before merging this branch.
* Now uses a macro set by the compiler to detect ARM. Also modified README enabling more algs.
* Prettyprint.
* Fix - Unintended sign extension
* Fix - if cdf_table_len is 0 then there will be a problem
* Fix - Resource Leak
* Integer handling issues (OVERFLOW_BEFORE_WIDEN)
* Update Resource leak
* pretty print
* Provide func declaration
* Removing picnic flags which make it disabled by default.
* Remove picnic flag
* Added VisualStudio DLL build configurations
Add inline preprocessor definition to VisualStudio project file - this allows compilation with older versions of VisualStudio (e.g. 2013) which do not support the C99 inline keyword
Removed newhope.c from VisualStudio build files, as it is already included in kex_rlwe_newhope.c and will lead to multiple symbol definition errors in shared library builds
Add ENABLE_CODE_MCBITS guard to kex_code_mcbits.c to protect against missing symbol definition errors in VisualStudio shared library builds
Added VisualStudio shared library exports file dll.def, including the necessary core functions to use oqs from applications
Also export free when building Windows DLLs - this is important as the correct runtime library has to be used to free memory allocated by the OQS library. Applications may be using multiple runtime libraries or memory managers, calling the wrong free will result in memory corruption or segfault
* Add missing newline at end of file.
* liboqs crosscompiles for android
* andriod compilation cleanup
* andriod compilation cleanup wip
* cc working, TODO: merge back what was removed..
* put back error output
* renamed android-build.sh to configure-android
* android compilation done
* removed the use of generic SIDH implementation if optimizied version was available
* added correct CFLAGS for android
* added ARM64 assembly optimizations for sidh
* sidh arm assembly opitimizations wip
* ARM64 optimimizations for SIDH done
* added android build documentation
* fixed prettyprint issue
* removed asm opimizations for darwin
* Added sig API and Picnic signature algs.
* Removed ifdef around Picnic defines, to avoid modifying calling apps.
* Some clean-ups: updated Picnic reference in Readme, made download script executable, added TODO in test_sig.
* Removed const-removing cast since Picnic API now uses const.
* Revamped test_sig, cleaned-up sig and sig_picnic.
* Enables setting location of picnic params through an env variable (vs. hardcoded).
* Minor change.
* Enable travis test for picnic
* Fix yml error
* Fix yml error
* Fix apt package error
* Fix include for picnic
* Exit on first error
* Setup picnic external
* Fix a typo
* c99 mode for picnic matrices file in picnic
* update .gitignore
* Remove warnings from picnic
* Typo
* Another typo
* add picnic build for mac
* formatting
* Updated README after Picnic refactoring.
* Update and uniformization of README.md
* Minor typos in README.md
* Fix merge mistake.
* Fix M4RI_DIR path
* Undo README changes.
* Removing merge artifacts
* File not being used anywhere
* Added appveyor build status icon
Windows continuous integration
* added appveyor.yml
* Integrate AppVeyor into project build settings
When I tried to add AppVeyor to the project settings so that it shows up in pull requests etc., it asked me to link with my GitHub account, so I'm switching to that.
* Fixed Windows build after NTRU refactoring and Kyber addition.
* Removed duplicate variable.
* Un-commnented malloc.h, repairing SIDH on Windows.
* Prettyprint and fix malloc.h error on macOS.