summaryrefslogtreecommitdiffstats
path: root/recipes-connectivity
diff options
context:
space:
mode:
authorJan-Simon Moeller <jsmoeller@linuxfoundation.org>2023-07-20 22:42:38 +0200
committerJan-Simon Moeller <jsmoeller@linuxfoundation.org>2023-07-31 16:21:05 +0000
commite5ab749de2db4e3902159ee641ea5df08223d813 (patch)
tree142b9cd9bb914cbcf79f2d0e156fc827858ecbb9 /recipes-connectivity
parent4b1a8c3c557b283372f8853672da641bfef06ef4 (diff)
Update certificates to include localhost and 127.0.0.1
This updates the certificates to have subjectAltName defined as subjectAltName=DNS:$1,DNS:localhost,IP:127.0.0.1 It allows clients from t
{
    "title": "Low Level CAN Binding Guide",
    "description": "Low level CAN bus binder, based upon OpenXC vi-firmware project.",
    "keywords": "AGL, Development, CAN, binder, OpenXC",
    "author": "IoT.Bzh Team",
    "website": "http://iot.bzh",
    "published": "March 2017",
    "version": "1.0",

    "gitbook": "3.2.2",
    "root": "docs",
    "pdf": {
        "fontFamily": "Verdana",
        "fontSize": 12,
        "paperSize": "a4"
    },
    "styles": {
        "website": "resources/ebook.css",
        "ebook": "resources/ebook.css",
        "pdf": "resources/ebook.css"
    },

    "hidepageheaders": [2, 3],
    "hidepagefooters": [2, 3],

    "plugins": [
        "regexplace",
        "richquotes"
    ],
    "pluginsConfig": {
        "regexplace": {
            "removeFirstPartsInSectionNumber": true,
            "substitutes": [{
                    "pattern": "<!-- pagebreak -->",
                    "flags": "g",
                    "substitute": "<div class=\"page-break\"></div>"
                },
                {
                    "pattern": "<!-- clear -->",
                    "flags": "g",
                    "substitute": "<div class=\"clear\"></div>"
                },
                {
                    "pattern": "<!-- nopagebreak -->",
                    "flags": "g",
                    "substitute": "<div class=\"nopb\">"
                },
                {
                    "pattern": "<!-- endnopagebreak -->",
                    "flags": "g",
                    "substitute": "</div>"
                },
                {
                    "pattern": "<!-- note -->",
                    "flags": "g",
                    "substitute": "<div class=\"note\">"
                },
                {
                    "pattern": "<!-- endnote -->",
                    "flags": "g",
                    "substitute": "</div>"
                },
                {
                    "pattern": "!\\[(.*?)\\]\\((.*?)(?:\\s+\"(.*)\")?\\){0,}{caption=1([^\\}]*)}",
                    "flags": "gmi",
                    "substitute": "<figure id=\"fig_PAGE_LEVEL_._INDEX_\"><img $3 alt=\"$1\" title=\"$1\" href=\"$2\"><figcaption></figcaption></figure>",
                    "decode": true
                },
                {
                    "pattern": "<img ([^>]*) {0,}\/{0,}> {0,}{caption=1([^\\}]*)}",
                    "flags": "g",
                    "substitute": "<figure id=\"fig_PAGE_LEVEL_._INDEX_\"><img $2 $1><figcaption></figcaption></figure>",
                    "decode": true
                },
                {
                    "pattern": "<img (.*)alt=\"([^\"]*)\"(.*) {0,1}\/{0,1}><figcaption></figcaption>",
                    "flags": "g",
                    "substitute": "<img$1alt=\"$2\"$3><figcaption><span>Picture _PAGE_LEVEL_._INDEX_</span>: $2</figcaption>",
                    "store": {
                        "substitute": "<a href=\"_PAGE_PATH_#fig_PAGE_LEVEL_._INDEX_\">Pic. _PAGE_LEVEL_._INDEX_</a> <span>$2</span>",
                        "variable_name": "pictures"
                    }
                },
                {
                    "pattern": "<img ([^>]*)> {0,}{style {1,}([^}]*)}",
                    "flags": "g",
                    "substitute": "<img $1 style=\"$2\">",
                    "decode": true
                }
            ]
        }
    }
}
U1JCKWn5GIvC1AqAPdl6lGw2HRFEo13sMyedjOKnj8W1+8XO
-6lWhXQTeWazHiRiG1ZKicfR1chlbNxvhJOqmgDpNkr7m/W+JZgoa4sZVswQRJ3TG
-2mBSoxums2VW2nc=
+MIIEBjCCAu6gAwIBAgIUeUuog3JmZGhkE0nRcATDuclsVvkwDQYJKoZIhvcNAQEL
+BQAwgasxCzAJBgNVBAYTAlVTMRYwFAYDVQQIDA1TYW4gRnJhbmNpc2NvMRMwEQYD
+VQQHDApDYWxpZm9ybmlhMRwwGgYDVQQKDBNhdXRvbW90aXZlbGludXgub3JnMRUw
+EwYDVQQDDAxsb2NhbGhvc3QtY2ExOjA4BgkqhkiG9w0BCQEWK2FnbC1kZXYtY29t
+bXVuaXR5QGxpc3RzLmF1dG9tb3RpdmVsaW51eC5vcmcwHhcNMjMwNzIwMjAzODU1
+WhcNMjcwNzE5MjAzODU1WjCBpTELMAkGA1UEBhMCVVMxFjAUBgNVBAgMDVNhbiBG
+cmFuY2lzY28xEzARBgNVBAcMCkNhbGlmb3JuaWExHDAaBgNVBAoME2F1dG9tb3Rp
+dmVsaW51eC5vcmcxDzANBgNVBAMMBkNsaWVudDE6MDgGCSqGSIb3DQEJARYrYWds
+LWRldi1jb21tdW5pdHlAbGlzdHMuYXV0b21vdGl2ZWxpbnV4Lm9yZzCCASIwDQYJ
+KoZIhvcNAQEBBQADggEPADCCAQoCggEBAMiErBzBsMvHb4cfrT0DhrYLW/WA1ktJ
+ETD3DqLt0JVIwHF5s709nSyMDp50WAUvZxDQ6iOMedshAlAcFTSL6HomZUKoyoUq
+9gTqcCSICYKniq+IXrFPTPbNzg6kdrHVIb+3ueLEWEhb+R7N+R6K694LkkYddhbV
+ofoi09jyO+Y24tyoz5iuMmRiZqEkFofqv74QeQkLXQHAP9PGqGZ4cjDhqgTM5oa9
+Tw5u1G82SHKdi8bN8atzwSauXjBejd0vLLBE8+1jql9L5wXYJeA4TGAlYK46aV85
+nGGG5JuLpbilX/LEe3AG0mqFFH7dhuJi1zQRNUSVaWK8xyEFuzqYY6kCAwEAAaMm
+MCQwIgYDVR0RBBswGYIGQ2xpZW50gglsb2NhbGhvc3SHBH8AAAEwDQYJKoZIhvcN
+AQELBQADggEBAGtM7LGk4PhEgrjLXr7tdRn/VSwUv+HLDmtgkMFsAqYolTwtK7eK
+1XgNF2j6Yo4ma/efd8Td9wjKkrfkxQRCpM5gjNLhiZsBRO/HW4GiC3GKz0ELijE2
+7JU7xikawSE6Zvvj1t33KJ5uGDowv2tvDbCB76ecGohTb5O7mpe+fxMlt+d4vPku
+uTfAaNfl8+oSo7suy3842ANpxteoxfVHZgG0FjdMKjSKxCyxI3buLltlQ7G+39QS
+/cwuRTOp0UNPpiHWDKVOXL8qW/ZHpocGFlErstEQjUz+3/WglMlTK07ocRVQjQc6
+mAo4aKRaaHi5Khn+KPrRDnS+Rl8xEzSsBeo=
-----END CERTIFICATE-----
diff --git a/recipes-connectivity/kuksa-val/kuksa-certificates-agl/Server.key b/recipes-connectivity/kuksa-val/kuksa-certificates-agl/Server.key
index c1344fca1..8b9c6ac66 100644
--- a/recipes-connectivity/kuksa-val/kuksa-certificates-agl/Server.key
+++ b/recipes-connectivity/kuksa-val/kuksa-certificates-agl/Server.key
@@ -1,28 +1,27 @@
------BEGIN PRIVATE KEY-----
-MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDcc0Doe3/eEaGA
-4yr3ql24LNcXc64TY65l1l+4WRgeFaQ7/W2z3eJU6sblDyJjah8Ydug87xPdROW9
-KUBuTYLrkdX71IOx8Y8t0zRTdk+5CujokoxLY5aEQc+aXebit0xowWuAg6hM/j+I
-b0bokVrD+aB4MoC1i8KqXau5E3u4b35cnoaD7B1ks4piXM9hV/jPIpkzKNieXD9f
-beECsohNRaZgkSpPq0it41Bfr8/8CUAOJZ920kWUr5uJNqR5oZ6Z7rBVbzFENDK8
-qiDklh242x39ZtDwqO6bE+r6gLutSwNsoLbeykvjgf2FgKol3g+JsTIVdkZutN9Z
-CQZZ8Q6fAgMBAAECggEAUrFbBjoZV2xGqEnOetOpzyXm0zG9+SD5sNKu2kB1ZweY
-MTaZ2ZAgT9k3nYHFVQRgQLWN3RmTWnt3MDNSq22g8Aum+I2Zjvy9SCPDK5GkSxW4
-E1Gxla/4LIlhPhb+Pkoiu+LeF/mK/sKag2u2bhPkN8IiOyQ6mp8f+PclLMoNrTtX
-CL9VH2GmVi0LR5zMRgQAdCfFZDo/e4aXDNs+LReiOlLUcI+klia/fn0HHe4Jet8h
-t8LoYza/FkCOvLjb6/2A7WYhE6rzWTJDH33Gk7+j/Mae+LUHx4UROL77tD2GCXfB
-0c4eFLaoXN2s1+UjCmnere/qJqVCE7ipeHarhmh/uQKBgQDjrVGYISamora4bzE/
-PLE4lkNJcxpyONs7d7WVUzs7WuD1ELW3gFBLeDDKhhL/Ifq+YexOCl71NmUwmowz
-Pbj/lhgkpNXMu+gTyKLhnCMFPOGHnSk7c+io+Nc/ZwQ8KyP/8KQdfIgNpY79ldQK
-1TnW7kfjaq4q+0688ilEV/zaNwKBgQD338l/qtnF7ESAd8j+0ICXSPwetTmKd0oZ
-U4XCNqU/K5VneJVhOUcntGnl6OM2QmC5rXeNf27OlcRdbvl+rJgEMtwN/aCilw6s
-PFCJX+4DldScmuD/bFdL25T6JMCKyUtWi/+EIF7BJP4ugS6j/s7aXJ9LjDK9MXv6
-2aEVmeGa2QKBgQC0PiLpZ908cHZtHoIDSR4X6UWNoVUfdgmBU6zqcYDj5XdQK5Fg
-m3F1vcoKmwfw+UqTa9xyj91LDWwghUlWy5dop7+nSuODeIMrHlxsdXp4DBGTlgTt
-bz6SfqWRKRH+PDz8wtp6CXuAKkBAW1wJ03I9yFgbHvqRRnC4PpIS7AFeEwKBgQCH
-Q0ye6WnLUuISxMsfGkKBy+chDr3mrK/34Bcm41ELhsoR28CQfIQyy4XaW1rZ+iD0
-Ug/iXD7oZtvwLKXjlWWjLOnejKAC+bGdFZDRVlL5C+Mozm+nksSUda/3TOTxF2WQ
-Rfdab5ulhH1cfUwpW9wfVtnqjQgHLCC+w9HeismNCQKBgF7Jqgf4zB/4nSz9L5J1
-OCiBeER7ABoVjIaIW10VmAlZr++bhuaRCnGEPMJNKrYl63bx42CoRAYWXMqMdDlv
-NMiPuaoPrDY6kZaUT4C6bxp7nIT/yo2/SopgfZJ1f7y4qS3cwW9xDWgM9lyoI26Y
-nt3OAtJB0mS1n7YBR8IdCVso
------END PRIVATE KEY-----
+-----BEGIN RSA PRIVATE KEY-----
+MIIEpAIBAAKCAQEAzGvmH7adlcMVdfblKg56EkgiSkR45IrRaIMH/AKUcK/4EJdk
+Jx3NoHuYuiTTreiovt9b5FjqV8txuJ579e4O9GyDELN1r9stR5y8zEbFQuf8afxK
+Bl0JPnhXOxi7nUq92rn0H7jpm0a9WQvmbdRsFVfafNoeC4Dz1PeGMN4tHYtHHCnq
+Ye5Sr7yT/eZ8RMUoXB560akRctA/pQWEwYbNps02HJs+jeNsJuXTgXpsirTy2RR5
+TKLmZjQMovxW85zYpSS9fRprwpzqeHhWbJBWWNeP8Y20nkRbAaAktc8IrlmhFMLh
+4n0L1B0s0+Xn/9kt98pNSDCJPzH6Ar4LoDPDfwIDAQABAoIBAAyG0CNBXYa/3aDM
+8F4TZQeZxAApEf9vQkXVQbf/sHj3T4w0ur5q5R7gdAt0FkSh7TVFGqxzhmi63s0h
+aRc471GrFJ0BYkTUeYHZ6PfbnlrrPFyCSUb6jIZ3eWD1swmAewHcQ0luW2JYg2Hh
+iM1SJw1nxMvB0fWCgW6bfG2iL8GPmyrVyhyrfebZdEaUUnjvfqLWroIoBZ2B0roa
+dZ/VDlXzN8wspyziCqlumiq+R3b9+abBtHLyG13DQAhVYGksbX+5W4s1Yy6nwG0S
+yyRh2cK5c2MPrjqHmJr1GqlXItmEnqkjiVlg/qZDEyalWHcKFNGNaURSz7RWNwo2
+cWZv8AECgYEA/h76+2yjvYfDeZRiKRfN9imfT9F6T4VoGgfoZODIe6uLsOQOeiKR
+lqjj6bdIP8CDsfcHhb38FblYsgm6GFZiROQafRjVfj2yWiasQszFTOzLDRqR8LNs
+nZSUv7zlPziJ28VBs1DF5lZSNbzFXEKxAWdGAINC1POdKZOi2UCUwYECgYEAze7X
+7ML1QV+ZipnszLiRvccQ7kMUw51g/hi0Fw//tkCC8FnsbR489GDb8l+V/IR9tNov
+7y5cd/NRziGVUhXH67ZnXa2k5yRYxhFWQxpgEEUWUhsfYVqppMj7vMjcxVa85A0R
+2hzI/kWWWWcowwuHSmuoU8xRZlNdA2cbefeBBP8CgYEArm8hpRhLxTu+CGS8hKyc
+ak7j1mxaYt+WN9gZw7UwqQN2HfRNo7S67wn7eGChLXG+dJi3By0ELv1NTtiybyZM
+yjExpZE4azF6jbtiH3BkNouMTfBhITJoajqlaIAHdMAgkUTz9lyJm7TBNbXgW5ZD
+3ky/lnaDl52p0fJPpIVaFwECgYEAyhsRYTUJPGqVpxhf9Z9isY0wCZZeR4kqStZ1
+0HiMLxLrLvYh+gmGKxTwZ9P1wIlLUfYcuzGV4Mc1TwdYo+HqfmRa1+52e78JPQKA
+1YSKKQ2U1Wn3BzXSbn4tyd6cBTSWV36YOaasgBhNcVqz/5BN6/Tyk6Nfc/x2ucM0
+jSQiRIMCgYADss1PeYdANwbw8n29mXEGkk6qfVh54MU/AoS2v6kk6fqAHNFsb9vJ
+m3JkRYSh3kSKwKgD97oGMpbxLr0wVj69s4s8wPjhNo4RZALCB/sj9hra7rsoRzmQ
+apSPbfLaWVZEqg3fj0gCamSq8PGjY4fA9RNHOB751M2oszpQb8bdpA==
+-----END RSA PRIVATE KEY-----
diff --git a/recipes-connectivity/kuksa-val/kuksa-certificates-agl/Server.pem b/recipes-connectivity/kuksa-val/kuksa-certificates-agl/Server.pem
index b4add6a20..4b181e9a3 100644
--- a/recipes-connectivity/kuksa-val/kuksa-certificates-agl/Server.pem
+++ b/recipes-connectivity/kuksa-val/kuksa-certificates-agl/Server.pem
@@ -1,29 +1,24 @@
-----BEGIN CERTIFICATE-----
-MIIE5zCCA8+gAwIBAgIUZsoE7a5zcY96l9fWgANt2eueQ+YwDQYJKoZIhvcNAQEL
-BQAwgagxCzAJBgNVBAYTAkNBMRMwEQYDVQQIDApDYWxpZm9ybmlhMRYwFAYDVQQH
-DA1TYW4gRnJhbmNpc2NvMRkwFwYDVQQKDBBMaW51eCBGb3VuZGF0aW9uMRUwEwYD
-VQQDDAxsb2NhbGhvc3QtY2ExOjA4BgkqhkiG9w0BCQEWK2FnbC1kZXYtY29tbXVu
-aXR5QGxpc3RzLmF1dG9tb3RpdmVsaW51eC5vcmcwHhcNMjMwNDI0MjIzMDIwWhcN
-MjUwNDIzMjIzMDIwWjCBojELMAkGA1UEBhMCQ0ExEzARBgNVBAgMCkNhbGlmb3Ju
-aWExFjAUBgNVBAcMDVNhbiBGcmFuY2lzY28xGTAXBgNVBAoMEExpbnV4IEZvdW5k
-YXRpb24xDzANBgNVBAMMBlNlcnZlcjE6MDgGCSqGSIb3DQEJARYrYWdsLWRldi1j
-b21tdW5pdHlAbGlzdHMuYXV0b21vdGl2ZWxpbnV4Lm9yZzCCASIwDQYJKoZIhvcN
-AQEBBQADggEPADCCAQoCggEBANxzQOh7f94RoYDjKveqXbgs1xdzrhNjrmXWX7hZ
-GB4VpDv9bbPd4lTqxuUPImNqHxh26DzvE91E5b0pQG5NguuR1fvUg7Hxjy3TNFN2
-T7kK6OiSjEtjloRBz5pd5uK3TGjBa4CDqEz+P4hvRuiRWsP5oHgygLWLwqpdq7kT
-e7hvflyehoPsHWSzimJcz2FX+M8imTMo2J5cP19t4QKyiE1FpmCRKk+rSK3jUF+v
-z/wJQA4ln3bSRZSvm4k2pHmhnpnusFVvMUQ0MryqIOSWHbjbHf1m0PCo7psT6vqA
-u61LA2ygtt7KS+OB/YWAqiXeD4mxMhV2Rm6031kJBlnxDp8CAwEAAaOCAQswggEH
-MBEGA1UdEQQKMAiCBlNlcnZlcjAdBgNVHQ4EFgQUedz2Wv71G96LFYZ6aZjLLuIr
-ZRMwgdIGA1UdIwSByjCBx6GBrqSBqzCBqDELMAkGA1UEBhMCQ0ExEzARBgNVBAgM
-CkNhbGlmb3JuaWExFjAUBgNVBAcMDVNhbiBGcmFuY2lzY28xGTAXBgNVBAoMEExp
-bnV4IEZvdW5kYXRpb24xFTATBgNVBAMMDGxvY2FsaG9zdC1jYTE6MDgGCSqGSIb3
-DQEJARYrYWdsLWRldi1jb21tdW5pdHlAbGlzdHMuYXV0b21vdGl2ZWxpbnV4Lm9y
-Z4IUXwVzT6Sucujisrq0PxlLklUZfeQwDQYJKoZIhvcNAQELBQADggEBAHHH/Vt1
-QNvlrx70cY7mgDCWD6sGXfTqa0rLUhGdO2AlZ6G99TghGn+b01Aw2RsJXAGoQdnV
-jA/HLP0gPtEhsdp6NTi5qaLcYauo2DoWtb9h4jdcOvetiagkWdap9O3ew1p6wlVN
-VBLSRemm1JeG0jy4qM0fLr/nUuS2HzUQX+UGqSAS51W15h39LmmPhCPigMwhsHEr
-ZI+V0CDziY48jKhhJsw+4dFfVMy1Y4PZwk+QlT1PhWVya9kEqT16jFgxhu4frPWr
-/zJOErH97NgBdCrnfpurT8wCrzWGRsP3WmcL/bjYjljZlYS60Zi2vImL5Be6V92d
-nJm2J21qgfOjNlw=
+MIIEBjCCAu6gAwIBAgIUeUuog3JmZGhkE0nRcATDuclsVvgwDQYJKoZIhvcNAQEL
+BQAwgasxCzAJBgNVBAYTAlVTMRYwFAYDVQQIDA1TYW4gRnJhbmNpc2NvMRMwEQYD
+VQQHDApDYWxpZm9ybmlhMRwwGgYDVQQKDBNhdXRvbW90aXZlbGludXgub3JnMRUw
+EwYDVQQDDAxsb2NhbGhvc3QtY2ExOjA4BgkqhkiG9w0BCQEWK2FnbC1kZXYtY29t
+bXVuaXR5QGxpc3RzLmF1dG9tb3RpdmVsaW51eC5vcmcwHhcNMjMwNzIwMjAzODU1
+WhcNMjcwNzE5MjAzODU1WjCBpTELMAkGA1UEBhMCVVMxFjAUBgNVBAgMDVNhbiBG
+cmFuY2lzY28xEzARBgNVBAcMCkNhbGlmb3JuaWExHDAaBgNVBAoME2F1dG9tb3Rp
+dmVsaW51eC5vcmcxDzANBgNVBAMMBlNlcnZlcjE6MDgGCSqGSIb3DQEJARYrYWds
+LWRldi1jb21tdW5pdHlAbGlzdHMuYXV0b21vdGl2ZWxpbnV4Lm9yZzCCASIwDQYJ
+KoZIhvcNAQEBBQADggEPADCCAQoCggEBAMxr5h+2nZXDFXX25SoOehJIIkpEeOSK
+0WiDB/wClHCv+BCXZCcdzaB7mLok063oqL7fW+RY6lfLcbiee/XuDvRsgxCzda/b
+LUecvMxGxULn/Gn8SgZdCT54VzsYu51Kvdq59B+46ZtGvVkL5m3UbBVX2nzaHguA
+89T3hjDeLR2LRxwp6mHuUq+8k/3mfETFKFweetGpEXLQP6UFhMGGzabNNhybPo3j
+bCbl04F6bIq08tkUeUyi5mY0DKL8VvOc2KUkvX0aa8Kc6nh4VmyQVljXj/GNtJ5E
+WwGgJLXPCK5ZoRTC4eJ9C9QdLNPl5//ZLffKTUgwiT8x+gK+C6Azw38CAwEAAaMm
+MCQwIgYDVR0RBBswGYIGU2VydmVygglsb2NhbGhvc3SHBH8AAAEwDQYJKoZIhvcN
+AQELBQADggEBAKLnUuIYKU7kX6hw2kWziAzvucZCwkKDnMK1/xqakcgfnFw+z8nu
+XSqNsXX0KNBfy0xhZ66Uc9rL37RG+smidxJxy+QmDi3c/Ooqj7DxbZwVXzstnbBp
++iqgfqjadC8Glfci7cfCnl7X4O3oQqo99BJDo7JH3S39fe98mG4mXa1WblKiWnkc
+yDtUnf7eFbFeNbVkL94HGzOtghShHokGyt9vZKyGf+szCPPWiIDldLq/CUpPFEnD
+AqUhTYBXbHZNZJHAEJ0waJqLxmytt19mAv03aaIMYUpBR0CMvjfDNn5x2Bp86v3A
+YW544bNsyHfbvK0ZqwvOaV3sIKG7Bzm2pOA=
-----END CERTIFICATE-----
diff --git a/recipes-connectivity/kuksa-val/kuksa-certificates-agl/genCertsAGL.sh b/recipes-connectivity/kuksa-val/kuksa-certificates-agl/genCertsAGL.sh
new file mode 100755
index 000000000..b078fd1b2
--- /dev/null
+++ b/recipes-connectivity/kuksa-val/kuksa-certificates-agl/genCertsAGL.sh
@@ -0,0 +1,58 @@
+#!/bin/bash
+
+
+genCAKey() {
+ openssl genrsa -out CA.key 2048
+}
+
+
+genCACert() {
+ openssl req -key CA.key -new -out CA.csr -subj "/C=US/ST=San Francisco/L=California/O=automotivelinux.org/CN=localhost-ca/emailAddress=agl-dev-community@lists.automotivelinux.org"
+ openssl x509 -signkey CA.key -in CA.csr -req -days 3650 -out CA.pem
+}
+
+genKey() {
+ openssl genrsa -out $1.key 2048
+}
+
+genCert() {
+ openssl req -new -key $1.key -out $1.csr -passin pass:"temp" -subj "/C=US/ST=San Francisco/L=California/O=automotivelinux.org/CN=$1/emailAddress=agl-dev-community@lists.automotivelinux.org"
+ openssl x509 -req -in $1.csr -extfile <(printf "subjectAltName=DNS:$1,DNS:localhost,IP:127.0.0.1") -CA CA.pem -CAkey CA.key -CAcreateserial -days 1460 -out $1.pem
+ openssl verify -CAfile CA.pem $1.pem
+}
+
+set -e
+# Check if the CA is available, else make CA certificates
+if [ -f "CA.key" ]; then
+ echo "Existing CA.key will be used"
+else
+ echo "No CA.key found, will generate new key"
+ genCAKey
+ rm -f CA.pem
+ echo ""
+fi
+
+# Check if the CA.pem is available, else generate a new CA.pem
+if [ -f "CA.pem" ]; then
+ echo "CA.pem will not be regenerated"
+else
+ echo "No CA.pem found, will generate new CA.pem"
+ genCACert
+ echo ""
+fi
+
+
+for i in Server Client;
+do
+ if [ -f $i.key ]; then
+ echo "Existing $i.key will be used"
+ else
+ echo "No $i.key found, will generate new key"
+ genKey $i
+ fi
+ echo ""
+ echo "Generating $i.pem"
+ genCert $i
+ echo ""
+done
+