Check-in [4cee3b7e59]
Overview
Comment:Moved some of the argon2 patches to a patch file
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA3-256: 4cee3b7e59bbe0c60fa51536c22101865bf4732e1ed6e7dc401c08db0a2a0c4f
User & Date: rkeene on 2019-01-16 21:38:45
Other Links: manifest | tags
Context
2019-01-17
01:55
Support using OS resolvers check-in: d5ffbea19a user: rkeene tags: trunk
2019-01-16
21:38
Moved some of the argon2 patches to a patch file check-in: 4cee3b7e59 user: rkeene tags: trunk
2019-01-13
22:10
Updated to make whether or not to use the amalgamation a separate configuration option check-in: 9532d401f5 user: rkeene tags: trunk
Changes

Modified build/argon2/Makefile from [ddf60919a7] to [dd98e2cbb8].

1
2
3
4
5
6
7
8


9
10
11
12


13
14
15
16
17
18
19
1
2
3
4
5
6


7
8
9
10
11
12
13
14
15
16
17
18
19
20
21






-
-
+
+




+
+







PREFIX := $(shell pwd)/INST

all: out/argon2.c out/argon2.h

src-patched/argon2.c src-patched/argon2.h src-patched/blake2b.c src-patched/blamka-round-ref.h src-patched/core.c src-patched/core.h src-patched/encoding.c src-patched/encoding.h src-patched/ref.c: src-patched Makefile

src-patched: src/argon2.c src/argon2.h src/blake2b.c src/blamka-round-ref.h src/core.c src/core.h src/encoding.c src/encoding.h src/ref.c patches/argon2-20181109-tclamalgamation.diff patches/argon2-20181109-noencoding.diff Makefile
	rm -rf src-patched src-patched.new
src-patched: src/argon2.c src/argon2.h src/blake2b.c src/blamka-round-ref.h src/core.c src/core.h src/encoding.c src/encoding.h src/ref.c patches/argon2-20181109-tclamalgamation.diff patches/argon2-20181109-noencoding.diff patches/argon2-20181109-monocypherblock.diff Makefile
	rm -rf src-patched.new
	mkdir src-patched.new
	cp $^ src-patched.new/
	cd src-patched.new && patch --batch --posix -p1 < ../patches/argon2-20181109-tclamalgamation.diff
	cd src-patched.new && patch --batch --posix -p1 < ../patches/argon2-20181109-noencoding.diff
	cd src-patched.new && patch --batch --posix -p1 < ../patches/argon2-20181109-monocypherblock.diff
	rm -rf src-patched
	mv src-patched.new src-patched

out/argon2.c: src-patched/argon2.c src-patched/ref.c src-patched/core.c src-patched/blake2b.c src-patched/encoding.c monocypher-blake2b.h Makefile
	mkdir -p out
	echo '#define ARGON2_NO_THREADS 1' > out/argon2.c.new.1
	echo '#define ARGON2_INTERNAL_ONLY 1' >> out/argon2.c.new.1
	cat monocypher-blake2b.h >> out/argon2.c.new.1
33
34
35
36
37
38
39
40
41
42

43
44
45
46
47
48
49
35
36
37
38
39
40
41



42
43
44
45
46
47
48
49







-
-
-
+







	mkdir -p out
	cat src-patched/argon2.h > out/argon2.h.new.1
	echo '#ifdef ARGON2_INTERNAL_ONLY' >> out/argon2.h.new.1
	cat src-patched/blamka-round-ref.h src-patched/core.h src-patched/encoding.h >> out/argon2.h.new.1
	echo '#endif' >> out/argon2.h.new.1
	sed -r '/^extern int FLAG/ d;/#include "/ d;/( |\*)argon(2_ctx|2_verify|2_hash|2_type2|2_error_message|2_encodedlen|2i_|2d_|2id_)/ b;/:/ b;/^(static|extern|enum|typedef) / b;s@^[a-z]@static &@' out/argon2.h.new.1 > out/argon2.h.new.2
	rm -f out/argon2.h.new.1
	sed '/^typedef struct .* block;$$/ {i \'$$'\n''#ifndef TCL_NANO_AMALGAMATION'$$'\n''s@ v\[@ a[@;p;i \'$$'\n''#endif'$$'\n''d}' out/argon2.h.new.2 > out/argon2.h.new.1
	rm -f out/argon2.h.new.2
	mv out/argon2.h.new.1 out/argon2.h
	mv out/argon2.h.new.2 out/argon2.h

install: out/argon2.c out/argon2.h
	mkdir -p '$(PREFIX)'
	cp out/argon2.c out/argon2.h '$(PREFIX)'

clean:
	rm -f out/argon2.c out/argon2.h

Added build/argon2/patches/argon2-20181109-monocypherblock.diff version [c3c9570f44].














1
2
3
4
5
6
7
8
9
10
11
12
13
+
+
+
+
+
+
+
+
+
+
+
+
+
--- a/core.h
+++ b/core.h
@@ -49,7 +49,9 @@
  * Memory blocks can be copied, XORed. Internal words can be accessed by [] (no
  * bounds checking).
  */
-typedef struct block_ { uint64_t v[ARGON2_QWORDS_IN_BLOCK]; } block;
+#ifndef TCL_NANO_AMALGAMATION
+typedef struct block_ { uint64_t a[ARGON2_QWORDS_IN_BLOCK]; } block;
+#endif
 
 /*****************Functions that work with the block******************/