lastpass 1.6.0 → 1.6.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.travis.yml +7 -7
- data/CHANGELOG.md +15 -4
- data/lib/lastpass/fetcher.rb +2 -2
- data/lib/lastpass/version.rb +1 -1
- data/spec/fetcher_spec.rb +3 -2
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 070a842b3f8be56b86ade3b3a800a34a1fe525bd2e3a28a41d0a983f4f06801c
|
4
|
+
data.tar.gz: 9a14d8aef5c713ff09959ce6836422a2515c42d943f9056e6309c3ab115f1f39
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a1c65eef2cd5374189b10ad828de49ad2fa23dcc0ba8fa3493e5541e1122259cd0f75bf956bd2a79ee09c030452130ce2e73414190163f1481bdfbc7e17a7568
|
7
|
+
data.tar.gz: 7014979dba5c65bd324a8d2352ee46ca89e805766a9a8ad3f9de887039a533a07caff54f744610054fa42ab91c52a353bb60708c4f0e255feed18cb878cb893f
|
data/.travis.yml
CHANGED
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,10 @@
|
|
1
|
+
Version 1.6.1
|
2
|
+
-------------
|
3
|
+
|
4
|
+
- Obsolete URI.encode is replaced with URI.encode_www_form_component to
|
5
|
+
inhibit the warning
|
6
|
+
- Travic CI runs on all 2.* latest minor version releases (2.0.0 to 2.7.1)
|
7
|
+
|
1
8
|
Version 1.6.0
|
2
9
|
-------------
|
3
10
|
|
@@ -8,8 +15,10 @@ Version 1.6.0
|
|
8
15
|
Version 1.5.0
|
9
16
|
-------------
|
10
17
|
|
11
|
-
- Fixed failing `get_iteraction_count`. POST parameters are moved from the
|
12
|
-
|
18
|
+
- Fixed failing `get_iteraction_count`. POST parameters are moved from the
|
19
|
+
query (URL) to the body.
|
20
|
+
- pbkdf2-ruby gem is no longer used as it was causing problems. Relying on
|
21
|
+
built-in `OpenSSL::PKCS5.pbkdf2_hmac`
|
13
22
|
- Minimum supported Ruby version is 2.0.0
|
14
23
|
- Dependencies updated to their laters versions
|
15
24
|
- Travis CI fixed
|
@@ -18,8 +27,10 @@ Version 1.4.0
|
|
18
27
|
-------------
|
19
28
|
|
20
29
|
- Added device id (IMEI/UUID) support
|
21
|
-
- Log out after fetching the blob to close the newly open session on LP server
|
22
|
-
|
30
|
+
- Log out after fetching the blob to close the newly open session on LP server
|
31
|
+
to prevent triggering anti-hacking logic (hopefully)
|
32
|
+
- Verify that the recieved blob is marked with ENDM chunk and hasn't been
|
33
|
+
truncated in the process
|
23
34
|
|
24
35
|
|
25
36
|
Version 1.3.0
|
data/lib/lastpass/fetcher.rb
CHANGED
@@ -10,7 +10,7 @@ module LastPass
|
|
10
10
|
|
11
11
|
def self.logout session, web_client = http
|
12
12
|
response = web_client.get "https://lastpass.com/logout.php?method=cli&noredirect=1",
|
13
|
-
cookies: {"PHPSESSID" => URI.
|
13
|
+
cookies: {"PHPSESSID" => URI.encode_www_form_component(session.id)}
|
14
14
|
|
15
15
|
raise NetworkError unless response.response.is_a? Net::HTTPOK
|
16
16
|
end
|
@@ -18,7 +18,7 @@ module LastPass
|
|
18
18
|
def self.fetch session, web_client = http
|
19
19
|
response = web_client.get "https://lastpass.com/getaccts.php?mobile=1&b64=1&hash=0.0&hasplugin=3.0.23&requestsrc=cli",
|
20
20
|
format: :plain,
|
21
|
-
cookies: {"PHPSESSID" => URI.
|
21
|
+
cookies: {"PHPSESSID" => URI.encode_www_form_component(session.id)}
|
22
22
|
|
23
23
|
raise NetworkError unless response.response.is_a? Net::HTTPOK
|
24
24
|
|
data/lib/lastpass/version.rb
CHANGED
data/spec/fetcher_spec.rb
CHANGED
@@ -10,6 +10,7 @@ describe LastPass::Fetcher do
|
|
10
10
|
|
11
11
|
let(:hash) { "7880a04588cfab954aa1a2da98fd9c0d2c6eba4c53e36a94510e6dbf30759256" }
|
12
12
|
let(:session_id) { "53ru,Hb713QnEVM5zWZ16jMvxS0" }
|
13
|
+
let(:escaped_session_id) { "53ru%2CHb713QnEVM5zWZ16jMvxS0" }
|
13
14
|
let(:session) { LastPass::Session.new session_id, key_iteration_count, "DEADBEEF" }
|
14
15
|
|
15
16
|
let(:blob_response) { "TFBBVgAAAAMxMjJQUkVNAAAACjE0MTQ5" }
|
@@ -36,7 +37,7 @@ describe LastPass::Fetcher do
|
|
36
37
|
it "makes a GET request" do
|
37
38
|
web_client = double "web_client"
|
38
39
|
expect(web_client).to receive(:get)
|
39
|
-
.with("https://lastpass.com/logout.php?method=cli&noredirect=1", cookies: {"PHPSESSID" =>
|
40
|
+
.with("https://lastpass.com/logout.php?method=cli&noredirect=1", cookies: {"PHPSESSID" => escaped_session_id})
|
40
41
|
.and_return(http_ok "")
|
41
42
|
LastPass::Fetcher.logout session, web_client
|
42
43
|
end
|
@@ -199,7 +200,7 @@ describe LastPass::Fetcher do
|
|
199
200
|
expect(web_client = double("web_client")).to receive(:get)
|
200
201
|
.with("https://lastpass.com/getaccts.php?mobile=1&b64=1&hash=0.0&hasplugin=3.0.23&requestsrc=cli",
|
201
202
|
format: :plain,
|
202
|
-
cookies: {"PHPSESSID" =>
|
203
|
+
cookies: {"PHPSESSID" => escaped_session_id})
|
203
204
|
.and_return(http_ok(blob_response))
|
204
205
|
|
205
206
|
LastPass::Fetcher.fetch session, web_client
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: lastpass
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.6.
|
4
|
+
version: 1.6.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Dmitry Yakimenko
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2020-05-17 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: httparty
|
@@ -138,7 +138,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
138
138
|
- !ruby/object:Gem::Version
|
139
139
|
version: '0'
|
140
140
|
requirements: []
|
141
|
-
rubygems_version: 3.
|
141
|
+
rubygems_version: 3.1.2
|
142
142
|
signing_key:
|
143
143
|
specification_version: 4
|
144
144
|
summary: Unofficial LastPass API
|