diff options
author | Maxime Devos <maximedevos@telenet.be> | 2021-01-04 19:38:20 +0100 |
---|---|---|
committer | Maxime Devos <maximedevos@telenet.be> | 2021-09-21 12:08:27 +0200 |
commit | 61b013c733aaaca2723ab6af5cdf441dec53ab1f (patch) | |
tree | f1c2fc59ab5944088804b900b350bb5590a30928 /gnu/gnunet/metadata | |
parent | 643cb8be6ea2bf7930340df128650945b5292967 (diff) | |
download | gnunet-scheme-61b013c733aaaca2723ab6af5cdf441dec53ab1f.tar.gz gnunet-scheme-61b013c733aaaca2723ab6af5cdf441dec53ab1f.zip |
remove some uses of old accessors
The newer ones are harder to use incorrectly,
and perform some validation.
Diffstat (limited to 'gnu/gnunet/metadata')
-rw-r--r-- | gnu/gnunet/metadata/struct.scm | 21 |
1 files changed, 17 insertions, 4 deletions
diff --git a/gnu/gnunet/metadata/struct.scm b/gnu/gnunet/metadata/struct.scm index 7d8c420..1b54c6a 100644 --- a/gnu/gnunet/metadata/struct.scm +++ b/gnu/gnunet/metadata/struct.scm | |||
@@ -31,7 +31,8 @@ | |||
31 | MetaType MetaFormat) | 31 | MetaType MetaFormat) |
32 | (import (only (gnu gnunet utils netstruct) | 32 | (import (only (gnu gnunet utils netstruct) |
33 | structure/packed u32/big | 33 | structure/packed u32/big |
34 | sizeof wrap-reader-setter) | 34 | sizeof wrap-reader-setter |
35 | offset) | ||
35 | (only (gnu extractor metaformats) | 36 | (only (gnu extractor metaformats) |
36 | integer->meta-format meta-format->integer) | 37 | integer->meta-format meta-format->integer) |
37 | (only (gnu extractor metatypes) | 38 | (only (gnu extractor metatypes) |
@@ -47,11 +48,14 @@ | |||
47 | ;; Version is 1 for a NULL pointer | 48 | ;; Version is 1 for a NULL pointer |
48 | ;; Version 2 is for 0.9.x (and possibly higher) | 49 | ;; Version 2 is for 0.9.x (and possibly higher) |
49 | ;; Other version numbers are not yet defined. | 50 | ;; Other version numbers are not yet defined. |
50 | (version u32/big) | 51 | ("version" u32/big) |
51 | ;; How many MD entries are there? | 52 | ;; How many MD entries are there? |
52 | (entries u32/big) | 53 | ("entries" u32/big) |
53 | ;; Number of bytes of meta data | 54 | ;; Number of bytes of meta data |
54 | (size u32/big))) | 55 | ("size" u32/big))) |
56 | ;; This is followed by 'entries' values of type 'struct MetaDataEntry' | ||
57 | ;; and then by 'entry' plugin names, mime-types and data blocks | ||
58 | ;; as specified in those meta data entries. | ||
55 | 59 | ||
56 | (assert (= (sizeof MetaDataHeader ()) 12)) | 60 | (assert (= (sizeof MetaDataHeader ()) 12)) |
57 | 61 | ||
@@ -60,6 +64,15 @@ | |||
60 | (define-syntax MetaFormat | 64 | (define-syntax MetaFormat |
61 | (wrap-reader-setter u32/big integer->meta-format meta-format->integer)) | 65 | (wrap-reader-setter u32/big integer->meta-format meta-format->integer)) |
62 | 66 | ||
67 | (assert (= (sizeof MetaType ()) 4)) | ||
68 | (assert (= (sizeof MetaFormat ()) 4)) | ||
69 | ;; catch some old issues | ||
70 | (assert (= (offset MetaType ()) 0)) | ||
71 | (assert (= (offset MetaFormat ()) 0)) | ||
72 | (assert (= (offset MetaDataHeader ("version")) 0)) | ||
73 | (assert (= (offset MetaDataHeader ("entries")) 4)) | ||
74 | (assert (= (offset MetaDataHeader ("size")) 8)) | ||
75 | |||
63 | (define-syntax MetaDataEntry | 76 | (define-syntax MetaDataEntry |
64 | (structure/packed | 77 | (structure/packed |
65 | ;; Meta data type | 78 | ;; Meta data type |