mirror of
https://github.com/RIOT-OS/RIOT.git
synced 2024-12-29 04:50:03 +01:00
Alexandre Abadie
a528f96d7d
Then the patched srand1 function used by loramac is closer to the original code and won't crash because of negative values
91 lines
2.0 KiB
Diff
91 lines
2.0 KiB
Diff
From 1143af922083090a08761ab1a871c7922962218f Mon Sep 17 00:00:00 2001
|
|
From: Alexandre Abadie <alexandre.abadie@inria.fr>
|
|
Date: Tue, 16 Jan 2018 15:04:09 +0100
|
|
Subject: [PATCH] patch utilities functions
|
|
|
|
---
|
|
src/boards/mcu/stm32/utilities.c | 46 +++++++++-----------------------
|
|
1 file changed, 12 insertions(+), 34 deletions(-)
|
|
|
|
diff --git a/src/boards/mcu/stm32/utilities.c b/src/boards/mcu/stm32/utilities.c
|
|
index 8861235..e339ba5 100644
|
|
--- a/src/boards/mcu/stm32/utilities.c
|
|
+++ b/src/boards/mcu/stm32/utilities.c
|
|
@@ -14,8 +14,10 @@ Maintainer: Miguel Luis and Gregory Cristian
|
|
*/
|
|
#include <stdlib.h>
|
|
#include <stdio.h>
|
|
-#include "board.h"
|
|
+#include <string.h>
|
|
#include "utilities.h"
|
|
+#include "semtech-loramac/board.h"
|
|
+#include "random.h"
|
|
|
|
/*!
|
|
* Redefinition of rand() and srand() standard C functions.
|
|
@@ -34,52 +36,28 @@ int32_t rand1( void )
|
|
|
|
void srand1( uint32_t seed )
|
|
{
|
|
- next = seed;
|
|
-}
|
|
-// Standard random functions redefinition end
|
|
+ (void) seed;
|
|
+};
|
|
|
|
int32_t randr( int32_t min, int32_t max )
|
|
{
|
|
- return ( int32_t )rand1( ) % ( max - min + 1 ) + min;
|
|
-}
|
|
+ return (int32_t)random_uint32() % (max - min + 1) + min;
|
|
+};
|
|
|
|
void memcpy1( uint8_t *dst, const uint8_t *src, uint16_t size )
|
|
{
|
|
- while( size-- )
|
|
- {
|
|
- *dst++ = *src++;
|
|
- }
|
|
-}
|
|
+ memcpy(dst, src, size);
|
|
+};
|
|
|
|
void memcpyr( uint8_t *dst, const uint8_t *src, uint16_t size )
|
|
{
|
|
- dst = dst + ( size - 1 );
|
|
- while( size-- )
|
|
- {
|
|
+ dst = dst + (size - 1);
|
|
+ while (size--) {
|
|
*dst-- = *src++;
|
|
}
|
|
}
|
|
|
|
void memset1( uint8_t *dst, uint8_t value, uint16_t size )
|
|
{
|
|
- while( size-- )
|
|
- {
|
|
- *dst++ = value;
|
|
- }
|
|
-}
|
|
-
|
|
-int8_t Nibble2HexChar( uint8_t a )
|
|
-{
|
|
- if( a < 10 )
|
|
- {
|
|
- return '0' + a;
|
|
- }
|
|
- else if( a < 16 )
|
|
- {
|
|
- return 'A' + ( a - 10 );
|
|
- }
|
|
- else
|
|
- {
|
|
- return '?';
|
|
- }
|
|
+ memset(dst, value, size);
|
|
}
|
|
--
|
|
2.17.1
|
|
|