ELinks 0.18.0
itrm_in Struct Reference

Things coming into an itrm, whether from the terminal or from the master. More...

#include <itrm.h>

Collaboration diagram for itrm_in:

Data Fields

int std
 A file descriptor for the standard input.
 
int sock
 In a slave process, a file descriptor for a socket from which it reads data sent by the master process.
 
int ctl
 A file descriptor for controlling the standard input.
 
struct itrm_queue queue
 Bytes that have been received from std but not yet converted to events.
 

Detailed Description

Things coming into an itrm, whether from the terminal or from the master.


Field Documentation

◆ ctl

int itrm_in::ctl

A file descriptor for controlling the standard input.

This is always the terminal device itself, thus the same as std in some ports. ELinks doesn't read or write with this file descriptor; it only does things like tcsetattr().

◆ queue

struct itrm_queue itrm_in::queue

Bytes that have been received from std but not yet converted to events.

itrm_queue.data is allocated for ITRM_IN_QUEUE_SIZE bytes and never resized. The itrm layer cannot parse control sequences longer than that. Anything that modifies itrm_queue.len should also call unhandle_itrm_stdin() if the queue becomes full, or handle_itrm_stdin() if the queue stops being full. Those functions are internal to kbd.c.

◆ sock

int itrm_in::sock

In a slave process, a file descriptor for a socket from which it reads data sent by the master process.

The other end of the socket connection is terminal.fdout in the master process. The format of these data is almost the same as could be sent to the terminal (via itrm_out.std), but there are special commands that begin with a null byte.

In the master process, sock is the same as itrm_out.std, but nothing actually uses it.

◆ std

int itrm_in::std

A file descriptor for the standard input.

In some ports, this is the terminal device itself; in others, this is a pipe from an input thread. In principle, the data format depends on the terminal.


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