ascii-chat
Binary v0.15.83-53-gb711d8720
Library lib/v0.3.2-701-gb711d8720
Video chat in your terminal
Loading...
Searching...
No Matches
negotiation.h
Go to the documentation of this file.
1#pragma once
4
6
24
26 size_t);
27
33 network_protocol_t protocol);
Common declarations and data structures for cryptographic handshake.
unsigned char uint8_t
Definition common.h:60
asciichat_error_t
Error and exit codes - unified status values (0-255).
Definition error_codes.h:44
packet_type_t
Network protocol packet type enumeration.
Definition packet.h:301
struct acip_transport acip_transport_t
Forward declaration of ACIP transport.
Definition host.h:506
Transport abstraction layer for ACIP protocol.
network_protocol_t
Definition negotiation.h:5
@ NETWORK_PROTOCOL_MEDIA
Definition negotiation.h:5
@ NETWORK_PROTOCOL_DISCOVERY
Definition negotiation.h:5
asciichat_error_t network_client_negotiate(acip_transport_t *, crypto_handshake_context_t *, uint8_t mode, network_protocol_t protocol)
asciichat_error_t network_negotiation_receive(network_negotiation_t *, acip_transport_t *, packet_type_t, const void *, size_t)
Cryptographic handshake context structure.
When code needs to work with network negotiation, it keeps protocol, handshake, identity_keys,...
Definition negotiation.h:12
const private_key_t * identity_keys
Definition negotiation.h:15
const char * password
Definition negotiation.h:19
crypto_handshake_context_t * handshake
Definition negotiation.h:14
network_protocol_t protocol
Definition negotiation.h:13
public_key_t * whitelist
Definition negotiation.h:17
Private identity-key material used for server authentication and signing.
Definition key_types.h:97
The normalized public identity used by ascii-chat's crypto and key-management code.
Definition key_types.h:72