/* Initialize PNIO RTC1 stationInfo memory */ void init_pnio_rtc1_station(stationInfo *station_info) { station_info->iocs_data_in = wmem_list_new(wmem_file_scope()); station_info->iocs_data_out = wmem_list_new(wmem_file_scope()); station_info->ioobject_data_in = wmem_list_new(wmem_file_scope()); station_info->ioobject_data_out = wmem_list_new(wmem_file_scope()); station_info->diff_module = wmem_list_new(wmem_file_scope()); }
static void hpfeeds_stats_tree_init(stats_tree* st) { st_node_channels_payload = stats_tree_create_node(st, st_str_channels_payload, 0, TRUE); st_node_opcodes = stats_tree_create_pivot(st, st_str_opcodes, 0); channels_list = wmem_list_new(wmem_epan_scope()); }
static ipmi_packet_data_t * get_packet_data(packet_info * pinfo) { ipmi_packet_data_t * data; /* get conversation data */ conversation_t * conv = find_or_create_conversation(pinfo); /* get protocol-specific data */ data = (ipmi_packet_data_t *) conversation_get_proto_data(conv, proto_ipmi); if (!data) { /* allocate per-packet data */ data = wmem_new0(wmem_file_scope(), ipmi_packet_data_t); /* allocate request list and frame tree */ data->frame_tree = wmem_tree_new(wmem_file_scope()); data->request_list = wmem_list_new(wmem_file_scope()); /* add protocol data */ conversation_add_proto_data(conv, proto_ipmi, data); } /* check if packet has changed */ if (pinfo->num != data->curr_frame_num) { data->curr_level = 0; data->next_level = 0; } return data; }
wmem_list_t * wmem_itree_find_intervals(wmem_itree_t *tree, wmem_allocator_t *allocator, guint64 low, guint64 high) { wmem_list_t *results = NULL; wmem_range_t requested = { low, high, 0 }; results = wmem_list_new(allocator); wmem_itree_find_intervals_in_subtree(tree->root, requested, results); return results; }
static lbttcp_transport_t * lbttcp_transport_create(const address * source_address, guint16 source_port, guint32 session_id) { lbttcp_transport_t * transport = NULL; transport = wmem_new(wmem_file_scope(), lbttcp_transport_t); copy_address_wmem(wmem_file_scope(), &(transport->source_address), source_address); transport->source_port = source_port; transport->session_id = session_id; transport->channel = lbm_channel_assign(LBM_CHANNEL_TRANSPORT_LBTTCP); transport->next_client_id = 1; transport->client_list = wmem_list_new(wmem_file_scope()); return (transport); }
void register_stat_tap_ui(stat_tap_ui *ui, void *userdata) { stat_cmd_arg *newsca; if (stat_cmd_arg_list == NULL) stat_cmd_arg_list = wmem_list_new(wmem_epan_scope()); /* Key is already present */ if (wmem_list_find_custom(stat_cmd_arg_list, ui->cli_string, search_duplicate)) return; newsca = wmem_new(wmem_epan_scope(), stat_cmd_arg); newsca->cmd= wmem_strdup(wmem_epan_scope(), ui->cli_string); newsca->func=ui->tap_init_cb; newsca->userdata=userdata; wmem_list_insert_sorted(stat_cmd_arg_list, newsca, sort_by_name); }
static void wmem_test_list(void) { wmem_allocator_t *allocator; wmem_list_t *list; wmem_list_frame_t *frame; unsigned int i; allocator = wmem_allocator_new(WMEM_ALLOCATOR_STRICT); list = wmem_list_new(allocator); g_assert(list); g_assert(wmem_list_count(list) == 0); frame = wmem_list_head(list); g_assert(frame == NULL); for (i=0; i<CONTAINER_ITERS; i++) { wmem_list_prepend(list, GINT_TO_POINTER(i)); g_assert(wmem_list_count(list) == i+1); frame = wmem_list_head(list); g_assert(frame); g_assert(wmem_list_frame_data(frame) == GINT_TO_POINTER(i)); } wmem_strict_check_canaries(allocator); i = CONTAINER_ITERS - 1; frame = wmem_list_head(list); while (frame) { g_assert(wmem_list_frame_data(frame) == GINT_TO_POINTER(i)); i--; frame = wmem_list_frame_next(frame); } i = 0; frame = wmem_list_tail(list); while (frame) { g_assert(wmem_list_frame_data(frame) == GINT_TO_POINTER(i)); i++; frame = wmem_list_frame_prev(frame); } i = CONTAINER_ITERS - 2; while (wmem_list_count(list) > 1) { wmem_list_remove(list, GINT_TO_POINTER(i)); i--; } wmem_list_remove(list, GINT_TO_POINTER(CONTAINER_ITERS - 1)); g_assert(wmem_list_count(list) == 0); g_assert(wmem_list_head(list) == NULL); g_assert(wmem_list_tail(list) == NULL); for (i=0; i<CONTAINER_ITERS; i++) { wmem_list_append(list, GINT_TO_POINTER(i)); g_assert(wmem_list_count(list) == i+1); frame = wmem_list_head(list); g_assert(frame); } wmem_strict_check_canaries(allocator); i = 0; frame = wmem_list_head(list); while (frame) { g_assert(wmem_list_frame_data(frame) == GINT_TO_POINTER(i)); i++; frame = wmem_list_frame_next(frame); } i = CONTAINER_ITERS - 1; frame = wmem_list_tail(list); while (frame) { g_assert(wmem_list_frame_data(frame) == GINT_TO_POINTER(i)); i--; frame = wmem_list_frame_prev(frame); } wmem_destroy_allocator(allocator); list = wmem_list_new(NULL); for (i=0; i<CONTAINER_ITERS; i++) { wmem_list_prepend(list, GINT_TO_POINTER(i)); } g_assert(wmem_list_count(list) == CONTAINER_ITERS); wmem_destroy_list(list); }