unbound 0.1
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.
struct replay_momentmom_next
 Next replay moment in list of replay moments.
enum
replay_moment::replay_event_type 
evt_type
 variable with what is to happen this moment
struct entrymatch
 The sent packet must match this.
struct timeval elapse
 the amount of time that passes
struct sockaddr_storage addr
 address that must be matched, or packet remote host address.
socklen_t addrlen
 length of addr, if 0, then any address will do
ldns_rr * qname
 what pending query should timeout or is answered.
char * variable
 macro name, for assign.
char * string
 string argument, for assign.
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

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(), outnet_serviced_query(), pending_find_match(), pending_tcp_query(), pending_udp_query(), replay_moment_read(), replay_scenario_read(), and run_scenario().

Next replay moment in list of replay moments.

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

struct sockaddr_storage replay_moment::addr

what pending query should timeout or is answered.

or NULL for last sent query. Unused at this time.

Referenced by fake_pending_callback().

macro name, for assign.

Referenced by moment_assign(), read_assign_step(), and replay_moment_delete().


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