i had a look at the protocol, and i have a few questions about the strings. for example this struct:
Code: Select all
struct CITP_PINF_PLoc
{
CITP_PINF_Header CITPPINFHeader;
ucs1Type[];
ucs1Name[];
ucs1State[];
};
It carries three strings with variable length in it. The spec says the ucs1 are
but in c99 open arrays ( they call it "flexible array member" ) must be the last element of a struct.Open arrays of ucs1 or ucs2 are null terminated strings.
So - to avoid massively shooting down other lighting consoles

Code: Select all
Type = "LightingConsole" (16 incl. \0)
Name = "MyCoolName" (11 incl. \0)
State = "Idle" (5 incl. \0)
How is the struct supposed to be in layout?
Do the strings have a specified size, like eg 256?
Code: Select all
sizeof(CITPPINFHeader)+256+256+256
Or a dynamic layout like
Code: Select all
sizeof(CITPPINFHeader)+16+11+5
and if so, are the strings concatenated or does the parser expect
three pointers with the strings appended to the end?
Best regards + thank you very much,
Heiner