kernel: Use a time_t to report use time in query_sa()

This commit is contained in:
Martin Willi
2013-10-11 10:23:17 +02:00
parent b59bcba2b3
commit c99458e94e
11 changed files with 15 additions and 15 deletions
+1 -1
View File
@@ -217,7 +217,7 @@ sad_failure:
METHOD(kernel_ipsec_t, query_sa, status_t, METHOD(kernel_ipsec_t, query_sa, status_t,
private_tkm_kernel_ipsec_t *this, host_t *src, host_t *dst, private_tkm_kernel_ipsec_t *this, host_t *src, host_t *dst,
u_int32_t spi, u_int8_t protocol, mark_t mark, u_int64_t *bytes, u_int32_t spi, u_int8_t protocol, mark_t mark, u_int64_t *bytes,
u_int64_t *packets, u_int32_t *time) u_int64_t *packets, time_t *time)
{ {
return NOT_SUPPORTED; return NOT_SUPPORTED;
} }
@@ -86,7 +86,7 @@ METHOD(kernel_ipsec_t, update_sa, status_t,
METHOD(kernel_ipsec_t, query_sa, status_t, METHOD(kernel_ipsec_t, query_sa, status_t,
private_kernel_android_ipsec_t *this, host_t *src, host_t *dst, private_kernel_android_ipsec_t *this, host_t *src, host_t *dst,
u_int32_t spi, u_int8_t protocol, mark_t mark, u_int32_t spi, u_int8_t protocol, mark_t mark,
u_int64_t *bytes, u_int64_t *packets, u_int32_t *time) u_int64_t *bytes, u_int64_t *packets, time_t *time)
{ {
return NOT_SUPPORTED; return NOT_SUPPORTED;
} }
@@ -268,7 +268,7 @@ METHOD(kernel_ipsec_t, update_sa, status_t,
METHOD(kernel_ipsec_t, query_sa, status_t, METHOD(kernel_ipsec_t, query_sa, status_t,
private_kernel_libipsec_ipsec_t *this, host_t *src, host_t *dst, private_kernel_libipsec_ipsec_t *this, host_t *src, host_t *dst,
u_int32_t spi, u_int8_t protocol, mark_t mark, u_int64_t *bytes, u_int32_t spi, u_int8_t protocol, mark_t mark, u_int64_t *bytes,
u_int64_t *packets, u_int32_t *time) u_int64_t *packets, time_t *time)
{ {
return NOT_SUPPORTED; return NOT_SUPPORTED;
} }
@@ -71,7 +71,7 @@ METHOD(kernel_ipsec_t, update_sa, status_t,
METHOD(kernel_ipsec_t, query_sa, status_t, METHOD(kernel_ipsec_t, query_sa, status_t,
private_load_tester_ipsec_t *this, host_t *src, host_t *dst, private_load_tester_ipsec_t *this, host_t *src, host_t *dst,
u_int32_t spi, u_int8_t protocol, mark_t mark, u_int32_t spi, u_int8_t protocol, mark_t mark,
u_int64_t *bytes, u_int64_t *packets, u_int32_t *time) u_int64_t *bytes, u_int64_t *packets, time_t *time)
{ {
return NOT_SUPPORTED; return NOT_SUPPORTED;
} }
+3 -3
View File
@@ -167,12 +167,12 @@ struct private_child_sa_t {
/** /**
* time of last use in seconds (inbound) * time of last use in seconds (inbound)
*/ */
u_int32_t my_usetime; time_t my_usetime;
/** /**
* time of last use in seconds (outbound) * time of last use in seconds (outbound)
*/ */
u_int32_t other_usetime; time_t other_usetime;
/** /**
* last number of inbound bytes * last number of inbound bytes
@@ -429,7 +429,7 @@ static status_t update_usebytes(private_child_sa_t *this, bool inbound)
{ {
status_t status = FAILED; status_t status = FAILED;
u_int64_t bytes, packets; u_int64_t bytes, packets;
u_int32_t time; time_t time;
if (inbound) if (inbound)
{ {
+1 -1
View File
@@ -208,7 +208,7 @@ METHOD(kernel_interface_t, update_sa, status_t,
METHOD(kernel_interface_t, query_sa, status_t, METHOD(kernel_interface_t, query_sa, status_t,
private_kernel_interface_t *this, host_t *src, host_t *dst, private_kernel_interface_t *this, host_t *src, host_t *dst,
u_int32_t spi, u_int8_t protocol, mark_t mark, u_int32_t spi, u_int8_t protocol, mark_t mark,
u_int64_t *bytes, u_int64_t *packets, u_int32_t *time) u_int64_t *bytes, u_int64_t *packets, time_t *time)
{ {
if (!this->ipsec) if (!this->ipsec)
{ {
+2 -2
View File
@@ -200,12 +200,12 @@ struct kernel_interface_t {
* @param mark optional mark for this SA * @param mark optional mark for this SA
* @param[out] bytes the number of bytes processed by SA * @param[out] bytes the number of bytes processed by SA
* @param[out] packets number of packets processed by SA * @param[out] packets number of packets processed by SA
* @param[out] time last time of SA use * @param[out] time last (monotonic) time of SA use
* @return SUCCESS if operation completed * @return SUCCESS if operation completed
*/ */
status_t (*query_sa) (kernel_interface_t *this, host_t *src, host_t *dst, status_t (*query_sa) (kernel_interface_t *this, host_t *src, host_t *dst,
u_int32_t spi, u_int8_t protocol, mark_t mark, u_int32_t spi, u_int8_t protocol, mark_t mark,
u_int64_t *bytes, u_int64_t *packets, u_int32_t *time); u_int64_t *bytes, u_int64_t *packets, time_t *time);
/** /**
* Delete a previously installed SA from the SAD. * Delete a previously installed SA from the SAD.
+2 -2
View File
@@ -156,12 +156,12 @@ struct kernel_ipsec_t {
* @param mark optional mark for this SA * @param mark optional mark for this SA
* @param[out] bytes the number of bytes processed by SA * @param[out] bytes the number of bytes processed by SA
* @param[out] packets number of packets processed by SA * @param[out] packets number of packets processed by SA
* @param[out] time last time of SA use * @param[out] time last (monotonic) time of SA use
* @return SUCCESS if operation completed * @return SUCCESS if operation completed
*/ */
status_t (*query_sa) (kernel_ipsec_t *this, host_t *src, host_t *dst, status_t (*query_sa) (kernel_ipsec_t *this, host_t *src, host_t *dst,
u_int32_t spi, u_int8_t protocol, mark_t mark, u_int32_t spi, u_int8_t protocol, mark_t mark,
u_int64_t *bytes, u_int64_t *packets, u_int32_t *time); u_int64_t *bytes, u_int64_t *packets, time_t *time);
/** /**
* Delete a previusly installed SA from the SAD. * Delete a previusly installed SA from the SAD.
@@ -1911,7 +1911,7 @@ METHOD(kernel_ipsec_t, update_sa, status_t,
METHOD(kernel_ipsec_t, query_sa, status_t, METHOD(kernel_ipsec_t, query_sa, status_t,
private_kernel_klips_ipsec_t *this, host_t *src, host_t *dst, private_kernel_klips_ipsec_t *this, host_t *src, host_t *dst,
u_int32_t spi, u_int8_t protocol, mark_t mark, u_int32_t spi, u_int8_t protocol, mark_t mark,
u_int64_t *bytes, u_int64_t *packets, u_int32_t *time) u_int64_t *bytes, u_int64_t *packets, time_t *time)
{ {
return NOT_SUPPORTED; /* TODO */ return NOT_SUPPORTED; /* TODO */
} }
@@ -1611,7 +1611,7 @@ static void get_replay_state(private_kernel_netlink_ipsec_t *this,
METHOD(kernel_ipsec_t, query_sa, status_t, METHOD(kernel_ipsec_t, query_sa, status_t,
private_kernel_netlink_ipsec_t *this, host_t *src, host_t *dst, private_kernel_netlink_ipsec_t *this, host_t *src, host_t *dst,
u_int32_t spi, u_int8_t protocol, mark_t mark, u_int32_t spi, u_int8_t protocol, mark_t mark,
u_int64_t *bytes, u_int64_t *packets, u_int32_t *time) u_int64_t *bytes, u_int64_t *packets, time_t *time)
{ {
netlink_buf_t request; netlink_buf_t request;
struct nlmsghdr *out = NULL, *hdr; struct nlmsghdr *out = NULL, *hdr;
@@ -1802,7 +1802,7 @@ METHOD(kernel_ipsec_t, update_sa, status_t,
METHOD(kernel_ipsec_t, query_sa, status_t, METHOD(kernel_ipsec_t, query_sa, status_t,
private_kernel_pfkey_ipsec_t *this, host_t *src, host_t *dst, private_kernel_pfkey_ipsec_t *this, host_t *src, host_t *dst,
u_int32_t spi, u_int8_t protocol, mark_t mark, u_int32_t spi, u_int8_t protocol, mark_t mark,
u_int64_t *bytes, u_int64_t *packets, u_int32_t *time) u_int64_t *bytes, u_int64_t *packets, time_t *time)
{ {
unsigned char request[PFKEY_BUFFER_SIZE]; unsigned char request[PFKEY_BUFFER_SIZE];
struct sadb_msg *msg, *out; struct sadb_msg *msg, *out;