lumberg 2.0.0.pre3 → 2.0.0.pre4

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: b22e147b50255ebe87b7c3592dc4f6e42c1d15cb
4
- data.tar.gz: aaea7f8b4385e62a9913f77d72a0a6efe754a9b3
3
+ metadata.gz: 8729386fae62f1240d8ca35e0b2440a5c13fd121
4
+ data.tar.gz: 0da476df19735bf334e8addb63f6507e1946a6be
5
5
  SHA512:
6
- metadata.gz: 20e11aa01b835eea33dceccf8fcf758b58dae495896b5c2b45cab92c474a389dab8c9590fed251fff9c3820f066af321c0e4f28b5e6b674b34899bc31cea09b5
7
- data.tar.gz: e3d4b304d424184e3e5d8137c8240d8c59ff16c87e5bba7d117c3279418d193b28fe4534a0557fbe6f28f6dcc03b627c02fe04549ba9fab9742be947f4636cd6
6
+ metadata.gz: 48a7cf27c6d95dd99e2fe3553f8c91fe12a96a58996c38f0058997131798d55b5c317876a255d04059d586b36386a35cf3ba1749529766bfadf7f209681be0b7
7
+ data.tar.gz: ec675a24333fa0ba2b7e6070959c57eb7663a4df9b7a351818ecb5a165e50f7a20ce5e0a53a6818cddefaacc819e99d8f2eb0ce9b7d2f18656948d7becef927c
@@ -133,17 +133,21 @@ module Lumberg
133
133
  # Public: Generate a certificate signing request.
134
134
  #
135
135
  # options - Hash options for API call params (default: {}):
136
- # :city - The city in which your server resides.
137
- # :company - The name of the company.
138
- # :companydivision - The division of your company.
139
- # :country - A two letter abbreviation for the country.
140
- # :email - A valid email address that will correspond to the csr.
141
- # :host - The domain that corresponds to the csr.
142
- # :state - A two letter abbreviation that corresponds to the state.
143
- # :password - The password of the csr.
136
+ # :city - The city in which your server resides.
137
+ # :company - The name of the company.
138
+ # :company_division - The division of your company.
139
+ # :country - A two letter abbreviation for the country.
140
+ # :email - A valid email address that will correspond to
141
+ # the certificate signing request
142
+ # :host - The domain that corresponds to the csr.
143
+ # :state - A two letter abbreviation that corresponds to the
144
+ # state.
145
+ # :pass - The password of the csr.
144
146
  #
145
147
  # Returns Hash API response.
146
148
  def gencsr(options = {})
149
+ options[:companydivision] = options.delete(:company_division)
150
+
147
151
  perform_request({
148
152
  :api_function => "gencsr",
149
153
  :response_key => "cpanelresult",
@@ -153,16 +157,20 @@ module Lumberg
153
157
  # Public: Generate a self-signed SSL certificate for a specific domain.
154
158
  #
155
159
  # options - Hash options for API call params (default: {}):
156
- # :city - The city in which your server resides.
157
- # :company - The name of the company.
158
- # :companydivision - The division of your company.
159
- # :country - A two letter abbreviation for the country.
160
- # :email - A valid email address that will correspond to the csr.
161
- # :host - The domain that corresponds to the csr.
162
- # :state - A two letter abbreviation that corresponds to the state.
160
+ # :city - The city in which your server resides.
161
+ # :company - The name of the company.
162
+ # :company_division - The division of your company.
163
+ # :country - A two letter abbreviation for the country.
164
+ # :email - A valid email address that will correspond to
165
+ # the certificate signing request
166
+ # :host - The domain that corresponds to the csr.
167
+ # :state - A two letter abbreviation that corresponds to the
168
+ # state.
163
169
  #
164
170
  # Returns Hash API response.
165
171
  def gencrt(options = {})
172
+ options[:companydivision] = options.delete(:company_division)
173
+
166
174
  perform_request({
167
175
  :api_function => "gencrt",
168
176
  }.merge(options))
@@ -1,3 +1,3 @@
1
1
  module Lumberg
2
- VERSION = '2.0.0.pre3'
2
+ VERSION = '2.0.0.pre4'
3
3
  end
@@ -2,8 +2,8 @@ module Lumberg
2
2
  module Whm
3
3
  class Cert < Base
4
4
 
5
- # Displays the SSL certificate, private key, and CA bundle/intermediate
6
- # certificate associated with a specified domain. Alternatively, it can
5
+ # Displays the SSL certificate, private key, and CA bundle/intermediate
6
+ # certificate associated with a specified domain. Alternatively, it can
7
7
  # display the private key and CA bundle associated with a specified cert
8
8
  #
9
9
  # ==== Required
@@ -17,22 +17,29 @@ module Lumberg
17
17
  result = server.perform_request('fetchsslinfo', options)
18
18
  end
19
19
 
20
- # Generates a CSR
20
+ # Public: Generates a Certificate Signing Request
21
21
  #
22
- # ==== Required
23
- # * <tt>:xemail</tt> - PENDING
24
- # * <tt>:host</tt> - PENDING
25
- # * <tt>:country</tt> - PENDING
26
- # * <tt>:state</tt> - PENDING
27
- # * <tt>:city</tt> - PENDING
28
- # * <tt>:co</tt> - PENDING
29
- # * <tt>:cod</tt> - PENDING
30
- # * <tt>:email</tt> - PENDING
31
- # * <tt>:pass</tt> - PENDING
22
+ # options - Hash options for API call params (default: {}):
23
+ # :city - The city in which your server resides.
24
+ # :company - The name of the company.
25
+ # :company_division - The division of your company.
26
+ # :country - A two letter abbreviation for the country.
27
+ # :email - A valid email address that will correspond to
28
+ # the certificate signing request
29
+ # :host - The domain that corresponds to the csr.
30
+ # :state - A two letter abbreviation that corresponds to the
31
+ # state.
32
+ # :pass - The password of the csr.
33
+ # :xemail - Email address to which the certificate will be
34
+ # sent (String)
35
+ # :noemail - (Boolean) and dependent value. Set to "1" when
36
+ # :xemail is empty
32
37
  #
33
- # ==== Optional
34
- # * <tt>none</tt> - PENDING
38
+ # Returns Hash API response.
35
39
  def generatessl(options = {})
40
+ options[:co] = options.delete(:company)
41
+ options[:cod] = options.delete(:company_division)
42
+
36
43
  server.force_response_type = :ssl
37
44
  result = server.perform_request('generatessl', options)
38
45
  end
@@ -10,10 +10,20 @@ module Lumberg
10
10
  CP_CERT = File.read('./spec/sample_certs/cpanel.crt')
11
11
  CP_KEY = File.read('./spec/sample_certs/cpanel.key')
12
12
 
13
- let(:cert_params) {{ :user => :api_username, :city => "Chicago", :company => "Initech",
14
- :companydivision => "TPS", :country => "US", :state => "IL",
15
- :email => "lumberg@initech.com", :host => domain,
16
- :pass => "Tru3St0ry", :key => CP_KEY}}
13
+ let(:cert_params) do
14
+ {
15
+ :user => :api_username,
16
+ :city => "Chicago",
17
+ :company => "Initech",
18
+ :company_division => "TPS",
19
+ :country => "US",
20
+ :state => "IL",
21
+ :email => "lumberg@initech.com",
22
+ :host => domain,
23
+ :pass => "Tru3St0ry",
24
+ :key => CP_KEY
25
+ }
26
+ end
17
27
 
18
28
  let(:ssl) do
19
29
  described_class.new(
@@ -102,7 +112,7 @@ module Lumberg
102
112
  end
103
113
 
104
114
  describe "#gencsr" do
105
- use_vcr_cassette("cpanel/ssl/gencsr")
115
+ use_vcr_cassette "cpanel/ssl/gencsr"
106
116
 
107
117
  it "generates a certificate signing request" do
108
118
  ssl.gencsr(cert_params)[:params][:data][0][:result].should eq(1)
@@ -110,7 +120,7 @@ module Lumberg
110
120
  end
111
121
 
112
122
  describe "#gencrt" do
113
- use_vcr_cassette("cpanel/ssl/gencrt")
123
+ use_vcr_cassette "cpanel/ssl/gencrt"
114
124
 
115
125
  it "generates a certificate" do
116
126
  ssl.gencrt(cert_params.merge(:key => CP_KEY))[:params][:data][0][:result].should eq(1)
@@ -1,40 +1,43 @@
1
- ---
2
- http_interactions:
3
- - request:
1
+ ---
2
+ http_interactions:
3
+ - request:
4
4
  method: get
5
5
  uri: https://myhost.com:2087/json-api/cpanel?city=Chicago&company=Initech&companydivision=TPS&country=US&cpanel_jsonapi_apiversion=2&cpanel_jsonapi_func=gencrt&cpanel_jsonapi_module=SSL&cpanel_jsonapi_user=lumberg&email=lumberg@initech.com&host=lumberg-test.com&key=-----BEGIN%20RSA%20PRIVATE%20KEY-----%0AMIIEpAIBAAKCAQEAo2oEb080n9x3S7gC5hv4bjAmA4iBZ8N4ncBrMc8qpPeXBKSz%0AWWk6B8Ntx0ohygPmc3K6D8Lg96DAq35m0Cx/IqxuKO9Bqr5XfMW9c0di2K7RqoEq%0AvnEIn/BU1UQipbiTBKDqsu5oYl0Q9t8rIklX8Mmd5uHcUrkzaaV76FbL/QYRXepV%0AI2/xcmfWZ5Mst79eGKueznb3rLlYVWp3vLJbViSH9Ubmre%2BnAf55jhuUXhCwmpzy%0Ah1TNfqTWtn25BuUFCofsTe3CCmQyokpmQdYK5BCcX705MrYJ1CutZlmqxYRKxztg%0ABC%2BWrtYwyjn0NURLlWW7ky0j0XpT131%2BIgLOAQIDAQABAoIBAQCD6gk6cY3hnm8O%0AyLROXTXmfSeyoncT9E9hyPq/cqTSFqvqK6o7%2Bx3FNpVf0xADq7JUb8CTCJXiT/o4%0Adgk48zKOIvOqR7mSw6SMLHQKow3ALR9DrJF8unJj6fYRUrdFYAIOMnhDiQDqpoYT%0AQ4PmYZ6D2b2Fq73XaXl/Rv8HR0nULc8bwiZy8OtTYrZUoYuhmkAN8KuKu1sCvdRG%0AdelEKA9YAzDDJahL105yJ1TnOl0gkSpmZULUkvCzTrBYurKKOVtlPMmGMoVeD9Vy%0Arqf4maZ3/uRkL5VHTaCc%2BQBZY//eCODQu3gzpGDFXD9nRlf3ON%2BsLQJyPbjo8p%2Bk%0Adr0HVi%2BBAoGBANd8/Yt7PULhXSRSuujaKfLa3h5k/CjvQgAqCLuEkba/QXFvqxVL%0A3mF7YPLp4RVSt/ka/tSxeOxrqxNSPxq0jHoO5jUIo3EHNLsmErhV/0DqXL7NfULe%0A64oHXoPMWR8f96V605DvpFYPWe6PDP0KHYTk1Aplp0a1pgMjo2OSloZlAoGBAMIi%0AzlmGBMc%2BZuX/NKE5B%2BGU%2BlKPnbKbH/oeP3oNEuIj%2BoshHvTMBesC0CBpPEttczhL%0AUeMtquwTov4onSzVhU4Yqh9QJhCrv9gY5v3TXYx0ZHxGKYqFU%2B0IGY2ywav2Bvrh%0Az8iojhiCY3%2B6FVD9xwJH/IEQGeuhyw9wbJTSJXFtAoGADuNj4S8ynFxVwxy0LUJl%0Ag5H7pr3zbiCZvskosUwHhUjRjLTabS5Avxt3J1Fha8e7Tkq/MJLSeAM4Xq1gDshK%0ArGQ7I47lO/nzerq2sGXArQuEPOqVrPkZ7P91WEXWIoBi69wAohLsl8WXwRPBIfqA%0A752fyNgdJpWGUtEziL2oCMECgYBAGxA6vaeMR43g%2BvHdHyD8G57Bbo0rclAP3rcl%0ATXXj2O%2Bdy7UWLtzxar9hRH7VhXHbr/t9YhIj3KQg%2BzZTnLplPH3I00WOkbhK2oZE%0AYOxuOe0IoH6NMFOzXM5bXSDY8OgDJlffsdEiRMQoZEEvum1h0nWOBMwaZBXSplQk%0AnHQizQKBgQDOoOSlZY6vvBnTPHNEmtZifaLpHOg74BUVVOl%2BuksN0NaXM3iJZRxl%0AXoQMgM2u3Vxfg34Agen/RBf0A17sqsIx0trfKt5hPOm8%2Bj9dFmHHill%2B6EtC7mA5%0AACRPQCeYdroH66ufLvh3wqDjUoM3vCWk8lyMQR2eJUfBNUALyQoXzQ==%0A-----END%20RSA%20PRIVATE%20KEY-----%0A%0A&pass=Tru3St0ry&state=IL&user=api_username
6
- body:
7
- string: ""
8
- headers:
9
- Accept:
10
- - "*/*"
11
- Authorization:
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ Authorization:
12
11
  - WHM root:iscool
13
- User-Agent:
14
- - Faraday v0.8.7
15
- response:
16
- status:
12
+ User-Agent:
13
+ - Faraday v0.8.8
14
+ Accept-Encoding:
15
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
16
+ Accept:
17
+ - '*/*'
18
+ response:
19
+ status:
17
20
  code: 200
18
21
  message: OK
19
- headers:
20
- Content-Length:
21
- - "142"
22
- Server:
23
- - cpsrvd/11.32.6.4
24
- Keep-Alive:
25
- - timeout=70, max=200
26
- Connection:
22
+ headers:
23
+ Server:
24
+ - cpsrvd/11.36.0.4
25
+ X-Keep-Alive-Count:
26
+ - '1'
27
+ Connection:
27
28
  - Keep-Alive
28
- X-Keep-Alive-Count:
29
- - "1"
30
- Date:
31
- - Wed, 05 Jun 2013 17:39:55 GMT
32
- Content-Type:
33
- - text/plain; charset="utf-8"
34
- body:
29
+ Keep-Alive:
30
+ - timeout=70, max=200
31
+ Date:
32
+ - Mon, 30 Sep 2013 17:21:54 GMT
33
+ Content-Type:
34
+ - application/json; charset="utf-8"
35
+ Content-Length:
36
+ - '131'
37
+ body:
38
+ encoding: UTF-8
35
39
  string: |
36
- {"cpanelresult":{"func":"gencrt","module":"SSL","event":{"result":1},"data":[{"output":"Certificate generated!","result":1}],"apiversion":2}}
37
-
40
+ {"cpanelresult":{"module":"SSL","event":{"result":1},"apiversion":2,"data":[{"output":"Certificate generated!","result":1}],"func":"gencrt"}}
38
41
  http_version:
39
- recorded_at: Wed, 05 Jun 2013 17:39:45 GMT
40
- recorded_with: VCR 2.0.1
42
+ recorded_at: Mon, 30 Sep 2013 17:19:55 GMT
43
+ recorded_with: VCR 2.4.0
@@ -1,40 +1,43 @@
1
- ---
2
- http_interactions:
3
- - request:
1
+ ---
2
+ http_interactions:
3
+ - request:
4
4
  method: get
5
5
  uri: https://myhost.com:2087/json-api/cpanel?city=Chicago&company=Initech&companydivision=TPS&country=US&cpanel_jsonapi_apiversion=2&cpanel_jsonapi_func=gencsr&cpanel_jsonapi_module=SSL&cpanel_jsonapi_user=lumberg&email=lumberg@initech.com&host=lumberg-test.com&key=-----BEGIN%20RSA%20PRIVATE%20KEY-----%0AMIIEpAIBAAKCAQEAo2oEb080n9x3S7gC5hv4bjAmA4iBZ8N4ncBrMc8qpPeXBKSz%0AWWk6B8Ntx0ohygPmc3K6D8Lg96DAq35m0Cx/IqxuKO9Bqr5XfMW9c0di2K7RqoEq%0AvnEIn/BU1UQipbiTBKDqsu5oYl0Q9t8rIklX8Mmd5uHcUrkzaaV76FbL/QYRXepV%0AI2/xcmfWZ5Mst79eGKueznb3rLlYVWp3vLJbViSH9Ubmre%2BnAf55jhuUXhCwmpzy%0Ah1TNfqTWtn25BuUFCofsTe3CCmQyokpmQdYK5BCcX705MrYJ1CutZlmqxYRKxztg%0ABC%2BWrtYwyjn0NURLlWW7ky0j0XpT131%2BIgLOAQIDAQABAoIBAQCD6gk6cY3hnm8O%0AyLROXTXmfSeyoncT9E9hyPq/cqTSFqvqK6o7%2Bx3FNpVf0xADq7JUb8CTCJXiT/o4%0Adgk48zKOIvOqR7mSw6SMLHQKow3ALR9DrJF8unJj6fYRUrdFYAIOMnhDiQDqpoYT%0AQ4PmYZ6D2b2Fq73XaXl/Rv8HR0nULc8bwiZy8OtTYrZUoYuhmkAN8KuKu1sCvdRG%0AdelEKA9YAzDDJahL105yJ1TnOl0gkSpmZULUkvCzTrBYurKKOVtlPMmGMoVeD9Vy%0Arqf4maZ3/uRkL5VHTaCc%2BQBZY//eCODQu3gzpGDFXD9nRlf3ON%2BsLQJyPbjo8p%2Bk%0Adr0HVi%2BBAoGBANd8/Yt7PULhXSRSuujaKfLa3h5k/CjvQgAqCLuEkba/QXFvqxVL%0A3mF7YPLp4RVSt/ka/tSxeOxrqxNSPxq0jHoO5jUIo3EHNLsmErhV/0DqXL7NfULe%0A64oHXoPMWR8f96V605DvpFYPWe6PDP0KHYTk1Aplp0a1pgMjo2OSloZlAoGBAMIi%0AzlmGBMc%2BZuX/NKE5B%2BGU%2BlKPnbKbH/oeP3oNEuIj%2BoshHvTMBesC0CBpPEttczhL%0AUeMtquwTov4onSzVhU4Yqh9QJhCrv9gY5v3TXYx0ZHxGKYqFU%2B0IGY2ywav2Bvrh%0Az8iojhiCY3%2B6FVD9xwJH/IEQGeuhyw9wbJTSJXFtAoGADuNj4S8ynFxVwxy0LUJl%0Ag5H7pr3zbiCZvskosUwHhUjRjLTabS5Avxt3J1Fha8e7Tkq/MJLSeAM4Xq1gDshK%0ArGQ7I47lO/nzerq2sGXArQuEPOqVrPkZ7P91WEXWIoBi69wAohLsl8WXwRPBIfqA%0A752fyNgdJpWGUtEziL2oCMECgYBAGxA6vaeMR43g%2BvHdHyD8G57Bbo0rclAP3rcl%0ATXXj2O%2Bdy7UWLtzxar9hRH7VhXHbr/t9YhIj3KQg%2BzZTnLplPH3I00WOkbhK2oZE%0AYOxuOe0IoH6NMFOzXM5bXSDY8OgDJlffsdEiRMQoZEEvum1h0nWOBMwaZBXSplQk%0AnHQizQKBgQDOoOSlZY6vvBnTPHNEmtZifaLpHOg74BUVVOl%2BuksN0NaXM3iJZRxl%0AXoQMgM2u3Vxfg34Agen/RBf0A17sqsIx0trfKt5hPOm8%2Bj9dFmHHill%2B6EtC7mA5%0AACRPQCeYdroH66ufLvh3wqDjUoM3vCWk8lyMQR2eJUfBNUALyQoXzQ==%0A-----END%20RSA%20PRIVATE%20KEY-----%0A%0A&pass=Tru3St0ry&state=IL&user=api_username
6
- body:
7
- string: ""
8
- headers:
9
- Authorization:
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ Authorization:
10
11
  - WHM root:iscool
11
- Accept:
12
- - "*/*"
13
- User-Agent:
14
- - Faraday v0.8.7
15
- response:
16
- status:
12
+ User-Agent:
13
+ - Faraday v0.8.8
14
+ Accept-Encoding:
15
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
16
+ Accept:
17
+ - '*/*'
18
+ response:
19
+ status:
17
20
  code: 200
18
21
  message: OK
19
- headers:
20
- Content-Type:
21
- - text/plain; charset="utf-8"
22
- Date:
23
- - Wed, 05 Jun 2013 17:36:09 GMT
24
- Content-Length:
25
- - "158"
26
- Server:
27
- - cpsrvd/11.32.6.4
28
- X-Keep-Alive-Count:
29
- - "1"
30
- Keep-Alive:
31
- - timeout=70, max=200
32
- Connection:
22
+ headers:
23
+ Server:
24
+ - cpsrvd/11.36.0.4
25
+ X-Keep-Alive-Count:
26
+ - '1'
27
+ Connection:
33
28
  - Keep-Alive
34
- body:
29
+ Keep-Alive:
30
+ - timeout=70, max=200
31
+ Date:
32
+ - Mon, 30 Sep 2013 17:21:53 GMT
33
+ Content-Type:
34
+ - application/json; charset="utf-8"
35
+ Content-Length:
36
+ - '141'
37
+ body:
38
+ encoding: UTF-8
35
39
  string: |
36
- {"cpanelresult":{"event":{"result":1},"data":[{"output":"Certificate Signing Request generated!","result":1}],"module":"SSL","apiversion":2,"func":"gencsr"}}
37
-
40
+ {"cpanelresult":{"module":"SSL","data":[{"output":"Certificate Signing Request generated!","result":1}],"event":{"result":1},"func":"gencsr","apiversion":2}}
38
41
  http_version:
39
- recorded_at: Wed, 05 Jun 2013 17:35:59 GMT
40
- recorded_with: VCR 2.0.1
42
+ recorded_at: Mon, 30 Sep 2013 17:19:54 GMT
43
+ recorded_with: VCR 2.4.0
@@ -1,38 +1,94 @@
1
- ---
2
- recorded_with: VCR 2.0.1
3
- http_interactions:
4
- - request:
1
+ ---
2
+ http_interactions:
3
+ - request:
5
4
  method: get
6
- uri: https://myhost.com:2087/json-api/generatessl?city=houston&co=Company&cod=Dept&country=US&email=test@myhost.com&host=myhost.com&pass=abc123&state=TX&xemail=test@myhost.com
7
- body:
8
- string: ""
9
- headers:
10
- Authorization:
5
+ uri: https://myhost.com:2087/json-api/generatessl?city=houston&co=Company&cod=Dept&country=US&email=test@myhost.com&host=myhost.com&noemail=1&pass=abc123&state=TX&xemail=
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ Authorization:
11
11
  - WHM root:iscool
12
- User-Agent:
13
- - Faraday v0.8.7
14
- Accept:
15
- - "*/*"
16
- response:
17
- status:
12
+ User-Agent:
13
+ - Faraday v0.8.8
14
+ Accept-Encoding:
15
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
16
+ Accept:
17
+ - '*/*'
18
+ response:
19
+ status:
18
20
  code: 200
19
21
  message: OK
20
- headers:
21
- Transfer-Encoding:
22
- - chunked
23
- Content-Type:
24
- - text/plain
25
- Date:
26
- - Mon, 29 Apr 2013 17:24:20 GMT
27
- Server:
28
- - cpsrvd/11.32.6.4
29
- Keep-Alive:
22
+ headers:
23
+ Server:
24
+ - cpsrvd/11.36.0.4
25
+ X-Keep-Alive-Count:
26
+ - '1'
27
+ Connection:
28
+ - Keep-Alive
29
+ Keep-Alive:
30
30
  - timeout=70, max=200
31
- X-Keep-Alive-Count:
32
- - "1"
33
- Connection:
31
+ Transfer-Encoding:
32
+ - chunked
33
+ Date:
34
+ - Mon, 30 Sep 2013 17:23:25 GMT
35
+ Content-Type:
36
+ - application/json
37
+ body:
38
+ encoding: UTF-8
39
+ string: '{"results":{"keyfile":"/etc/ssl/private/myhost.com.key","key":"-----BEGIN
40
+ RSA PRIVATE KEY-----\nMIIEpAIBAAKCAQEAry12Tc5QYp+Po8GqJGElloBHHyisMbbvpgJIfdekCkhiPlwU\n8Fe+VTE6vfZnVeQcojSuoK1tLJ4mErjs3j+TxCIYpIGB4A2BC8ifCgUuG+cLWqCz\nZ2Gh0YdZebrP1cgJAwE4VSz0w5xpLrxxoh26mHH15yXPlHtERcH4mwaEth4O9sAi\nCpOmt/Xbhmfv46sqyc7GdRHduQFc7J3P0SsEcpuliSkGIWeBpfEd8HX4/dr2rPTr\n5mrialS9J1iXBUl4Hdr//hMU8nHGdcyqDfvcUoL4SpprS6p8bag7Fziv6+Qf536C\nSRBuBabqCEKkVzCbjQfFiCFSOoeQaVBput8FfQIDAQABAoIBABGOVNTnYFcB9rtK\npWqP8dxrbrVItjklRE82210BR4dgSbhGMjMEGCchj+mJ0EFjYxs+fGHN/6sBDn/B\n2LtNU9nMMPwLnqB9ufkcWhP/AOf698BVaqVpu3XsQqNYfYvHSF/st2CR6NXRzxjH\n+fttT04H3cUUnQEceXMkRW4D8TjvD8dlVO8ST9AumzGTYe1cJtNqPAksUF0OpHlD\n2wAsUSTTCECAEiQGiUtioKor/ZhszHfKDZ1Y5btOyO6SyIvcYsPdBCzjla74RS0v\nJA70DvDAJq2kpNkqA/xXMqKzxhN72gxmbbSyKmlgDotDAHltpPvLue5RZ2+98w3e\nIpUp8WECgYEA25XQ+pXmcnv3ZGZ2TcAGhZOh/b8hlaN+TxaO/3XT26hPISF/p9rA\nXuGAJZXaTxDeEQCBHj1BowpGYwX+oO7VKi0z4PLQ7jPnhFUTRTkWoANoCxuBWQ4C\nMRH5vkEjddnPH/z3SA0G8bxOygnxVJmXmw56Kzuo+vIOCBD1X5Z8i4MCgYEAzDph\nu7VAbJNdIB8QXdKlautMTHm+pKO8/e/s+LxXa3lgRockbqR7lhBfCfC4q++zbhHZ\njmK/u+/wQKoX5A4npswt0uMLK/IRvHVem3k3owU9j2nmxZ6tFSqaQnPsWUfza3uA\n6LqjjouqIqugXelTN6EjDPeGxZ7zCApbBaXsWv8CgYEAg9PYp2gw9pBIAMWmxpy/\nDZiJSx5hGkYSQYboiKODcj8Ean6C9hHVJeE5ntbtPkSBHTHxUmcyLaCwiyiBKrrX\nzL9ggu8j0a3lk0PEEu3oEF6bKvfzWrSXSkBhcAAJOuptd+XVyzLO9Xe40YDQmpqv\nMs6pN6VUmHuTQvJzbVSaJuMCgYBcQkuAZqMR6Yh6SE42dEByCpXPPnhXG/j2pnpg\n64R6cryBX++fZALIieDFNs/WLFTcdofXgNio5/2a2LwuNA7JlRdmW1bipVpJzqPM\njHgL1wQ2U1sDD2mVVEeXmZK9ynk2pvZXLGlSrdlQDERH6G3Fha+13eQuRl331eXE\nqW4atQKBgQCMRzS8YSjPl/kLrbSpUXCS3tGlzQWwBjaDUQFHACeEmqwwnVvUcZ34\nCDGXxaBe0vlWADS5Z4B0WSqGcf0lH5nHwGtpsrk5HimXFHu3dWm+zQ5a3zA4I5tt\nEUeVGultFa2Yd4BJ2eZ4RnEtwJ7ZXc/Kxpp0x5Sn9PI4oBy9tgoCAw==\n-----END
41
+ RSA PRIVATE KEY-----\n","sender":"admin","certfile":"/etc/ssl/certs/myhost.com.crt","csr":"-----BEGIN
42
+ CERTIFICATE REQUEST-----\nMIIC3zCCAccCAQAwgYIxCzAJBgNVBAYTAlVTMQswCQYDVQQIEwJUWDEQMA4GA1UE\nBxMHaG91c3RvbjEQMA4GA1UEChMHQ29tcGFueTENMAsGA1UECxMERGVwdDETMBEG\nA1UEAxMKbXlob3N0LmNvbTEeMBwGCSqGSIb3DQEJARYPdGVzdEBteWhvc3QuY29t\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAry12Tc5QYp+Po8GqJGEl\nloBHHyisMbbvpgJIfdekCkhiPlwU8Fe+VTE6vfZnVeQcojSuoK1tLJ4mErjs3j+T\nxCIYpIGB4A2BC8ifCgUuG+cLWqCzZ2Gh0YdZebrP1cgJAwE4VSz0w5xpLrxxoh26\nmHH15yXPlHtERcH4mwaEth4O9sAiCpOmt/Xbhmfv46sqyc7GdRHduQFc7J3P0SsE\ncpuliSkGIWeBpfEd8HX4/dr2rPTr5mrialS9J1iXBUl4Hdr//hMU8nHGdcyqDfvc\nUoL4SpprS6p8bag7Fziv6+Qf536CSRBuBabqCEKkVzCbjQfFiCFSOoeQaVBput8F\nfQIDAQABoBcwFQYJKoZIhvcNAQkHMQgTBmFiYzEyMzANBgkqhkiG9w0BAQUFAAOC\nAQEAYkuEipJOC8xWCl6xxve4o/VMB9iSPcSyA2M7HomeJrmKtub/WwdJFS1vUErO\n1bxZp/Qk3f5DX59d+AkZuIvhGo0duVANJBynmQK29QnXdmcV2vMreuHvJ0rGURU3\nQx4oxrAjj7tcThsgRn3u+4KrXyWfcfWjEm+5NJ9FPpLzqybWMB/DOVn70sG5W8OR\nL24c6S7d8CZyNKG9esNWLFQc34CoI7bYi4dspwvuzGrd//iBmIudeTRdII5e8fwe\neeXZddvYUJ8peCiIty1SbNnPoJB6c8mtUNZDGpS3V+t88InK4fGFyc7M2FJSeIBp\nZHdCng5R0+pVcc8mlT3GLIZUKg==\n-----END
43
+ CERTIFICATE REQUEST-----\n","sender_host":"opsbox.local.net","status":1,"cert":"-----BEGIN
44
+ CERTIFICATE-----\nMIIEdDCCA1ygAwIBAgIJAO80Qpmd0d18MA0GCSqGSIb3DQEBBQUAMIGCMQswCQYD\nVQQGEwJVUzELMAkGA1UECBMCVFgxEDAOBgNVBAcTB2hvdXN0b24xEDAOBgNVBAoT\nB0NvbXBhbnkxDTALBgNVBAsTBERlcHQxEzARBgNVBAMTCm15aG9zdC5jb20xHjAc\nBgkqhkiG9w0BCQEWD3Rlc3RAbXlob3N0LmNvbTAeFw0xMzA5MzAxNzIzMjdaFw0x\nNDA5MzAxNzIzMjdaMIGCMQswCQYDVQQGEwJVUzELMAkGA1UECBMCVFgxEDAOBgNV\nBAcTB2hvdXN0b24xEDAOBgNVBAoTB0NvbXBhbnkxDTALBgNVBAsTBERlcHQxEzAR\nBgNVBAMTCm15aG9zdC5jb20xHjAcBgkqhkiG9w0BCQEWD3Rlc3RAbXlob3N0LmNv\nbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAK8tdk3OUGKfj6PBqiRh\nJZaARx8orDG276YCSH3XpApIYj5cFPBXvlUxOr32Z1XkHKI0rqCtbSyeJhK47N4/\nk8QiGKSBgeANgQvInwoFLhvnC1qgs2dhodGHWXm6z9XICQMBOFUs9MOcaS68caId\nuphx9eclz5R7REXB+JsGhLYeDvbAIgqTprf124Zn7+OrKsnOxnUR3bkBXOydz9Er\nBHKbpYkpBiFngaXxHfB1+P3a9qz06+Zq4mpUvSdYlwVJeB3a//4TFPJxxnXMqg37\n3FKC+Eqaa0uqfG2oOxc4r+vkH+d+gkkQbgWm6ghCpFcwm40HxYghUjqHkGlQabrf\nBX0CAwEAAaOB6jCB5zAdBgNVHQ4EFgQUD+r6PdkvkuQ2Nk/rVGeFwF27/vYwgbcG\nA1UdIwSBrzCBrIAUD+r6PdkvkuQ2Nk/rVGeFwF27/vahgYikgYUwgYIxCzAJBgNV\nBAYTAlVTMQswCQYDVQQIEwJUWDEQMA4GA1UEBxMHaG91c3RvbjEQMA4GA1UEChMH\nQ29tcGFueTENMAsGA1UECxMERGVwdDETMBEGA1UEAxMKbXlob3N0LmNvbTEeMBwG\nCSqGSIb3DQEJARYPdGVzdEBteWhvc3QuY29tggkA7zRCmZ3R3XwwDAYDVR0TBAUw\nAwEB/zANBgkqhkiG9w0BAQUFAAOCAQEAcxEf/OwotN/yJPduIW/SVemOJAHkACKd\nqswP6cefiiHwAuPWB2ZTS4qncqgodgSAt22TKKNtX60RDZ2qhE0YdtTb0OIyn1kP\nK0zp/YgjU+ifucXhTtmGXim0Gy2BKeWijsthe+d4OJz0z9fWzwu6jbz7+xQqAkHj\n2W3zMjsq8ZqGk0FUJeF3DIIfd+w/U+bUDG8zQ3Iranx3Co923s49jihCyUMyH45w\nyiQz0oaDTUmi+2soJXgw+jqPubMuKAtxcXK6A+6ybkaub5LxTtKSFHzuKg2TtiXn\n4asc4y276ANpgprjZu7BIR/HILkvlKlIvm/DHgIaQkirlldvMOfHig==\n-----END
45
+ CERTIFICATE-----\n","statusmsg":"Key, Certificate, and CSR generated OK","message":"Key,
46
+ Certificate, and CSR generated OK","csrfile":"/etc/ssl/certs/myhost.com.csr"}}'
47
+ http_version:
48
+ recorded_at: Mon, 30 Sep 2013 17:21:28 GMT
49
+ - request:
50
+ method: get
51
+ uri: https://myhost.com:2087/json-api/generatessl?city=houston&co=Foo%20%26%20Bar&cod=Dept&country=US&email=test@myhost.com&host=myhost.com&noemail=1&pass=abc123&state=TX&xemail=
52
+ body:
53
+ encoding: US-ASCII
54
+ string: ''
55
+ headers:
56
+ Authorization:
57
+ - WHM root:iscool
58
+ User-Agent:
59
+ - Faraday v0.8.8
60
+ Accept-Encoding:
61
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
62
+ Accept:
63
+ - '*/*'
64
+ response:
65
+ status:
66
+ code: 200
67
+ message: OK
68
+ headers:
69
+ Server:
70
+ - cpsrvd/11.36.0.4
71
+ X-Keep-Alive-Count:
72
+ - '1'
73
+ Connection:
34
74
  - Keep-Alive
35
- body:
36
- string: "{\"results\":{\"email_status\":1,\"statusmsg\":\"Key, Certificate, and CSR generated OK\",\"cert\":\"-----BEGIN CERTIFICATE-----\\nMIIEdDCCA1ygAwIBAgIJAP2xq0y9lyjuMA0GCSqGSIb3DQEBBQUAMIGCMQswCQYD\\nVQQGEwJVUzELMAkGA1UECBMCVFgxEDAOBgNVBAcTB2hvdXN0b24xEDAOBgNVBAoT\\nB0NvbXBhbnkxDTALBgNVBAsTBERlcHQxEzARBgNVBAMTCm15aG9zdC5jb20xHjAc\\nBgkqhkiG9w0BCQEWD3Rlc3RAbXlob3N0LmNvbTAeFw0xMzA0MjkxNzI0MjBaFw0x\\nNDA0MjkxNzI0MjBaMIGCMQswCQYDVQQGEwJVUzELMAkGA1UECBMCVFgxEDAOBgNV\\nBAcTB2hvdXN0b24xEDAOBgNVBAoTB0NvbXBhbnkxDTALBgNVBAsTBERlcHQxEzAR\\nBgNVBAMTCm15aG9zdC5jb20xHjAcBgkqhkiG9w0BCQEWD3Rlc3RAbXlob3N0LmNv\\nbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANwjY5eUSTqJ/0YeRXPz\\n0KnftKQiEoC6IPLave1B9nodfDjtcUJFG72Ihn2sZo9VyLp1wi+yoN/RfGPAPcgu\\nHW1oVovxlug6/2knxhyUBi5bUopOHuSlidhJwcIkRrOpkCpiP4HBV6LMyAa8RXfm\\n9WDRf1a6He5yFginJhM218dmilXfhfD7PaNW+8ctGT9+a1siJjzQuyJB2GSjkbmb\\nIuQ5RNYOaclU7X8pB71E7OZ4HJmH5iqbv4ZoMllO5TgOAz/9SbMp6u/2fJhqTJNh\\nw0YvzZQdPCTqbrtSHQpAQys3ydqe40APD1KeUvvR1ECFVlpY+OApmN4Cp8MP/oHf\\ngF8CAwEAAaOB6jCB5zAdBgNVHQ4EFgQU7E4PQOkrJoHtE2BH0COQ9xT2gy8wgbcG\\nA1UdIwSBrzCBrIAU7E4PQOkrJoHtE2BH0COQ9xT2gy+hgYikgYUwgYIxCzAJBgNV\\nBAYTAlVTMQswCQYDVQQIEwJUWDEQMA4GA1UEBxMHaG91c3RvbjEQMA4GA1UEChMH\\nQ29tcGFueTENMAsGA1UECxMERGVwdDETMBEGA1UEAxMKbXlob3N0LmNvbTEeMBwG\\nCSqGSIb3DQEJARYPdGVzdEBteWhvc3QuY29tggkA/bGrTL2XKO4wDAYDVR0TBAUw\\nAwEB/zANBgkqhkiG9w0BAQUFAAOCAQEAna78CD5bM1ylL2D4EihDa7UQ9PS7JydX\\nrJjKdqWIO9YdLi8HtvfIdZ+QM3FCP0sgZkJn0+9efGJyrUOrUlPPdOrJnjUUGOgN\\nltjehjpdkjaoiKRXs0I/AsZPXR1GqVkY7woVRUFuvIFLb4Ln68Y5cX9CrpG1KQ/R\\nxMJy9MnpglIL49xlUAJ4qBrY+H9WctVoZph8odx+nFpJ9z6AvfPKKI/vUIkYCiWo\\nVLdLJGXYjPxqEcFkxW6OMxT8AuxalHbsiC/xJpieafeWWfoAVAmoPSlMQZ6pwVCV\\n+fqHPiNJdg2QIHcpd4FVFF48KatWNIZk4/KJsqJdC/Kd1g2yV88pcQ==\\n-----END CERTIFICATE-----\\n\",\"status\":1,\"message\":\"Key, Certificate, and CSR generated OK\",\"email_message\":\"CSR email sent to test@myhost.com\",\"sender\":\"admin\",\"csr\":\"-----BEGIN CERTIFICATE REQUEST-----\\nMIIC3zCCAccCAQAwgYIxCzAJBgNVBAYTAlVTMQswCQYDVQQIEwJUWDEQMA4GA1UE\\nBxMHaG91c3RvbjEQMA4GA1UEChMHQ29tcGFueTENMAsGA1UECxMERGVwdDETMBEG\\nA1UEAxMKbXlob3N0LmNvbTEeMBwGCSqGSIb3DQEJARYPdGVzdEBteWhvc3QuY29t\\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA3CNjl5RJOon/Rh5Fc/PQ\\nqd+0pCISgLog8tq97UH2eh18OO1xQkUbvYiGfaxmj1XIunXCL7Kg39F8Y8A9yC4d\\nbWhWi/GW6Dr/aSfGHJQGLltSik4e5KWJ2EnBwiRGs6mQKmI/gcFXoszIBrxFd+b1\\nYNF/Vrod7nIWCKcmEzbXx2aKVd+F8Ps9o1b7xy0ZP35rWyImPNC7IkHYZKORuZsi\\n5DlE1g5pyVTtfykHvUTs5ngcmYfmKpu/hmgyWU7lOA4DP/1Jsynq7/Z8mGpMk2HD\\nRi/NlB08JOpuu1IdCkBDKzfJ2p7jQA8PUp5S+9HUQIVWWlj44CmY3gKnww/+gd+A\\nXwIDAQABoBcwFQYJKoZIhvcNAQkHMQgTBmFiYzEyMzANBgkqhkiG9w0BAQUFAAOC\\nAQEAEUo7VI2uiGLpQU3h1joFX9hQYANNJ9UBgig6CJuZIx60XW90oVoELUyRjp+f\\nN7mZsCai0YwcrC9nT6EF/pBA4obkNhqR00op/R2QzkO33vUjadW+biJj7PfIAF/d\\neahUBLL0UcsnQJ7jYR7ljBrVAI93ULmALLuOvXjM8GI3iBzqWX+w9ySkY9Axz0Bv\\nYjYC7FcS4vShLSnS5tVFVjUVmmUVpn+wm0UlH92XDHk7eaZS6DKylZ/35e8vAPYD\\nMHBj0Sl8/DpNxS4f5CS99b1KASEpqRRyiJEg5Hv84IQCI732tkdpIYbg1faN0acP\\nnSW3bUZXqxdQgecHse/BrzNx3w==\\n-----END CERTIFICATE REQUEST-----\\n\",\"csrfile\":\"/usr/share/ssl/certs/myhost.com.csr\",\"key\":\"-----BEGIN RSA PRIVATE KEY-----\\nMIIEowIBAAKCAQEA3CNjl5RJOon/Rh5Fc/PQqd+0pCISgLog8tq97UH2eh18OO1x\\nQkUbvYiGfaxmj1XIunXCL7Kg39F8Y8A9yC4dbWhWi/GW6Dr/aSfGHJQGLltSik4e\\n5KWJ2EnBwiRGs6mQKmI/gcFXoszIBrxFd+b1YNF/Vrod7nIWCKcmEzbXx2aKVd+F\\n8Ps9o1b7xy0ZP35rWyImPNC7IkHYZKORuZsi5DlE1g5pyVTtfykHvUTs5ngcmYfm\\nKpu/hmgyWU7lOA4DP/1Jsynq7/Z8mGpMk2HDRi/NlB08JOpuu1IdCkBDKzfJ2p7j\\nQA8PUp5S+9HUQIVWWlj44CmY3gKnww/+gd+AXwIDAQABAoIBAFBw7heZrBikDJAG\\nx8JTOdCZWl0PxksbuKaFoBlunS6KT7ZNrbFVp4letiZ+NQvzgOIB3e+oCnk/B4E7\\n4lef4kj0c4u3wDkkNeirDA2tWYTfAg5f9ZH/m5tZeGAE+YD1WSTjuekkSW3H/t/X\\nNFtYHho+85UxdXaIYdzPl242ACtwc1z5pBY82Ua4oDH2HVApxDv/DtYFlMIqrLEN\\nzJfJdVqIrsCkfTcwhIBsPLN8ZRtDnCF5cMAfiXiJBx2fEWweOjRWLM/znDdXVKCS\\nW3AgDpGGdJ20Cm9rJgHivlNhXmhi+4W3zoCWFqOVR6RTfA67jQrReyfKb4XlILl9\\n6QGJ1EECgYEA8iMIyRBQBTD9Tv35dAdmx0FBB0f9kbyldFX0CQJOt0vdvHp0s03W\\nb7wMD4udzmaqLRhab+Xyfa9hD4ODa68sBWL5h8rsXhSnRc5eGxZYM4FIGuiywfi8\\nNhL9pIs3ChXAiNoh4h3FCw4PzgpI+huiwmWrpg4XWq2qHL6CvzmoMMkCgYEA6L3s\\nk5LLS5CPkDHv9xQvMniDZ62rPM/1mVafe1C9YNHjyvZwpN52oHkA3VgU6zETrrZw\\nW0U2xgIaQNLoF0hR6SPyxQxz+yTnLlLuWOLPVl6HQLbeT4wdkpyw/+Rr72QK5x1F\\nwc2ej2OD7FxxM75wHRoxV9pDmDGUNQA0c8DwI+cCgYAmGHr+X1Gnr3B7KBxCNBPo\\nj4yyn5H2hu6lIgzWCgXmcso9KCsKNtnhFH31SCsY2TA3DhjUeCIxwhEMRs27eID9\\ni/fkdHnBx5AVvIUzz80qtVFp4miVehPqkgxUAg8zx/5VybQBBlwFBD5aVWXr68Ms\\nwKBD7P2hp6cXBKY/fcvHeQKBgGRwIboFrUms1ueJRV9BDKUhMMP7RFx3+ir0INrc\\nmv0/Vqht9WqQvmy+C0t6CXz9rtrEzHP2yI5mteGnopT5lq+f3dJ/b0XARSvOiiE9\\nr/A71u5sfD+j3dc5W4DymEm0yKe4EDR0gaqrbXEA67FCy6sjdIvPG0CAlM7SidAy\\nQO+dAoGBAOGXV+D8rZci4CIbL4pr4qxoKsX/tH7NuyrfsqLGXN/gA2ClVVUCfHVK\\ndzD8OIEL7exJsbC68xQLORzQjxNndbLTpPKmHIzkl1UWUgxPemnZYbA7DQ1jCS75\\nG5KnYI4WDaGCxVeMKqvQnLtqt81315aoqV95V7ZaIkpOr+y83dC8\\n-----END RSA PRIVATE KEY-----\\n\",\"args\":{\"cod\":\"Dept\",\"xemail\":\"test@myhost.com\",\"keysize\":2048,\"country\":\"US\",\"city\":\"houston\",\"state\":\"TX\",\"email\":\"test@myhost.com\",\"host\":\"myhost.com\",\"pass\":\"abc123\",\"co\":\"Company\"},\"certfile\":\"/usr/share/ssl/certs/myhost.com.crt\",\"keyfile\":\"/usr/share/ssl/private/myhost.com.key\",\"sender_host\":\"myhost.com\"}}"
75
+ Keep-Alive:
76
+ - timeout=70, max=200
77
+ Transfer-Encoding:
78
+ - chunked
79
+ Date:
80
+ - Mon, 30 Sep 2013 17:23:28 GMT
81
+ Content-Type:
82
+ - application/json
83
+ body:
84
+ encoding: UTF-8
85
+ string: '{"results":{"sender":"admin","statusmsg":"Key, Certificate, and CSR
86
+ generated OK","message":"Key, Certificate, and CSR generated OK","keyfile":"/etc/ssl/private/myhost.com.key","certfile":"/etc/ssl/certs/myhost.com.crt","csr":"-----BEGIN
87
+ CERTIFICATE REQUEST-----\nMIIC4TCCAckCAQAwgYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIEwJUWDEQMA4GA1UE\nBxMHaG91c3RvbjESMBAGA1UECgwJRm9vICYgQmFyMQ0wCwYDVQQLEwREZXB0MRMw\nEQYDVQQDEwpteWhvc3QuY29tMR4wHAYJKoZIhvcNAQkBFg90ZXN0QG15aG9zdC5j\nb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDlcwhgn+PSKCVCzRXA\nQc3wIB6HVIfhnVfzjZZS3hR2opIGS0RRxVc5ON7v8Do32uUC9g+lgTR6svlVw514\nhZZtjLIvHR2Pks0mgAHOyveSfOl8J085ycD78oea10bbuKVTwluH4tF8M1LAJ5sh\nv8SvELjWY9z7UWNsxNhTVyy7uZg+ClbMRIWAlPYe8CNe2uOcgM4GqiylIP7jLtX3\nNjeG9UjnV3xUJJfAEKR4os6KXJ21VqGasHYoJU6wobhhA5VdM+nqIbsUFBejRbls\nAPAHOvN3C9TZWmw44RuZ/67GDVnYylG4+ftR8iFlFhTtqXS0ZGVvMn3qszn3V4ek\nmCFzAgMBAAGgFzAVBgkqhkiG9w0BCQcxCBMGYWJjMTIzMA0GCSqGSIb3DQEBBQUA\nA4IBAQAmuEnHR5LrK2iK47n1tDl2y80qa0OTOiSmP2rjscdM3lgvIf6Cb+lLoQcg\n0+CqqZhGx7bBR7CgHQYSPUUWZyAk3FLkX2duDGtmmWjBqwqXN8ZiZGKs+n2u7Hwx\nd6OL2dIvJmtISGBi+hqHAs89vjGwamFuFrTZtbVV2PWv3QNouFUU5k4WQye6YjCM\nxuyhqBq9nJSCNrU9iWTj4AdufEF6yoKTQxzqnq1igFMmvhe562lKN3D2nluBQaee\nMGBrL7IsCPidnok2HBt/P6MmwGRHTKBF4XJjO6X3jw+RFoLb2dMAGbLPxk/+XGjy\naTE2D1PyXGOgAyaKrJP33gYkcrpD\n-----END
88
+ CERTIFICATE REQUEST-----\n","key":"-----BEGIN RSA PRIVATE KEY-----\nMIIEpAIBAAKCAQEA5XMIYJ/j0iglQs0VwEHN8CAeh1SH4Z1X842WUt4UdqKSBktE\nUcVXOTje7/A6N9rlAvYPpYE0erL5VcOdeIWWbYyyLx0dj5LNJoABzsr3knzpfCdP\nOcnA+/KHmtdG27ilU8Jbh+LRfDNSwCebIb/ErxC41mPc+1FjbMTYU1csu7mYPgpW\nzESFgJT2HvAjXtrjnIDOBqospSD+4y7V9zY3hvVI51d8VCSXwBCkeKLOilydtVah\nmrB2KCVOsKG4YQOVXTPp6iG7FBQXo0W5bADwBzrzdwvU2VpsOOEbmf+uxg1Z2MpR\nuPn7UfIhZRYU7al0tGRlbzJ96rM591eHpJghcwIDAQABAoIBAQCDtONDK6SHdtnk\nnXp10JAY3ScJAaG6BSp+OHDogmf2rVzq1fuSgJeP1jBKRHf2peS9LWdP1nm8UM3E\nyDO1AeGWYqPJXYohZt/x0Jq5DFLOOHuB88KLZl8rgE0MubQH3daw3KjTuIQNKhy/\nBj0LQ1vwLcYb8ljfvhk3T0rpk+mum0UZ0M/UTELTpBtzu78ryGE4RNVXf1Jlvbku\nJo8Mzec5NEqbI52ihZ980HO3HHBiEjqDQ8yRiEsw7Gm0cdY1lnGSPFnUe6GJSIci\nrJD5UouOAbIISfaJKDPqSb6LeAhQInj8XT4ks+fWtoDGUdR7UcNksBdQf7OtLCdg\nx209okdhAoGBAPbimEKNzClOzlSaw+53DYyT9bYyCKCdFjU4c35fUcvNIkUX3M2q\neBRvG3lohBf/4g+63HBYrMbWENgXLGZGNpcaAQ3IpcfJJexaUuAA3x8rRyQF2Zal\nCkuUTLIC2XPmadquumpuRGgeSiKUIO4W4NtbXweG8UUNYWsbj1BdOTrDAoGBAO3r\npUvlKOc8gEsGYSvS659d6135mvQfEdaeKiQXDxhgam3Un1KDre2n975lT8Y1pH2D\ne1D+lXjGyGYSJjwKLabAXydVtAKqetxwpQdk8VgbMm/n52plSncXV8DQ/s2JDWj5\nXQyTwuqDcYD8H/h33WI3fvI7vv/DlzrJlHFcEzORAoGAcnHf+xoYRh3N79I+eVCe\n60e7Y1YWQb4QCWO9xhsRo9PXywegx4X6XB6VMdaNRULM3FXW0g2JKjMZY9J6Nn7d\n13Wqf2U/1DkeZ04HlOdShvRc6gn8L6UZ/KcmVm6TtvJcp47Pw36SH2HLI/Rev3/D\nhGv6xVZ8iXIGcsw3xx0v5lkCgYEA4jk9K+QSt4RcjHndbVkZd6hLA0kyIEtmn8Y2\nVaijTs9mg1Y3w7K3b5FVzPDyIIqjBEE/wSzBHV0N8ZfySQZ4j+S81V71Uc+eEPr+\nwAAoR1lc5PEBprX3TzOf2hQfI3nciWMKKcpZ/LjM9RNGpu/6Tchs6ZELtI/avSgt\nAHjHPTECgYBrdB7p++eGcBiZEUnm4PtrTZZG81WJBDuYTLdX8fSl9x1BBX72A16x\nmNUOIZXFCG+lgGI27EHJ8sa2MgMxPWx4aobEFIh7WzDWtTCZghxIpMF5UZIDMwcc\nPgAZZMOCZPFwkEM//PqVEC7OsACgmolJS7sM6hLW17tvbMiB65wTEA==\n-----END
89
+ RSA PRIVATE KEY-----\n","status":1,"csrfile":"/etc/ssl/certs/myhost.com.csr","cert":"-----BEGIN
90
+ CERTIFICATE-----\nMIIEejCCA2KgAwIBAgIJAP0YwbK5bPtCMA0GCSqGSIb3DQEBBQUAMIGEMQswCQYD\nVQQGEwJVUzELMAkGA1UECBMCVFgxEDAOBgNVBAcTB2hvdXN0b24xEjAQBgNVBAoM\nCUZvbyAmIEJhcjENMAsGA1UECxMERGVwdDETMBEGA1UEAxMKbXlob3N0LmNvbTEe\nMBwGCSqGSIb3DQEJARYPdGVzdEBteWhvc3QuY29tMB4XDTEzMDkzMDE3MjMyOVoX\nDTE0MDkzMDE3MjMyOVowgYQxCzAJBgNVBAYTAlVTMQswCQYDVQQIEwJUWDEQMA4G\nA1UEBxMHaG91c3RvbjESMBAGA1UECgwJRm9vICYgQmFyMQ0wCwYDVQQLEwREZXB0\nMRMwEQYDVQQDEwpteWhvc3QuY29tMR4wHAYJKoZIhvcNAQkBFg90ZXN0QG15aG9z\ndC5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDlcwhgn+PSKCVC\nzRXAQc3wIB6HVIfhnVfzjZZS3hR2opIGS0RRxVc5ON7v8Do32uUC9g+lgTR6svlV\nw514hZZtjLIvHR2Pks0mgAHOyveSfOl8J085ycD78oea10bbuKVTwluH4tF8M1LA\nJ5shv8SvELjWY9z7UWNsxNhTVyy7uZg+ClbMRIWAlPYe8CNe2uOcgM4GqiylIP7j\nLtX3NjeG9UjnV3xUJJfAEKR4os6KXJ21VqGasHYoJU6wobhhA5VdM+nqIbsUFBej\nRblsAPAHOvN3C9TZWmw44RuZ/67GDVnYylG4+ftR8iFlFhTtqXS0ZGVvMn3qszn3\nV4ekmCFzAgMBAAGjgewwgekwHQYDVR0OBBYEFCimE8iyCFFU0pb5zK/eS6BfGgJo\nMIG5BgNVHSMEgbEwga6AFCimE8iyCFFU0pb5zK/eS6BfGgJooYGKpIGHMIGEMQsw\nCQYDVQQGEwJVUzELMAkGA1UECBMCVFgxEDAOBgNVBAcTB2hvdXN0b24xEjAQBgNV\nBAoMCUZvbyAmIEJhcjENMAsGA1UECxMERGVwdDETMBEGA1UEAxMKbXlob3N0LmNv\nbTEeMBwGCSqGSIb3DQEJARYPdGVzdEBteWhvc3QuY29tggkA/RjBsrls+0IwDAYD\nVR0TBAUwAwEB/zANBgkqhkiG9w0BAQUFAAOCAQEAZ5nK5xXj9uDlj8VjhU1Mo7BI\n8oP2hR7TDumLPL3CWrYEHqgnHiwft/7RXpnH5zM9wXXb0ZjIzB2pRW2UUq4I0iF3\ns07k9+UZPvI7EcAQF1zjUNKr0KuKsKxmiJjn35oKfBny/Iftysm2XV1neye240QA\n+c5SsdN9lv8rU0LhSviR7pFYoscKV39uAHdb0qN7lJLtnfujYOG+Xe79NC846XXc\n9R+0RjmBqDB3KDbK4nqP68SHz61TGB3PDD66Xh1fzzddB5N5votS4vxujolb9OPy\n0BqoHXM6FAXHwbK03x1QDw1/Atq0S8y/FhrdadkDo8fpo8FikBKfyKdFA3m57A==\n-----END
91
+ CERTIFICATE-----\n","sender_host":"opsbox.local.net"}}'
37
92
  http_version:
38
- recorded_at: Mon, 29 Apr 2013 17:24:19 GMT
93
+ recorded_at: Mon, 30 Sep 2013 17:21:30 GMT
94
+ recorded_with: VCR 2.4.0
@@ -7,9 +7,9 @@ SELF_KEY = File.read('./spec/sample_certs/sample.key')
7
7
  module Lumberg
8
8
  describe Whm::Cert do
9
9
  before(:each) do
10
- @login = { :host => @whm_host, :hash => @whm_hash }
11
- @server = Whm::Server.new(@login.dup)
12
- @cert = Whm::Cert.new(:server => @server.dup)
10
+ @login = { :host => @whm_host, :hash => @whm_hash }
11
+ @server = Whm::Server.new(@login.dup)
12
+ @cert = Whm::Cert.new(:server => @server.dup)
13
13
  end
14
14
 
15
15
  describe "#listcrts" do
@@ -37,15 +37,52 @@ module Lumberg
37
37
  describe "#generatessl" do
38
38
  use_vcr_cassette "whm/cert/generatessl"
39
39
 
40
- it "generates a CSR" do
41
- result = @cert.generatessl(:city => "houston", :xemail => "test@myhost.com", :host => "myhost.com",
42
- :country => "US", :state => "TX", :co => "Company", :cod => "Dept",
43
- :email => "test@myhost.com", :pass => "abc123")
44
- result[:success].should be_true
45
- result[:message].should == "Key, Certificate, and CSR generated OK"
46
- result[:params][:csr].should match(/.*BEGIN CERTIFICATE REQUEST.*/)
47
- result[:params][:cert].should match(/.*BEGIN CERTIFICATE.*/)
48
- result[:params][:key].should match(/.*BEGIN RSA PRIVATE KEY.*/)
40
+ context "generating a new CSR" do
41
+ subject do
42
+ @cert.generatessl(
43
+ :city => "houston",
44
+ :host => "myhost.com",
45
+ :country => "US",
46
+ :state => "TX",
47
+ :company => "Company",
48
+ :company_division => "Dept",
49
+ :email => "test@myhost.com",
50
+ :pass => "abc123",
51
+ :xemail => "",
52
+ :noemail => 1
53
+ )
54
+ end
55
+
56
+ its([:success]) { should be_true }
57
+ its([:message]) { should == "Key, Certificate, and CSR generated OK" }
58
+
59
+ its([:params]) { should have_key :csr }
60
+ its([:params]) { should have_key :key }
61
+ its([:params]) { should have_key :cert }
62
+ end
63
+
64
+ context "generating a new CSR with an ampersand in company name" do
65
+ subject do
66
+ @cert.generatessl(
67
+ :city => "houston",
68
+ :host => "myhost.com",
69
+ :country => "US",
70
+ :state => "TX",
71
+ :company => "Foo & Bar",
72
+ :company_division => "Dept",
73
+ :email => "test@myhost.com",
74
+ :pass => "abc123",
75
+ :xemail => "",
76
+ :noemail => 1
77
+ )
78
+ end
79
+
80
+ its([:success]) { should be_true }
81
+ its([:message]) { should == "Key, Certificate, and CSR generated OK" }
82
+
83
+ its([:params]) { should have_key :csr }
84
+ its([:params]) { should have_key :key }
85
+ its([:params]) { should have_key :cert }
49
86
  end
50
87
  end
51
88
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: lumberg
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.0.pre3
4
+ version: 2.0.0.pre4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Justin Mazzi
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-09-10 00:00:00.000000000 Z
11
+ date: 2013-09-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: json
@@ -384,7 +384,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
384
384
  version: 1.3.1
385
385
  requirements: []
386
386
  rubyforge_project: lumberg
387
- rubygems_version: 2.1.0
387
+ rubygems_version: 2.0.3
388
388
  signing_key:
389
389
  specification_version: 4
390
390
  summary: Ruby library for the WHM & cPanel API