aboutsummaryrefslogtreecommitdiff
path: root/gnu/gnunet/metadata
diff options
context:
space:
mode:
authorMaxime Devos <maximedevos@telenet.be>2021-01-04 19:38:20 +0100
committerMaxime Devos <maximedevos@telenet.be>2021-09-21 12:08:27 +0200
commit61b013c733aaaca2723ab6af5cdf441dec53ab1f (patch)
treef1c2fc59ab5944088804b900b350bb5590a30928 /gnu/gnunet/metadata
parent643cb8be6ea2bf7930340df128650945b5292967 (diff)
downloadgnunet-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.scm21
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