#include <jansson.h>
#include <gmodule.h>
#include <gssapi.h>
-
-//#include <trp_internal.h>
+#include <trust_router/tid.h>
+#include <trp_internal.h>
#include <tr_gss_names.h>
#include <tr_gss_client.h>
#include <tr_name_internal.h>
enum mon_opt_type {
OPT_TYPE_UNKNOWN=0,
+ OPT_TYPE_ANY,
// System information
OPT_TYPE_SHOW_VERSION,
- OPT_TYPE_SHOW_SERIAL,
+ OPT_TYPE_SHOW_CONFIG_FILES,
// System statistics
OPT_TYPE_SHOW_UPTIME,
OPT_TYPE_SHOW_TID_REQ_COUNT,
+ OPT_TYPE_SHOW_TID_REQ_ERR_COUNT,
OPT_TYPE_SHOW_TID_REQ_PENDING,
// Dynamic trust router state
OPT_TYPE_SHOW_ROUTES,
- OPT_TYPE_SHOW_COMMUNITIES
+ OPT_TYPE_SHOW_PEERS,
+ OPT_TYPE_SHOW_COMMUNITIES,
+ OPT_TYPE_SHOW_REALMS,
+ OPT_TYPE_SHOW_RP_CLIENTS
};
struct mon_opt {
const char *hostname;
unsigned int port;
TR_GSS_NAMES *authorized_gss_names;
- void *tids; // TODO sort out header file cycles and use typed pointers
- void *trps; // TODO sort out header file cycles and use typed pointers
+ TIDS_INSTANCE *tids;
+ TRPS_INSTANCE *trps;
MONS_REQ_FUNC *req_handler;
MONS_AUTH_FUNC *auth_handler;
void *cookie;
+ GPtrArray *handlers;
+ GArray *pids; /* PIDs of active mons processes */
};
/* Client instance */
/* mon_resp.c */
MON_RESP *mon_resp_new(TALLOC_CTX *mem_ctx, MON_RESP_CODE code, const char *msg, json_t *payload);
void mon_resp_free(MON_RESP *resp);
+int mon_resp_set_message(MON_RESP *resp, const char *new_msg);
+void mon_resp_set_payload(MON_RESP *resp, json_t *new_payload);
/* mon_resp_encode.c */
json_t *mon_resp_encode(MON_RESP *resp);