[Aggregator] Rename demande & message -> request
This commit is contained in:
parent
d4e9d9c97b
commit
8f84cffa93
1
TODO
1
TODO
|
@ -19,7 +19,6 @@
|
|||
* Aggregator
|
||||
|
||||
- Use inet_ntoa() instead of ip_bytes_to_string().
|
||||
- monitor_couples(): rename 'demande' variable.
|
||||
- Use locks to read/write the AP list
|
||||
Currently, several threads can access the list simultaneously, and
|
||||
that's not cool!
|
||||
|
|
|
@ -323,10 +323,10 @@ void check_configuration()
|
|||
int read_loop(int sockfd)
|
||||
{
|
||||
int ret = 0 ; // Return value
|
||||
int nread ; // recvfrom return value
|
||||
ssize_t nread ; // recvfrom return value
|
||||
struct sockaddr_in client; // UDP client structure
|
||||
socklen_t client_len = sizeof(client) ; // Size of clients
|
||||
owl_captured_request message ; // Message read on the socket
|
||||
owl_captured_request request ; // Message read on the socket
|
||||
char
|
||||
*ap_mac_str, // Return pointers for owl_mac_bytes_to_string(),
|
||||
*mobile_mac_str,
|
||||
|
@ -337,34 +337,34 @@ int read_loop(int sockfd)
|
|||
|
||||
while (run)
|
||||
{
|
||||
nread = recvfrom(sockfd, &message, sizeof(message), 0,
|
||||
nread = recvfrom(sockfd, &request, sizeof(request), 0,
|
||||
(struct sockaddr *) &client, &client_len) ;
|
||||
|
||||
if (nread <= 0)
|
||||
{
|
||||
if (run)
|
||||
{
|
||||
fprintf(stderr, "No message received from client!\n") ;
|
||||
fprintf(stderr, "No request received from client!\n") ;
|
||||
ret = ERR_NO_MESSAGE_RECEIVED ;
|
||||
}
|
||||
break ;
|
||||
}
|
||||
|
||||
// Endianess conversions:
|
||||
message.request_time = owl_ntoh_timestamp(message.request_time) ;
|
||||
message.start_time = owl_ntoh_timestamp(message.start_time) ;
|
||||
request.request_time = owl_ntoh_timestamp(request.request_time) ;
|
||||
request.start_time = owl_ntoh_timestamp(request.start_time) ;
|
||||
|
||||
if (cfg_getbool(cfg, "verbose"))
|
||||
{
|
||||
ap_mac_str =
|
||||
owl_mac_bytes_to_string(message.ap_mac_addr_bytes) ;
|
||||
owl_mac_bytes_to_string(request.ap_mac_addr_bytes) ;
|
||||
mobile_mac_str =
|
||||
owl_mac_bytes_to_string(message.mobile_mac_addr_bytes) ;
|
||||
owl_mac_bytes_to_string(request.mobile_mac_addr_bytes) ;
|
||||
mobile_ip_str =
|
||||
ip_bytes_to_string(message.mobile_ip_addr_bytes) ;
|
||||
ip_bytes_to_string(request.mobile_ip_addr_bytes) ;
|
||||
owl_timestamp_to_string(request_time_str,
|
||||
message.request_time) ;
|
||||
owl_timestamp_to_string(start_time_str, message.start_time) ;
|
||||
request.request_time) ;
|
||||
owl_timestamp_to_string(start_time_str, request.start_time) ;
|
||||
printf("\n"
|
||||
"*** Request received from AP ***\n"
|
||||
"\tAP MAC: %s\n"
|
||||
|
@ -383,11 +383,11 @@ int read_loop(int sockfd)
|
|||
mobile_ip_str,
|
||||
request_time_str,
|
||||
start_time_str,
|
||||
message.antenna_signal_dbm - 0x100,
|
||||
message.x_position,
|
||||
message.y_position,
|
||||
message.z_position,
|
||||
message.direction
|
||||
request.antenna_signal_dbm - 0x100,
|
||||
request.x_position,
|
||||
request.y_position,
|
||||
request.z_position,
|
||||
request.direction
|
||||
) ;
|
||||
free(ap_mac_str) ;
|
||||
free(mobile_mac_str) ;
|
||||
|
@ -397,14 +397,14 @@ int read_loop(int sockfd)
|
|||
else
|
||||
{
|
||||
ap_mac_str =
|
||||
owl_mac_bytes_to_string(message.ap_mac_addr_bytes) ;
|
||||
owl_mac_bytes_to_string(request.ap_mac_addr_bytes) ;
|
||||
fprintf(stderr, "Request received from AP « %s ».\n",
|
||||
ap_mac_str) ;
|
||||
free(ap_mac_str) ;
|
||||
}
|
||||
#endif // DEBUG
|
||||
|
||||
got_couple_info(message) ;
|
||||
got_couple_info(request) ;
|
||||
}
|
||||
|
||||
return ret ;
|
||||
|
@ -435,7 +435,7 @@ void* monitor_couples()
|
|||
struct sockaddr_in serv;
|
||||
struct sockaddr_in client ;
|
||||
socklen_t serv_len = sizeof(serv);
|
||||
owl_request demande ;
|
||||
owl_request request ;
|
||||
owl_request_info info;
|
||||
int sockfd;
|
||||
|
||||
|
@ -503,24 +503,24 @@ void* monitor_couples()
|
|||
couple_ptr->x_position, couple_ptr->y_position,
|
||||
couple_ptr->z_position, couple_ptr->direction) ;
|
||||
|
||||
memcpy(demande.mobile_mac_addr_bytes,
|
||||
memcpy(request.mobile_mac_addr_bytes,
|
||||
couple_ptr->mobile_mac_addr_bytes, 6) ;
|
||||
demande.request_time = couple_ptr->request_time ;
|
||||
demande.nb_info = 0 ;
|
||||
request.request_time = couple_ptr->request_time ;
|
||||
request.nb_info = 0 ;
|
||||
|
||||
// Count the couples:
|
||||
couple_info_ptr = couple_ptr->info ;
|
||||
while (couple_info_ptr != NULL)
|
||||
{
|
||||
demande.nb_info++;
|
||||
request.nb_info++;
|
||||
couple_info_ptr = couple_info_ptr->next ;
|
||||
}
|
||||
// Endianess conversions:
|
||||
demande.nb_info = htons(demande.nb_info) ;
|
||||
demande.request_time =
|
||||
owl_hton_timestamp(demande.request_time) ;
|
||||
request.nb_info = htons(request.nb_info) ;
|
||||
request.request_time =
|
||||
owl_hton_timestamp(request.request_time) ;
|
||||
// Send the request:
|
||||
sendto(sockfd, &demande, sizeof(demande), 0,
|
||||
sendto(sockfd, &request, sizeof(request), 0,
|
||||
(struct sockaddr *)&serv, serv_len) ;
|
||||
|
||||
// Send couples to the server and empty the list
|
||||
|
@ -602,7 +602,7 @@ void* monitor_couples()
|
|||
/*
|
||||
* Treats a received packet.
|
||||
*/
|
||||
void got_couple_info(owl_captured_request message)
|
||||
void got_couple_info(owl_captured_request request)
|
||||
{
|
||||
couple_list *tmp_couple = NULL ;
|
||||
couple_info_list *tmp_info = NULL ;
|
||||
|
@ -612,8 +612,8 @@ void got_couple_info(owl_captured_request message)
|
|||
|
||||
/* Create a new couple */
|
||||
tmp_info = malloc(sizeof(couple_info_list)) ;
|
||||
memcpy(tmp_info->ap_mac_addr_bytes, message.ap_mac_addr_bytes, 6) ;
|
||||
tmp_info->antenna_signal_dbm = message.antenna_signal_dbm ;
|
||||
memcpy(tmp_info->ap_mac_addr_bytes, request.ap_mac_addr_bytes, 6) ;
|
||||
tmp_info->antenna_signal_dbm = request.antenna_signal_dbm ;
|
||||
tmp_info->next = NULL ;
|
||||
|
||||
/* Add it in the list */
|
||||
|
@ -623,22 +623,22 @@ void got_couple_info(owl_captured_request message)
|
|||
printf("Creating couple list.\n") ;
|
||||
tmp_couple = malloc(sizeof(couple_list)) ; // create it.
|
||||
memcpy(tmp_couple->mobile_mac_addr_bytes,
|
||||
message.mobile_mac_addr_bytes, 6) ;
|
||||
request.mobile_mac_addr_bytes, 6) ;
|
||||
// Explicit packet:
|
||||
if (owl_timestamp_to_ms(message.request_time) != 0)
|
||||
if (owl_timestamp_to_ms(request.request_time) != 0)
|
||||
// Transmission time on the mobile:
|
||||
tmp_couple->request_time = message.request_time ;
|
||||
tmp_couple->request_time = request.request_time ;
|
||||
// Implicit packet:
|
||||
else
|
||||
// Reception time on the AP:
|
||||
tmp_couple->request_time = message.start_time ;
|
||||
tmp_couple->request_time = request.start_time ;
|
||||
// Save locale time on the aggregator (not the reception time
|
||||
// on the AP):
|
||||
tmp_couple->start_time = start_time ;
|
||||
tmp_couple->x_position = message.x_position ;
|
||||
tmp_couple->y_position = message.y_position ;
|
||||
tmp_couple->z_position = message.z_position ;
|
||||
tmp_couple->direction = message.direction ;
|
||||
tmp_couple->x_position = request.x_position ;
|
||||
tmp_couple->y_position = request.y_position ;
|
||||
tmp_couple->z_position = request.z_position ;
|
||||
tmp_couple->direction = request.direction ;
|
||||
tmp_couple->next = NULL ;
|
||||
tmp_couple->info = tmp_info ;
|
||||
couples = tmp_couple ;
|
||||
|
@ -647,13 +647,13 @@ void got_couple_info(owl_captured_request message)
|
|||
else // If the couple list exists already
|
||||
{ // we search the list for the couple
|
||||
// Explicit packet:
|
||||
if (owl_timestamp_to_ms(message.request_time) != 0)
|
||||
if (owl_timestamp_to_ms(request.request_time) != 0)
|
||||
{
|
||||
while (tmp_couple != NULL)
|
||||
{ // Research criterion: MAC and transmission time
|
||||
if (owl_mac_equals(message.mobile_mac_addr_bytes,
|
||||
if (owl_mac_equals(request.mobile_mac_addr_bytes,
|
||||
tmp_couple->mobile_mac_addr_bytes) == 1
|
||||
&& owl_time_elapsed_ms(message.request_time,
|
||||
&& owl_time_elapsed_ms(request.request_time,
|
||||
tmp_couple->request_time) == 0)
|
||||
break ; // If the couple exists, we stop on it
|
||||
tmp_couple = tmp_couple->next ;
|
||||
|
@ -666,9 +666,9 @@ void got_couple_info(owl_captured_request message)
|
|||
{ // Research criterion: MAC addresses equals and reception
|
||||
// times on the APs less than 10 ms
|
||||
// TODO : define an option for the maximal difference time.
|
||||
if (owl_mac_equals(message.mobile_mac_addr_bytes,
|
||||
if (owl_mac_equals(request.mobile_mac_addr_bytes,
|
||||
tmp_couple->mobile_mac_addr_bytes) == 1
|
||||
&& owl_time_elapsed_ms(message.start_time,
|
||||
&& owl_time_elapsed_ms(request.start_time,
|
||||
tmp_couple->request_time) <= 10)
|
||||
break ; // If the couple exists, we stop on it
|
||||
tmp_couple = tmp_couple->next ;
|
||||
|
@ -680,22 +680,22 @@ void got_couple_info(owl_captured_request message)
|
|||
printf("Create new couple.\n") ;
|
||||
tmp_couple = malloc(sizeof(couple_list)) ; // create it.
|
||||
memcpy(tmp_couple->mobile_mac_addr_bytes,
|
||||
message.mobile_mac_addr_bytes, 6) ;
|
||||
request.mobile_mac_addr_bytes, 6) ;
|
||||
// Explicit packet:
|
||||
if (owl_timestamp_to_ms(message.request_time) != 0)
|
||||
if (owl_timestamp_to_ms(request.request_time) != 0)
|
||||
// Transmission time on the mobile:
|
||||
tmp_couple->request_time = message.request_time ;
|
||||
tmp_couple->request_time = request.request_time ;
|
||||
// Implicit packet:
|
||||
else
|
||||
// Reception time on the AP:
|
||||
tmp_couple->request_time = message.start_time ;
|
||||
tmp_couple->request_time = request.start_time ;
|
||||
// Save locale time on the aggregator (not the reception time
|
||||
// on the AP):
|
||||
tmp_couple->start_time = start_time ;
|
||||
tmp_couple->x_position = message.x_position ;
|
||||
tmp_couple->y_position = message.y_position ;
|
||||
tmp_couple->z_position = message.z_position ;
|
||||
tmp_couple->direction = message.direction ;
|
||||
tmp_couple->x_position = request.x_position ;
|
||||
tmp_couple->y_position = request.y_position ;
|
||||
tmp_couple->z_position = request.z_position ;
|
||||
tmp_couple->direction = request.direction ;
|
||||
tmp_couple->next = couples ;
|
||||
tmp_couple->info = tmp_info ;
|
||||
couples = tmp_couple ;
|
||||
|
@ -1018,7 +1018,7 @@ void order_send(ap_list *ap)
|
|||
&serv, &client) ;
|
||||
|
||||
message.order = AUTOCALIBRATION_ORDER_SEND ;
|
||||
nsent = sendto(sockfd, (void *)&message, sizeof(message), 0,
|
||||
nsent = sendto(sockfd, &message, sizeof(message), 0,
|
||||
(struct sockaddr *)&serv, serv_len) ;
|
||||
if (nsent != (ssize_t) sizeof(message))
|
||||
{
|
||||
|
|
Loading…
Reference in New Issue