diff options
author | Daniel Willmann <dwillmann@sysmocom.de> | 2016-04-20 10:16:37 +0200 |
---|---|---|
committer | Daniel Willmann <dwillmann@sysmocom.de> | 2016-04-20 10:17:53 +0200 |
commit | f44d12ce273e569f129131cdc6c6c40150ad7f40 (patch) | |
tree | 3158989028a59b3b7d8b53d059961524a2bbe65c | |
parent | 5ad72b91bb601f9b9765beeb861191f810f79f65 (diff) |
ranap_msg_factory: Add keystatus parameter for security mode cmd
-rw-r--r-- | include/osmocom/ranap/ranap_msg_factory.h | 2 | ||||
-rw-r--r-- | src/ranap_msg_factory.c | 4 | ||||
-rw-r--r-- | src/tests/hnb-test.c | 2 | ||||
-rw-r--r-- | src/tests/test-ranap.c | 2 |
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); |