Public Types | Data Fields
replay_moment Struct Reference

A replay moment. More...

#include <replay.h>

Public Types

enum  replay_event_type {
  repevt_nothing, repevt_front_query, repevt_front_reply, repevt_timeout,
  repevt_time_passes, repevt_back_reply, repevt_back_query, repevt_autotrust_check,
  repevt_error, repevt_assign, repevt_infra_rtt, repevt_traffic
}
 what happens this moment? More...
 

Data Fields

int time_step
 The replay time step number. More...
 
struct replay_momentmom_next
 Next replay moment in list of replay moments. More...
 
enum
replay_moment::replay_event_type 
evt_type
 variable with what is to happen this moment
 
struct entrymatch
 The sent packet must match this. More...
 
struct timeval elapse
 the amount of time that passes
 
struct sockaddr_storage addr
 address that must be matched, or packet remote host address. More...
 
socklen_t addrlen
 length of addr, if 0, then any address will do
 
char * variable
 macro name, for assign. More...
 
char * string
 string argument, for assign. More...
 
char * autotrust_id
 the autotrust file id to check
 
struct config_strlistfile_content
 file contents to match, one string per line
 

Detailed Description

A replay moment.

Basically, it consists of events to a fake select() call. This is a recording of an event that happens. And if output is presented, what is done with that.

Member Enumeration Documentation

what happens this moment?

Enumerator
repevt_nothing 

nothing happens, as if this event is not there.

repevt_front_query 

incoming query

repevt_front_reply 

test fails if reply to query does not match

repevt_timeout 

timeout

repevt_time_passes 

time passes

repevt_back_reply 

reply arrives from the network

repevt_back_query 

test fails if query to the network does not match

repevt_autotrust_check 

check autotrust key file

repevt_error 

an error happens to outbound query

repevt_assign 

assignment to a variable

repevt_infra_rtt 

store infra rtt cache entry: addr and string (int)

repevt_traffic 

cause traffic to flow

Field Documentation

int replay_moment::time_step

The replay time step number.

Starts at 0, time is incremented every time the fake select() is run.

Referenced by answer_check_it(), autotrust_check(), do_moment_and_advance(), moment_assign(), pending_find_match(), pending_udp_query(), replay_moment_read(), replay_scenario_read(), and run_scenario().

struct replay_moment* replay_moment::mom_next

Next replay moment in list of replay moments.

Referenced by advance_moment(), replay_scenario_delete(), and replay_scenario_read().

struct entry* replay_moment::match
struct sockaddr_storage replay_moment::addr

address that must be matched, or packet remote host address.

Referenced by answer_check_it(), do_infra_rtt(), fake_front_query(), pending_matches_current(), pending_udp_query(), and replay_moment_read().

char* replay_moment::variable
char* replay_moment::string

The documentation for this struct was generated from the following file: