From 4a2bfcb77ffc53642da5e81185915d8f5d451d66 Mon Sep 17 00:00:00 2001 From: Harald Welte Date: Fri, 12 Jul 2019 18:27:08 +0800 Subject: [PATCH] remove ogslib dependency from snow * don't use ogslib specific header files * don't use ogs_{malloc,free} but simply use the stack Change-Id: I5604c594934b03d2fd83e1e465fc150fc542a475 --- mme/snow-3g.c | 5 +---- mme/snow-3g.h | 2 +- 2 files changed, 2 insertions(+), 5 deletions(-) diff --git a/mme/snow-3g.c b/mme/snow-3g.c index 992b107ed..60bdffdbf 100644 --- a/mme/snow-3g.c +++ b/mme/snow-3g.c @@ -381,7 +381,7 @@ void snow_3g_f8(u8 *key, u32 count, u32 bearer, u32 dir, u8 *data, u32 length) int n = ( length + 31 ) / 32; int i=0; int lastbits = (8-(length%8)) % 8; - u32 *KS; + u32 KS[n]; /*Initialisation*/ /* Load the confidentiality key for SNOW 3G initialization as in section @@ -399,7 +399,6 @@ void snow_3g_f8(u8 *key, u32 count, u32 bearer, u32 dir, u8 *data, u32 length) /* Run SNOW 3G algorithm to generate sequence of key stream bits KS*/ snow_3g_initialize(K,IV); - KS = (u32 *)ogs_malloc(4*n); snow_3g_generate_key_stream(n,(u32*)KS); /* Exclusive-OR the input data with keystream to generate the output bit @@ -412,8 +411,6 @@ void snow_3g_f8(u8 *key, u32 count, u32 bearer, u32 dir, u8 *data, u32 length) data[4*i+3] ^= (u8) (KS[i] ) & 0xff; } - ogs_free(KS); - /* zero last bits of data in case its length is not byte-aligned this is an addition to the C reference code, which did not handle it */ if (lastbits) diff --git a/mme/snow-3g.h b/mme/snow-3g.h index a5320bbf5..0ba6a8458 100644 --- a/mme/snow-3g.h +++ b/mme/snow-3g.h @@ -1,7 +1,7 @@ #ifndef __SNOW_3G__ #define __SNOW_3G__ -#include "ogs-core.h" +#include #ifdef __cplusplus extern "C" {