ascii-chat
Binary v0.15.83-53-gb711d8720
Library lib/v0.3.2-701-gb711d8720
Video chat in your terminal
Loading...
Searching...
No Matches
Buffer Sizes

Standard buffer size constants. More...

Files

file  buffer_sizes.h
 Common buffer size definitions.

Macros

#define UTF8_MAX_BYTES   4
#define UTF8_BUFFER_SIZE   (UTF8_MAX_BYTES + 1)
#define BUFFER_SIZE_SMALL   256
 Small buffer size (256 bytes).
#define BUFFER_SIZE_MEDIUM   512
 Medium buffer size (512 bytes).
#define BUFFER_SIZE_LARGE   1024
 Large buffer size (1024 bytes).
#define BUFFER_SIZE_XLARGE   2048
 Extra large buffer size (2048 bytes).
#define BUFFER_SIZE_XXLARGE   4096
 Extra extra large buffer size (4096 bytes).
#define BUFFER_SIZE_XXXLARGE   8192
 Extra extra extra large buffer size (8192 bytes).
#define BUFFER_SIZE_HUGE   16384
 Huge buffer size (16kb).
#define BYTES_PER_RGB_PIXEL   3
 Bytes per pixel in RGB24 format (red + green + blue).
#define IMAGE_FRAME_HEADER_SIZE_LEGACY   8
 Legacy image frame header size (width:4 + height:4).
#define IMAGE_FRAME_HEADER_SIZE_NEW   16
 New image frame header size (width:4 + height:4 + compressed:4 + size:4).
#define MAX_FRAME_WIDTH   1920
 Maximum reasonable frame width (prevents memory exhaustion).
#define MAX_FRAME_HEIGHT   1080
 Maximum reasonable frame height (prevents memory exhaustion).
#define MAX_FRAME_PIXELS   (MAX_FRAME_WIDTH * MAX_FRAME_HEIGHT)
 Maximum total frame pixels (width * height).
#define MAX_FRAME_RGB_SIZE   (MAX_FRAME_PIXELS * BYTES_PER_RGB_PIXEL)
 Maximum RGB buffer size (MAX_FRAME_PIXELS * BYTES_PER_RGB_PIXEL).
#define MAX_FRAME_BUFFER_SIZE   (2 * 1024 * 1024)
 Maximum frame buffer size including headers and compression.

Detailed Description

Standard buffer size constants.

Macro Definition Documentation

◆ BUFFER_SIZE_HUGE

#define BUFFER_SIZE_HUGE   16384

#include <include/ascii-chat/common/buffer_sizes.h>

Huge buffer size (16kb).

Used for huge buffers like stack traces and other system messages.

Definition at line 80 of file buffer_sizes.h.

◆ BUFFER_SIZE_LARGE

#define BUFFER_SIZE_LARGE   1024

#include <include/ascii-chat/common/buffer_sizes.h>

Large buffer size (1024 bytes).

Used for longer strings, full paths, and larger temporary buffers.

Definition at line 44 of file buffer_sizes.h.

Referenced by check_gpg_key_expiry(), gpg_get_public_key(), gpg_verify_signature_with_binary(), https_get(), parse_keys_from_file(), and parse_public_key().

◆ BUFFER_SIZE_MEDIUM

◆ BUFFER_SIZE_SMALL

◆ BUFFER_SIZE_XLARGE

#define BUFFER_SIZE_XLARGE   2048

#include <include/ascii-chat/common/buffer_sizes.h>

Extra large buffer size (2048 bytes).

Used for very long strings, multiple paths, and large temporary buffers.

Definition at line 53 of file buffer_sizes.h.

Referenced by check_known_host_no_identity(), check_known_host_with_key(), gpg_get_public_key(), and remove_known_host().

◆ BUFFER_SIZE_XXLARGE

#define BUFFER_SIZE_XXLARGE   4096

#include <include/ascii-chat/common/buffer_sizes.h>

Extra extra large buffer size (4096 bytes).

Used for maximum-length paths and very large temporary buffers.

Definition at line 62 of file buffer_sizes.h.

Referenced by ssh_agent_add_key(), and ssh_agent_sign().

◆ BUFFER_SIZE_XXXLARGE

#define BUFFER_SIZE_XXXLARGE   8192

#include <include/ascii-chat/common/buffer_sizes.h>

Extra extra extra large buffer size (8192 bytes).

Used for extremely large buffers like exception messages and stack traces.

Definition at line 71 of file buffer_sizes.h.

Referenced by gpg_get_public_key(), and ssh_agent_has_key().

◆ BYTES_PER_RGB_PIXEL

#define BYTES_PER_RGB_PIXEL   3

#include <include/ascii-chat/common/buffer_sizes.h>

Bytes per pixel in RGB24 format (red + green + blue).

Definition at line 91 of file buffer_sizes.h.

◆ IMAGE_FRAME_HEADER_SIZE_LEGACY

#define IMAGE_FRAME_HEADER_SIZE_LEGACY   8

#include <include/ascii-chat/common/buffer_sizes.h>

Legacy image frame header size (width:4 + height:4).

Used for backward compatibility with older frame format.

Definition at line 100 of file buffer_sizes.h.

◆ IMAGE_FRAME_HEADER_SIZE_NEW

#define IMAGE_FRAME_HEADER_SIZE_NEW   16

#include <include/ascii-chat/common/buffer_sizes.h>

New image frame header size (width:4 + height:4 + compressed:4 + size:4).

Used for new compressed frame format with compression flag and data size.

Definition at line 109 of file buffer_sizes.h.

◆ MAX_FRAME_BUFFER_SIZE

#define MAX_FRAME_BUFFER_SIZE   (2 * 1024 * 1024)

#include <include/ascii-chat/common/buffer_sizes.h>

Maximum frame buffer size including headers and compression.

Used as a practical limit to prevent memory exhaustion from oversized frames. This is larger than typical compressed frames but smaller than uncompressed RGB.

Definition at line 147 of file buffer_sizes.h.

Referenced by handle_image_frame_packet(), simple_frame_swap_create(), simple_frame_swap_update(), and video_frame_buffer_create().

◆ MAX_FRAME_HEIGHT

#define MAX_FRAME_HEIGHT   1080

#include <include/ascii-chat/common/buffer_sizes.h>

Maximum reasonable frame height (prevents memory exhaustion).

Definition at line 123 of file buffer_sizes.h.

◆ MAX_FRAME_PIXELS

#define MAX_FRAME_PIXELS   (MAX_FRAME_WIDTH * MAX_FRAME_HEIGHT)

#include <include/ascii-chat/common/buffer_sizes.h>

Maximum total frame pixels (width * height).

Definition at line 130 of file buffer_sizes.h.

◆ MAX_FRAME_RGB_SIZE

#define MAX_FRAME_RGB_SIZE   (MAX_FRAME_PIXELS * BYTES_PER_RGB_PIXEL)

#include <include/ascii-chat/common/buffer_sizes.h>

Maximum RGB buffer size (MAX_FRAME_PIXELS * BYTES_PER_RGB_PIXEL).

Definition at line 137 of file buffer_sizes.h.

◆ MAX_FRAME_WIDTH

#define MAX_FRAME_WIDTH   1920

#include <include/ascii-chat/common/buffer_sizes.h>

Maximum reasonable frame width (prevents memory exhaustion).

Definition at line 116 of file buffer_sizes.h.

◆ UTF8_BUFFER_SIZE

◆ UTF8_MAX_BYTES

#define UTF8_MAX_BYTES   4

#include <include/ascii-chat/common/buffer_sizes.h>

Unicode scalar encoding storage; text capacity includes NUL.

Definition at line 16 of file buffer_sizes.h.