]> oss.titaniummirror.com Git - tinyos-2.x.git/blobdiff - tos/system/AMQueueImplP.nc
mark more modules as safe code
[tinyos-2.x.git] / tos / system / AMQueueImplP.nc
index 51cd2aece1c3f83eee2531e2b3a4a925db67e151..a4c4eaf5ec0be268ffeac5339cb28dcdc5f9ef7f 100644 (file)
@@ -34,7 +34,7 @@
 
 #include "AM.h"
 
-generic module AMQueueImplP(int numClients) {
+generic module AMQueueImplP(int numClients) @safe() {
     provides interface Send[uint8_t client];
     uses{
         interface AMSend[am_id_t id];
@@ -45,7 +45,7 @@ generic module AMQueueImplP(int numClients) {
 
 implementation {
     typedef struct {
-        message_t* msg;
+        message_t* ONE_NOK msg;
     } queue_entry_t;
   
     uint8_t current = numClients; // mark as empty
@@ -152,7 +152,7 @@ implementation {
         }
     }
 
-    void sendDone(uint8_t last, message_t *msg, error_t err) {
+    void sendDone(uint8_t last, message_t * ONE msg, error_t err) {
         queue[last].msg = NULL;
         tryToSend();
         signal Send.sendDone[last](msg, err);
@@ -200,11 +200,14 @@ implementation {
         return call AMSend.maxPayloadLength[0]();
     }
 
-    command void* Send.getPayload[uint8_t id](message_t* m) {
-        return call AMSend.getPayload[0](m);
+    command void* Send.getPayload[uint8_t id](message_t* m, uint8_t len) {
+      return call AMSend.getPayload[0](m, len);
     }
 
     default event void Send.sendDone[uint8_t id](message_t* msg, error_t err) {
         // Do nothing
     }
+    default command error_t AMSend.send[uint8_t id](am_addr_t am_id, message_t* msg, uint8_t len) {
+        return FAIL;
+    }
 }