Example #1
0
int main(int argc , char* argv[])
{	
    int print_mask = 0xffffffff;
    if (argc > 1)
    {  
    	print_mask = strtol(argv[argc-1], NULL, 16);        
    }    
    if (print_mask == 0)
        print_mask = ((1<<UGW_NEIGHBOR_WLAN_INFO) | (1<<UGW_RADIO_INFO) | (1<<UGW_STA_AUTH_NOTIF));
    printf("\n************print mask=[0x%X]\n", print_mask);  
	
	char str[] = "hello world";
    ugw_netlink_init();	
    printf("************sock_fd:%d.\n", ugw_netlink_sock);
	ugw_netlink_sendmsg(str, sizeof(str));
	
	while (1)
	{
        ugw_netlink_data_t *report_data;
        int recv_len;
		ugw_netlink_recvmsg((void**)&report_data, &recv_len);
        if (-1 == msg_proc(report_data, recv_len, print_mask))
        {
            continue;
        }

		usleep(100000);
	}
    
	ugw_netlink_destroy();
	
	return 0;
}
Example #2
0
void *message_travel(void *arg)
{
	struct message_t *msg;
	while(1) {
		sleep(argument.msgitv);
		if(head == NULL) continue;
		while((msg = message_delete())) {
			msg_proc((void *)msg->data, msg->len, msg->proto);
			message_free(msg);
		}
		sys_debug("Message travel pthreads (next %d second later)\n", 
			argument.msgitv);
	}
	return NULL;
}