in src/mqtt_codec.c [196:224]
static int constructConnectVariableHeader(BUFFER_HANDLE ctrlPacket, const MQTT_CLIENT_OPTIONS* mqttOptions, STRING_HANDLE trace_log)
{
int result = 0;
if (BUFFER_enlarge(ctrlPacket, CONNECT_VARIABLE_HEADER_SIZE) != 0)
{
result = MU_FAILURE;
}
else
{
uint8_t* iterator = BUFFER_u_char(ctrlPacket);
if (iterator == NULL)
{
result = MU_FAILURE;
}
else
{
if (trace_log != NULL)
{
STRING_sprintf(trace_log, " | VER: %d | KEEPALIVE: %d | FLAGS:", PROTOCOL_NUMBER, mqttOptions->keepAliveInterval);
}
byteutil_writeUTF(&iterator, "MQTT", 4);
byteutil_writeByte(&iterator, PROTOCOL_NUMBER);
byteutil_writeByte(&iterator, 0); // Flags will be entered later
byteutil_writeInt(&iterator, mqttOptions->keepAliveInterval);
result = 0;
}
}
return result;
}