14
14
#include " network/ws/ws_client_connection.h"
15
15
#include " util/app.h"
16
16
#include " util/certificate.h"
17
+ #include " util/string.h"
17
18
#include " web_server/socket.h"
18
19
19
20
#include " responder/model_base.h"
@@ -144,4 +145,97 @@ void destroy_client_in_strand(ref_<Client> &client) {
144
145
void destroy_dslink_in_strand (ref_<DsLink> &dslink) {
145
146
dslink->strand ->dispatch ([&dslink]() { dslink->destroy (); });
146
147
}
148
+
149
+ void TestConfig::create_pem_files () {
150
+ auto &config_bucket = Storage::get_config_bucket ();
151
+ string_ const cert =
152
+ " -----BEGIN CERTIFICATE-----\n "
153
+ " MIIFaTCCA1CgAwIBAgIIIqsLkHopCB0wDQYJKoZIhvcNAQELBQAwczELMAkGA1UE\n "
154
+ " BhMCVVMxEzARBgNVBAgMCkNhbGlmb3JuaWExETAPBgNVBAcMCEJlcmtlbGV5MRww\n "
155
+ " GgYDVQQKDBNBY3VpdHkgQnJhbmRzLCBJbmMuMRIwEAYDVQQLDAlDdXN0b21lcnMx\n "
156
+ " CjAIBgNVBAMMASowIBcNMTgwNzA3MTE1MDE2WhgPMjA4NjA3MjUxNTA0MjNaMHMx\n "
157
+ " CzAJBgNVBAYTAlVTMRMwEQYDVQQIDApDYWxpZm9ybmlhMREwDwYDVQQHDAhCZXJr\n "
158
+ " ZWxleTEcMBoGA1UECgwTQWN1aXR5IEJyYW5kcywgSW5jLjESMBAGA1UECwwJQ3Vz\n "
159
+ " dG9tZXJzMQowCAYDVQQDDAEqMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKC\n "
160
+ " AgECpCPNM813NWcjzR0E2ZVstPJjZvWq08cXrizUh52RrQj/u8kPIzGt7ZlS+y0q\n "
161
+ " P6BIfQYf6IrvEkr7n0PktVmjVJrqBUHRIaNESS59C+3z0EW/w5wo295TwbibnZq+\n "
162
+ " Mxlqkhwa63Z3SI+MDLrcgEvaX8Gf/2BReL2N8LfuR5Mb+kYpxw41M8+xmaFoCm3D\n "
163
+ " kQ2MFyKp9e9K8bqbnIfzKumsZJaCw7YPfRHGNRoU/8sxrRKa2v13KGMkuYeIrilZ\n "
164
+ " Ee6aYvvaWgW2LckYp0B3T/amkAZmPTc3GNH6f2bVgwah+GBc5omVUG4coM4lZimM\n "
165
+ " d1JJZ4N7hataq92Itp8yF7jxD3tvxXlcsX9gm8uGy60HxGSAeMWASUKWAArw347t\n "
166
+ " mqNiXpEebW7BJhJotFc8TB6lshi3EgLkyUGJk07kWYW0dmAHYpjsBw9cCA2o1Rfp\n "
167
+ " lcFQMuPxRdt+dTD090cvcHUMjLrAuenQ3zOkFYLD0jjqEAj0BAPUsVUPLSXhmYNK\n "
168
+ " uyl5ihFAmy+P0ictUO0Z/Gyh0HeP0x78bicg5nFvoNPuMR4uKQ6mZmCCwWc8D0F7\n "
169
+ " g8Km3KEbIAZqj/wJQ3WWR1nYjDrAWjlY8aO757d2gNclh0NgB1r/mn/N4bPDNgrJ\n "
170
+ " /0Qo+Sp9G+7Gp+0unueb6+xffr/+1nZHL9prFBn+ze5d0PkCAwEAATANBgkqhkiG\n "
171
+ " 9w0BAQsFAAOCAgIAAfuIqwDg+njuhGFiz4Ei8D88JEPMKuNQdfI2TZ6XVRdfHt5F\n "
172
+ " fe5msaOamKOHP4GvyvRyqn4z3Ap8YVRPx7RmC4vb0KMc4+tSSENHKGPUeg94Jqzs\n "
173
+ " qT3CHFaBRkeHTTMe4UBuFekuvjQozibRzH7ccb6mG5NF/0AqS1SxudV1nWJCXQiA\n "
174
+ " lNAfUpXchrexPl6tcDEL25rB0BlQoH2YawJFUk/YiOhxq9p9NGpvMCDRl9wqoggC\n "
175
+ " 95LRSRaBhuw24FES/iLByRiVHXbeqgC/AidV/QAgP0IwuoMYay0UIUpLIDg26dBk\n "
176
+ " nRu23Suht+Za5kpJiL14POm6w9E/h/H7PKernp8GXncUOYtloSneWK15HxL/rHqg\n "
177
+ " /zidgaI+TvAt6kuId9botR0NEBtft5I4GuDjt+j/N3sfoRU29JiPr4jlkxVXJPfb\n "
178
+ " rLi+aT9kWCR9sFvj5TzBDAseGjpfo2bpLV1rwEI+xyUomWw45Um2mHgJCqZ/besC\n "
179
+ " 6urdjFtRy+bYTDvPG9EnZbnZqPAQSUCggV5BoblEcuYJExoX2oV7dtMaJckItGIx\n "
180
+ " moEt5gquAiSe2XANz+5fysj0KFZlgd0Sa2w1JD2ZWlZhxKuwC+kELLTdAilRbPoW\n "
181
+ " QqYMqsFRtNSOyYHXUudi5Os75I5glQvtNQJzcxLcBhvyK8MOdxQmqYaP0ZiS\n "
182
+ " -----END CERTIFICATE-----\n " ;
183
+
184
+ string_to_storage (cert, " certificate.pem" , config_bucket);
185
+
186
+ string_ const key =
187
+ " -----BEGIN RSA PRIVATE KEY-----\n "
188
+ " MIIJKwIBAAKCAgECpCPNM813NWcjzR0E2ZVstPJjZvWq08cXrizUh52RrQj/u8kP\n "
189
+ " IzGt7ZlS+y0qP6BIfQYf6IrvEkr7n0PktVmjVJrqBUHRIaNESS59C+3z0EW/w5wo\n "
190
+ " 295TwbibnZq+Mxlqkhwa63Z3SI+MDLrcgEvaX8Gf/2BReL2N8LfuR5Mb+kYpxw41\n "
191
+ " M8+xmaFoCm3DkQ2MFyKp9e9K8bqbnIfzKumsZJaCw7YPfRHGNRoU/8sxrRKa2v13\n "
192
+ " KGMkuYeIrilZEe6aYvvaWgW2LckYp0B3T/amkAZmPTc3GNH6f2bVgwah+GBc5omV\n "
193
+ " UG4coM4lZimMd1JJZ4N7hataq92Itp8yF7jxD3tvxXlcsX9gm8uGy60HxGSAeMWA\n "
194
+ " SUKWAArw347tmqNiXpEebW7BJhJotFc8TB6lshi3EgLkyUGJk07kWYW0dmAHYpjs\n "
195
+ " Bw9cCA2o1RfplcFQMuPxRdt+dTD090cvcHUMjLrAuenQ3zOkFYLD0jjqEAj0BAPU\n "
196
+ " sVUPLSXhmYNKuyl5ihFAmy+P0ictUO0Z/Gyh0HeP0x78bicg5nFvoNPuMR4uKQ6m\n "
197
+ " ZmCCwWc8D0F7g8Km3KEbIAZqj/wJQ3WWR1nYjDrAWjlY8aO757d2gNclh0NgB1r/\n "
198
+ " mn/N4bPDNgrJ/0Qo+Sp9G+7Gp+0unueb6+xffr/+1nZHL9prFBn+ze5d0PkCAwEA\n "
199
+ " AQKCAgEBTmGySwszCEMQzpCqZFzknPw+sp2ONRwCFw5usP75G2UW7Cy8AsC/7oBk\n "
200
+ " LHoiqcK/9qy/vQZww1A37oTqJ9HD18ShNaZeIc+XpsWJ7AtrB7Zm5vtkrY/fRi/h\n "
201
+ " LeloZOcN8GJb4dT9mvH65hTHld9tiOu+D9L3l8nO15xvCBC1xmlKofnhz9TIVV0g\n "
202
+ " kf/EtwjHHm3zNgB4xOFvsdL+LFvR+RECbH2uXUEcEAjtF6/KyngoA2NUubGGaQah\n "
203
+ " Tth+B0NEMO2zB9BJT41jVtun5fDqYNH5YA7dfbXit30I3Lq8AZTOfOjP4i4ClHg+\n "
204
+ " wK6NnDkiukGpJesfdV2jDgXfBSJee5kbc6lyH9U35qW1+bOnMbenWm5DqcRUj9qe\n "
205
+ " Hk91RY601SFAyxmNvmx5fnYSy28fo+BUH1cZH0kG+ARU/ATDQo2g8u0A9h78LlwN\n "
206
+ " ttRsz+6wQdRDWDJkQw5WxJafrJlF4uHZPu727YD23fk1SJsTApoXfT1mTsugeXt8\n "
207
+ " rim6nPuea+/VFO4G8mUsj8cAlzVTwTJC+Hqs3Kwm0illmPR7cOJlLtx4SeZDgVAN\n "
208
+ " Ro6hbJkhPZU5YWp77pjL1yNh/QccsoedLrqLDX7ov9kjwX1qBaFZR8ibh5CZSPTb\n "
209
+ " gpkabKjEQO2qjJMGC1GlhSZ3e78wX7sJ0Tk4BJfOrz4032oAc00CggEBAaTivAHD\n "
210
+ " HPb12m2jD1iTUueqLH2AW/PwkSNHZEcg/tePcn/t18lsQgEkTMneUbYKJVPeBC+A\n "
211
+ " 1WKv3R0eytebRCSNk43nXFf4jWrY3+ytVl6JYrObT7IAK7mDzCIbpewpER8rMCrJ\n "
212
+ " 0t3TzrcHDVXspsMOSwOgxUbYE3xrm96px9MptllSDpVbBWb/29O5hM1TuUwZrLbg\n "
213
+ " CGtuAu4uIowaCi1HGAvdY1ngZF0R7SNWemOE8aZxYqisfKtANPBJojdVF6HKdkt9\n "
214
+ " UCCYSzDpZpTs0885xXBwH6GTT4BlG/2uHF4xLF1n+iOxxLEBHjwEpIiTdaeGaTem\n "
215
+ " gAcSiKl8UyR77YMCggEBAZtBj2tn/7CZW5zeI+YOvxuhCZCweaYUoq+5hisDJ+ag\n "
216
+ " 5uKQswKJJ+H4qGsmB1jbeQ3s38R9eEXUa1hpUrtnwLMMTIEICd7jCbdnPVY85n3X\n "
217
+ " 7OFROglTp6r5PtEpN9nialHlw/Dqd69vfv5TWTwGgUipP6wIEVpe9p/Qw4OvhIrV\n "
218
+ " gXH1Wgz/NG0X0NYcHpMcJtcin/fcpTrETXRMQZhqHnmePWE6Hb4LF/x0uO73feL+\n "
219
+ " AWQ+SGG8hM/gpnSb1zHvA0xWw23CzCwyouqY7fxm8ljSN0EMEgOG5fi5nF1VmFOZ\n "
220
+ " vxcAV1M9Z43Xl3cx4CR9OXKAbw2ZdgyNiyfv1o4TWtMCggEBAWk3xs9kWxmAyyRJ\n "
221
+ " S8RjPEXjASf83+4uSwISJXf+U3lBfa1ZvVb7eHJuaxDdoxcvAfZGlyUF1x1JfeWe\n "
222
+ " JcyBTyxn7XleVRyTDxviYdxIr9WW54TqCK3mA6DGAo5LWE2kuTMc58vxRu5m+ASR\n "
223
+ " ItrZrg292JeWhXlVvPONj0q8P+l05TEngaihY7OQZ2QA1n86Gc+8QUT6ZX99/TnZ\n "
224
+ " koDXYGCXoYWdTcU3FiviVLl9YLDEynhk252T27NF+ak4KOaAOzX6AyiqtfgjfHTP\n "
225
+ " ++BYmThChrcHI76SJSs2m51Orr4QSdkogb/cs8iOAxrTiTpGBDXw36CJX1uyhmOf\n "
226
+ " dePcEG0CggEBAQUt1Lyclrj8HD96oIfZs6sDUcTPHuLH1i4Nf9TPM0b3xsn6pYUl\n "
227
+ " v+t19NfflejrsWyTk+UA3iJS7j1+3ijgknPjiq6jgUlJHQGaEk0zbhpbyDesU1Rb\n "
228
+ " CW++zRMevzaj4WvTpOXasln7UEaKfnBtnSudOS+zC/o9txj2B0UZce6N+6B49lCs\n "
229
+ " vwnNhzaDMzOwPEaC2d8bBOBWjO4gA8SdGG+afFbEBuGLwBb3tf8ltJA1SoL0Pxm7\n "
230
+ " FQnEHVKPKlKu/YQ80e5iOTKUkfy1VOboJl8cWjT4SnRs9p5ImrJ3yr7FNKOR9uOJ\n "
231
+ " arudQLdVOIlT8ejzAhQ78sm0Fr0tRzCBwDsCggEBAQfAast3k7pSGN/vSKOk9IRV\n "
232
+ " AhHnXOlR9UC8ue2UW1lNWs0YP/nAqtL/WqQTv1jj8QmVz64hfi3RKYOi/xQTedf5\n "
233
+ " 0jkwY30h9Wk2hQqx6pjQi38nmtCEcmC4NKLQ839jSQTBvWgXfM1cPea14eaH2l3b\n "
234
+ " gy21QeJmF6tW7LExIaMqv8LY8yA99W8OVfRwh+v5yWwNi0o50oikQjgR4ZP8ZOUC\n "
235
+ " 4q1HG3opwf1NdrhwINmaqtu6/245nxZohbeDvZNdXsfAgyMAF7XXkwgepsdtbvqK\n "
236
+ " drU2d+UZc+fc05UcQgFebM1r0YymCvm9bB3VaOda3SuuXbqJ6dWi37xq8NBlC6A=\n "
237
+ " -----END RSA PRIVATE KEY-----\n " ;
238
+
239
+ string_to_storage (key, " key.pem" , config_bucket);
147
240
}
241
+ } // namespace dsa
0 commit comments