tossim_metadata_t* meta = getMetadata(ack);
return meta->ack;
}
-
+
task void sendDoneTask() {
message_t* msg = sending;
tossim_metadata_t* meta = getMetadata(msg);
meta->strength = 0;
meta->time = 0;
sending = FALSE;
- signal Packet.sendDone(msg, SUCCESS);
+ signal Packet.sendDone(msg, running? SUCCESS:EOFF);
}
command error_t Packet.cancel(message_t* msg) {
void send_transmit(sim_event_t* evt) {
sim_time_t duration;
tossim_metadata_t* metadata = getMetadata(sending);
-
+
duration = 8 * (sendingLength + sim_packet_header_length());
duration /= sim_csma_bits_per_symbol();
duration += sim_csma_preamble_length();
sending = NULL;
transmitting = FALSE;
dbg("TossimPacketModelC", "PACKET: Signaling send done at %llu.\n", sim_time());
- signal Packet.sendDone(rval, SUCCESS);
+ signal Packet.sendDone(rval, running? SUCCESS:EOFF);
}
event void GainRadioModel.receive(message_t* msg) {