]> sigrok.org Git - libsigrok.git/blobdiff - src/libsigrok-internal.h
input/protocoldata: also accept comma separated data values
[libsigrok.git] / src / libsigrok-internal.h
index 46865efc0b00dbcceb5751a65ea9af059859654e..d6f6933a2f8db1695bec02ba0c2e82c83a9fea3c 100644 (file)
@@ -2217,20 +2217,14 @@ enum binary_value_type {
        BVT_INVALID,
 
        BVT_UINT8,
-       BVT_BE_UINT8 = BVT_UINT8,
-       BVT_LE_UINT8 = BVT_UINT8,
 
        BVT_BE_UINT16,
        BVT_BE_UINT24,
        BVT_BE_UINT32,
-       BVT_BE_UINT64,
-       BVT_BE_FLOAT,
 
        BVT_LE_UINT16,
        BVT_LE_UINT24,
        BVT_LE_UINT32,
-       BVT_LE_UINT64,
-       BVT_LE_FLOAT,
 };
 
 /** Binary value specification */
@@ -2240,7 +2234,8 @@ struct binary_value_spec {
 };
 
 /**
- * Read extract a value from a binary data image.
+ * Read extract a value from a binary data image, ensuring no out-of-bounds
+ * read happens.
  *
  * @param[out] out Pointer to output buffer (conversion result)
  * @param[in] spec Binary value specification
@@ -2249,9 +2244,21 @@ struct binary_value_spec {
  *
  * @return SR_OK on success, SR_ERR_* error code on failure.
  */
-SR_PRIV int bv_get_value(float *out, const struct binary_value_spec *spec,
+SR_PRIV int bv_get_value_len(float *out, const struct binary_value_spec *spec,
        const uint8_t *data, size_t length);
 
+/**
+ * Read extract a value from a binary data image, without bound check.
+ *
+ * @param[out] out Pointer to output buffer (conversion result)
+ * @param[in] spec Binary value specification
+ * @param[in] data Pointer to binary input data
+ *
+ * @return SR_OK on success, SR_ERR_* error code on failure.
+ */
+SR_PRIV int bv_get_value(float *out, const struct binary_value_spec *spec,
+       const uint8_t *data);
+
 /*--- crc.c -----------------------------------------------------------------*/
 
 #define SR_CRC16_DEFAULT_INIT 0xffffU