aboutsummaryrefslogtreecommitdiffstats
path: root/src/libsimaka
diff options
context:
space:
mode:
authorMartin Willi <martin@revosec.ch>2012-07-06 13:52:57 +0200
committerMartin Willi <martin@revosec.ch>2012-07-16 14:53:37 +0200
commit6a3e4ed9165364fcae4077a2c2d0fe79de0c3174 (patch)
tree6168a49befd1ec31515b02db9aeec45bf30b8b75 /src/libsimaka
parent3629740c7fb27c898621ecb2f9ff8d6c34e87c46 (diff)
downloadstrongswan-6a3e4ed9165364fcae4077a2c2d0fe79de0c3174.tar.bz2
strongswan-6a3e4ed9165364fcae4077a2c2d0fe79de0c3174.tar.xz
Check rng return value when generating SIM/AKA message IVs
Diffstat (limited to 'src/libsimaka')
-rw-r--r--src/libsimaka/simaka_message.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/libsimaka/simaka_message.c b/src/libsimaka/simaka_message.c
index 50bd8b565..e7f902a63 100644
--- a/src/libsimaka/simaka_message.c
+++ b/src/libsimaka/simaka_message.c
@@ -771,7 +771,10 @@ METHOD(simaka_message_t, generate, bool,
out = chunk_skip(out, 4);
rng = this->crypto->get_rng(this->crypto);
- rng->get_bytes(rng, iv.len, out.ptr);
+ if (!rng->get_bytes(rng, iv.len, out.ptr))
+ {
+ return FALSE;
+ }
iv = chunk_clonea(chunk_create(out.ptr, iv.len));
out = chunk_skip(out, iv.len);