DeterministicESPAsyncWebServer v6.27.1
Zero-allocation, bounded-execution async HTTP server for ESP32
Loading...
Searching...
No Matches
SshPacketState Struct Reference

Per-connection SSH binary packet state. More...

#include <ssh_packet.h>

Public Attributes

uint32_t seq_no_send
 Outgoing sequence number (incremented per packet).
 
uint32_t seq_no_recv
 Incoming sequence number (incremented per packet).
 
bool kex_active
 True while KEX is in progress (no user data).
 
bool enc_out
 True once we have sent our NEWKEYS (outbound cipher/MAC active).
 
bool enc_in
 True once we have received the peer's NEWKEYS (inbound cipher/MAC active).
 
uint8_t rx_buf [SSH_PKT_BUF_SIZE]
 Raw receive buffer (from transport).
 
size_t rx_len
 Bytes currently in rx_buf.
 

Detailed Description

Per-connection SSH binary packet state.

Allocated in ssh_pool[] (BSS); one entry per SSH connection slot. Key material is in ssh_keys[] - a separate BSS symbol to prevent linear overflow from packet buffers into key material.

Definition at line 144 of file ssh_packet.h.

Member Data Documentation

◆ seq_no_send

uint32_t SshPacketState::seq_no_send

Outgoing sequence number (incremented per packet).

Definition at line 146 of file ssh_packet.h.

Referenced by ssh_pkt_send(), and ssh_rekey_needed().

◆ seq_no_recv

uint32_t SshPacketState::seq_no_recv

Incoming sequence number (incremented per packet).

Definition at line 147 of file ssh_packet.h.

Referenced by ssh_pkt_recv(), ssh_rekey_needed(), and ssh_server_dispatch().

◆ kex_active

bool SshPacketState::kex_active

True while KEX is in progress (no user data).

Definition at line 148 of file ssh_packet.h.

Referenced by ssh_conn_poll(), ssh_newkeys_complete(), and ssh_pkt_init().

◆ enc_out

bool SshPacketState::enc_out

True once we have sent our NEWKEYS (outbound cipher/MAC active).

Definition at line 153 of file ssh_packet.h.

Referenced by ssh_newkeys_sent(), ssh_pkt_init(), and ssh_pkt_send().

◆ enc_in

bool SshPacketState::enc_in

True once we have received the peer's NEWKEYS (inbound cipher/MAC active).

Definition at line 154 of file ssh_packet.h.

Referenced by ssh_newkeys_complete(), ssh_pkt_init(), and ssh_pkt_recv().

◆ rx_buf

uint8_t SshPacketState::rx_buf[SSH_PKT_BUF_SIZE]

Raw receive buffer (from transport).

Definition at line 157 of file ssh_packet.h.

Referenced by ssh_pkt_recv().

◆ rx_len

size_t SshPacketState::rx_len

Bytes currently in rx_buf.

Definition at line 158 of file ssh_packet.h.

Referenced by ssh_pkt_recv().


The documentation for this struct was generated from the following file: