self_crypto 0.0.1 → 0.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 34537603a575a2b32c468b332dd83e91ba2516c8c09984fb99d8f55910cdb680
4
- data.tar.gz: 5e3a683e167fcdb4126bed5de9282d4d4e5c694ef54158d4dacd146b8d180d8e
3
+ metadata.gz: cd813c17a394c17cdace467370ee2347c24e79792c93a9741e45ba64782df3d7
4
+ data.tar.gz: 431bf925fcbc3e70b1be2205502d7ea118dd355755379a3169a5d5244579894a
5
5
  SHA512:
6
- metadata.gz: d0133166300cd4f784af606550459c670bdc0dde4a6db1a74e70fd0dcba36baae7a1e50604d923d0f0da25b3b59378d4418f0c671dadd1eb931faff780958be4
7
- data.tar.gz: 498ad6f393d8683d9250ce56957d09d026283449a3964e3f5193a0ad1512bfce887eb67c75a99a8ded80768de075289b728328b18e494de4e15ac0d0ee248385
6
+ metadata.gz: 8059470ea5a266b47c68ac7a5264e4c0692b53d5a772c71dbb7f6c2bdb0cb9b51d0f9c332fc695bb543f9823363406374fc23b222f2979141662df7e755d38b4
7
+ data.tar.gz: 0e7f4d7e773d0259b88675dc14852b606c864cc6f93b599d5661986879de1d88a277c54cbda6f6e8bc51b3d4354116c6ffc1ef9ad0c08dc1e386eff6ba8c050d
@@ -30,7 +30,6 @@ static VALUE get_olm_version(VALUE self)
30
30
 
31
31
  void Init_self_crypto(void)
32
32
  {
33
- rb_require("openssl");
34
33
  rb_require("json");
35
34
  rb_require("self_crypto/olm_error");
36
35
 
@@ -51,7 +50,24 @@ void raise_olm_error(const char *error)
51
50
 
52
51
  VALUE get_random(size_t size)
53
52
  {
54
- return rb_funcall(rb_eval_string("OpenSSL::Random"), rb_intern("random_bytes"), 1, SIZET2NUM(size));
53
+ VALUE rand;
54
+ void *ptr;
55
+
56
+ if (sodium_init() == -1) {
57
+ rb_raise(rb_eNoMemError, "%s()", __FUNCTION__);
58
+ }
59
+
60
+ if ((ptr = malloc(size)) == NULL){
61
+ rb_raise(rb_eNoMemError, "%s()", __FUNCTION__);
62
+ }
63
+
64
+ randombytes_buf(ptr, size);
65
+
66
+ rand = rb_str_new(ptr, size);
67
+
68
+ free(ptr);
69
+
70
+ return rand;
55
71
  }
56
72
 
57
73
  VALUE dup_string(VALUE str)
@@ -1,5 +1,5 @@
1
1
  module SelfCrypto
2
2
 
3
- VERSION="0.0.1"
3
+ VERSION="0.0.2"
4
4
 
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: self_crypto
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tom Bevan
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2020-06-18 00:00:00.000000000 Z
12
+ date: 2020-06-19 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rake-compiler