rubeepass 0.2.3 → 0.2.4

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.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/bin/rpass +33 -9
  3. metadata +1 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 006a68f0d13c9efe8eecf937d1bec8a8c2d067eb
4
- data.tar.gz: e19d1a9a76ffd938a85feea89d3bc8211a7458c2
3
+ metadata.gz: 50fa9c39b81cfba5ca3fa62523807f0332856606
4
+ data.tar.gz: 3607dc60aaa4b4d074a0acc68bb2eaec4cf7a193
5
5
  SHA512:
6
- metadata.gz: 1b71c2f598f1e5d56575e6faca2dad81f24c790f713218b101467f3982ce3a5cc4b84f6f0815b7b4f8c40cec87b772097a07ce08d523551ed6849d26699d584b
7
- data.tar.gz: 1f53c5905d5e620f58576789dfeea5617394f278e8196f3bb1d01b23fc48c78704a1c9367dd76a2cb8cae420dba05b83fc77d5d0629e3fdcfbe89dc1a40cc380
6
+ metadata.gz: 0081a426f6ab744f2a8f54bebf825959e352637cf1e556857abcb188c53d91faadbadb968fa4386f3a69a79b1c55f07164209f18e1224a24601fc6f7090b25a7
7
+ data.tar.gz: d4e0190ed211f367722b9ba77b8f0bbcb56a92e78c3f8ff029e28d522e8a8dd48ff5effb8490031dccbf00701ae00be6a04b2dd32a8e81bc4e3646307a647eff
data/bin/rpass CHANGED
@@ -23,9 +23,17 @@ end
23
23
 
24
24
  def get_password
25
25
  print "Enter password: "
26
- passwd = STDIN.noecho(&:gets)
27
- puts
28
- return passwd.chomp
26
+ begin
27
+ passwd = STDIN.noecho(&:gets)
28
+ puts
29
+ return passwd.chomp
30
+ rescue Interrupt => e
31
+ puts
32
+ exit RPassExit::GOOD
33
+ rescue
34
+ puts
35
+ exit RPassExit::KDBX_NOT_OPENED
36
+ end
29
37
  end
30
38
 
31
39
  def parse(args)
@@ -207,15 +215,31 @@ keyfile = options["keyfile"]
207
215
  keepass = RubeePass.new(kdbx, password, keyfile)
208
216
 
209
217
  if (options["export_file"])
210
- keepass.export(options["export_file"], options["export_format"])
218
+ begin
219
+ keepass.export(
220
+ options["export_file"],
221
+ options["export_format"]
222
+ )
223
+ rescue RubeePass::Error::InvalidPasswordError => e
224
+ puts e.message
225
+ password = get_password
226
+ keepass = RubeePass.new(kdbx, password, keyfile)
227
+ end
211
228
  exit RPassExit::GOOD
212
229
  end
213
230
 
214
- begin
215
- keepass.open
216
- rescue RubeePass::Error => e
217
- puts e.message
218
- exit RPassExit::KDBX_NOT_OPENED
231
+ loop do
232
+ begin
233
+ keepass.open
234
+ break
235
+ rescue RubeePass::Error::InvalidPasswordError => e
236
+ puts e.message
237
+ password = get_password
238
+ keepass = RubeePass.new(kdbx, password, keyfile)
239
+ rescue RubeePass::Error => e
240
+ puts e.message
241
+ exit RPassExit::KDBX_NOT_OPENED
242
+ end
219
243
  end
220
244
 
221
245
  djinni = Djinni.new
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rubeepass
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.3
4
+ version: 0.2.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Miles Whittaker