You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
gentoo-overlay/sys-apps/fwcrv/files/fwcrv-0.1.0-endian.patch

48 lines
1.7 KiB

diff -ruN src/functions.c /tmp/src/functions.c
--- src/functions.c 2002-11-14 23:46:11.000000000 +0100
+++ src.new/functions.c 2006-03-22 11:51:03.000000000 +0100
@@ -59,7 +59,7 @@
byte ParseCommandLineOptions( int ArgCount, char *ArgValue[], byte *Mode, byte *ReadLength )
{
int i;
- char *ArgString;
+ unsigned char *ArgString;
byte Node_ID;
Node_ID = 0; // Default Node_ID used is 0
diff -ruN src/functions.h /tmp/src/functions.h
--- src/functions.h 2001-06-21 01:11:43.000000000 +0200
+++ src.new/functions.h 2006-03-22 11:47:48.000000000 +0100
@@ -16,18 +16,29 @@
* byte2 = bits 08-15 (on ix86, bits 16-23)
* byte3 = bits 00-07 (on ix86, bits 24-31)
* *****************************************************************************************************/
+
+#if __BYTE_ORDER == __BIG_ENDIAN
+
+#define QBYTE3( q ) ( (byte) ( q >> 24 ) )
+#define QBYTE2( q ) ( (byte) ( q >> 16 ) )
+#define QBYTE1( q ) ( (byte) ( q >> 8 ) )
+#define QBYTE0( q ) ( (byte) q )
+
+#else
+
#define QBYTE0( q ) ( (byte) ( q >> 24 ) )
#define QBYTE1( q ) ( (byte) ( q >> 16 ) )
#define QBYTE2( q ) ( (byte) ( q >> 8 ) )
#define QBYTE3( q ) ( (byte) q )
+#endif
+
/* Macro pour inverser les octets a l'interieur d'un quadlet */
#define QSWAP( q ) ( ( q << 24 ) & 0xFF000000 ) + \
( ( q << 8 ) & 0x00FF0000 ) + \
( ( q >> 8 ) & 0x0000FF00 ) + \
( ( q >> 24 ) & 0x000000FF )
-
/* ******************************************************************************************************
* ParseCommandLineOptions
* Initialisation of the different options passed as arguments on the command line