Remove extern "C" from internal headers
[lttng-tools.git] / src / common / payload-view.h
index a07c0be003c7e9638c0ab8af0f1bd0f0cb6e6326..deaa9655ce2d23de89f46568e9017512c0af6cda 100644 (file)
@@ -46,13 +46,26 @@ struct fd_handle;
 struct lttng_payload_view {
        struct lttng_buffer_view buffer;
        /* private */
+
        const struct lttng_dynamic_pointer_array _fd_handles;
+
        struct {
                size_t *p_fd_handles_position;
                size_t fd_handles_position;
        } _iterator;
 };
 
+/**
+ * Checks if a payload view's buffer is safe to access.
+ *
+ * After calling the payload view creation functions, callers should verify
+ * if the resquested length (if any is explicitly provided) could be mapped
+ * to a new view.
+ *
+ * @view       Payload to validate
+ */
+bool lttng_payload_view_is_valid(const struct lttng_payload_view *view);
+
 /**
  * Return a payload view referencing a subset of a payload.
  *
@@ -62,7 +75,6 @@ struct lttng_payload_view {
  *             cause the view to reference the whole payload from the
  *             offset provided.
  */
-LTTNG_HIDDEN
 struct lttng_payload_view lttng_payload_view_from_payload(
                const struct lttng_payload *payload, size_t offset,
                ptrdiff_t len);
@@ -77,7 +89,6 @@ struct lttng_payload_view lttng_payload_view_from_payload(
  *             cause the payload view to reference the whole payload view's
  *             buffer view from the offset provided.
  */
-LTTNG_HIDDEN
 struct lttng_payload_view lttng_payload_view_from_view(
                struct lttng_payload_view *view, size_t offset,
                ptrdiff_t len);
@@ -94,7 +105,6 @@ struct lttng_payload_view lttng_payload_view_from_view(
  *             cause the payload view to reference the whole payload from the
  *             offset provided.
  */
-LTTNG_HIDDEN
 struct lttng_payload_view lttng_payload_view_from_dynamic_buffer(
                const struct lttng_dynamic_buffer *buffer, size_t offset,
                ptrdiff_t len);
@@ -111,7 +121,6 @@ struct lttng_payload_view lttng_payload_view_from_dynamic_buffer(
  *             cause the payload view to reference the whole payload from the
  *             offset provided.
  */
-LTTNG_HIDDEN
 struct lttng_payload_view lttng_payload_view_from_buffer_view(
                const struct lttng_buffer_view *view, size_t offset,
                ptrdiff_t len);
@@ -127,7 +136,6 @@ struct lttng_payload_view lttng_payload_view_from_buffer_view(
  * Note that a payload view never assumes the ownership of the memory it
  * references.
  */
-LTTNG_HIDDEN
 struct lttng_payload_view lttng_payload_view_init_from_buffer(
                const char *src, size_t offset, ptrdiff_t len);
 
@@ -138,9 +146,8 @@ struct lttng_payload_view lttng_payload_view_init_from_buffer(
  *
  * Returns the number of file descriptor handles left on success, -1 on error.
  */
-LTTNG_HIDDEN
 int lttng_payload_view_get_fd_handle_count(
-               struct lttng_payload_view *payload_view);
+               const struct lttng_payload_view *payload_view);
 
 /**
  * Pop an fd handle from a payload view.
@@ -151,7 +158,6 @@ int lttng_payload_view_get_fd_handle_count(
  *
  * Returns an fd_handle on success, -1 on error.
  */
-LTTNG_HIDDEN
 struct fd_handle *lttng_payload_view_pop_fd_handle(
                struct lttng_payload_view *payload_view);
 
This page took 0.024757 seconds and 4 git commands to generate.