lumberg 2.0.0.pre3 → 2.0.0.pre4

Sign up to get free protection for your applications and to get access to all the features.
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