|
@@ -179,72 +179,160 @@ static err_t http_recv(void *arg, struct tcp_pcb *pcb, struct pbuf *p, err_t er
|
|
|
/* Cut received string */
|
|
|
receiveBuf[receivedBufLen] = '\0';
|
|
|
if (strncmp(data, "GET /setProdate.cgi", 19) == 0 && strncmp(sSettings.sFlags.testState, "T2OK", 4))
|
|
|
- {
|
|
|
- HTTP_Prodate(receiveBuf, sendBuf, receivedBufLen, &sendBufLoadLen);
|
|
|
-
|
|
|
- hs->file = sendBuf;
|
|
|
- hs->left = sendBufLoadLen;
|
|
|
- send_data(pcb, hs);
|
|
|
- tcp_sent(pcb, http_sent);
|
|
|
- }
|
|
|
- else{
|
|
|
- Cockie();
|
|
|
- getAuthenticatedState();
|
|
|
-
|
|
|
- if (!Authenticated)
|
|
|
{
|
|
|
- hs->file = AuthenticatedFalseRoutine(&sendBufLoadLen);
|
|
|
- hs->left = sendBufLoadLen;
|
|
|
- send_data(pcb, hs);
|
|
|
- tcp_sent(pcb, http_sent);
|
|
|
+ HTTP_Prodate(receiveBuf, sendBuf, receivedBufLen, &sendBufLoadLen);
|
|
|
+
|
|
|
+ hs->file = sendBuf;
|
|
|
+ hs->left = sendBufLoadLen;
|
|
|
+ send_data(pcb, hs);
|
|
|
+ tcp_sent(pcb, http_sent);
|
|
|
}
|
|
|
- else
|
|
|
- {
|
|
|
- HTTPTypeAnswer = COMMON_ANSWER;
|
|
|
- hs->file = AuthenticatedTrueRoutine(&sendBufLoadLen);
|
|
|
- hs->left = sendBufLoadLen;
|
|
|
- send_data(pcb, hs);
|
|
|
- tcp_sent(pcb, http_sent);
|
|
|
- switch(HTTPTypeAnswer){
|
|
|
- case HISTORY_ANSWER:
|
|
|
- while(sendBufLoadLen != 0){
|
|
|
- hs->file = HTTP_SendHistory(&sendBufLoadLen);
|
|
|
- hs->left = sendBufLoadLen;
|
|
|
- if(sendBufLoadLen == 0){
|
|
|
- close_conn(pcb,hs);
|
|
|
- break;
|
|
|
- }
|
|
|
+ else{
|
|
|
+ Cockie();
|
|
|
+ if( DataFlag == 0 && DataFlag2 == 0 ){
|
|
|
+ getAuthenticatedState();
|
|
|
+ }
|
|
|
+ if (DataFlag >= 1)
|
|
|
+ Authenticated = true;
|
|
|
+ else if(DataFlag2 >= 1)
|
|
|
+ Authenticated = true;
|
|
|
+
|
|
|
+ if (!Authenticated)
|
|
|
+ {
|
|
|
+ hs->file = AuthenticatedFalseRoutine(&sendBufLoadLen);
|
|
|
+ hs->left = sendBufLoadLen;
|
|
|
+ send_data(pcb, hs);
|
|
|
+ tcp_sent(pcb, http_sent);
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ HTTPTypeAnswer = COMMON_ANSWER;
|
|
|
+ hs->file = AuthenticatedTrueRoutine(&sendBufLoadLen);
|
|
|
+ hs->left = sendBufLoadLen;
|
|
|
+ if(hs->file != 0){
|
|
|
send_data(pcb, hs);
|
|
|
- tcp_sent(pcb, http_sent);
|
|
|
- }
|
|
|
- break;
|
|
|
- case UPS_HISTORY_ANSWER:
|
|
|
- while(sendBufLoadLen != 0){
|
|
|
- hs->file = HTTP_SendLog(&sendBufLoadLen);
|
|
|
- hs->left = sendBufLoadLen;
|
|
|
- if(sendBufLoadLen == 0){
|
|
|
- close_conn(pcb,hs);
|
|
|
+ switch(HTTPTypeAnswer){
|
|
|
+ case HISTORY_ANSWER:
|
|
|
+ tcp_sent(pcb, http_sent_history);
|
|
|
+ break;
|
|
|
+ case UPS_HISTORY_ANSWER:
|
|
|
+ tcp_sent(pcb, http_sent_log);
|
|
|
+ break;
|
|
|
+ default:
|
|
|
+ tcp_sent(pcb, http_sent);
|
|
|
break;
|
|
|
}
|
|
|
- send_data(pcb, hs);
|
|
|
- tcp_sent(pcb, http_sent);
|
|
|
}
|
|
|
- break;
|
|
|
}
|
|
|
}
|
|
|
- }
|
|
|
|
|
|
}
|
|
|
pbuf_free(p);
|
|
|
- close_conn(pcb,hs);
|
|
|
- }
|
|
|
- if (err == ERR_OK && p == NULL)
|
|
|
- {
|
|
|
- close_conn(pcb, hs);
|
|
|
}
|
|
|
return ERR_OK;
|
|
|
}
|
|
|
|
|
|
+/**
|
|
|
+ * @brief Sent callback for log file transfer (messages as is, not ordered)
|
|
|
+ */
|
|
|
+static err_t http_sent_history(void *arg, struct tcp_pcb *pcb, u16_t len)
|
|
|
+{
|
|
|
+ struct http_state *hs;
|
|
|
+ uint32_t nbytes = 0;
|
|
|
+ static bool start = true;
|
|
|
+ (void)len;
|
|
|
+
|
|
|
+ hs = arg;
|
|
|
+
|
|
|
+ if (hs->left > 0)
|
|
|
+ {
|
|
|
+ send_data(pcb, hs);
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ memset(logFileBuf, 0, FILE_BUF_MAX_LEN);
|
|
|
+ if (log_ptr + FILE_BUF_MAX_LEN <= log_size) {
|
|
|
+ nbytes = History_GetData(log_ptr, logFileBuf, FILE_BUF_MAX_LEN, start);
|
|
|
+ }
|
|
|
+ else if (log_ptr < log_size) {
|
|
|
+ nbytes = History_GetData(log_ptr, logFileBuf, (log_size - log_ptr), start);
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ nbytes = 0;
|
|
|
+ }
|
|
|
+ log_ptr += nbytes;
|
|
|
+
|
|
|
+ start = false;
|
|
|
+ if (nbytes == 0) {
|
|
|
+ /* File transfer finished. */
|
|
|
+ start = true;
|
|
|
+ close_conn(pcb, hs);
|
|
|
+
|
|
|
+ /* Clear file transfer in progress flag */
|
|
|
+ fLogTransInprog = false;
|
|
|
+
|
|
|
+ return ERR_OK;
|
|
|
+ }
|
|
|
+
|
|
|
+ hs->file = logFileBuf;
|
|
|
+ hs->left = nbytes;
|
|
|
+ send_data(pcb, hs);
|
|
|
+ tcp_sent(pcb, http_sent_history);
|
|
|
+
|
|
|
+ }
|
|
|
+ return ERR_OK;
|
|
|
+}
|
|
|
+
|
|
|
+/**
|
|
|
+ * @brief Sent callback for log file transfer (messages as is, not ordered)
|
|
|
+ */
|
|
|
+static err_t http_sent_log(void *arg, struct tcp_pcb *pcb, u16_t len)
|
|
|
+{
|
|
|
+ struct http_state *hs;
|
|
|
+ uint32_t nbytes = 0;
|
|
|
+ static bool start = true;
|
|
|
+ (void)len;
|
|
|
+
|
|
|
+ hs = arg;
|
|
|
+
|
|
|
+ if (hs->left > 0)
|
|
|
+ {
|
|
|
+ send_data(pcb, hs);
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ memset(logFileBuf, 0, FILE_BUF_MAX_LEN);
|
|
|
+ if (log_ptr + FILE_BUF_MAX_LEN_LOG <= log_size) {
|
|
|
+ nbytes = LOG_GetData(log_ptr, logFileBuf, FILE_BUF_MAX_LEN_LOG, start);
|
|
|
+ }
|
|
|
+ else if (log_ptr < log_size) {
|
|
|
+ nbytes = LOG_GetData(log_ptr, logFileBuf, (log_size - log_ptr), start);
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ nbytes = 0;
|
|
|
+ }
|
|
|
+ log_ptr += nbytes;
|
|
|
+
|
|
|
+ start = false;
|
|
|
+ if (nbytes == 0) {
|
|
|
+ /* File transfer finished. */
|
|
|
+ start = true;
|
|
|
+ close_conn(pcb, hs);
|
|
|
+
|
|
|
+ /* Clear file transfer in progress flag */
|
|
|
+ fLogTransInprog = false;
|
|
|
+
|
|
|
+ return ERR_OK;
|
|
|
+ }
|
|
|
+
|
|
|
+ hs->file = logFileBuf;
|
|
|
+ hs->left = nbytes;
|
|
|
+ send_data(pcb, hs);
|
|
|
+ tcp_sent(pcb, http_sent_log);
|
|
|
+
|
|
|
+ }
|
|
|
+ return ERR_OK;
|
|
|
+}
|
|
|
|
|
|
/**
|
|
|
* @brief Error callback for log file transfer
|
|
@@ -290,7 +378,7 @@ static err_t http_sent(void *arg, struct tcp_pcb *pcb, u16_t len)
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
- close_conn(pcb, hs);
|
|
|
+ close_conn(pcb, hs);
|
|
|
}
|
|
|
return ERR_OK;
|
|
|
}
|
|
@@ -1543,7 +1631,6 @@ char* AuthenticatedFalseRoutine(uint16_t* sendLen)
|
|
|
char* AuthenticatedTrueRoutine(uint16_t* sendLen)
|
|
|
{
|
|
|
char *DataOffset;
|
|
|
- char *ptr;
|
|
|
|
|
|
if (strncmp(receiveBuf, "GET /getJson.cgi", 16) == 0) // +
|
|
|
{
|
|
@@ -1568,41 +1655,53 @@ char* AuthenticatedTrueRoutine(uint16_t* sendLen)
|
|
|
{
|
|
|
DataOffset = 0;
|
|
|
// POST Packet received
|
|
|
- TotalReceived = 0;
|
|
|
- TotalData = 0;
|
|
|
- memset(sendBuf, 0, strlen(sendBuf));
|
|
|
-
|
|
|
- // parse packet for Content-length field
|
|
|
- size = Parse_Content_Length(receiveBuf, receivedBufLen);
|
|
|
- DataOffset = strstr(receiveBuf, "managerIP");
|
|
|
-
|
|
|
- /* case of MSIE8 : we do not receive data in the POST packet*/
|
|
|
- if (DataOffset == 0)
|
|
|
+ if (DataFlag2 == 0)
|
|
|
{
|
|
|
- //ssl_server_read();
|
|
|
- // SSL_ReadRoutine(&ssl, (unsigned char*)receiveBuf);
|
|
|
- DataOffset = strstr(receiveBuf, "managerIP");
|
|
|
- }
|
|
|
-
|
|
|
- TotalReceived = receivedBufLen - (DataOffset - &receiveBuf[0]);
|
|
|
- TotalData += TotalReceived;
|
|
|
- strncat(sendBuf, DataOffset, TotalReceived);
|
|
|
-
|
|
|
- for (int i = TotalData; i < size; i ++)
|
|
|
- {
|
|
|
- //ssl_server_read();
|
|
|
- // SSL_ReadRoutine(&ssl, (unsigned char*)receiveBuf);
|
|
|
- strncat(sendBuf, receiveBuf, receivedBufLen);
|
|
|
- TotalData += receivedBufLen;
|
|
|
+ TotalReceived = 0;
|
|
|
+ memset(sendBuf, 0, strlen(sendBuf));
|
|
|
+ // parse packet for Content-length field
|
|
|
+ size = Parse_Content_Length(receiveBuf, receivedBufLen);
|
|
|
+ DataOffset = strstr(receiveBuf, "managerIP");
|
|
|
+
|
|
|
+ // case of MSIE8 : we do not receive data in the POST packet
|
|
|
+ if (DataOffset == 0)
|
|
|
+ {
|
|
|
+ DataFlag2++;
|
|
|
+ return 0;
|
|
|
+ }
|
|
|
+ else{
|
|
|
+ TotalReceived = receivedBufLen - (DataOffset - &receiveBuf[0]);
|
|
|
+ strncat(sendBuf, DataOffset, TotalReceived);
|
|
|
+ }
|
|
|
}
|
|
|
+
|
|
|
+ if (DataFlag2 == 0)
|
|
|
+ {
|
|
|
+ DataFlag2++;
|
|
|
+ }
|
|
|
+ else if (DataFlag2 == 1)
|
|
|
+ {
|
|
|
+ /* parse packet for the octet-stream field */
|
|
|
+ DataOffset = strstr(receiveBuf, "managerIP");
|
|
|
+ TotalReceived += receivedBufLen;
|
|
|
+ strncat(sendBuf, DataOffset, TotalReceived);
|
|
|
+ DataFlag2++;
|
|
|
+ }
|
|
|
+ /* DataFlag >1 => the packet is data only */
|
|
|
+ else
|
|
|
+ {
|
|
|
+ TotalReceived +=receivedBufLen;
|
|
|
+ strncat(sendBuf, receiveBuf, receivedBufLen);
|
|
|
+ }
|
|
|
// check if last data packet
|
|
|
- if (TotalData == size)
|
|
|
+ if (TotalReceived == size)
|
|
|
{
|
|
|
DBG printf("State: Received %d bytes\r\n", (int)TotalData);
|
|
|
// printf("receive %s \r\n", sendBuf);
|
|
|
strncat(sendBuf, " ", 1);
|
|
|
HTTP_SetSettings(sendBuf, strlen(sendBuf));
|
|
|
memset(sendBuf, 0, size);
|
|
|
+ DataFlag2 = 0;
|
|
|
strcpy(sendBuf, "HTTP/1.1 200 OK\r\n");
|
|
|
strcat(sendBuf, "\r\n\r\n");
|
|
|
strcat(sendBuf,"<!DOCTYPE html><html lang=""><head><meta http-equiv=\"refresh\" content=\"0;url=/settings.html\"/></head></html>\r\n\r\n");
|
|
@@ -1610,9 +1709,9 @@ char* AuthenticatedTrueRoutine(uint16_t* sendLen)
|
|
|
*sendLen = sendBufLoadLen;
|
|
|
return sendBuf;
|
|
|
}
|
|
|
- }
|
|
|
+ }
|
|
|
return 0;
|
|
|
- }
|
|
|
+ }
|
|
|
else if (strncmp(receiveBuf, "GET /info.cgi", 13) == 0) // +
|
|
|
{
|
|
|
if (HTTP_InfoPage(receiveBuf, sendBuf, receivedBufLen, sendLen) == SEND_REQUIRED_YES)
|
|
@@ -1622,55 +1721,62 @@ char* AuthenticatedTrueRoutine(uint16_t* sendLen)
|
|
|
}
|
|
|
else if (strncmp(receiveBuf, "POST /info.cgi", 14) == 0)
|
|
|
{
|
|
|
- if (seclevel == 0)
|
|
|
- {
|
|
|
- DataOffset = 0;
|
|
|
- // POST Packet received
|
|
|
- TotalReceived = 0;
|
|
|
- TotalData = 0;
|
|
|
- memset(sendBuf, 0, strlen(sendBuf));
|
|
|
- // parse packet for Content-length field
|
|
|
- size = Parse_Content_Length(receiveBuf, receivedBufLen);
|
|
|
- DataOffset = strstr(receiveBuf, "owner");
|
|
|
-
|
|
|
- // case of MSIE8 : we do not receive data in the POST packet
|
|
|
- if (DataOffset == 0)
|
|
|
- {
|
|
|
- // SSL_ReadRoutine(&ssl, (unsigned char*)receiveBuf);
|
|
|
- DataOffset = strstr(receiveBuf, "owner");
|
|
|
- }
|
|
|
+ DataOffset = 0;
|
|
|
+ // POST Packet received
|
|
|
+ if (DataFlag == 0)
|
|
|
+ {
|
|
|
+ TotalReceived = 0;
|
|
|
+ memset(sendBuf, 0, strlen(sendBuf));
|
|
|
+ // parse packet for Content-length field
|
|
|
+ size = Parse_Content_Length(receiveBuf, receivedBufLen);
|
|
|
+ DataOffset = strstr(receiveBuf, "owner");
|
|
|
+
|
|
|
+ // case of MSIE8 : we do not receive data in the POST packet
|
|
|
+ if (DataOffset == 0)
|
|
|
+ {
|
|
|
+ DataFlag++;
|
|
|
+ return 0;
|
|
|
+ }
|
|
|
+ else{
|
|
|
+ TotalReceived = receivedBufLen - (DataOffset - &receiveBuf[0]);
|
|
|
+ strncat(sendBuf, DataOffset, TotalReceived);
|
|
|
+ }
|
|
|
+ }
|
|
|
|
|
|
- TotalReceived = receivedBufLen - (DataOffset - &receiveBuf[0]);
|
|
|
- TotalData += TotalReceived;
|
|
|
- strncat(sendBuf, DataOffset, TotalReceived);
|
|
|
+ if (DataFlag == 0)
|
|
|
+ {
|
|
|
+ DataFlag++;
|
|
|
+ }
|
|
|
+ else if (DataFlag == 1)
|
|
|
+ {
|
|
|
+ /* parse packet for the octet-stream field */
|
|
|
+ DataOffset = strstr(receiveBuf, "owner");
|
|
|
+ TotalReceived += receivedBufLen;
|
|
|
+ strncat(sendBuf, DataOffset, TotalReceived);
|
|
|
+ DataFlag++;
|
|
|
+ }
|
|
|
+ /* DataFlag >1 => the packet is data only */
|
|
|
+ else
|
|
|
+ {
|
|
|
+ TotalReceived +=receivedBufLen;
|
|
|
+ strncat(sendBuf, receiveBuf, receivedBufLen);
|
|
|
+ }
|
|
|
+
|
|
|
+ // check if last data packet
|
|
|
+ if (TotalReceived == size)
|
|
|
+ {
|
|
|
+ strncat(sendBuf, " ", 1);
|
|
|
+ HTTP_SetInfo(sendBuf, strlen(sendBuf));
|
|
|
+ DataFlag = 0;
|
|
|
+ memset(sendBuf, 0, size);
|
|
|
|
|
|
- // check if last data packet
|
|
|
- if (TotalReceived == size)
|
|
|
- {
|
|
|
- strncat(sendBuf, " ", 1);
|
|
|
- HTTP_SetInfo(sendBuf, strlen(sendBuf));
|
|
|
- DataFlag = 0;
|
|
|
- BrowserFlag = 0;
|
|
|
- memset(sendBuf, 0, size);
|
|
|
+ strcpy(sendBuf, "HTTP/1.1 200 OK\r\n");
|
|
|
+ strcat(sendBuf, "\r\n\r\n");
|
|
|
+ strcat(sendBuf,"<!DOCTYPE html><html lang=""><head><meta http-equiv=\"refresh\" content=\"0;url=/info.html\"/></head></html>\r\n\r\n");
|
|
|
|
|
|
- strcpy(sendBuf, "HTTP/1.1 200 OK\r\n");
|
|
|
- strcat(sendBuf, "\r\n\r\n");
|
|
|
- strcat(sendBuf,"<!DOCTYPE html><html lang=""><head><meta http-equiv=\"refresh\" content=\"0;url=/info.html\"/></head></html>\r\n\r\n");
|
|
|
-
|
|
|
- *sendLen = strlen(sendBuf);
|
|
|
- return sendBuf;
|
|
|
- }
|
|
|
- // not last data packet
|
|
|
- else
|
|
|
- {
|
|
|
- // write data in flash
|
|
|
- if(receivedBufLen)
|
|
|
- {
|
|
|
- strncat(sendBuf, ptr, receivedBufLen);
|
|
|
- //memcpy(receiveBufTemp, ptr, receivedBufLen);
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
+ *sendLen = strlen(sendBuf);
|
|
|
+ return sendBuf;
|
|
|
+ }
|
|
|
}
|
|
|
else if (strncmp(receiveBuf, "GET /history.cgi", 16) == 0)
|
|
|
{
|
|
@@ -1680,7 +1786,7 @@ char* AuthenticatedTrueRoutine(uint16_t* sendLen)
|
|
|
if (res == SEND_REQUIRED_FILE)
|
|
|
{
|
|
|
HTTPTypeAnswer = HISTORY_ANSWER;
|
|
|
- return HTTP_SendHistory(sendLen);
|
|
|
+ return sendBuf;
|
|
|
}
|
|
|
else if (res == SEND_REQUIRED_YES)
|
|
|
{
|
|
@@ -1696,7 +1802,7 @@ char* AuthenticatedTrueRoutine(uint16_t* sendLen)
|
|
|
if (res == SEND_REQUIRED_FILE)
|
|
|
{
|
|
|
HTTPTypeAnswer = UPS_HISTORY_ANSWER;
|
|
|
- return HTTP_SendLog(sendLen);
|
|
|
+ return sendBuf;
|
|
|
}
|
|
|
else if (res == SEND_REQUIRED_YES)
|
|
|
{
|
|
@@ -1782,82 +1888,6 @@ char* AuthenticatedTrueRoutine(uint16_t* sendLen)
|
|
|
return 0;
|
|
|
}
|
|
|
|
|
|
-/**
|
|
|
- * @brief Send callback for log file transfer (messages as is, not ordered)
|
|
|
- */
|
|
|
-char* HTTP_SendHistory(uint16_t *Len)
|
|
|
-{
|
|
|
- struct http_state *hs;
|
|
|
- uint32_t nbytes = 0;
|
|
|
- static bool start = true;
|
|
|
-
|
|
|
- memset(logFileBuf, 0, FILE_BUF_MAX_LEN);
|
|
|
-
|
|
|
- if (log_ptr + FILE_BUF_MAX_LEN <= log_size) {
|
|
|
- nbytes = History_GetData(log_ptr, logFileBuf, FILE_BUF_MAX_LEN, start);
|
|
|
- }
|
|
|
- else if (log_ptr < log_size) {
|
|
|
- nbytes = History_GetData(log_ptr, logFileBuf, (log_size - log_ptr), start);
|
|
|
- }
|
|
|
- else {
|
|
|
- nbytes = 0;
|
|
|
- }
|
|
|
- log_ptr += nbytes;
|
|
|
-
|
|
|
- start = false;
|
|
|
-
|
|
|
- *Len = nbytes;
|
|
|
- if (nbytes == 0) {
|
|
|
- // File transfer finished.
|
|
|
- start = true;
|
|
|
- // Clear file transfer in progress flag
|
|
|
- fLogTransInprog = false;
|
|
|
- return 0;
|
|
|
- }
|
|
|
- return logFileBuf;
|
|
|
- // hs->file = logFileBuf;
|
|
|
- // hs->left = nbytes;
|
|
|
- // send_data(pcb, hs);
|
|
|
- // SSL_SendFrames(&ssl, logFileBuf, nbytes);
|
|
|
- // HTTP_SendHistory();
|
|
|
-}
|
|
|
-
|
|
|
-/**
|
|
|
- * @brief Sent callback for log file transfer (messages as is, not ordered)
|
|
|
- */
|
|
|
-char* HTTP_SendLog(uint16_t *Len)
|
|
|
-{
|
|
|
- uint32_t nbytes = 0;
|
|
|
- static bool start = true;
|
|
|
-
|
|
|
- memset(logFileBuf, 0, FILE_BUF_MAX_LEN);
|
|
|
- if (log_ptr + FILE_BUF_MAX_LEN_LOG <= log_size) {
|
|
|
- nbytes = LOG_GetData(log_ptr, logFileBuf, FILE_BUF_MAX_LEN_LOG, start);
|
|
|
- }
|
|
|
- else if (log_ptr < log_size) {
|
|
|
- nbytes = LOG_GetData(log_ptr, logFileBuf, (log_size - log_ptr), start);
|
|
|
- }
|
|
|
- else {
|
|
|
- nbytes = 0;
|
|
|
- }
|
|
|
- log_ptr += nbytes;
|
|
|
-
|
|
|
- start = false;
|
|
|
- *Len = nbytes;
|
|
|
- if (nbytes == 0) {
|
|
|
- // File transfer finished.
|
|
|
- start = true;
|
|
|
- // Clear file transfer in progress flag
|
|
|
- fLogTransInprog = false;
|
|
|
- return 0;
|
|
|
- }
|
|
|
-
|
|
|
- // SSL_SendFrames(&ssl, logFileBuf, nbytes);
|
|
|
- // HTTP_SendLog();
|
|
|
-
|
|
|
- return logFileBuf;
|
|
|
-}
|
|
|
-
|
|
|
/**
|
|
|
* @brief sends file from flash FS
|
|
|
* @param filename: pointer to the file name to send
|