seekrit 0.2.1 → 0.2.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (3) hide show
  1. data/bin/seekrit +5 -2
  2. data/lib/seekrit/store.rb +5 -5
  3. metadata +4 -4
@@ -8,8 +8,11 @@ DATAFILE = ENV['HOME'] + '/.config/seekrit/secrets'
8
8
 
9
9
  def interactor(&blk)
10
10
  err = nil
11
- FileUtils.mkdir_p(File.dirname(DATAFILE))
12
- File.open(DATAFILE, "a+") do |file|
11
+ unless File.exist?(DATAFILE)
12
+ FileUtils.mkdir_p File.dirname(DATAFILE)
13
+ FileUtils.touch DATAFILE
14
+ end
15
+ File.open(DATAFILE, "r+") do |file|
13
16
  3.times do
14
17
  begin
15
18
  password = ask('Enter password: '){ |q| q.echo = false }
@@ -23,11 +23,11 @@ module Seekrit
23
23
  end
24
24
 
25
25
  def [](name)
26
- secrets[name]
26
+ decrypt(secrets[name])
27
27
  end
28
28
 
29
29
  def []=(name, value)
30
- secrets[name] = value
30
+ secrets[name] = encrypt(value)
31
31
  end
32
32
 
33
33
  def delete(name)
@@ -42,13 +42,13 @@ module Seekrit
42
42
  def save
43
43
  @file.rewind
44
44
  secrets.sort_by{ |k,_| k }.each do |name, value|
45
- @file << escape(name) << "\t" << hexdump(encrypt(value)) << "\n"
45
+ @file << escape(name) << "\t" << hexdump(value) << "\n"
46
46
  end
47
47
  end
48
48
 
49
49
  def export(io)
50
50
  secrets.sort_by{ |k,_| k }.each do |name, value|
51
- io << escape(name) << "\t" << escape(value) << "\n"
51
+ io << escape(name) << "\t" << escape(decrypt(value)) << "\n"
52
52
  end
53
53
  end
54
54
 
@@ -84,7 +84,7 @@ module Seekrit
84
84
  data = {}
85
85
  while line = file.gets
86
86
  a, b = line.split(/\t/, 2)
87
- data[unescape(a)] = decrypt(hexload(b))
87
+ data[unescape(a)] = hexload(b)
88
88
  end
89
89
  data
90
90
  end
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: seekrit
3
3
  version: !ruby/object:Gem::Version
4
- hash: 21
4
+ hash: 19
5
5
  prerelease: false
6
6
  segments:
7
7
  - 0
8
8
  - 2
9
- - 1
10
- version: 0.2.1
9
+ - 2
10
+ version: 0.2.2
11
11
  platform: ruby
12
12
  authors:
13
13
  - Paul Battley
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2011-01-16 00:00:00 +00:00
18
+ date: 2011-01-21 00:00:00 +00:00
19
19
  default_executable:
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency