brlapi_protocol.h(3)
π brlapi_protocol.h β types and constants for BrlAPI's protocol π
okay bestie, welcome to brlapi_protocol.h, the third page of the Library Functions Manual π this is the header file where BrlAPI keeps all the little types and constants that make its protocol go brrr. it's giving backstage-pass energy, no cap π
β¨ SYNOPSIS β¨
#include 'brlapi.h'
#include <inttypes.h>
#include <unistd.h>
#include <pthread.h>
πΈ Data Structures
struct brlapi_header_tstruct brlapi_versionPacket_tstruct brlapi_authClientPacket_tstruct brlapi_authServerPacket_tstruct brlapi_errorPacket_tstruct brlapi_getDriverSpecificModePacket_tstruct brlapi_writeArgumentsPacket_tstruct brlapi_paramValuePacket_tstruct brlapi_paramRequestPacket_tunion brlapi_packet_t
π¦ Macros
literally the whole alphabet of packet vibes, here we go:
#define UINT32_MAX (4294967295U)#define BRLAPI_PROTOCOL_VERSION ((uint32_t) 8)β the communication protocol version, bestie, remember it π#define BRLAPI_MAXPACKETSIZE 4096#define BRLAPI_PACKET_VERSION 'v'#define BRLAPI_PACKET_AUTH 'a'#define BRLAPI_PACKET_GETDRIVERNAME 'n'#define BRLAPI_PACKET_GETMODELID 'd'#define BRLAPI_PACKET_GETDISPLAYSIZE 's'#define BRLAPI_PACKET_ENTERTTYMODE 't'#define BRLAPI_PACKET_SETFOCUS 'F'#define BRLAPI_PACKET_LEAVETTYMODE 'L'#define BRLAPI_PACKET_KEY 'k'#define BRLAPI_PACKET_IGNOREKEYRANGES 'm'#define BRLAPI_PACKET_ACCEPTKEYRANGES 'u'#define BRLAPI_PACKET_WRITE 'w'#define BRLAPI_PACKET_ENTERRAWMODE '*'#define BRLAPI_PACKET_LEAVERAWMODE '#'#define BRLAPI_PACKET_PACKET 'p'#define BRLAPI_PACKET_ACK 'A'#define BRLAPI_PACKET_ERROR 'e'#define BRLAPI_PACKET_EXCEPTION 'E'#define BRLAPI_PACKET_SUSPENDDRIVER 'S'#define BRLAPI_PACKET_RESUMEDRIVER 'R'#define BRLAPI_PACKET_SYNCHRONIZE 'Z'#define BRLAPI_PACKET_PARAM_VALUE (('P'<<8) + 'V')#define BRLAPI_PACKET_PARAM_REQUEST (('P'<<8) + 'R')#define BRLAPI_PACKET_PARAM_UPDATE (('P'<<8) + 'U')#define BRLAPI_DEVICE_MAGIC (0xdeadbeefL)#define BRLAPI_HEADERSIZE sizeof(brlapi_header_t)#define BRLAPI_AUTH_NONE 'N'#define BRLAPI_AUTH_KEY 'K'#define BRLAPI_AUTH_CRED 'C'#define BRLAPI_WF_DISPLAYNUMBER 0X01#define BRLAPI_WF_REGION 0X02#define BRLAPI_WF_TEXT 0X04#define BRLAPI_WF_ATTR_AND 0X08#define BRLAPI_WF_ATTR_OR 0X10#define BRLAPI_WF_CURSOR 0X20#define BRLAPI_WF_CHARSET 0X40#define BRLAPI_PVF_GLOBAL 0X01β value is the global value β¨#define BRLAPI_MAXPARAMSIZE (BRLAPI_MAXPACKETSIZE - (sizeof(uint32_t) + sizeof(brlapi_param_t) + 2*sizeof(uint32_t)))#define BRLAPI_PARAMF_GET 0X100β get current parameter value π«Ά#define BRLAPI_PARAMF_SUBSCRIBE 0X200β subscribe to parameter updates π«Ά#define BRLAPI_PARAMF_UNSUBSCRIBE 0X400β unsubscribe from parameter updates π«Ά
π₯ Functions
the whole friend group, exact signatures, don't @ me:
ssize_t brlapi_writePacket (brlapi_fileDescriptor fd, brlapi_packetType_t type, const void *buf, size_t size)ssize_t brlapi_readPacketHeader (brlapi_fileDescriptor fd, brlapi_packetType_t *packetType)ssize_t brlapi_readPacketContent (brlapi_fileDescriptor fd, size_t packetSize, void *buf, size_t bufSize)ssize_t brlapi_readPacket (brlapi_fileDescriptor fd, brlapi_packetType_t *type, void *buf, size_t size)
π Variables
pthread_mutex_t brlapi_fd_mutex
π§ Macro Definition Documentation π§
π #define UINT32_MAX (4294967295U)
that's it. that's the one macro that gets its own little spotlight section. iconic behaviour honestly β
π Author π
Generated automatically by Doxygen for BrlAPI from the source code. not me getting emotional over an autogenerated credit π
ngl bestie, this whole page is auto-generated, so if something looks weird it's the Doxygen talking, not me π
okay that's the whole page, mwah π
this was BrlAPI Version 0.8 of brlapi_protocol.h(3), go forth and packet, periodt πβ¨π
π¦ where this page comes from
- centos-stream 10: brlapi-devel 0.8.5-16.el10 Β· LGPL-2.0-or-later AND LGPL-2.1-or-later AND GPL-2.0-or-later
- fedora 43: brlapi-devel 0.8.7-4.fc43 Β· LGPL-2.0-or-later AND LGPL-2.1-or-later AND GPL-2.0-or-later
- fedora 43: brlapi-devel 0.8.7-4.fc43 Β· LGPL-2.0-or-later AND LGPL-2.1-or-later AND GPL-2.0-or-later
- fedora 44: brlapi-devel 0.8.7-8.fc44 Β· LGPL-2.0-or-later AND LGPL-2.1-or-later AND GPL-2.0-or-later
- fedora 44: brlapi-devel 0.8.7-8.fc44 Β· LGPL-2.0-or-later AND LGPL-2.1-or-later AND GPL-2.0-or-later
- opensuse-leap 16.0: brlapi-devel 6.8-160000.2.2 Β· LGPL-2.1-or-later
- opensuse-leap 16.0: brlapi-devel 6.8-160000.2.2 Β· LGPL-2.1-or-later
- opensuse-leap 16.0: brlapi-devel 6.8-160000.2.2 Β· LGPL-2.1-or-later
- opensuse-leap 16.0: brlapi-devel 6.8-160000.2.2 Β· LGPL-2.1-or-later
- ubuntu resolute: libbrlapi-dev 6.7-1ubuntu6
- ubuntu stonking: libbrlapi-dev 6.9.1+repack-1ubuntu1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms