Added a stroke memusage command to show memory usage
This commit is contained in:
@@ -417,6 +417,18 @@ static void stroke_leases(private_stroke_socket_t *this,
|
|||||||
this->list->leases(this->list, msg, out);
|
this->list->leases(this->list, msg, out);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Show memory usage
|
||||||
|
*/
|
||||||
|
static void stroke_memusage(private_stroke_socket_t *this,
|
||||||
|
stroke_msg_t *msg, FILE *out)
|
||||||
|
{
|
||||||
|
if (lib->leak_detective)
|
||||||
|
{
|
||||||
|
lib->leak_detective->usage(lib->leak_detective, out);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* set the verbosity debug output
|
* set the verbosity debug output
|
||||||
*/
|
*/
|
||||||
@@ -572,6 +584,9 @@ static job_requeue_t process(stroke_job_context_t *ctx)
|
|||||||
case STR_LEASES:
|
case STR_LEASES:
|
||||||
stroke_leases(this, msg, out);
|
stroke_leases(this, msg, out);
|
||||||
break;
|
break;
|
||||||
|
case STR_MEMUSAGE:
|
||||||
|
stroke_memusage(this, msg, out);
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
DBG1(DBG_CFG, "received unknown stroke");
|
DBG1(DBG_CFG, "received unknown stroke");
|
||||||
break;
|
break;
|
||||||
|
|||||||
@@ -326,6 +326,15 @@ static int leases(stroke_keyword_t kw, char *pool, char *address)
|
|||||||
return send_stroke_msg(&msg);
|
return send_stroke_msg(&msg);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static int memusage()
|
||||||
|
{
|
||||||
|
stroke_msg_t msg;
|
||||||
|
|
||||||
|
msg.type = STR_MEMUSAGE;
|
||||||
|
msg.length = offsetof(stroke_msg_t, buffer);
|
||||||
|
return send_stroke_msg(&msg);
|
||||||
|
}
|
||||||
|
|
||||||
static int set_loglevel(char *type, u_int level)
|
static int set_loglevel(char *type, u_int level)
|
||||||
{
|
{
|
||||||
stroke_msg_t msg;
|
stroke_msg_t msg;
|
||||||
@@ -530,6 +539,9 @@ int main(int argc, char *argv[])
|
|||||||
res = leases(token->kw, argc > 2 ? argv[2] : NULL,
|
res = leases(token->kw, argc > 2 ? argv[2] : NULL,
|
||||||
argc > 3 ? argv[3] : NULL);
|
argc > 3 ? argv[3] : NULL);
|
||||||
break;
|
break;
|
||||||
|
case STROKE_MEMUSAGE:
|
||||||
|
res = memusage();
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
exit_usage(NULL);
|
exit_usage(NULL);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -54,6 +54,7 @@ typedef enum {
|
|||||||
STROKE_PURGE_IKE,
|
STROKE_PURGE_IKE,
|
||||||
STROKE_EXPORT_X509,
|
STROKE_EXPORT_X509,
|
||||||
STROKE_LEASES,
|
STROKE_LEASES,
|
||||||
|
STROKE_MEMUSAGE,
|
||||||
} stroke_keyword_t;
|
} stroke_keyword_t;
|
||||||
|
|
||||||
#define STROKE_LIST_FIRST STROKE_LIST_PUBKEYS
|
#define STROKE_LIST_FIRST STROKE_LIST_PUBKEYS
|
||||||
|
|||||||
@@ -61,3 +61,4 @@ purgecerts, STROKE_PURGE_CERTS
|
|||||||
purgeike, STROKE_PURGE_IKE
|
purgeike, STROKE_PURGE_IKE
|
||||||
exportx509, STROKE_EXPORT_X509
|
exportx509, STROKE_EXPORT_X509
|
||||||
leases, STROKE_LEASES
|
leases, STROKE_LEASES
|
||||||
|
memusage, STROKE_MEMUSAGE
|
||||||
|
|||||||
@@ -212,6 +212,8 @@ struct stroke_msg_t {
|
|||||||
STR_LEASES,
|
STR_LEASES,
|
||||||
/* export credentials */
|
/* export credentials */
|
||||||
STR_EXPORT,
|
STR_EXPORT,
|
||||||
|
/* print memory usage details */
|
||||||
|
STR_MEMUSAGE,
|
||||||
/* more to come */
|
/* more to come */
|
||||||
} type;
|
} type;
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user