self_crypto 0.0.1 → 0.0.2

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: 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