summaryrefslogtreecommitdiff
path: root/crypto/poly1305
Commit message (Collapse)AuthorAgeFilesLines
* SPARC assembly pack: enforce V8+ ABI constraints.Andy Polyakov2016-07-011-5/+5
| | | | Reviewed-by: Richard Levitte <levitte@openssl.org>
* Convert memset calls to OPENSSL_cleanseMatt Caswell2016-06-301-1/+2
| | | | | | | | Ensure things really do get cleared when we intend them to. Addresses an OCAP Audit issue. Reviewed-by: Andy Polyakov <appro@openssl.org>
* x86_64 assembly pack: tolerate spaces in source directory name.Andy Polyakov2016-05-291-1/+1
| | | | | | [as it is now quoting $output is not required, but done just in case] Reviewed-by: Richard Levitte <levitte@openssl.org>
* poly1305/asm/poly1305-mips.pl: adhere to standard frame layout.Andy Polyakov2016-05-281-20/+24
| | | | Reviewed-by: Richard Levitte <levitte@openssl.org>
* SPARC assembly pack: add missing .type directives.Andy Polyakov2016-05-281-0/+7
| | | | Reviewed-by: Richard Levitte <levitte@openssl.org>
* Add OpenSSL copyright to .pl filesRich Salz2016-05-2110-10/+80
| | | | Reviewed-by: Richard Levitte <levitte@openssl.org>
* Copyright consolidation 05/10Rich Salz2016-05-172-8/+12
| | | | Reviewed-by: Richard Levitte <levitte@openssl.org>
* Use OPENSSL_hexchar2intRich Salz2016-05-161-7/+4
| | | | Reviewed-by: Richard Levitte <levitte@openssl.org>
* MIPS64 assembly pack: add Poly1305 module.Andy Polyakov2016-05-102-0/+415
| | | | Reviewed-by: Richard Levitte <levitte@openssl.org>
* fix tab-space mixed indentationFdaSilvaYY2016-05-091-9/+9
| | | | | | | No code change Reviewed-by: Kurt Roeckx <kurt@openssl.org> Reviewed-by: Matt Caswell <matt@openssl.org>
* poly1305/asm/poly1305-x86_64.pl: contain symbols within shared lib.Andy Polyakov2016-05-061-0/+4
| | | | | | We don't need it, but external users might find it handy. Reviewed-by: Richard Levitte <levitte@openssl.org>
* poly1305/asm/poly1305-x86_64.pl: make it cross-compile.Andy Polyakov2016-05-061-4/+4
| | | | Reviewed-by: Richard Levitte <levitte@openssl.org>
* various spelling fixesFdaSilvaYY2016-04-281-1/+1
| | | | | Reviewed-by: Richard Levitte <levitte@openssl.org> Reviewed-by: Rich Salz <rsalz@openssl.org> (Merged from https://github.com/openssl/openssl/pull/952)
* SPARCv9 assembly pack: fine-tune run-time switch.Andy Polyakov2016-04-261-2/+2
| | | | Reviewed-by: Tim Hudson <tjh@openssl.org>
* crypto/poly1305/asm: chase overflow bit on x86 and ARM platforms.Andy Polyakov2016-04-254-23/+89
| | | | | | | | Even though no test could be found to trigger this, paper-n-pencil estimate suggests that x86 and ARM inner loop lazy reductions can loose a bit in H4>>*5+H0 step. Reviewed-by: Emilia Käsper <emilia@openssl.org>
* Remove --classic build entirelyRichard Levitte2016-04-201-61/+0
| | | | | | | | The Unix build was the last to retain the classic build scheme. The new unified scheme has matured enough, even though some details may need polishing. Reviewed-by: Rich Salz <rsalz@openssl.org>
* poly1305/asm/poly1305-x86_64.pl: not all assemblers manage << in constants.Andy Polyakov2016-04-201-5/+5
| | | | Reviewed-by: Richard Levitte <levitte@openssl.org>
* Revert "various spelling fixes"Rich Salz2016-04-041-1/+1
| | | | | | | This reverts commit 620d540bd47a96fb6905fbbdd8ea5167a8841a3e. It wasn't reviewed. Reviewed-by: Rich Salz <rsalz@openssl.org>
* various spelling fixesFdaSilvaYY2016-04-041-1/+1
| | | | | Reviewed-by: Richard Levitte <levitte@openssl.org> Reviewed-by: Rich Salz <rsalz@openssl.org>
* crypto/poly1305: don't break carry chains.Andy Polyakov2016-04-0410-76/+146
| | | | | | | | | RT#4483 [poly1305-armv4.pl: remove redundant #ifdef __thumb2__] [poly1305-ppc*.pl: presumably more accurate benchmark results] Reviewed-by: Richard Levitte <levitte@openssl.org>
* poly1305/asm/poly1305-x86.pl: don't loose 59-th bit.Andy Polyakov2016-03-292-9/+40
| | | | | | | RT#4439 Reviewed-by: Richard Levitte <levitte@openssl.org> Reviewed-by: Tim Hudson <tjh@openssl.org>
* Remove the remainder of util/mk1mf.pl and companion scriptsRichard Levitte2016-03-211-3/+0
| | | | | | | This removes all scripts that deal with MINFO as well, since that's only used by mk1mf. Reviewed-by: Andy Polyakov <appro@openssl.org>
* poly1305/asm/poly1305-x86_64.pl: make it work with linux-x32.Andy Polyakov2016-03-151-2/+8
| | | | Reviewed-by: Richard Levitte <levitte@openssl.org>
* s390x assembly pack: 32-bit fixups.Andy Polyakov2016-03-141-1/+4
| | | | Reviewed-by: Richard Levitte <levitte@openssl.org>
* Add $(LIB_CFLAGS) for any build.info generator that uses $(CFLAGS)Richard Levitte2016-03-131-1/+1
| | | | | | | The reason to do so is that some of the generators detect PIC flags like -fPIC and -KPIC, and those are normally delivered in LD_CFLAGS. Reviewed-by: Rich Salz <rsalz@openssl.org>
* crypto/*/build.info: make it work on ARM platforms.Andy Polyakov2016-03-111-2/+4
| | | | Reviewed-by: Richard Levitte <levitte@openssl.org>
* Fix some assembler generating scripts for better unificationRichard Levitte2016-03-112-3/+3
| | | | | | | | | | | Some of these scripts would recognise an output parameter if it looks like a file path. That works both in both the classic and new build schemes. Some fo these scripts would only recognise it if it's a basename (i.e. no directory component). Those need to be corrected, as the output parameter in the new build scheme is more likely to contain a directory component than not. Reviewed-by: Andy Polyakov <appro@openssl.org>
* Add include directory options for assembler files that include from crypto/Richard Levitte2016-03-101-0/+3
| | | | | | Closes RT#4406 Reviewed-by: Rich Salz <rsalz@openssl.org>
* Make sure the effect of "pic" / "no-pic" is used with assembler compilationsRichard Levitte2016-03-091-1/+1
| | | | | | | | | | | | | | Before the 'Introduce the "pic" / "no-pic" config option' commit, the shared_cflag value for the chosen config would be part of the make variable CFLAG, which got replicated into CFLAGS and ASFLAGS. Since said commit, the shared_cflag value has become a make variable of its own, SHARED_CFLAG (which is left empty in a "no-pic" build). However, ASFLAGS was forgotten. That's what's corrected with this change. Reviewed-by: Andy Polyakov <appro@openssl.org>
* Unified - adapt the generation of poly1305 assembler to use GENERATERichard Levitte2016-03-095-13/+19
| | | | | | | | | This gets rid of the BEGINRAW..ENDRAW sections in crypto/poly1305/build.info. This also moves the assembler generating perl scripts to take the output file name as last command line argument, where necessary. Reviewed-by: Andy Polyakov <appro@openssl.org>
* SPARCv9 assembly pack: unify build rules and argument handling.Andy Polyakov2016-03-083-2/+5
| | | | | | | | | | Make all scripts produce .S, make interpretation of $(CFLAGS) pre-processor's responsibility, start accepting $(PERLASM_SCHEME). [$(PERLASM_SCHEME) is redundant in this case, because there are no deviataions between Solaris and Linux assemblers. This is purely to unify .pl->.S handling across all targets.] Reviewed-by: Richard Levitte <levitte@openssl.org>
* poly1305/asm/poly1305-*.pl: flip horizontal add and reduction.Andy Polyakov2016-03-025-94/+128
| | | | | | | | Formally only 32-bit AVX2 code path needs this, but I choose to harmonize all vector code paths. RT#4346 Reviewed-by: Richard Levitte <levitte@openssl.org>
* Consistently use arm_arch.h constants in armcap assembly code.David Benjamin2016-03-021-1/+1
| | | | | | | | Most of the assembly uses constants from arm_arch.h, but a few references to ARMV7_NEON don't. Consistently use the macros everywhere. Signed-off-by: Andy Polyakov <appro@openssl.org> Reviewed-by: Rich Salz <rsalz@openssl.org>
* poly1305/asm/poly1305-armv4.pl: replace ambiguous instruction.Andy Polyakov2016-02-231-2/+2
| | | | | | | | Different assembler versions disagree on how to interpret #-1 as argument to vmov.i64, as 0xffffffffffffffff or 0x00000000ffffffff. So replace it with something they can't disagree on. Reviewed-by: Rich Salz <rsalz@openssl.org>
* Always build library object files with shared library cflagsRichard Levitte2016-02-201-1/+1
| | | | | | | | | | | | | | | | This takes us away from the idea that we know exactly how our static libraries are going to get used. Instead, we make them available to build shareable things with, be it other shared libraries or DSOs. On the other hand, we also have greater control of when the shared library cflags. They will never be used with object files meant got binaries, such as apps/openssl or test/test*. With unified, we take this a bit further and prepare for having to deal with extra cflags specifically to be used with DSOs (dynamic engines), libraries and binaries (applications). Reviewed-by: Rich Salz <rsalz@openssl.org>
* Remove all special make depend flags, as well as OPENSSL_DOING_MAKEDEPENDRichard Levitte2016-02-181-1/+1
| | | | | | | | | | All those flags existed because we had all the dependencies versioned in the repository, and wanted to have it be consistent, no matter what the local configuration was. Now that the dependencies are gone from the versioned Makefile.ins, it makes much more sense to use the exact same flags as when compiling the object files. Reviewed-by: Rich Salz <rsalz@openssl.org>
* crypto/poly1305: add floating-point reference implementation.Andy Polyakov2016-02-131-0/+470
| | | | Reviewed-by: Rich Salz <rsalz@openssl.org>
* Pass $(CC) to perlasm scripts via the environmentRichard Levitte2016-02-131-6/+6
| | | | | | | | It seems that on some platforms, the perlasm scripts call the C compiler for certain checks. These scripts need the environment variable CC to have the C compiler command. Reviewed-by: Rich Salz <rsalz@openssl.org>
* PPC assembly pack: add ChaCha20 and Poly1305 modules.Andy Polyakov2016-02-134-0/+1376
| | | | Reviewed-by: Richard Levitte <levitte@openssl.org>
* C64x+ assembly pack: add ChaCha20 and Poly1305 modules.Andy Polyakov2016-02-131-0/+320
| | | | Reviewed-by: Richard Levitte <levitte@openssl.org>
* ARM assembly pack: add ChaCha20 and Poly1305 modules.Andy Polyakov2016-02-133-0/+2144
| | | | Reviewed-by: Richard Levitte <levitte@openssl.org>
* poly1305/asm/poly1305-x86_64.pl: MacOS X portability fix.Andy Polyakov2016-02-111-2/+2
| | | | Reviewed-by: Viktor Dukhovni <viktor@openssl.org>
* poly1305/asm/poly1305-x86_64.pl: fix mingw64 build.Andy Polyakov2016-02-111-4/+6
| | | | Reviewed-by: Tim Hudson <tjh@openssl.org>
* unified build scheme: add a "unified" template for Unix MakefileRichard Levitte2016-02-101-0/+12
| | | | | | This also adds all the raw sections needed for some files. Reviewed-by: Rich Salz <rsalz@openssl.org>
* poly1305/poly1305.c: work around -Wshadow warnings with POLY1305_ASM.Andy Polyakov2016-02-101-3/+12
| | | | Reviewed-by: Rich Salz <rsalz@openssl.org>
* x86[_64] assembly pack: add ChaCha20 and Poly1305 modules.Andy Polyakov2016-02-103-0/+4042
| | | | Reviewed-by: Rich Salz <rsalz@openssl.org>
* s390x assembly pack: add ChaCha20 and Poly1305 modules.Andy Polyakov2016-02-092-0/+218
| | | | Reviewed-by: Tim Hudson <tjh@openssl.org>
* unified build scheme: add build.info filesRichard Levitte2016-02-011-0/+3
| | | | | | | | | Now that we have the foundation for the "unified" build scheme in place, we add build.info files. They have been generated from the Makefiles in the same directories. Things that are platform specific will appear in later commits. Reviewed-by: Andy Polyakov <appro@openssl.org>
* Engage poly1305-sparcv9 module.Andy Polyakov2016-01-311-0/+3
| | | | Reviewed-by: Richard Levitte <levitte@openssl.org>
* Add poly1305/asm/poly1305-sparcv9.pl.Andy Polyakov2016-01-311-0/+1097
| | | | Reviewed-by: Richard Levitte <levitte@openssl.org>