// setup initializes the application. func setup() (*net.Conn, *proto.Client) { // parse commandline arguments and create configuration. config = parseArgs() log.Printf("Connecting to %s...", config.Address) // Open connection to server. conn, err := net.Dial(config.Address, config.SSLCert, config.SSLKey) if err != nil { fmt.Fprintf(os.Stderr, "Dial: %v\n", err) os.Exit(1) } log.Println("Connection established.") // Create client protocol. client := proto.NewClient(func(p []byte) error { _, err := conn.Write(p) return err }) // Initialize plugins. err = plugin.Load(config.Profile, client) if err != nil { log.Fatal(err) } // Inform command package of our user whitelist. cmd.SetWhitelist(config.Whitelist) // Bind protocol handlers and commands. bind(client) return conn, client }
// setup initializes the application. func setup() (*net.Conn, *proto.Client) { // parse commandline arguments and create configuration. config = parseArgs() log.Printf("Connecting to %s...", config.Address) // Open connection to server. conn, err := net.Dial(config.Address, config.SSLCert, config.SSLKey) if err != nil { fmt.Fprintf(os.Stderr, "Dial: %v\n", err) os.Exit(1) } log.Println("Connection established.") // Create client protocol. client := proto.NewClient(func(p []byte) error { _, err := conn.Write(p) return err }) return conn, client }