]> oss.titaniummirror.com Git - tinyos-2.x.git/commitdiff
safe tinyos annotations
authorregehr <regehr>
Wed, 4 Jun 2008 03:43:50 +0000 (03:43 +0000)
committerregehr <regehr>
Wed, 4 Jun 2008 03:43:50 +0000 (03:43 +0000)
tos/lib/serial/SerialActiveMessageP.nc
tos/lib/serial/SerialDispatcherP.nc

index 17ceb6b33c150d79bebf48a3a7cbce9f037aa514..0432ad2e98c46f0743bdf89dd2ce0fa84722b756 100644 (file)
@@ -46,8 +46,8 @@ generic module SerialActiveMessageP () {
 }
 implementation {
 
-  serial_header_t* getHeader(message_t* msg) {
-    return (serial_header_t*)(msg->data - sizeof(serial_header_t));
+  serial_header_t* ONE getHeader(message_t* ONE msg) {
+    return TCAST(serial_header_t* ONE, (uint8_t*)msg + offsetof(message_t, data) - sizeof(serial_header_t));
   }
 
   serial_metadata_t* getMetadata(message_t* msg) {
@@ -121,7 +121,7 @@ implementation {
       return NULL;
     }
     else {
-      return msg->data;
+      return (void * COUNT_NOK(len))msg->data;
     }
   }
 
index 5f1a9b6badae105959668534a25d22f25964d16c..85f13e0718b8445ffe4a0b29b68826d531fcd776 100644 (file)
@@ -75,14 +75,14 @@ implementation {
 
   /* This component provides double buffering. */
   message_t messages[2];     // buffer allocation
-  message_t* messagePtrs[2] = { &messages[0], &messages[1]};
+  message_t* ONE messagePtrs[2] = { &messages[0], &messages[1]};
   
   // We store a separate receiveBuffer variable because indexing
   // into a pointer array can be costly, and handling interrupts
   // is time critical.
-  uint8_t* receiveBuffer = (uint8_t*)(&messages[0]);
+  uint8_t* COUNT_NOK(sizeof(message_t)) receiveBuffer = (uint8_t* COUNT_NOK(sizeof(message_t)))(&messages[0]);
 
-  uint8_t *sendBuffer = NULL;
+  uint8_t *COUNT_NOK(sizeof(message_t)) sendBuffer = NULL;
   send_state_t sendState = SEND_STATE_IDLE;
   uint8_t sendLen = 0;
   uint8_t sendIndex = 0;
@@ -94,7 +94,7 @@ implementation {
   uint8_t receiveTaskPending = FALSE;
   uart_id_t receiveTaskType = 0;
   uint8_t receiveTaskWhich;
-  message_t *receiveTaskBuf = NULL;
+  message_t * ONE_NOK receiveTaskBuf = NULL;
   uint8_t receiveTaskSize = 0;
 
   command error_t Send.send[uint8_t id](message_t* msg, uint8_t len) {