aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDaniel Willmann <dwillmann@sysmocom.de>2016-04-20 10:16:37 +0200
committerDaniel Willmann <dwillmann@sysmocom.de>2016-04-20 10:17:53 +0200
commitf44d12ce273e569f129131cdc6c6c40150ad7f40 (patch)
tree3158989028a59b3b7d8b53d059961524a2bbe65c
parent5ad72b91bb601f9b9765beeb861191f810f79f65 (diff)
ranap_msg_factory: Add keystatus parameter for security mode cmd
-rw-r--r--include/osmocom/ranap/ranap_msg_factory.h2
-rw-r--r--src/ranap_msg_factory.c4
-rw-r--r--src/tests/hnb-test.c2
-rw-r--r--src/tests/test-ranap.c2
4 files changed, 5 insertions, 5 deletions
diff --git a/include/osmocom/ranap/ranap_msg_factory.h b/include/osmocom/ranap/ranap_msg_factory.h
index 14bcd7e..cf4350d 100644
--- a/include/osmocom/ranap/ranap_msg_factory.h
+++ b/include/osmocom/ranap/ranap_msg_factory.h
@@ -11,7 +11,7 @@
struct msgb *ranap_new_msg_dt(uint8_t sapi, const uint8_t *nas, unsigned int nas_len);
/*! \brief generate RANAP SECURITY MODE COMMAND message */
-struct msgb *ranap_new_msg_sec_mod_cmd(const uint8_t *ik, const uint8_t *ck);
+struct msgb *ranap_new_msg_sec_mod_cmd(const uint8_t *ik, const uint8_t *ck, enum RANAP_KeyStatus status);
/*! \brief generate RANAP SECURITY MODE COMPLETE message */
struct msgb *ranap_new_msg_sec_mod_compl(
diff --git a/src/ranap_msg_factory.c b/src/ranap_msg_factory.c
index ab51c77..6cf997d 100644
--- a/src/ranap_msg_factory.c
+++ b/src/ranap_msg_factory.c
@@ -209,7 +209,7 @@ static const RANAP_EncryptionAlgorithm_t enc_alg[2] = {
};
/*! \brief generate RANAP SECURITY MODE COMMAND message */
-struct msgb *ranap_new_msg_sec_mod_cmd(const uint8_t *ik, const uint8_t *ck)
+struct msgb *ranap_new_msg_sec_mod_cmd(const uint8_t *ik, const uint8_t *ck, enum RANAP_KeyStatus status)
{
RANAP_SecurityModeCommandIEs_t ies;
RANAP_SecurityModeCommand_t out;
@@ -241,7 +241,7 @@ struct msgb *ranap_new_msg_sec_mod_cmd(const uint8_t *ik, const uint8_t *ck)
BIT_STRING_fromBuf(&ies.encryptionInformation.key, ck, 16*8);
}
- ies.keyStatus = RANAP_KeyStatus_new; /* FIXME */
+ ies.keyStatus = status;
/* ies -> out */
rc = ranap_encode_securitymodecommandies(&out, &ies);
diff --git a/src/tests/hnb-test.c b/src/tests/hnb-test.c
index 7971b64..af87376 100644
--- a/src/tests/hnb-test.c
+++ b/src/tests/hnb-test.c
@@ -980,7 +980,7 @@ int main(int argc, char **argv)
rua = rua_new_udt(msg);
osmo_wqueue_enqueue(&g_hnb_test.wqueue, rua);
- msg = ranap_new_msg_sec_mod_cmd(ik, ik);
+ msg = ranap_new_msg_sec_mod_cmd(ik, ik, RANAP_KeyStatus_new);
rua = rua_new_udt(msg);
osmo_wqueue_enqueue(&g_hnb_test.wqueue, rua);
diff --git a/src/tests/test-ranap.c b/src/tests/test-ranap.c
index 5566848..713ee8c 100644
--- a/src/tests/test-ranap.c
+++ b/src/tests/test-ranap.c
@@ -64,7 +64,7 @@ int main(int argc, char **argv)
msgb_free(msg);
printf("\n==> SECURITY MODE COMMAND\n");
- msg = ranap_new_msg_sec_mod_cmd(ik, ck);
+ msg = ranap_new_msg_sec_mod_cmd(ik, ck, RANAP_KeyStatus_new);
if (msg)
printf("%s\n", msgb_hexdump(msg));
msgb_free(msg);