emu_queue.h File Reference

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  emu_queue_item
struct  emu_queue

Functions

struct emu_queue_itememu_queue_item_new (void)
void emu_queue_item_free (struct emu_queue_item *eqi)
struct emu_queueemu_queue_new (void)
void emu_queue_free (struct emu_queue *eq)
void * emu_queue_front (struct emu_queue *eq)
void emu_queue_enqueue (struct emu_queue *eq, void *data)
void * emu_queue_dequeue (struct emu_queue *eq)
bool emu_queue_empty (struct emu_queue *eq)

Function Documentation

void* emu_queue_dequeue ( struct emu_queue eq  ) 

Dequeue the first element from the queue

Parameters:
eq the queue
Returns:
pointer to the data of the first element

References emu_queue::back, emu_queue_item::data, emu_queue_empty(), emu_queue_item_free(), emu_queue::front, and emu_queue_item::next.

Referenced by emu_graph_loop_detect(), emu_graph_path_exists(), emu_queue_free(), emu_shellcode_run_and_track(), emu_source_backward_bfs(), and emu_source_forward_bfs().

Here is the call graph for this function:

bool emu_queue_empty ( struct emu_queue eq  ) 

Check if the queue is empty

Parameters:
eq the queue
Returns:
true if the queue is empty, else false

References emu_queue::front.

Referenced by emu_graph_loop_detect(), emu_graph_path_exists(), emu_queue_dequeue(), emu_queue_enqueue(), emu_queue_free(), emu_shellcode_run_and_track(), emu_source_backward_bfs(), and emu_source_forward_bfs().

void emu_queue_enqueue ( struct emu_queue eq,
void *  data 
)

Enqueue data into the queue.

Parameters:
eq the queue
data the data to enqueue

References emu_queue::back, emu_queue_item::data, emu_queue_empty(), emu_queue_item_new(), emu_queue::front, and emu_queue_item::next.

Referenced by emu_graph_loop_detect(), emu_graph_path_exists(), emu_shellcode_run_and_track(), emu_source_backward_bfs(), and emu_source_forward_bfs().

Here is the call graph for this function:

void emu_queue_free ( struct emu_queue eq  ) 
void* emu_queue_front ( struct emu_queue eq  ) 

Retrieve the pointer to the first element

Parameters:
eq the queue
Returns:
returns the pointer to the first element

References emu_queue_item::data, and emu_queue::front.

void emu_queue_item_free ( struct emu_queue_item eqi  ) 

Referenced by emu_queue_dequeue().

struct emu_queue_item* emu_queue_item_new ( void   )  [read]

Referenced by emu_queue_enqueue().

struct emu_queue* emu_queue_new ( void   )  [read]

Create a new queue

Returns:
on success: pointer to the new queue on failure: NULL

Referenced by emu_graph_loop_detect(), emu_graph_path_exists(), emu_shellcode_run_and_track(), emu_source_backward_bfs(), and emu_source_forward_bfs().


Generated on Sun Jan 9 16:48:18 2011 for libemu by  doxygen 1.6.1