cryptkeeper 0.2.6 → 0.2.7

Sign up to get free protection for your applications and to get access to all the features.
@@ -6,6 +6,10 @@ Rails gem for connecting to the Google Storage API
6
6
 
7
7
  gem install cryptkeeper
8
8
 
9
+ Depending upon how your environment is set up, you may also need:
10
+
11
+ require 'crypt_keeper'
12
+
9
13
  == Usage
10
14
 
11
15
  So far:
data/Rakefile CHANGED
@@ -13,7 +13,6 @@ Jeweler::Tasks.new do |gem|
13
13
 
14
14
  # Dependencies
15
15
  gem.add_dependency 'hpricot'
16
- gem.add_dependency 'iconv'
17
16
  gem.add_dependency 'ruby-hmac'
18
17
  end
19
18
 
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{cryptkeeper}
8
- s.version = "0.2.6"
8
+ s.version = "0.2.7"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Adam Medeiros"]
12
- s.date = %q{2011-02-20}
12
+ s.date = %q{2011-02-21}
13
13
  s.description = %q{Use cryptkeeper to talk to Google Storage}
14
14
  s.email = %q{adammede@gmail.com}
15
15
  s.extra_rdoc_files = [
@@ -36,16 +36,13 @@ Gem::Specification.new do |s|
36
36
 
37
37
  if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
38
38
  s.add_runtime_dependency(%q<hpricot>, [">= 0"])
39
- s.add_runtime_dependency(%q<iconv>, [">= 0"])
40
39
  s.add_runtime_dependency(%q<ruby-hmac>, [">= 0"])
41
40
  else
42
41
  s.add_dependency(%q<hpricot>, [">= 0"])
43
- s.add_dependency(%q<iconv>, [">= 0"])
44
42
  s.add_dependency(%q<ruby-hmac>, [">= 0"])
45
43
  end
46
44
  else
47
45
  s.add_dependency(%q<hpricot>, [">= 0"])
48
- s.add_dependency(%q<iconv>, [">= 0"])
49
46
  s.add_dependency(%q<ruby-hmac>, [">= 0"])
50
47
  end
51
48
  end
@@ -65,19 +65,20 @@ module Buckets
65
65
  path.gsub!(/[&]$/, '')
66
66
 
67
67
  hpr = Hpricot(connection.get(path, bucket_name))
68
- obj_hashes = hpr.search("contents").map do |el|
69
- {
70
- :bucket_name => bucket_name,
71
- :key => el.search("key").inner_html,
72
- :last_modified => el.search("lastmodified").inner_html,
73
- :e_tag => el.search("etag").inner_html,
74
- :size => el.search("size").inner_html,
75
- :storage_class => el.search("storageclass").inner_html,
76
- :owner_id => el.search("id").inner_html,
77
- :owner_display_name => el.search("displayname").inner_html
78
- }
68
+ hpr.search("contents").map do |el|
69
+ BucketMetaObject.new(
70
+ {
71
+ :bucket_name => bucket_name,
72
+ :key => el.search("key").inner_html,
73
+ :last_modified => el.search("lastmodified").inner_html,
74
+ :e_tag => el.search("etag").inner_html,
75
+ :size => el.search("size").inner_html,
76
+ :storage_class => el.search("storageclass").inner_html,
77
+ :owner_id => el.search("id").inner_html,
78
+ :owner_display_name => el.search("displayname").inner_html
79
+ }
80
+ )
79
81
  end
80
- obj_hashes.map { |obj| BucketMetaObject.new(obj) }
81
82
  end
82
83
 
83
84
  # Utils class
@@ -162,7 +163,7 @@ module Buckets
162
163
  end
163
164
 
164
165
  def copy_to(bucket_name, path=nil)
165
- path = path.nil? ? "/#{URI.escape(@key)}" : "/#{URI.escape(path)}"
166
+ path = "/#{path.nil? ? URI.escape(@key) : URI.escape(path)}"
166
167
  connection.put(path, bucket_name, nil, {'x-goog-copy-source' => "#{@bucket_name}/#{URI.escape(@key)}"})
167
168
  end
168
169
  end
@@ -4,7 +4,7 @@ require ck_path + '/crypt_keeper_http.rb'
4
4
  require 'uri'
5
5
 
6
6
  module CryptKeeper
7
- VERSION = "0.2.6"
7
+ VERSION = "0.2.7"
8
8
 
9
9
  # :title: Connection
10
10
  # Author:: Adam R. Medeiros (AKA: ScaryThings)
@@ -1,5 +1,4 @@
1
1
  require 'net/http'
2
- require 'iconv'
3
2
  require 'hmac-sha1'
4
3
  require 'base64'
5
4
  class CryptKeeperHttp
@@ -19,9 +18,8 @@ class CryptKeeperHttp
19
18
  end
20
19
 
21
20
  def signature(message)
22
- ic_utf8 = Iconv.new('ascii//TRANSLIT//IGNORE', 'UTF-8')
23
- utf8_message = ic_utf8.iconv(message)
24
- utf8_key = ic_utf8.iconv(@secret_key)
21
+ utf8_message = message.unpack("C*").pack("U*")
22
+ utf8_key = @secret_key.unpack("C*").pack("U*")
25
23
  sha1 = HMAC::SHA1.digest(utf8_key, utf8_message)
26
24
  Base64.encode64(sha1).strip
27
25
  end
metadata CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
5
5
  segments:
6
6
  - 0
7
7
  - 2
8
- - 6
9
- version: 0.2.6
8
+ - 7
9
+ version: 0.2.7
10
10
  platform: ruby
11
11
  authors:
12
12
  - Adam Medeiros
@@ -14,7 +14,7 @@ autorequire:
14
14
  bindir: bin
15
15
  cert_chain: []
16
16
 
17
- date: 2011-02-20 00:00:00 -08:00
17
+ date: 2011-02-21 00:00:00 -08:00
18
18
  default_executable:
19
19
  dependencies:
20
20
  - !ruby/object:Gem::Dependency
@@ -31,7 +31,7 @@ dependencies:
31
31
  type: :runtime
32
32
  version_requirements: *id001
33
33
  - !ruby/object:Gem::Dependency
34
- name: iconv
34
+ name: ruby-hmac
35
35
  prerelease: false
36
36
  requirement: &id002 !ruby/object:Gem::Requirement
37
37
  none: false
@@ -43,19 +43,6 @@ dependencies:
43
43
  version: "0"
44
44
  type: :runtime
45
45
  version_requirements: *id002
46
- - !ruby/object:Gem::Dependency
47
- name: ruby-hmac
48
- prerelease: false
49
- requirement: &id003 !ruby/object:Gem::Requirement
50
- none: false
51
- requirements:
52
- - - ">="
53
- - !ruby/object:Gem::Version
54
- segments:
55
- - 0
56
- version: "0"
57
- type: :runtime
58
- version_requirements: *id003
59
46
  description: Use cryptkeeper to talk to Google Storage
60
47
  email: adammede@gmail.com
61
48
  executables: []