Hi all,

I am currently working on a secure, multihop unicast protocol for tos 2.x, 
which is based on AODV, and features anomaly reporting, limited localisation, 
and tamperproofing, with enforced faithful forwarding based on collaborative 
eavesdropping and checksumming. It's going pretty well, and I hope to be in a 
position to talk more about it later. In the meantime however, I have run up 
against something that feels like a really dumb problem, but which I simply 
can't work my way past.

I am implementing the main message routing-and-checking pipeline module as a 
singleton which is accessed by generic CAM (checksummed active message) senders 
and receivers, which take message type arguments. This means that 
receive.receive fans out to a number of different modules, and so I need to 
create a combine function for the returned pointers. I have created this 
function without much difficulty (it does not matter which buffer is used, 
after all, as long as it is protected from interference, which they are), as 
follows. 

message_t *msgcombine(message_t * m1, message_t * m2) {
    Return m1;
}

All well and good. But when I try to bind this to the message_t* with

typedef uint8_t (message_t*) @combine("msgcombine");

I just get an "error: syntax error before '*'".

I can smell the stupid coming off this, but the deadline madness is upon me, 
and I am not functioning at my peak right now. Can somebody give me a hand? I 
have looked through the programming guide, and all the examples I could find, 
and I am none the wiser.

Thank you in advance,

-Andy
_______________________________________________
Tinyos-help mailing list
[email protected]
https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help

Reply via email to