Latest update.
This commit is contained in:
@@ -30,7 +30,11 @@ IF[{- !$disabled{asm} -}]
|
||||
ENDIF
|
||||
|
||||
SOURCE[../../libcrypto]=poly1305_ameth.c poly1305.c $POLY1305ASM
|
||||
|
||||
# Implementations are now spread across several libraries, so the defines
|
||||
# need to be applied to all affected libraries and modules.
|
||||
DEFINE[../../libcrypto]=$POLY1305DEF
|
||||
DEFINE[../providers/libimplementations.a]=$POLY1305DEF
|
||||
|
||||
GENERATE[poly1305-sparcv9.S]=asm/poly1305-sparcv9.pl
|
||||
INCLUDE[poly1305-sparcv9.o]=..
|
||||
|
||||
@@ -11,8 +11,7 @@
|
||||
#include <string.h>
|
||||
#include <openssl/crypto.h>
|
||||
|
||||
#include "internal/poly1305.h"
|
||||
#include "poly1305_local.h"
|
||||
#include "crypto/poly1305.h"
|
||||
|
||||
size_t Poly1305_ctx_size(void)
|
||||
{
|
||||
@@ -89,7 +88,7 @@ static void
|
||||
poly1305_blocks(void *ctx, const unsigned char *inp, size_t len, u32 padbit);
|
||||
|
||||
/*
|
||||
* Type-agnostic "rip-off" from constant_time_locl.h
|
||||
* Type-agnostic "rip-off" from constant_time.h
|
||||
*/
|
||||
# define CONSTANT_TIME_CARRY(a,b) ( \
|
||||
(a ^ ((a ^ b) | ((a - b) ^ b))) >> (sizeof(a) * 8 - 1) \
|
||||
|
||||
@@ -10,10 +10,9 @@
|
||||
#include <stdio.h>
|
||||
#include "internal/cryptlib.h"
|
||||
#include <openssl/evp.h>
|
||||
#include "internal/asn1_int.h"
|
||||
#include "internal/poly1305.h"
|
||||
#include "poly1305_local.h"
|
||||
#include "internal/evp_int.h"
|
||||
#include "crypto/asn1.h"
|
||||
#include "crypto/poly1305.h"
|
||||
#include "crypto/evp.h"
|
||||
|
||||
/*
|
||||
* POLY1305 "ASN1" method. This is just here to indicate the maximum
|
||||
|
||||
@@ -1,27 +0,0 @@
|
||||
/*
|
||||
* Copyright 2015-2016 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
* in the file LICENSE in the source distribution or at
|
||||
* https://www.openssl.org/source/license.html
|
||||
*/
|
||||
|
||||
typedef void (*poly1305_blocks_f) (void *ctx, const unsigned char *inp,
|
||||
size_t len, unsigned int padbit);
|
||||
typedef void (*poly1305_emit_f) (void *ctx, unsigned char mac[16],
|
||||
const unsigned int nonce[4]);
|
||||
|
||||
struct poly1305_context {
|
||||
double opaque[24]; /* large enough to hold internal state, declared
|
||||
* 'double' to ensure at least 64-bit invariant
|
||||
* alignment across all platforms and
|
||||
* configurations */
|
||||
unsigned int nonce[4];
|
||||
unsigned char data[POLY1305_BLOCK_SIZE];
|
||||
size_t num;
|
||||
struct {
|
||||
poly1305_blocks_f blocks;
|
||||
poly1305_emit_f emit;
|
||||
} func;
|
||||
};
|
||||
Reference in New Issue
Block a user