Hi,
I am using NET+OS 7v5 and trying to receive > 8192 bytes of data via UDP.
Despite setting the socket options:
Code:
socket_optionLen = sizeof(ulSocket_option);
result = getsockopt(testSocket, SOL_SOCKET, SO_RCVBUF, (char *)&ulSocket_option, &socket_optionLen);
if (result == 0)
{
#ifdef MATRIX_IO_MESSAGES
printf("\r\nDATAPORT_IO_INIT:Socket rx buf length = %d\r\n", ulSocket_option);
#endif
ulSocket_option = 0xFFFF;
result = setsockopt(testSocket, SOL_SOCKET, SO_RCVBUF, (char *)&ulSocket_option, sizeof(ulSocket_option));
if (result == 0)
{
#ifdef MATRIX_IO_MESSAGES
printf("\r\nDATAPORT_IO_INIT:Set socket rx buffer to %d\r\n", ulSocket_option);
#endif
result = getsockopt(testSocket, SOL_SOCKET, SO_RCVBUF, (char *)&ulSocket_option, &socket_optionLen);
if (result == 0)
{
#ifdef MATRIX_IO_MESSAGES
printf("\r\nDATAPORT_IO_INIT:Socket rx buf length = %d\r\n", ulSocket_option);
#endif
}
}
If I send > 8192 to the device, recvfrom() never returns with a non-zero value.
Is there a header file that I also have to modify?
Any suggestions appreciated!
Regards,
David