Sync with tfcipher
authorAndrey Rys <rys@lynxlynx.ru>
Sun, 28 Aug 2022 10:32:18 +0000 (12:32 +0200)
committerAndrey Rys <rys@lynxlynx.ru>
Sun, 28 Aug 2022 10:32:18 +0000 (12:32 +0200)
VERSION
tfdef.h
tfstream.c

diff --git a/VERSION b/VERSION
index 900731ffd51ffc82db488b6554f719de735f12bd..1479e19b5fdf6c32d2eb41dad16203706f7d663d 100644 (file)
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-64
+65
diff --git a/tfdef.h b/tfdef.h
index 2eac9f8c240d46a16f2df37d223432e8e2e5853e..0facb028e2999dc74a1c804ba5cd9911c08e6ab4 100644 (file)
--- a/tfdef.h
+++ b/tfdef.h
@@ -92,6 +92,18 @@ static inline void data_to_words(void *p, size_t l)
 #endif
 }
 
+static inline void xor_block(void *dst, const void *src, size_t sz)
+{
+       const size_t *sx = (const size_t *)src;
+       const TF_BYTE_TYPE *usx = (const TF_BYTE_TYPE *)src;
+       size_t *dx = (size_t *)dst;
+       TF_BYTE_TYPE *udx = (TF_BYTE_TYPE *)dst;
+       size_t sl = sz;
+
+       for (sl = 0; sl < (sz / sizeof(size_t)); sl++) dx[sl] ^= sx[sl];
+       if (sz - (sl * sizeof(size_t))) for (sl *= sizeof(size_t); sl < sz; sl++) udx[sl] ^= usx[sl];
+}
+
 static inline void ctr_inc(TF_UNIT_TYPE *x, size_t xl)
 {
        size_t z;
index 014b5c12f4ee9f7e2f8b49926a80199096c00299..6f52a329ab5ece70fef11c163d5492d3770ddcee 100644 (file)
@@ -2,18 +2,6 @@
 #include "tfdef.h"
 #include "tfe.h"
 
-static inline void xor_block(void *dst, const void *src, size_t sz)
-{
-       const size_t *sx = (const size_t *)src;
-       const TF_BYTE_TYPE *usx = (const TF_BYTE_TYPE *)src;
-       size_t *dx = (size_t *)dst;
-       TF_BYTE_TYPE *udx = (TF_BYTE_TYPE *)dst;
-       size_t sl = sz;
-
-       for (sl = 0; sl < (sz / sizeof(size_t)); sl++) dx[sl] ^= sx[sl];
-       if (sz - (sl * sizeof(size_t))) for (sl *= sizeof(size_t); sl < sz; sl++) udx[sl] ^= usx[sl];
-}
-
 void tf_stream_crypt(struct tfe_stream *tfe, void *out, const void *in, size_t sz)
 {
        tfe_emit(out, sz, tfe);