Skip to content

Instantly share code, notes, and snippets.

@esromneb
Created August 30, 2013 23:29
Show Gist options
  • Save esromneb/6395247 to your computer and use it in GitHub Desktop.
Save esromneb/6395247 to your computer and use it in GitHub Desktop.
Generate a "websocket style" length header
// only supports messages up to 65536 characters long
// takes a first param of byte_count and generates the correct "websocket style" header
// *header_len is set to the number of bytes used in header[]
void build_message_header(const size_t byte_count, char header[3], size_t* header_len)
{
size_t len = byte_count;
if( len < 126 )
{
header[0] = len & 0xff;
*header_len = 1;
}
else if( len < 65536 )
{
header[0] = 126;
header[1] = (len>>8) & 0xff;
header[2] = len & 0xff;
*header_len = 3;
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment