コード例 #1
0
ファイル: conn.go プロジェクト: johnsonz/openssl
func (c *Conn) handshake() func() error {
	c.mtx.Lock()
	defer c.mtx.Unlock()
	if c.is_shutdown {
		return func() error { return io.ErrUnexpectedEOF }
	}
	runtime.LockOSThread()
	defer runtime.UnlockOSThread()
	rv, errno := C.SSL_do_handshake(c.ssl)
	if rv > 0 {
		return nil
	}
	return c.getErrorHandler(rv, errno)
}
コード例 #2
0
ファイル: ssl.go プロジェクト: partkyle/gossl
func (self *SSL) Handshake() error {
	ret := C.SSL_do_handshake(self.SSL)
	return self.getError(ret)
}