diff --git a/headers/packet_interface.h b/headers/packet_interface.h index c4d5583f77b1fc3d10b161ac0558f3a52a7a7e9a..2b51cbf2093fb687d13b33630c1c751faf30faed 100644 --- a/headers/packet_interface.h +++ b/headers/packet_interface.h @@ -15,6 +15,9 @@ #define MAX_PAYLOAD_SIZE 512 /* Taille maximale de Window */ #define MAX_WINDOW_SIZE 31 +/* Taille maximale de seqnum */ +#define MAX_SEQNUM_SIZE 255 + #define member_size(type, member) sizeof((((type *) NULL)->member)) diff --git a/src/sender.c b/src/sender.c index ce02d155bc9701f59ef3ad36ec24c3e7ea3992e1..3f3e53eb7d2d177e35ad2722c8b2b1df9e88f6d1 100644 --- a/src/sender.c +++ b/src/sender.c @@ -49,7 +49,7 @@ int main(int argc, char **argv) { DEBUG_DUMP("Some bytes", 11); // You can use it with any pointer type // This is not an error per-se. - ERROR("Sender has following arguments: \tfilename is %s,\n\t stats_filename is %s,\n\t fec_enabled is %d,\n\t receiver_ip is %s,\n\t receiver_port is %u", + ERROR("Sender has following arguments: \n\tfilename is %s,\n\t stats_filename is %s,\n\t fec_enabled is %d,\n\t receiver_ip is %s,\n\t receiver_port is %u\n", filename, stats_filename, fec_enabled, receiver_ip, receiver_port); DEBUG("You can only see me if %s", "you built me using `make debug`"); @@ -87,17 +87,21 @@ int main(int argc, char **argv) { // *** Step: Time for sending *** - // pkt_t buffer[MAX_WINDOW_SIZE]; - // int buffer_space = MAX_WINDOW_SIZE; - // int seqnum = 0; + // pkt_t buffer[MAX_WINDOW_SIZE]; not used for now + int buffer_space = MAX_WINDOW_SIZE; + int seqnum = 0; pkt_t *pkt = pkt_new(); ssize_t nbr_byte_read = read(fd, pkt->payload, MAX_PAYLOAD_SIZE); while (nbr_byte_read > 0) { - // *** Step: Prepare the paquet to be send *** + // *** Step: Prepare the packet to be send *** pkt_set_type(pkt, PTYPE_DATA); + pkt_set_tr(pkt, 0); + pkt_set_window(pkt, buffer_space); pkt_set_length(pkt, nbr_byte_read); + pkt_set_seqnum(pkt, (seqnum++) % MAX_SEQNUM_SIZE); + pkt_set_timestamp(pkt, 0); // We're free to use as we want // We set the TR to 0 in order to calculcate the CRC on the header char modified_header[8];