.frequency = DEFAULT_FREQUENCY
};
-static char rcv_buf[RECEIVE_BUFFER_SIZE];
+static char *rcv_buf;
static char *snd_buf;
/* connection socket */
static void init_buffers(void)
{
- init_buffer_random(rcv_buf, RECEIVE_BUFFER_SIZE);
+ init_buffer_random(rcv_buf, cmd_args.peer_buffer_size);
init_buffer_random(snd_buf, PACKET_PAYLOAD_SIZE);
}
static void init(void)
{
+ rcv_buf = malloc(cmd_args.peer_buffer_size * sizeof(char));
snd_buf = malloc(PACKET_SIZE * sizeof(char));
DIE(snd_buf == NULL, "malloc");
static void cleanup(void)
{
+ free(rcv_buf);
free(snd_buf);
}
ssize_t n;
while (nbytes < (ssize_t) cmd_args.peer_buffer_size) {
- n = recv(sockfd, rcv_buf, RECEIVE_BUFFER_SIZE, 0);
+ n = recv(sockfd, rcv_buf, cmd_args.peer_buffer_size - nbytes, 0);
if (n <= 0)
break;
nbytes += n;