reader->bytes_to_read = 0;
}
+static int service_writer_handle_req_getsize(struct logger *server, struct writer *wr, struct dlog_control_msg *msg)
+{
+ assert(server);
+ assert(wr);
+ assert(msg);
+ assert(msg->request == DLOG_REQ_GETSIZE);
+
+ unsigned buf_size = wr->buf_ptr->size;
+
+ return send_dlog_reply(wr->fd_entity.fd, DLOG_REQ_GETSIZE, DLOG_REQ_RESULT_OK, &buf_size, sizeof buf_size);
+}
+
/**
* @brief Service clear request
* @details Handle a clear-buffer request
switch (msg->request) {
case DLOG_REQ_CLEAR:
return service_writer_handle_req_clear(server, wr, msg);
- break;
case DLOG_REQ_HANDLE_LOGUTIL:
return service_writer_handle_req_util(server, wr, msg);
- break;
+ case DLOG_REQ_GETSIZE:
+ return service_writer_handle_req_getsize(server, wr, msg);
default:
return -EINVAL;
}