summaryrefslogtreecommitdiff
path: root/crypto_aead/lilliputaei128v1/ref/test/helpers.h
blob: 339ae0e09a4126681dc6fc9be468aa30fcf00bc6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#ifndef HELPERS_H
#define HELPERS_H

#include <stdint.h>
#include <stdio.h>

#include "parameters.h"


#define ARRAY_NB(A) (sizeof(A)/sizeof(A[0]))
#define ARRAY_END(A) (A+ARRAY_NB(A))

#define REPORT_DIFFERENCE(VECTOR, ELEMENT) do {                         \
        fprintf(stderr, "%s: vector %s: %s differs from expected\n",    \
                __FILE__, (VECTOR), (ELEMENT));                         \
    } while (0)

#define REPORT_INVALID(VECTOR) do {                                     \
        fprintf(stderr, "%s: vector %s: ciphertext/tag invalid\n",      \
                __FILE__, (VECTOR));                                    \
    } while (0)


static inline FILE* open_dump_file(const char *folder, const char* vector, const char *name)
{
    size_t filename_len = snprintf(NULL, 0, "%s/%s_%s.txt", folder, vector, name);
    char filename[filename_len+1];
    snprintf(filename, sizeof(filename), "%s/%s_%s.txt", folder, vector, name);
    return fopen(filename, "w");
}




#endif /* HELPERS_H */