cddl 0.8.7 → 0.8.8

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: a1ea2bf2dc32b878d1b13b034af9adf11e9ded105c1247dd98a759f44c2cd053
4
- data.tar.gz: be5b780a163635d0e0ff63a2e163cb4d6c3eb611b13afab275dfe34bfe6259f4
3
+ metadata.gz: 6c877883cb125426e061f527ba4375c0f021d70dfef060336fe0bb0f5e2ca3d4
4
+ data.tar.gz: 7a3dc4065f3616bf57c229b410782b35140018ecada4418c0ef45056c62aef0b
5
5
  SHA512:
6
- metadata.gz: 44b483cabbfd59e46e91629d60492bf63eeb965dd94eaee4860abe7ba3210be47a19f39870f61119610d250c14d29e2d7c9933a1ecc5da18f0b03bf5b97de97f
7
- data.tar.gz: 8933cc8d606b6c4492817414cb167211c5a13b5f9d55ec19a8b3fb50e919d6311909df99510144a78859ddd68bacb27158665d1efd60782dec7458ea3059e6c0
6
+ metadata.gz: b3987fbe82e80dddba2f650b1a12941ed6092708297302cf1a78dfe45b20b79d08e85901cb8739b5fc79eab8cde70ca8efb88698f4340da72c722a7a461565c6
7
+ data.tar.gz: 68c35688bac9b30411ee419e171860c463df28c3452bce1741399274e51295b609e0acc8df54e9876037f9d96ba02e369fd9465c2fe7c38bb9682d5ec19018cd
@@ -1,6 +1,6 @@
1
1
  spec = Gem::Specification.new do |s|
2
2
  s.name = 'cddl'
3
- s.version = '0.8.7'
3
+ s.version = '0.8.8'
4
4
  s.summary = "CDDL generator and validator."
5
5
  s.description = %{A parser, generator, and validator for CDDL}
6
6
  s.add_dependency('cbor-diag')
@@ -392,15 +392,19 @@ module CDDL
392
392
  case where[1]
393
393
  when :size
394
394
  should_be_int = generate1(control)
395
- unless (target == [:prim, 2] || target == [:prim, 0]) && Integer === should_be_int && should_be_int >= 0
395
+ unless (Array === target && target[0] == :prim && [0, 2, 3].include?(target[1])) && Integer === should_be_int && should_be_int >= 0
396
396
  fail "Don't know yet how to generate #{where}"
397
397
  end
398
398
  s = Random.new.bytes(should_be_int)
399
- if target == [:prim, 0]
399
+ case target[1]
400
+ when 0
400
401
  # silently restrict to what we can put into a uint
401
402
  s[0...8].bytes.inject(0) {|a, b| a << 8 | b }
402
- else
403
+ when 2
403
404
  s
405
+ when 3
406
+ Base64.urlsafe_encode64(s)[0...should_be_int]
407
+ # XXX generate word a la w = gen_word
404
408
  end
405
409
  when :bits
406
410
  set_of_bits = Array.new(10) { generate1(control) } # XXX: ten?
@@ -0,0 +1,7 @@
1
+ foo = [a, b, c]
2
+
3
+ a = uint .size 4
4
+
5
+ b = bytes .size 4
6
+
7
+ c = text .size (0..30)
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cddl
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.8.7
4
+ version: 0.8.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - Carsten Bormann
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-12-04 00:00:00.000000000 Z
11
+ date: 2018-12-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: cbor-diag
@@ -106,6 +106,7 @@ files:
106
106
  - test-data/cose.cddl
107
107
  - test-data/dcaf.cddl
108
108
  - test-data/dcaf1.cddl
109
+ - test-data/dotsize.cddl
109
110
  - test-data/extractor-demo.cddl
110
111
  - test-data/grasp-01-extract.cddl
111
112
  - test-data/grasp-01-test.cddl