rpc

package
v0.0.0-...-7f4cb87 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 22, 2021 License: AGPL-3.0 Imports: 6 Imported by: 0

Documentation

Overview

Copyright (c) 2017 Cossack Labs Limited

This file is a part of Hermes-core.

Hermes-core is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

Hermes-core is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License along with Hermes-core. If not, see <http://www.gnu.org/licenses/>.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type HermesTransport

type HermesTransport struct {
	// contains filtered or unexported fields
}

func NewSecureTransport

func NewSecureTransport(userId, privateKey, publicKeyId, publicKey []byte, transport Transport, isServer bool) (*HermesTransport, error)

NewSecureTransport return *HermesTransport that wrap transport into hm_rpc_transport_t and secure session using hermes-core

func NewTransport

func NewTransport(transport Transport) (*HermesTransport, error)

NewTransport return new HermesTransport that wraps transport into hm_rpc_transport_t

func (*HermesTransport) Close

func (transport *HermesTransport) Close() error

func (*HermesTransport) GetHermesTransport

func (transport *HermesTransport) GetHermesTransport() *C.hm_rpc_transport_t

GetHermesTransport return C hermes struct hm_rpc_transport_t that wrapped

type RPCMidHermes

type RPCMidHermes struct {
	// contains filtered or unexported fields
}

func NewRPCMidHermes

func NewRPCMidHermes(
	id []byte, private_key []byte,
	credential_store_transport *HermesTransport,
	data_store_transport *HermesTransport,
	key_store_transport *HermesTransport) (*RPCMidHermes, error)

func (*RPCMidHermes) Close

func (mh *RPCMidHermes) Close() error

Close destroy midhermes and close all transports, return first error occurred

func (*RPCMidHermes) GetMidHermes

func (mh *RPCMidHermes) GetMidHermes() unsafe.Pointer

type Transport

type Transport interface {
	Write([]byte) error
	Read([]byte) error
	Close() error
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL