I am using the following C# code:
netStream = new SslStream(client.GetStream(), false);
var cert = new X509Certificate2("mycert.pfx", "123456");
netStream.AuthenticateAsServer(cert);
What would be the equivalent of X509 server authentication (if the server is using TCP protocol) in Golang?
This is the Golang code I'm currently using:
func main() {
l, err := net.Listen("tcp", ":42127")
if err != nil {
fmt.Println("Error listening:", err.Error())
os.Exit(1)
}
defer l.Close()
for {
conn, err := l.Accept()
if err != nil {
fmt.Println("Error accepting: ", err.Error())
os.Exit(1)
}
go handleRequest(conn)
}
}
func handleRequest(conn net.Conn) {
buf := make([]byte, 1024 * 8)
reqLen, err := conn.Read(buf)
if err != nil {
fmt.Println("Error reading:", err.Error())
}
conn.Write([]byte("Message received."))
conn.Close()
}