Я получил структуру для клиента и сервера следующим образом:
{
char type;
int payloadLen;
char fileName[50];
int fileIndex;
int blockOffset;
int blockLen;
char streamingData[MAX];
int h264fileLayer;
}
в клиенте я получаю данные вроде
memset(&data_recevied, 0, sizeof(data_received);
recv(sockfd, (char *)&data_received, sizeof(data_received), 0);
Я использую это для получения файла, отправленного с сервера, все работаетхорошо для первых ведущих пар файлов, затем он сломался, я проверил структуру, когда она сломалась, кажется, что полученная структура - беспорядок, а fileIndex слишком велик, однако клиентская программа работает в Windows с winsock lib, нетсломан на всех.
Я думаю, что это как-то связано с кроссплатформенностью, может быть, есть кое-что, что я пропустил, действительно мог бы использовать помощь здесь, спасибо