tanker-core 2.26.0.alpha.2 → 2.26.0.alpha.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/tanker/c_tanker/c_backends.rb +25 -0
- data/lib/tanker/core/encryption.rb +2 -2
- data/lib/tanker/core/options.rb +12 -6
- data/lib/tanker/core/version.rb +1 -1
- data/vendor/tanker/darwin-aarch64/libctanker.dylib +0 -0
- data/vendor/tanker/darwin-x86_64/libctanker.dylib +0 -0
- data/vendor/tanker/linux-x86_64/libctanker.so +0 -0
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 0316a297c651c74a86046512790acc93584e255951dcf0d1f6a208795354131a
|
4
|
+
data.tar.gz: f42ecea9cefcaeac70ca467a5ee4719a0d2d552bdca3ed1e0d6c63f5cc200dc4
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e3a2d1b2463dacbd39e1235639d6a39de5fef31a308a461974cc7d5f6d64d85bb373c1449f83779c15a345f46101fc6f7757c73d2c2c278005a970cc9aef4e02
|
7
|
+
data.tar.gz: b732096c77a6b5c42ba1f7b5df0e9750f3ec4d85be62f1987c35e9ff0ec7f8648c3a49ab8db5afa03bb67bab22c23491a812e43a9e67827173d1bbea08e26ce5
|
@@ -0,0 +1,25 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'ffi'
|
4
|
+
require 'tanker/core/verification'
|
5
|
+
require 'tanker/c_tanker/c_string'
|
6
|
+
|
7
|
+
module Tanker
|
8
|
+
module CTanker
|
9
|
+
class CDatastoreOptions < FFI::Struct
|
10
|
+
layout :open, :pointer,
|
11
|
+
:close, :pointer,
|
12
|
+
:nuke, :pointer,
|
13
|
+
:put_serialized_device, :pointer,
|
14
|
+
:find_serialized_device, :pointer,
|
15
|
+
:put_cache_values, :pointer,
|
16
|
+
:find_cache_values, :pointer
|
17
|
+
end
|
18
|
+
|
19
|
+
class CHttpOptions < FFI::Struct
|
20
|
+
layout :send_request, :pointer,
|
21
|
+
:cancel_request, :pointer,
|
22
|
+
:data, :pointer
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
@@ -28,9 +28,9 @@ module Tanker
|
|
28
28
|
decrypted_size = CTanker.tanker_decrypted_size(inbuf, data.bytesize).get.address
|
29
29
|
outbuf = FFI::MemoryPointer.new(:char, decrypted_size)
|
30
30
|
|
31
|
-
|
31
|
+
CTanker.tanker_decrypt(@ctanker, outbuf, inbuf, data.bytesize).get
|
32
32
|
|
33
|
-
outbuf.read_string
|
33
|
+
outbuf.read_string decrypted_size
|
34
34
|
end
|
35
35
|
|
36
36
|
def decrypt_utf8(data)
|
data/lib/tanker/core/options.rb
CHANGED
@@ -2,6 +2,7 @@
|
|
2
2
|
|
3
3
|
require 'ffi'
|
4
4
|
require 'tanker/c_tanker/c_string'
|
5
|
+
require 'tanker/c_tanker/c_backends'
|
5
6
|
|
6
7
|
module Tanker
|
7
8
|
# Options that can be given when opening a Tanker session
|
@@ -9,26 +10,31 @@ module Tanker
|
|
9
10
|
layout :version, :uint8,
|
10
11
|
:app_id, :pointer,
|
11
12
|
:url, :pointer,
|
12
|
-
:
|
13
|
+
:persistent_path, :pointer,
|
14
|
+
:cache_path, :pointer,
|
13
15
|
:sdk_type, :pointer,
|
14
|
-
:sdk_version, :pointer
|
16
|
+
:sdk_version, :pointer,
|
17
|
+
:http_options, CTanker::CHttpOptions,
|
18
|
+
:datastore_options, CTanker::CDatastoreOptions
|
15
19
|
|
16
20
|
SDK_TYPE = 'client-ruby'
|
17
21
|
SDK_VERSION = CTanker.new_cstring Core::VERSION
|
18
22
|
|
19
|
-
def initialize(app_id:, url: nil, sdk_type: SDK_TYPE,
|
23
|
+
def initialize(app_id:, url: nil, sdk_type: SDK_TYPE, persistent_path: nil, cache_path: nil)
|
20
24
|
super()
|
21
25
|
|
22
26
|
# NOTE: Instance variables are required to keep the CStrings alive
|
23
27
|
@app_id = CTanker.new_cstring app_id
|
24
28
|
@url = CTanker.new_cstring url
|
25
|
-
@
|
29
|
+
@persistent_path = CTanker.new_cstring persistent_path
|
30
|
+
@cache_path = CTanker.new_cstring cache_path
|
26
31
|
@sdk_type = CTanker.new_cstring sdk_type
|
27
32
|
|
28
|
-
self[:version] =
|
33
|
+
self[:version] = 4
|
29
34
|
self[:app_id] = @app_id
|
30
35
|
self[:url] = @url
|
31
|
-
self[:
|
36
|
+
self[:persistent_path] = @persistent_path
|
37
|
+
self[:cache_path] = @cache_path
|
32
38
|
self[:sdk_type] = @sdk_type
|
33
39
|
self[:sdk_version] = SDK_VERSION
|
34
40
|
end
|
data/lib/tanker/core/version.rb
CHANGED
Binary file
|
Binary file
|
Binary file
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: tanker-core
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.26.0.alpha.
|
4
|
+
version: 2.26.0.alpha.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Tanker team
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2022-01-10 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: ffi
|
@@ -140,6 +140,7 @@ files:
|
|
140
140
|
- lib/tanker/admin/c_admin/c_app_descriptor.rb
|
141
141
|
- lib/tanker/admin/c_admin/c_app_update_options.rb
|
142
142
|
- lib/tanker/c_tanker.rb
|
143
|
+
- lib/tanker/c_tanker/c_backends.rb
|
143
144
|
- lib/tanker/c_tanker/c_device_info.rb
|
144
145
|
- lib/tanker/c_tanker/c_event.rb
|
145
146
|
- lib/tanker/c_tanker/c_future.rb
|