diff --git a/.gitignore b/.gitignore index 76c8c63..9e2c193 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1 @@ cli/cli -webservice/webservice diff --git a/testsuite/certificates.go b/testsuite/certificates.go new file mode 100644 index 0000000..f7ab23e --- /dev/null +++ b/testsuite/certificates.go @@ -0,0 +1,50 @@ +package testsuite + +import ( + "fmt" + "github.com/nemunaire/eyespot" + "github.com/spacemonkeygo/openssl" +) + +type Certificates struct {} + +func (Certificates) GetTestDescription() string { + return "Test the certificate of the remote host." +} + +func (test Certificates) Run(protocol string, host string) (map[string]eyespot.Result, error) { + var results = map[string]eyespot.Result{} + + ctx, err := openssl.NewCtx() + if err != nil { + return results, err + } + + conn, err := openssl.Dial(protocol, host, ctx, openssl.InsecureSkipHostVerification) + if err != nil { + return results, err + } + defer conn.Close(); + +// if err := conn.Handshake(); err != nil { +// return err +// } + + cert, err := conn.PeerCertificate() + + if err != nil { + return results, err + } + + nm, err := cert.GetIssuerName() + + if err != nil { + return results, err + } + + if str, ok := nm.GetEntry(13); ok != false { + fmt.Printf(str) + } + + return results, nil +} diff --git a/webservice/main.go b/webservice/main.go deleted file mode 100644 index c413ec7..0000000 --- a/webservice/main.go +++ /dev/null @@ -1,20 +0,0 @@ -package main - -import ( - "flag" - "fmt" - "log" - "net/http" -) - -func main() { - var port = flag.Int("port", 8080, "Listening port") - flag.Parse() - - log.Println("Registering handlers...") - mux := http.NewServeMux() - http.HandleFunc("/", mux.ServeHTTP) - - log.Println(fmt.Sprintf("Ready, listening on port %d", *port)) - http.ListenAndServe(fmt.Sprintf(":%d", *port), nil) -}