summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDimitri Sokolyuk <demon@dim13.org>2015-09-05 18:42:58 +0200
committerDimitri Sokolyuk <demon@dim13.org>2015-09-05 18:42:58 +0200
commit0d83a36e94b6286a7004de7bfa411c5e064a30e2 (patch)
treee251551b363e44141ecbe8619f9f5fedd623d406
parente4e0d7fbfdbf3ba35c806ad7bf1776b1c04d2637 (diff)
Add website tls.Dial
-rw-r--r--web/main.go58
1 files changed, 58 insertions, 0 deletions
diff --git a/web/main.go b/web/main.go
new file mode 100644
index 0000000..68dac96
--- /dev/null
+++ b/web/main.go
@@ -0,0 +1,58 @@
+package main
+
+import (
+ "crypto/tls"
+ "crypto/x509"
+ "log"
+)
+
+const rootCA = `
+-----BEGIN CERTIFICATE-----
+MIIFGzCCAwOgAwIBAgIIMAHyTIhy7wYwDQYJKoZIhvcNAQELBQAwGzEZMBcGA1UE
+AwwQQlRDIFBpw7FhdGEgVGVhbTAeFw0xNTA3MDMxNTIwMjNaFw0yNTA2MzAxNTIw
+MjNaMBsxGTAXBgNVBAMMEEJUQyBQacOxYXRhIFRlYW0wggIiMA0GCSqGSIb3DQEB
+AQUAA4ICDwAwggIKAoICAQCdFUbuhY6Mss23E0E1606NgP41FlmU3j4XSaRvUlUm
+ne+RjcVfXy+2e++KDi0EQp/ZgvlbRPvzTUjwX4MV0baxQaVXx0gSPFpQPrPmyD3z
+66KRtFCNnhlVmxiXNE598aMwwTv4akMZlF4N0nPSWE5udzLgeqajyGBfTMxYr+LQ
+SgOKVZWxrOKdBvll+Nenpog9R2b2qK/FBzzFBmCyf2tve53C2e4vwPXloPk40Xok
+QLIC2VQbdQzb9Nc+MgQZJFVrMdd9yqJoTyWVKwjUxQZtj6C7ZzyC9FctOzMoaRbK
+CcgfuwfCqcm9jtbVOnGUXy+YfFgFFcvWqVYArF+FV6JszIoQIPMWzJknoadzKbFT
+D+XnbobnrO1lWHnzkI/m6A/thMr/bJuoeW75YP5cJJuEiXiIzvqrpOkHQTfgEBdR
+5aiyk7Oy/zfoS9gN5+jbmg+/zdSwsnhwp4skvVpKMiDRMw1SUK7z1Dv4KEHZtYuO
+upl9uqu1UF5eICdOJG6+kEzVrKbaXIkmUFjI+wIVJdJmulA+YiDw4Wpdr7lDNBmM
++UMwYhJPL/7U0E4spJAosmKSoUrf8bmlXzwmpkTm2adriPFoE5P3fnrlg26VpNpG
+faD3Sz170vcOUMJ9MGXMAzv3h3HnjzsdNMzTdicF8GlRcDB8uNleMLeMAnkQwYrX
+RQIDAQABo2MwYTAfBgNVHSMEGDAWgBQJ/2W6E0N3XEFSdab0k8TFBIAzCTAdBgNV
+HQ4EFgQUCf9luhNDd1xBUnWm9JPExQSAMwkwDwYDVR0TAQH/BAUwAwEB/zAOBgNV
+HQ8BAf8EBAMCAcYwDQYJKoZIhvcNAQELBQADggIBAFbVC4DmRBfo0Ci12XPeyvRP
+e2SlptzQ7Hznfr+NEyRFHYlNc2ITHCSGz/dg9BJlMxU/+qtevS774WmEcNAdo167
+dagVo78N46jKLTLiZNMflikuV93UcPDtUVLF7mSnSe3yYJFora0krKVPxSuE/uC2
+yka3e1waduC1zJ0OP/Rk98UywzG/Buoops5yi0ZP018lErfa6RWY87OHOPy1mGiN
+3EPKEnw3klxV6QCP2OSHKbzhpxmk11m17Vkrpf37QspBMS2mFRVC+u6Qj3mhxg8g
+MVQtc3PZwi6ZaK9wCzuGJ/oVAh+GqoHoNH00w0SktM2uhcwUkECx5OHTzwY5q6uu
+BNUFs/ulwEXq4VOgcYPgP4d/4j1LscHqmfLMHMWxrsvpLkKju+oNhvGG87C2mMoe
+fa+vaPCvjNJXBaCORfJrVY6kBRtjUS+GOzp6Kutc1bMvEjtw1fYbjKdarRH/dRVn
+XkQjk9y6L34dDi8LAhb3c7hfPdU9inOw3avAK+gru3oZXBNDH/M4sjJOXQAmlmaC
+m6ws7AHe49OPjupE6HzjFId8RWSC3sUdDWs6e/LvFzWorpWhJHGj/iR5Fk7QAQQE
+3vO8MTOTl6y67/FxZrk9wPlFCRUpnx240RhoEpfaDEHHCvAqpVDLTiepj707Udr0
+uWdtwtlBtMGF1jgGKIrO
+-----END CERTIFICATE-----
+`
+
+func main() {
+ roots := x509.NewCertPool()
+ if ok := roots.AppendCertsFromPEM([]byte(rootCA)); !ok {
+ log.Fatal("failed to parse root certificate")
+ }
+
+ conn, err := tls.Dial("tcp", "ownme.ipredator.se:443",
+ &tls.Config{RootCAs: roots})
+ if err != nil {
+ log.Fatal(err)
+ }
+ defer conn.Close()
+
+ if err := conn.Handshake(); err != nil {
+ log.Fatal(err)
+ }
+}