예제 #1
0
size_t TCPSocket::writeStream(const byte *rgbWrite, size_t cbWrite, IPSTATUS * pStatus)
{
    // make sure we are Connected
    // this will also run the stack
    if(TCPIsEstablished(&_socket, pStatus))
    {
        return(TCPWrite(&_socket, rgbWrite, cbWrite, pStatus));
    }

    return(0);
}
예제 #2
0
파일: FTPlib.c 프로젝트: Hotfirenet/Tuto
/**
 * Writes an array of characters on the specified socket.
 * \param ftpsockwr - The socket to which data is to be written (it's the handle returned by the command TCPClientOpen or TCPServerOpen).
 * \param ftpstrtowr - Pointer to the array of characters to be written.
 * \param ftpwlen - The number of characters to write.
 * \return The number of bytes written to the socket. If less than ftpwlen, the buffer became full or the socket is not conected.
 */
WORD FTPWrite(TCP_SOCKET ftpsockwr , BYTE* ftpstrtowr , int ftpwlen)
{
	return TCPWrite(ftpsockwr , (char *)ftpstrtowr , ftpwlen);
}
예제 #3
0
BOOL XivelyPut(TCP_SOCKET MySocket, char* tmpString)
{
	char resString[250];
	BOOL result;
	int i;
	static ROM char GoodHTTPResponse[] = "{\"status\":200";

	#if defined(STACK_USE_UART)
	UARTWrite(1,tmpString);
	#endif
	// Send the blob
	TCPWrite( MySocket, tmpString, (int)strlen(tmpString) );
	#if defined(STACK_USE_UART)
	UARTWrite(1,"Data sent, Waiting response.\r\n");
	#endif
	vTaskDelay(500);
	
	// Make sure there are enough chars to read
	i = 10;
	while (i>0 && (TCPRxLen(MySocket) < 16))
	{
		//vTaskDelay( xDelay(500) );
		vTaskDelay(500);

		i--;
	}
		if(i!=0) 
	{
		// Get the response from the server
		TCPRead( MySocket, resString, 250 );
		#if defined(STACK_USE_UART)
		UARTWrite(1,resString);
		UARTWrite(1,"\r\n");
		#endif
		if (strstr( resString, GoodHTTPResponse) == NULL)
		{
			// We are in an error condition, so light up the Flyport led
			result = FALSE;
			#if defined(STACK_USE_UART)
			UARTWrite(1,"Request failed.\r\n");
			#endif
		} 
		else 
		{
			#if defined(STACK_USE_UART)
			UARTWrite(1,"Request succeeded.\r\n");
			#endif
			result = TRUE;
		}
	}
	
	else 
	{
		#if defined(STACK_USE_UART)
		UARTWrite(1,"Server did not reply.\r\n");
		#endif
		result = FALSE;
	}

	vTaskDelay(500);
	
	return result;
}