tls: tested PSTM_X86_64, not enabling it - too large

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
This commit is contained in:
Denys Vlasenko 2017-01-19 16:32:38 +01:00
parent 6b1b004845
commit 432f1ae2ff
2 changed files with 5 additions and 3 deletions

View File

@ -582,7 +582,7 @@ static void xwrite_and_hash(tls_state_t *tls, /*const*/ void *buf, unsigned size
tls_get_random(tls->outbuf, AES_BLOCKSIZE); /* IV */ tls_get_random(tls->outbuf, AES_BLOCKSIZE); /* IV */
p = tls->outbuf + AES_BLOCKSIZE; p = tls->outbuf + AES_BLOCKSIZE;
size -= sizeof(*xhdr); size -= sizeof(*xhdr);
dbg("before crypt: 5 hdr + %u data + %u hash bytes\n", size, sizeof(mac_hash)); dbg("before crypt: 5 hdr + %u data + %u hash bytes\n", size, (int)sizeof(mac_hash));
p = mempcpy(p, buf + sizeof(*xhdr), size); /* content */ p = mempcpy(p, buf + sizeof(*xhdr), size); /* content */
p = mempcpy(p, mac_hash, sizeof(mac_hash)); /* MAC */ p = mempcpy(p, mac_hash, sizeof(mac_hash)); /* MAC */
size += sizeof(mac_hash); size += sizeof(mac_hash);
@ -625,7 +625,7 @@ static void xwrite_and_hash(tls_state_t *tls, /*const*/ void *buf, unsigned size
xhdr->len16_lo = size & 0xff; xhdr->len16_lo = size & 0xff;
xwrite(tls->fd, xhdr, sizeof(*xhdr)); xwrite(tls->fd, xhdr, sizeof(*xhdr));
xwrite(tls->fd, tls->outbuf, size); xwrite(tls->fd, tls->outbuf, size);
dbg("wrote %u bytes\n", sizeof(*xhdr) + size); dbg("wrote %u bytes\n", (int)sizeof(*xhdr) + size);
//restore xhdr->len16_hi = ; //restore xhdr->len16_hi = ;
//restore xhdr->len16_lo = ; //restore xhdr->len16_lo = ;
} }

View File

@ -27,11 +27,13 @@
/* pstm: multiprecision numbers */ /* pstm: multiprecision numbers */
#undef DISABLE_PSTM #undef DISABLE_PSTM
#if defined(__GNUC__) && defined(__i386__) #if defined(__GNUC__) && defined(__i386__)
/* PSTM_X86 works correctly. +25 bytes. */
# define PSTM_32BIT # define PSTM_32BIT
# define PSTM_X86 # define PSTM_X86
#endif #endif
//test this before enabling:
//#if defined(__GNUC__) && defined(__x86_64__) //#if defined(__GNUC__) && defined(__x86_64__)
// /* PSTM_X86_64 works correctly, but +782 bytes. */
// /* Looks like most of the growth is because of PSTM_64BIT. */
//# define PSTM_64BIT //# define PSTM_64BIT
//# define PSTM_X86_64 //# define PSTM_X86_64
//#endif //#endif