30 #define M0_TRACE_SUBSYSTEM M0_TRACE_SUBSYS_XCODE 50 #undef __MOTR_XCODE_XLIST_H__ 57 #define _XT(x) M0_EXTERN struct m0_xcode_type *x; 58 #include "xcode/xlist.h" 62 #undef __MOTR_XCODE_XLIST_H__ 66 #include "xcode/xlist.h" 78 static int cmp(
const void *p0,
const void *p1);
84 printf(
"\n%-30s %8.8s %6zi",
111 printf(
"Motr binary protocol\n");
113 printf(
"Total structures: %zu\n", total_structs);
123 static int cmp(
const void *p0,
const void *p1)
134 i,
f->xf_name,
f->xf_type->xct_name,
f->xf_offset,
f->xf_tag);
141 "Usage: %s [options]\n" 142 " -p|--only-proto print only protocol, skip" 143 " any other useful info\n" 144 " -d|--domain DOM print only protocol for a particular" 145 " xcode domain, available domains are:" 146 " 'be', 'conf' and 'rpc'\n" 148 " -v|--version print version information\n" 149 " -h|--help print usage information\n",
153 int main(
int argc,
char **argv)
156 bool only_protocol =
false;
157 int xcode_domain = 0;
175 for (
i = 1;
i < argc; ++
i) {
176 if (strcmp(argv[
i],
"-p") == 0 ||
177 strcmp(argv[
i],
"--only-proto") == 0)
179 only_protocol =
true;
182 if (strcmp(argv[
i],
"-d") == 0 ||
183 strcmp(argv[
i],
"--domain") == 0)
186 warnx(
"Error: missing argument for" 187 " '-d|--domain' option\n");
192 if (strcmp(argv[
i + 1],
"be") == 0) {
194 }
else if (strcmp(argv[
i + 1],
"conf") == 0) {
196 }
else if (strcmp(argv[
i + 1],
"rpc") == 0) {
199 warnx(
"Error: invaid domain '%s' specified for" 200 " '-d|--domain' option\n", argv[
i + 1]);
206 only_protocol =
true;
209 if (strcmp(argv[
i],
"-v") == 0 ||
210 strcmp(argv[
i],
"--version") == 0)
217 if (strcmp(argv[
i],
"-h") == 0 ||
218 strcmp(argv[
i],
"--help") == 0)
223 warnx(
"Error: unknown option '%s'\n", argv[
i]);
237 err(EX_CONFIG,
"Cannot initialise motr: %d", result);
247 #undef M0_TRACE_SUBSYSTEM
struct m0_xcode_field xct_child[0]
int m0_init(struct m0 *instance)
static struct m0_xcode_type ** xt[]
static const char * xcode_domain_name
void m0_build_info_print(void)
enum m0_xode_atom_type xct_atype
void m0_node_uuid_string_set(const char *uuid)
static struct m0_stob_domain * dom
static const char * progname
const char * m0_xcode_atom_type_name[M0_XAT_NR]
const char * m0_xcode_aggr_name[M0_XA_NR]
static void type_print(const struct m0_xcode_type *xt)
static void field_print(const struct m0_xcode_field *f, int i)
static int cmp(const void *p0, const void *p1)
enum m0_xcode_aggr xct_aggr
void(* m0_sm__conf_init)(const struct m0_sm_conf *conf)
static void protocol_print(int dom)
int main(int argc, char **argv)
void usage_print(const char *progname)
M0_INTERNAL void m0_sm_conf_print(const struct m0_sm_conf *conf)
static struct m0 instance
M0_INTERNAL void m0_trace_set_mmapped_buffer(bool val)