rb_mumble_protocol 0.3.0 → 0.3.1

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: 7389a940b90f092d9f0b0450ed5ae3237e93f3c6d9400a799e6f6221a63e330a
4
- data.tar.gz: 7332e0fec01c75d7845ac315d05a0b018fbadbb248b3553aa1b12ff2cf3a70eb
3
+ metadata.gz: 53a24a4721b3a21ec02c022b203db3f44935b89e45df558711a39cf76c390d27
4
+ data.tar.gz: 47fac63e468a754daafe67bd1c26516e5d3f99335c5527d8881922b2a90d99f9
5
5
  SHA512:
6
- metadata.gz: '09a342f7767ac3e1410bbb05c4bf38b6450052d6656c64697d49e1b1b980e426263c899247c3c6364a60ce4bdd61e758a290fa3d640c7c39a6b95a724ac0488d'
7
- data.tar.gz: 43b4a05ac99e5ef55db0c7c53e723fe40ee22ba2a7e69b86cf373435b6785cf30a089e17a33ebcecde6eac314448b0ae84b4161eba1a9cb219533da6b2f32461
6
+ metadata.gz: f182dc904194306a67f4d815b4373637b646b115fb5b61f2e51e2df47e8bfd6d44885e827ebbb86687b6cc81df18fc2dcb60301edd0359f49a8a30fad1c4a0cf
7
+ data.tar.gz: 0bcba759478da33bd4b289212c7025c6d5826f19a68eb20581c069c8ed19ace99878ce92ca5e762691d148ae1e1c71b40c25b348206399c21d4f6e85caa97140
@@ -110,6 +110,23 @@ impl CryptStateRef {
110
110
  Self(RefCell::new(new_state))
111
111
  }
112
112
 
113
+ pub fn set_decrypt_nonce(&self, nonce: Vec<u8>) -> Result<(), Error> {
114
+ match self.0.try_borrow_mut() {
115
+ Ok(mut ref_) => {
116
+ match &nonce.clone().try_into() {
117
+ Ok(array) => Ok(ref_.set_decrypt_nonce(array)),
118
+ Err(_e) => {
119
+ let msg = format!("Expected a Decrypt nonce of length {}", 16);
120
+ let err = Error::new(get_ruby().get_inner(&BASE_ERROR), msg);
121
+
122
+ Err(err)
123
+ }
124
+ }
125
+ },
126
+ Err(_e) => { Err(Error::new(get_ruby().get_inner(&BASE_ERROR), "borrow error")) }
127
+ }
128
+ }
129
+
113
130
  pub fn key(&self) -> Result<Vec<u8>, Error> {
114
131
  match self.0.try_borrow() {
115
132
  Ok(ref_) => { Ok(ref_.get_key().to_vec()) },
@@ -191,6 +208,7 @@ fn init() -> Result<(), Error> {
191
208
  class1.define_method("encrypt_nonce", method!(CryptStateRef::encrypt_nonce, 0))?;
192
209
  class1.define_method("decrypt_nonce", method!(CryptStateRef::decrypt_nonce, 0))?;
193
210
  class1.define_method("stats", method!(CryptStateRef::stats, 0))?;
211
+ class1.define_method("set_decrypt_nonce", method!(CryptStateRef::set_decrypt_nonce, 1))?;
194
212
 
195
213
  class1.define_method("encrypt", method!(CryptStateRef::encrypt, 1))?;
196
214
  class1.define_method("decrypt", method!(CryptStateRef::decrypt, 1))?;
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module RbMumbleProtocol
4
- VERSION = "0.3.0"
4
+ VERSION = "0.3.1"
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rb_mumble_protocol
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 0.3.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mikhail Odebe