summaryrefslogtreecommitdiff
path: root/interface
diff options
context:
space:
mode:
authorlaranjeiro2008-02-28 13:39:05 +0000
committerlaranjeiro2008-02-28 13:39:05 +0000
commit0aa1e3e4e802c15d54c997d222b9ffacf86b7c81 (patch)
treee12c0f4f6fd578c1526a87d0214179de4f8eb2b8 /interface
parent06cc6fbea7a7c20a1de1a8f40febb7b289d37b74 (diff)
Update the interface to carry encryption information on MME reception.
git-svn-id: svn+ssh://pessac/svn/cesar/trunk@1496 017c9cb6-072f-447c-8318-d5b54f68fe89
Diffstat (limited to 'interface')
-rw-r--r--interface/interface.h9
-rw-r--r--interface/src/interface.c9
-rw-r--r--interface/test/src/test-interface.c6
3 files changed, 16 insertions, 8 deletions
diff --git a/interface/interface.h b/interface/interface.h
index 48204078e1..ef3642e339 100644
--- a/interface/interface.h
+++ b/interface/interface.h
@@ -33,9 +33,12 @@ typedef struct interface_t interface_t;
* \param buffer the buffer containing the MME.
* \param length the MME length
* \param mme_recv data use by the data plane.
+ * \param encryption inform if the packet comes from the PWL if it had been
+ * crypted or not.
*/
typedef void
-(*interface_mme_recv_cb_t) (void *user_data, u8 *buffer, uint length, void *mme_recv);
+(*interface_mme_recv_cb_t) (void *user_data, u8 *buffer, uint length,
+ void *mme_recv, bool encryption);
/**
* Function to call when the interface receives a empty buffer.
@@ -100,10 +103,12 @@ interface_configure (interface_t *ctx, u8 *data);
* \param buffer the buffer containing the MME.
* \param length the MME length
* \param mme_data data use by the CL.
+ * \param encrypted inform if the packet comes from the PWL if it has been
+ * crypted.
*/
void
interface_mme_recv (interface_t *ctx, u8 *buffer, uint length,
- cl_mme_recv_t *mme_data);
+ cl_mme_recv_t *mme_data, bool encrypted);
/**
diff --git a/interface/src/interface.c b/interface/src/interface.c
index fe0ad7173e..fb4f5f3160 100644
--- a/interface/src/interface.c
+++ b/interface/src/interface.c
@@ -124,10 +124,12 @@ interface_configure (interface_t *ctx, u8 *data)
* \param buffer the buffer containing the MME.
* \param length the MME length
* \param mme_data data use by the CL.
+ * \param encrypted inform if the packet comes from the PWL if it has been
+ * crypted.
*/
void
interface_mme_recv (interface_t *ctx, u8 *buffer, uint length,
- cl_mme_recv_t *mme_data)
+ cl_mme_recv_t *mme_data, bool encrypted)
{
u8 *copy_buffer;
@@ -143,13 +145,14 @@ interface_mme_recv (interface_t *ctx, u8 *buffer, uint length,
if (copy_buffer)
{
interface_sniffer_copy_mme_rx (ctx->sniffer, buffer, length,
- copy_buffer, false);
+ copy_buffer, encrypted);
}
}
// Call the actor callback.
dbg_assert (ctx->mme_recv_cb);
- (*ctx->mme_recv_cb) (ctx->actor_user_data, buffer, length, mme_data);
+ (*ctx->mme_recv_cb) (ctx->actor_user_data, buffer, length, mme_data,
+ encrypted);
}
diff --git a/interface/test/src/test-interface.c b/interface/test/src/test-interface.c
index f6be47962e..6ad224e729 100644
--- a/interface/test/src/test-interface.c
+++ b/interface/test/src/test-interface.c
@@ -43,7 +43,7 @@ void
test_interface_mme_buffer_add (void *user_data, u8 *buffer);
void
-test_interface_mme_recv (void *user_data, u8 *buffer, uint length, void *mme_recv);
+test_interface_mme_recv (void *user_data, u8 *buffer, uint length, void *mme_recv, bool encrypted);
void
test_interface_beacon_add(void *user_data, pb_beacon_t *beacon);
@@ -154,7 +154,7 @@ test_copy_recv_mme (test_t test)
test_copy = false;
test_mme_recv = false;
- interface_mme_recv (interface, mme, 1000, NULL);
+ interface_mme_recv (interface, mme, 1000, NULL, false);
test_case_begin (test, "Sniff a received MME");
@@ -347,7 +347,7 @@ test_interface_mme_buffer_add (void *user_data, u8 *buffer)
void
-test_interface_mme_recv (void *user_data, u8 *buffer, uint length, void *mme_recv)
+test_interface_mme_recv (void *user_data, u8 *buffer, uint length, void *mme_recv, bool encryption)
{
dbg_assert (buffer);