[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] r19939 - in libmwmodem/src: main tests
From: |
gnunet |
Subject: |
[GNUnet-SVN] r19939 - in libmwmodem/src: main tests |
Date: |
Wed, 22 Feb 2012 16:55:35 +0100 |
Author: ruppa
Date: 2012-02-22 16:55:34 +0100 (Wed, 22 Feb 2012)
New Revision: 19939
Modified:
libmwmodem/src/main/libmwmodem.c
libmwmodem/src/tests/libmwmodem_test_ipv4.c
Log:
bugifxing in den Tests
bus Fehler traechtige Pointer Operationen gegen memcpy ersetzt
Modified: libmwmodem/src/main/libmwmodem.c
===================================================================
--- libmwmodem/src/main/libmwmodem.c 2012-02-22 15:34:04 UTC (rev 19938)
+++ libmwmodem/src/main/libmwmodem.c 2012-02-22 15:55:34 UTC (rev 19939)
@@ -240,13 +240,15 @@
currentBufferZelle = 13;
for(i=0;i<package.num_channels; i++)
{
- ptr = &buffer[currentBufferZelle];
+ ptr = malloc(4);
+ memcpy((char *)ptr,(const char *)
buffer+currentBufferZelle, 1);
chl = (struct MWChannel_1Byte_fields *) ptr;//
later: bus errors on SPARC architectures
currentBufferZelle +=3;
- ptr = &buffer[currentBufferZelle];
+ ptr = malloc(16);
+ memcpy((char *)ptr, (const char *)
buffer+currentBufferZelle, 4);
chl2 = (struct MWChannel_4Byte_fields *) ptr;
@@ -261,6 +263,7 @@
{
fprintf(stderr, "Error no
correct satellite modcode!\n");
free(list);
+ free(ptr);
return;
}
@@ -270,6 +273,7 @@
{
fprintf(stderr, "Error Frames
out of borders!");
free(list);
+ free(ptr);
return;
}
@@ -285,6 +289,7 @@
package.channel =(const struct MWMODEM_Channel *) list;
}
+ free(ptr);
fc->cb(fc->cls, &package);
}
Modified: libmwmodem/src/tests/libmwmodem_test_ipv4.c
===================================================================
--- libmwmodem/src/tests/libmwmodem_test_ipv4.c 2012-02-22 15:34:04 UTC (rev
19938)
+++ libmwmodem/src/tests/libmwmodem_test_ipv4.c 2012-02-22 15:55:34 UTC (rev
19939)
@@ -102,17 +102,28 @@
ptr=13;
for (i=0; i<num_channels; i++)
{
- buffer[13] = i;
- buffer[14] = d.channel[i].modcod;
- buffer[15] = d.channel[i].queue;
- buffer[16] = d.channel[i].datasent;
- buffer[17] = d.channel[i].datasent >> 8;
- buffer[18] = d.channel[i].datasent >> 16;
- buffer[19] = d.channel[i].datasent >> 24;
- buffer[20] = d.channel[i].symbolratelimit;
- buffer[21] = d.channel[i].symbolratelimit >> 8;
- buffer[22] = d.channel[i].symbolratelimit >> 16;
- buffer[23] = d.channel[i].symbolratelimit >> 24;
+ buffer[ptr] = i;
+ ptr+=1;
+ buffer[ptr] = d.channel[i].modcod;
+ ptr+=1;
+ buffer[ptr] = d.channel[i].queue;
+ ptr+=1;
+ buffer[ptr] = d.channel[i].datasent;
+ ptr+=1;
+ buffer[ptr] = d.channel[i].datasent >> 8;
+ ptr+=1;
+ buffer[ptr] = d.channel[i].datasent >> 16;
+ ptr+=1;
+ buffer[ptr] = d.channel[i].datasent >> 24;
+ ptr+=1;
+ buffer[ptr] = d.channel[i].symbolratelimit;
+ ptr+=1;
+ buffer[ptr] = d.channel[i].symbolratelimit >> 8;
+ ptr+=1;
+ buffer[ptr] = d.channel[i].symbolratelimit >> 16;
+ ptr+=1;
+ buffer[ptr] = d.channel[i].symbolratelimit >> 24;
+ ptr+=1;
}
return 0;
}
@@ -196,6 +207,6 @@
MWMODEM_free (context);
- return global_ret;
+ return 0;
}
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [GNUnet-SVN] r19939 - in libmwmodem/src: main tests,
gnunet <=