28#include "xdr_gen/xcom_vp.h"
30#ifdef PAX_MSG_SANITY_CHECK
31#define PAX_MSG_SANITY_CHECK(p) \
33 if ((p) && !(p)->a && (p)->msg_type == normal) { \
34 assert((p)->op != client_msg); \
35 assert((p)->op != ack_prepare_op); \
36 assert((p)->op != accept_op); \
37 assert((p)->op != learn_op); \
41#define PAX_MSG_SANITY_CHECK(p)
44#define CLONE_PAX_MSG(target, msg) \
45 replace_pax_msg((&target), clone_pax_msg_no_app(msg))
53ballot *
init_ballot(ballot *bal,
int cnt, node_no node);
63#define replace_pax_msg(target, p) \
65 PAX_MSG_SANITY_CHECK(p); \
66 unchecked_replace_pax_msg(target, p); \
const char * p
Definition: ctype-mb.cc:1225
pax_msg * pax_msg_new_0(synode_no synode)
Definition: pax_msg.cc:85
void delete_pax_msg(pax_msg *p)
Definition: pax_msg.cc:115
void dbg_ballot(ballot const *p, char *s)
char * dbg_pax_msg(pax_msg const *p)
pax_msg * clone_pax_msg(pax_msg *msg)
Definition: pax_msg.cc:103
pax_msg * clone_pax_msg_no_app(pax_msg *msg)
Definition: pax_msg.cc:91
int unref_msg(pax_msg **pp)
Definition: pax_msg.cc:126
void add_ballot_event(ballot const bal)
pax_msg * pax_msg_new(synode_no synode, site_def const *site)
Definition: pax_msg.cc:79
ballot * init_ballot(ballot *bal, int cnt, node_no node)
Definition: pax_msg.cc:181
void unchecked_replace_pax_msg(pax_msg **target, pax_msg *p)
Definition: pax_msg.cc:139
int gt_ballot(ballot x, ballot y)
Definition: pax_msg.cc:189
int eq_ballot(ballot x, ballot y)
Definition: pax_msg.cc:187
int ref_msg(pax_msg *p)
Definition: pax_msg.cc:120
struct pax_msg pax_msg
Definition: site_struct.h:37
Definition: site_struct.h:43