Fix bugs: Diagnostics Objects

This commit is contained in:
Amin Ben Ramdhane 2020-03-23 11:49:22 +01:00
parent c2196ef2cc
commit 21af510617
5 changed files with 33 additions and 33 deletions

View file

@ -95,23 +95,23 @@ static void ftp_download_per_packet(libtrace_packet_t *packet)
(void) localtime_r(&(ts.tv_sec), &lt);
strftime(s_now, sizeof s_now, "%Y-%m-%dT%H:%M:%S", &lt);
download_stats.random_seq = ntohl(tcp->seq);
sprintf((download_stats.tcpopenrequesttime),"%s.%06ld", s_now, (long) ts.tv_usec);
sprintf((download_stats.tcpopenrequesttime),"%s.%06ldZ", s_now, (long) ts.tv_usec);
}
if (strcmp(tcp_flag, "SYN ACK ") == 0 && download_stats.random_seq != 0 && (ntohl(tcp->ack_seq) - 1 ) == download_stats.random_seq)
{
ts = trace_get_timeval(packet);
(void) localtime_r(&(ts.tv_sec), &lt);
strftime(s_now, sizeof s_now, "%Y-%m-%dT%H:%M:%S", &lt);
sprintf((download_stats.tcpopenresponsetime),"%s.%06ld", s_now, (long) ts.tv_usec);
sprintf((download_stats.tcpopenresponsetime),"%s.%06ldZ", s_now, (long) ts.tv_usec);
download_stats.random_seq = ntohl(tcp->ack_seq);
sprintf((download_stats.tcpopenresponsetime),"%s.%06ld", s_now, (long) ts.tv_usec);
sprintf((download_stats.tcpopenresponsetime),"%s.%06ldZ", s_now, (long) ts.tv_usec);
}
if (strcmp(tcp_flag, "PSH ACK ") == 0 && strlen(nexthdr) > strlen(FTP_RETR_REQUEST) && strncmp(nexthdr, FTP_RETR_REQUEST, strlen(FTP_RETR_REQUEST)) == 0)
{
ts = trace_get_timeval(packet);
(void) localtime_r(&(ts.tv_sec), &lt);
strftime(s_now, sizeof s_now, "%Y-%m-%dT%H:%M:%S", &lt);
sprintf((download_stats.romtime),"%s.%06ld", s_now, (long) ts.tv_usec);
sprintf((download_stats.romtime),"%s.%06ldZ", s_now, (long) ts.tv_usec);
}
if(strcmp(tcp_flag, "ACK ") == 0 && ntohl(tcp->seq) == download_stats.random_seq && download_stats.ack_seq == 0)
{
@ -125,7 +125,7 @@ static void ftp_download_per_packet(libtrace_packet_t *packet)
strftime(s_now, sizeof s_now, "%Y-%m-%dT%H:%M:%S", &lt);
if (download_stats.first_data == 0)
{
sprintf((download_stats.bomtime),"%s.%06ld", s_now, (long) ts.tv_usec);
sprintf((download_stats.bomtime),"%s.%06ldZ", s_now, (long) ts.tv_usec);
}
download_stats.first_data = 1;
}
@ -136,10 +136,10 @@ static void ftp_download_per_packet(libtrace_packet_t *packet)
strftime(s_now, sizeof s_now, "%Y-%m-%dT%H:%M:%S", &lt);
if (download_stats.first_data == 0)
{
sprintf((download_stats.bomtime),"%s.%06ld", s_now, (long) ts.tv_usec);
sprintf((download_stats.bomtime),"%s.%06ldZ", s_now, (long) ts.tv_usec);
download_stats.first_data = 1;
}
sprintf((download_stats.eomtime),"%s.%06ld", s_now, (long) ts.tv_usec);
sprintf((download_stats.eomtime),"%s.%06ldZ", s_now, (long) ts.tv_usec);
}
}
@ -172,7 +172,7 @@ static void http_download_per_packet(libtrace_packet_t *packet)
ts = trace_get_timeval(packet);
(void) localtime_r(&(ts.tv_sec), &lt);
strftime(s_now, sizeof s_now, "%Y-%m-%dT%H:%M:%S", &lt);
sprintf((download_stats.tcpopenrequesttime),"%s.%06ld", s_now, (long) ts.tv_usec);
sprintf((download_stats.tcpopenrequesttime),"%s.%06ldZ", s_now, (long) ts.tv_usec);
download_stats.random_seq = ntohl(tcp->seq);
return;
}
@ -181,7 +181,7 @@ static void http_download_per_packet(libtrace_packet_t *packet)
ts = trace_get_timeval(packet);
(void) localtime_r(&(ts.tv_sec), &lt);
strftime(s_now, sizeof s_now, "%Y-%m-%dT%H:%M:%S", &lt);
sprintf((download_stats.tcpopenresponsetime),"%s.%06ld", s_now, (long) ts.tv_usec);
sprintf((download_stats.tcpopenresponsetime),"%s.%06ldZ", s_now, (long) ts.tv_usec);
download_stats.random_seq = ntohl(tcp->seq);
return;
}
@ -190,7 +190,7 @@ static void http_download_per_packet(libtrace_packet_t *packet)
ts = trace_get_timeval(packet);
(void) localtime_r(&(ts.tv_sec), &lt);
strftime(s_now, sizeof s_now, "%Y-%m-%dT%H:%M:%S", &lt);
sprintf((download_stats.romtime),"%s.%06ld", s_now, (long) ts.tv_usec);
sprintf((download_stats.romtime),"%s.%06ldZ", s_now, (long) ts.tv_usec);
download_stats.get_ack = ntohl(tcp->ack_seq);
return;
}
@ -205,7 +205,7 @@ static void http_download_per_packet(libtrace_packet_t *packet)
(void) localtime_r(&(ts.tv_sec), &lt);
strftime(s_now, sizeof s_now, "%Y-%m-%dT%H:%M:%S", &lt);
if (download_stats.first_data == 0) {
sprintf((download_stats.bomtime),"%s.%06ld", s_now, (long) ts.tv_usec);
sprintf((download_stats.bomtime),"%s.%06ldZ", s_now, (long) ts.tv_usec);
char *val = strstr(nexthdr,"Content-Length");
char *pch, *pchr;
val += strlen("Content-Length: ");
@ -221,7 +221,7 @@ static void http_download_per_packet(libtrace_packet_t *packet)
(void) localtime_r(&(ts.tv_sec), &lt);
strftime(s_now, sizeof s_now, "%Y-%m-%dT%H:%M:%S", &lt);
if (download_stats.first_data == 0) {
sprintf((download_stats.bomtime),"%s.%06ld", s_now, (long) ts.tv_usec);
sprintf((download_stats.bomtime),"%s.%06ldZ", s_now, (long) ts.tv_usec);
char *val = strstr(nexthdr,"Content-Length");
char *pch, *pchr;
val += strlen("Content-Length: ");
@ -229,7 +229,7 @@ static void http_download_per_packet(libtrace_packet_t *packet)
download_stats.test_bytes_received = atoi(pch);
download_stats.first_data = 1;
}
sprintf((download_stats.eomtime),"%s.%06ld", s_now, (long) ts.tv_usec);
sprintf((download_stats.eomtime),"%s.%06ldZ", s_now, (long) ts.tv_usec);
return;
}
}
@ -253,7 +253,7 @@ static void set_download_stats(char *protocol)
set_param_diagnostics("downloaddiagnostic", "ROMtime", download_stats.romtime);
set_param_diagnostics("downloaddiagnostic", "BOMtime", download_stats.bomtime);
set_param_diagnostics("downloaddiagnostic", "EOMtime", download_stats.eomtime);
set_param_diagnostics("downloaddiagnostic", "TCPOpenRequestTimes", download_stats.tcpopenrequesttime);
set_param_diagnostics("downloaddiagnostic", "TCPOpenRequestTime", download_stats.tcpopenrequesttime);
set_param_diagnostics("downloaddiagnostic", "TCPOpenResponseTime", download_stats.tcpopenresponsetime);
sprintf(buf,"%d", download_stats.test_bytes_received);
set_param_diagnostics("downloaddiagnostic", "TestBytesReceived", buf);
@ -270,7 +270,7 @@ static void set_upload_stats(char *protocol)
set_param_diagnostics("uploaddiagnostic", "ROMtime", upload_stats.romtime);
set_param_diagnostics("uploaddiagnostic", "BOMtime", upload_stats.bomtime);
set_param_diagnostics("uploaddiagnostic", "EOMtime", upload_stats.eomtime);
set_param_diagnostics("uploaddiagnostic", "TCPOpenRequestTimes", upload_stats.tcpopenrequesttime);
set_param_diagnostics("uploaddiagnostic", "TCPOpenRequestTime", upload_stats.tcpopenrequesttime);
set_param_diagnostics("uploaddiagnostic", "TCPOpenResponseTime", upload_stats.tcpopenresponsetime);
if(strcmp(protocol, "cwmp")== 0)
@ -309,7 +309,7 @@ static void http_upload_per_packet(libtrace_packet_t *packet)
ts = trace_get_timeval(packet);
(void) localtime_r(&(ts.tv_sec), &lt);
strftime(s_now, sizeof s_now, "%Y-%m-%dT%H:%M:%S", &lt);
sprintf((upload_stats.tcpopenrequesttime),"%s.%06ld", s_now, (long) ts.tv_usec);
sprintf((upload_stats.tcpopenrequesttime),"%s.%06ldZ", s_now, (long) ts.tv_usec);
upload_stats.random_seq = ntohl(tcp->seq);
}
if (strcmp(tcp_flag, "SYN ACK ") == 0 && upload_stats.random_seq != 0 && (ntohl(tcp->ack_seq) - 1 ) == upload_stats.random_seq)
@ -317,7 +317,7 @@ static void http_upload_per_packet(libtrace_packet_t *packet)
ts = trace_get_timeval(packet);
(void) localtime_r(&(ts.tv_sec), &lt);
strftime(s_now, sizeof s_now, "%Y-%m-%dT%H:%M:%S", &lt);
sprintf((upload_stats.tcpopenresponsetime),"%s.%06ld", s_now, (long) ts.tv_usec);
sprintf((upload_stats.tcpopenresponsetime),"%s.%06ldZ", s_now, (long) ts.tv_usec);
upload_stats.random_seq = ntohl(tcp->seq);
}
if (strcmp(tcp_flag, "PSH ACK ") == 0 && strncmp(nexthdr, "PUT", 3) == 0)
@ -325,7 +325,7 @@ static void http_upload_per_packet(libtrace_packet_t *packet)
ts = trace_get_timeval(packet);
(void) localtime_r(&(ts.tv_sec), &lt);
strftime(s_now, sizeof s_now, "%Y-%m-%dT%H:%M:%S", &lt);
sprintf((upload_stats.romtime),"%s.%06ld", s_now, (long) ts.tv_usec);
sprintf((upload_stats.romtime),"%s.%06ldZ", s_now, (long) ts.tv_usec);
if (strstr(nexthdr, "Expect: 100-continue"))
{
upload_stats.tmp=1;
@ -354,7 +354,7 @@ static void http_upload_per_packet(libtrace_packet_t *packet)
strftime(s_now, sizeof s_now, "%Y-%m-%dT%H:%M:%S", &lt);
if (upload_stats.first_data == 0)
{
sprintf((upload_stats.bomtime),"%s.%06ld", s_now, (long) ts.tv_usec);
sprintf((upload_stats.bomtime),"%s.%06ldZ", s_now, (long) ts.tv_usec);
upload_stats.first_data = 1;
}
}
@ -365,7 +365,7 @@ static void http_upload_per_packet(libtrace_packet_t *packet)
strftime(s_now, sizeof s_now, "%Y-%m-%dT%H:%M:%S", &lt);
if (upload_stats.first_data == 0)
{
sprintf((upload_stats.bomtime),"%s.%06ld", s_now, (long) ts.tv_usec);
sprintf((upload_stats.bomtime),"%s.%06ldZ", s_now, (long) ts.tv_usec);
upload_stats.first_data = 1;
}
}
@ -374,7 +374,7 @@ static void http_upload_per_packet(libtrace_packet_t *packet)
ts = trace_get_timeval(packet);
(void) localtime_r(&(ts.tv_sec), &lt);
strftime(s_now, sizeof s_now, "%Y-%m-%dT%H:%M:%S", &lt);
sprintf((upload_stats.eomtime),"%s.%06ld", s_now, (long) ts.tv_usec);
sprintf((upload_stats.eomtime),"%s.%06ldZ", s_now, (long) ts.tv_usec);
}
}
@ -416,14 +416,14 @@ static void ftp_upload_per_packet(libtrace_packet_t *packet)
(void) localtime_r(&(ts.tv_sec), &lt);
strftime(s_now, sizeof s_now, "%Y-%m-%dT%H:%M:%S", &lt);
upload_stats.random_seq = ntohl(tcp->seq);
sprintf((upload_stats.tcpopenrequesttime),"%s.%06ld", s_now, (long) ts.tv_usec);
sprintf((upload_stats.tcpopenrequesttime),"%s.%06ldZ", s_now, (long) ts.tv_usec);
}
if (strcmp(tcp_flag, "SYN ACK ") == 0 && upload_stats.random_seq != 0 && (ntohl(tcp->ack_seq) - 1 ) == upload_stats.random_seq)
{
ts = trace_get_timeval(packet);
(void) localtime_r(&(ts.tv_sec), &lt);
strftime(s_now, sizeof s_now, "%Y-%m-%dT%H:%M:%S", &lt);
sprintf((upload_stats.tcpopenresponsetime),"%s.%06ld", s_now, (long) ts.tv_usec);
sprintf((upload_stats.tcpopenresponsetime),"%s.%06ldZ", s_now, (long) ts.tv_usec);
upload_stats.random_seq = ntohl(tcp->ack_seq);
}
if (strcmp(tcp_flag, "PSH ACK ") == 0 && strlen(nexthdr) > strlen(FTP_STOR_REQUEST) && strncmp(nexthdr, FTP_STOR_REQUEST, strlen(FTP_STOR_REQUEST)) == 0)
@ -431,7 +431,7 @@ static void ftp_upload_per_packet(libtrace_packet_t *packet)
ts = trace_get_timeval(packet);
(void) localtime_r(&(ts.tv_sec), &lt);
strftime(s_now, sizeof s_now, "%Y-%m-%dT%H:%M:%S", &lt);
sprintf((upload_stats.romtime),"%s.%06ld", s_now, (long) ts.tv_usec);
sprintf((upload_stats.romtime),"%s.%06ldZ", s_now, (long) ts.tv_usec);
}
if(strcmp(tcp_flag, "ACK ") == 0 && ntohl(tcp->seq) == upload_stats.random_seq && upload_stats.ack_seq == 0)
{
@ -445,7 +445,7 @@ static void ftp_upload_per_packet(libtrace_packet_t *packet)
strftime(s_now, sizeof s_now, "%Y-%m-%dT%H:%M:%S", &lt);
if (upload_stats.first_data == 0)
{
sprintf((upload_stats.bomtime),"%s.%06ld", s_now, (long) ts.tv_usec);
sprintf((upload_stats.bomtime),"%s.%06ldZ", s_now, (long) ts.tv_usec);
upload_stats.first_data = 1;
}
}
@ -456,7 +456,7 @@ static void ftp_upload_per_packet(libtrace_packet_t *packet)
strftime(s_now, sizeof s_now, "%Y-%m-%dT%H:%M:%S", &lt);
if (upload_stats.first_data == 0)
{
sprintf((upload_stats.bomtime),"%s.%06ld", s_now, (long) ts.tv_usec);
sprintf((upload_stats.bomtime),"%s.%06ldZ", s_now, (long) ts.tv_usec);
upload_stats.first_data = 1;
}
}
@ -465,7 +465,7 @@ static void ftp_upload_per_packet(libtrace_packet_t *packet)
ts = trace_get_timeval(packet);
(void) localtime_r(&(ts.tv_sec), &lt);
strftime(s_now, sizeof s_now, "%Y-%m-%dT%H:%M:%S", &lt);
sprintf((upload_stats.eomtime),"%s.%06ld", s_now, (long) ts.tv_usec);
sprintf((upload_stats.eomtime),"%s.%06ldZ", s_now, (long) ts.tv_usec);
read_next = 0;
}
}
@ -586,7 +586,7 @@ int start_upload_download_diagnostic(int diagnostic_type)
dmuci_get_varstate_string("cwmp", "@downloaddiagnostic[0]", "url", &url);
dmuci_get_varstate_string("cwmp", "@downloaddiagnostic[0]", "DiagnosticState", &status);
if (status && strcmp(status, "Completed") == 0) {
if (status && strcmp(status, "Complete") == 0) {
init_download_stats();
if(strncmp(url, DOWNLOAD_UPLOAD_PROTOCOL_HTTP, strlen(DOWNLOAD_UPLOAD_PROTOCOL_HTTP)) == 0)
extract_stats(DOWNLOAD_DUMP_FILE, DOWNLOAD_DIAGNOSTIC_HTTP, DOWNLOAD_DIAGNOSTIC, "usp");
@ -605,7 +605,7 @@ int start_upload_download_diagnostic(int diagnostic_type)
dmuci_get_varstate_string("cwmp", "@uploaddiagnostic[0]", "url", &url);
dmuci_get_varstate_string("cwmp", "@uploaddiagnostic[0]", "DiagnosticState", &status);
if (status && strcmp(status, "Completed") == 0) {
if (status && strcmp(status, "Complete") == 0) {
init_upload_stats();
if(strncmp(url, DOWNLOAD_UPLOAD_PROTOCOL_HTTP, strlen(DOWNLOAD_UPLOAD_PROTOCOL_HTTP)) == 0)
extract_stats(UPLOAD_DUMP_FILE, DOWNLOAD_DIAGNOSTIC_HTTP, UPLOAD_DIAGNOSTIC, "usp");

View file

@ -2006,7 +2006,7 @@ static int set_IPDiagnosticsServerSelectionDiagnostics_Protocol(char *refparam,
static int get_IPDiagnosticsServerSelectionDiagnostics_Port(char *refparam, struct dmctx *ctx, void *data, char *instance, char **value)
{
dmuci_get_varstate_string("cwmp", "@serverselectiondiagnostic[0]", "port", value);
*value = serverselection_get("port", "1");
return 0;
}

View file

@ -53,7 +53,7 @@ download_launch() {
tx_bytes=$((tx_bytes_after-tx_bytes_before))
rx_bytes=$((rx_bytes_after-rx_bytes_before))
periodtime=$(($((time2-time1))*1000000))
$UCI_SET_VARSTATE cwmp.@downloaddiagnostic[0].DiagnosticState=Completed
$UCI_SET_VARSTATE cwmp.@downloaddiagnostic[0].DiagnosticState=Complete
$UCI_SET_VARSTATE cwmp.@downloaddiagnostic[0].TotalBytesReceived=$rx_bytes
$UCI_SET_VARSTATE cwmp.@downloaddiagnostic[0].TotalBytesSent=$tx_bytes
$UCI_SET_VARSTATE cwmp.@downloaddiagnostic[0].PeriodOfFullLoading=$periodtime

View file

@ -46,7 +46,7 @@ udpecho_launch() {
times=`echo "$res" | grep "rtt"`
[ -z "$times" ] && continue
sc1=`echo "$res" | grep "Rcvd" | awk -F': ' '{print $3}' | awk -F'(' '{ print $1 }'`
sc1=${sc1:-0}
[ $sc1 != 0 ] && sc1=1 || sc1=0
success_count=$((success_count+sc1))
max_time=`echo $times | awk -F': ' '{ print $2 }' | awk -F'ms' '{ print $1 }'`
min_time=`echo $times | awk -F': ' '{ print $3 }' | awk -F'ms' '{ print $1 }'`

View file

@ -75,7 +75,7 @@ upload_launch() {
tx_bytes=$((tx_bytes_after-tx_bytes_before))
rx_bytes=$((rx_bytes_after-rx_bytes_before))
periodtime=$(($((time2-time1))*1000000))
$UCI_SET_VARSTATE cwmp.@uploaddiagnostic[0].DiagnosticState=Completed
$UCI_SET_VARSTATE cwmp.@uploaddiagnostic[0].DiagnosticState=Complete
$UCI_SET_VARSTATE cwmp.@uploaddiagnostic[0].TestBytesSent=$size
$UCI_SET_VARSTATE cwmp.@uploaddiagnostic[0].TotalBytesReceived=$rx_bytes
$UCI_SET_VARSTATE cwmp.@uploaddiagnostic[0].TotalBytesSent=$tx_bytes