while (1) {
DBG("Listener accepting connections");
- nb_fd = LTTNG_POLL_GETNB(&events);
-
restart:
ret = lttng_poll_wait(&events, -1);
if (ret < 0) {
goto error;
}
+ nb_fd = ret;
+
DBG("Relay new connection received");
for (i = 0; i < nb_fd; i++) {
/* Fetch once the poll data */
if (data_buffer_size < data_size) {
/* In case the realloc fails, we can free the memory */
- char *tmp_data_ptr = data_buffer;
- data_buffer = realloc(data_buffer, data_size);
- if (!data_buffer) {
+ char *tmp_data_ptr;
+
+ tmp_data_ptr = realloc(data_buffer, data_size);
+ if (!tmp_data_ptr) {
ERR("Allocating data buffer");
- free(tmp_data_ptr);
+ free(data_buffer);
ret = -1;
goto end;
}
+ data_buffer = tmp_data_ptr;
data_buffer_size = data_size;
}
memset(data_buffer, 0, data_size);
* structure considering that the other side will adapt.
*/
- ret = sscanf(VERSION, "%u.%u", &reply.major, &reply.minor);
+ ret = sscanf(VERSION, "%10u.%10u", &reply.major, &reply.minor);
if (ret < 2) {
ERR("Error in scanning version");
ret = -1;
data_size = be32toh(data_hdr.data_size);
if (data_buffer_size < data_size) {
- char *tmp_data_ptr = data_buffer;
- data_buffer = realloc(data_buffer, data_size);
- if (!data_buffer) {
+ char *tmp_data_ptr;
+
+ tmp_data_ptr = realloc(data_buffer, data_size);
+ if (!tmp_data_ptr) {
ERR("Allocating data buffer");
- free(tmp_data_ptr);
+ free(data_buffer);
ret = -1;
goto end_unlock;
}
+ data_buffer = tmp_data_ptr;
data_buffer_size = data_size;
}
memset(data_buffer, 0, data_size);
}
while (1) {
- /* Zeroed the events structure */
- lttng_poll_reset(&events);
-
- nb_fd = LTTNG_POLL_GETNB(&events);
-
/* Infinite blocking call, waiting for transmission */
restart:
DBG3("Relayd worker thread polling...");
goto error;
}
+ nb_fd = ret;
+
for (i = 0; i < nb_fd; i++) {
/* Fetch once the poll data */
revents = LTTNG_POLL_GETEV(&events, i);
/* Parse arguments */
progname = argv[0];
- if ((ret = parse_args(argc, argv) < 0)) {
+ if ((ret = parse_args(argc, argv)) < 0) {
goto exit;
}