list assigned leases using "ipsec leases"

This commit is contained in:
Martin Willi
2008-12-10 13:00:02 +00:00
parent ed2bcd0315
commit 6b83549d1a
10 changed files with 245 additions and 8 deletions
+18
View File
@@ -259,6 +259,18 @@ static int purge(stroke_keyword_t kw)
return send_stroke_msg(&msg);
}
static int leases(stroke_keyword_t kw, char *pool, char *address)
{
stroke_msg_t msg;
msg.type = STR_LEASES;
msg.length = offsetof(stroke_msg_t, buffer);
msg.leases.pool = push_string(&msg, pool);
msg.leases.address = push_string(&msg, address);
return send_stroke_msg(&msg);
}
static int set_loglevel(char *type, u_int level)
{
stroke_msg_t msg;
@@ -318,6 +330,8 @@ static void exit_usage(char *error)
printf(" stroke rereadsecrets|rereadcrls|rereadall\n");
printf(" Purge ocsp cache entries:\n");
printf(" stroke purgeocsp\n");
printf(" Show leases of a pool:\n");
printf(" stroke leases [POOL [ADDRESS]]\n");
exit_error(error);
}
@@ -429,6 +443,10 @@ int main(int argc, char *argv[])
case STROKE_PURGE_OCSP:
res = purge(token->kw);
break;
case STROKE_LEASES:
res = leases(token->kw, argc > 2 ? argv[2] : NULL,
argc > 3 ? argv[3] : NULL);
break;
default:
exit_usage(NULL);
}
+2 -1
View File
@@ -49,7 +49,8 @@ typedef enum {
STROKE_REREAD_ACERTS,
STROKE_REREAD_CRLS,
STROKE_REREAD_ALL,
STROKE_PURGE_OCSP
STROKE_PURGE_OCSP,
STROKE_LEASES
} stroke_keyword_t;
#define STROKE_LIST_FIRST STROKE_LIST_PUBKEYS
+3 -2
View File
@@ -52,8 +52,9 @@ listall, STROKE_LIST_ALL
rereadsecrets, STROKE_REREAD_SECRETS
rereadcacerts, STROKE_REREAD_CACERTS
rereadocspcerts, STROKE_REREAD_OCSPCERTS
rereadaacerts, STROKE_REREAD_AACERTS,
rereadacerts, STROKE_REREAD_ACERTS,
rereadaacerts, STROKE_REREAD_AACERTS
rereadacerts, STROKE_REREAD_ACERTS
rereadcrls, STROKE_REREAD_CRLS
rereadall, STROKE_REREAD_ALL
purgeocsp, STROKE_PURGE_OCSP
leases, STROKE_LEASES
+9 -1
View File
@@ -181,7 +181,9 @@ struct stroke_msg_t {
/* reread various objects */
STR_REREAD,
/* purge various objects */
STR_PURGE
STR_PURGE,
/* show pool leases */
STR_LEASES,
/* more to come */
} type;
@@ -278,6 +280,12 @@ struct stroke_msg_t {
struct {
purge_flag_t flags;
} purge;
/* data for STR_LEASES */
struct {
char *pool;
char *address;
} leases;
};
char buffer[STROKE_BUF_LEN];
};