var leakedConnection … type CloseWaitServerOptions … type closeWaitServer … // NewCloseWaitServer returns a new Runner. func NewCloseWaitServer() common.Runner { … } // NewOptions allocates new options structure. func (server *closeWaitServer) NewOptions() interface{ … } // Run the server-side of the test. func (server *closeWaitServer) Run(logger *log.Logger, rawOptions interface{ … } type CloseWaitClientOptions … type closeWaitClient … // NewCloseWaitClient creates a new runner func NewCloseWaitClient() common.Runner { … } // NewOptions allocates new options structure. func (client *closeWaitClient) NewOptions() interface{ … } // Run the client.m func (client *closeWaitClient) Run(logger *log.Logger, rawOptions interface{ … }