25 Commits

Author SHA1 Message Date
Christian Paquin
cebaa10083 Added defines to enable all supported KEX schemes. 2018-01-30 15:15:51 -05:00
Christian Paquin
590f4a4914 Added closing tag for oqs.h filter item, fixing the filter file. 2018-01-30 15:14:36 -05:00
Vlad Gheorghiu
35688bf463
Merge branch 'master' into cp-update-picnic 2018-01-30 12:47:31 -05:00
Vlad Gheorghiu
20348ca55d Vsoftco refactor oqs success (#219)
* refactoring

- Introduced typedef int OQS_status; in src/common/common.h and
refactored the
  code accordingly. Now it's easy to figure out whether the function
returns
  an error status or an int.

- Refactored hard-coded returns so now we return the OQS_status as
either
  OQS_SUCCESS or OQS_ERROR. OQS_RAND_get_system_entropy() and all other
  KEX/SIG API functions now return OQS_STATUS instead of int.

- Introduced src/common/oqs.h, which include all other necessary liboqs
  headers. All standalone programs now only #include <oqs/oqs.h>

- src/kex.c:23, the UNUSED macro was re-defined differently from
  oqs/common.h:25, so re-defined kex.c's UNUSED to UNUSED_KEX

- Got rid of PRINT_(PART)_HEX macros and introduced stand-alone
functions in
  src/common.h (with definitions in src/common.c)

    void OQS_print_hex_string(const char *label, uint8_t *str, size_t
len);
    void OQS_print_part_hex_string(const char *label, uint8_t *str,
size_t len, size_t sub_len);

* commit

fixed stdint.h missing #include

* commit

* commit

* commit

* These files are part of the patch

* Modified patch

* added oqs.h in the Windows build

* VS build

* Fixed VS build

* fixed VS build

* Fixed test_rand VS project

added WINDOWS macro in the VS configuration for test_rand
2018-01-30 10:30:26 -05:00
Christian Paquin
07c4635fc9 Added OQS sig functions to DLL exports and fixed DLL projects to include picnic. 2018-01-29 10:45:12 -05:00
Christian Paquin
db6639687d Added Picnic sig to Visual Studio. 2018-01-25 10:23:53 -05:00
Christian Paquin
46a8976399 (Re)Added SIDHv3/SIKE to Visual Studio. (#213) 2018-01-21 20:30:45 -05:00
Christian Paquin
3fe6afaa2a (Re)Added SIDHv3/SIKE to Visual Studio. 2018-01-12 23:08:29 -05:00
Douglas Stebila
ae488e69bf Merge branch 'paquin_add_sike' of https://github.com/christianpaquin/liboqs into christianpaquin-paquin_add_sike 2018-01-11 22:40:51 -05:00
Tancrède Lepoint
5fd3475ed4 Remove old version of Kyber (#211) 2018-01-10 15:08:34 -05:00
Christian Paquin
ee88fe0779 Removed SIDH from the Visual Studio project, until it is properly added back in a different PR. 2018-01-10 13:32:12 -05:00
Nikolaus Thümmel
8bc8cd9db8 Added VisualStudio DLL build configurations (#182)
* 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.
2017-10-24 09:31:35 -04:00
Christian Paquin
40ffb4eb38 Updated Windows build (added sig, fixed warnings, 2017 update) (#169)
* Updated Visual Studio solution to 2017 version, fixed build warnings (issue #159), added signature and Picnic support.

* commit

treat warnings as errors

* Fix ENABLED_PICNIC macro in sig_picnic.

* Prettyprint

* Try to fix Travis error or macOS.
2017-10-18 16:50:24 -04:00
Christian Paquin
1385ddc8ff Fix windows build july2017 (#151)
* 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.
2017-07-20 10:16:38 -04:00
Christian Paquin
3f5c4c5998 Updated SIDH to v2.0. 2017-04-21 16:16:41 -04:00
Christian Paquin
8a09a124ef Enable ntru on windows (#95)
* Enabled NTRU on Windows. The library must be obtained separately to be compiled in; see README.
2017-01-30 09:52:57 +10:00
Christian Paquin
88d18d7d49 Enable McBits on Windows (#78) 2016-12-22 11:27:29 -05:00
Christian Paquin
36ae6bf418 Fixes Visual Studio projects after crypto re-factoring (#68) 2016-12-05 21:00:58 -05:00
Christian Paquin
7babc31f8b Integrates MSR's SIDH library into OQS (#59) 2016-11-24 16:13:50 -05:00
Christian Paquin
7fcf29d37f Integrates MSR's RLWE Latticecrypto library into OQS. (#58) 2016-11-23 11:06:54 -05:00
Christian Paquin
afc321d352 Fix aesctr on windows (#49)
* Added AES-CTR files to Visual Studio project and fixed compilation errors on Windows.
2016-11-10 14:47:14 -05:00
Christian Paquin
c949205f5d Enabled building Frodo on Windows (#39)
* Enables Windows build.

* Modified CAPI call to avoid error when no key container is present for the user.

* Removed spurious white spaces.

* Enabled building Frodo on Windows using the Visual Studio solution.

* Replaced non-portable packed bit fields with bit masks.

* Removed commented-out code and defined macro that has been moved to preprocessor defs.

* Disabled AES NI when using x86 Visual Studio projects.

* Prettyprint.
2016-10-31 21:09:22 -04:00
Christian Paquin
e2b7725768 Modified VS projects and some newhope files to enable Windows compilation (#31) 2016-10-21 22:03:23 -04:00
Christian Paquin
096b476e4f Modified OQS Windows projects to make it compatible with OpenSSL on Windows (#17)
* Removed warning Windows when using strdup, and removed the corresponding _strdup definition.

* Modified OQS projects to link statically with the system runtime, like the OpenSSL project does.
Otherwise we get link errors when including OQS in OpenSSL on Windows.
2016-10-01 16:13:28 -04:00
Christian Paquin
16e35cd19c Enables Windows build. (#7) 2016-09-22 16:38:26 -04:00