]> git.meshlink.io Git - meshlink/blobdiff - src/meshlink++.h
Add the MESHLINK_CHANNEL_NO_PARTIAL flag.
[meshlink] / src / meshlink++.h
index 48eabf3fbf5fdf80cfb3586c6a5001e808a7e208..2dcac00201f8f658903cdaef2c0b604aa45d2131 100644 (file)
@@ -113,6 +113,7 @@ public:
        static const uint32_t ORDERED = MESHLINK_CHANNEL_ORDERED;
        static const uint32_t FRAMED = MESHLINK_CHANNEL_FRAMED;
        static const uint32_t DROP_LATE = MESHLINK_CHANNEL_DROP_LATE;
+       static const uint32_t NO_PARTIAL = MESHLINK_CHANNEL_NO_PARTIAL;
        static const uint32_t TCP = MESHLINK_CHANNEL_TCP;
        static const uint32_t UDP = MESHLINK_CHANNEL_UDP;
 };
@@ -533,7 +534,9 @@ public:
         *                       If the port is set to 0, then MeshLink will listen on a port
         *                       that is randomly assigned by the operating system every time open() is called.
         *
-        *  @return              This function returns true if the port was successfully changed, false otherwise.
+        *  @return              This function returns true if the port was successfully changed
+        *                       to the desired port, false otherwise. If it returns false, there
+        *                       is no guarantee that MeshLink is listening on the old port.
         */
        bool set_port(int port) {
                return meshlink_set_port(handle, port);
@@ -712,6 +715,8 @@ public:
         *  @param len          The length of the data.
         *
         *  @return             The amount of data that was queued, which can be less than len, or a negative value in case of an error.
+        *                      If MESHLINK_CHANNEL_NO_PARTIAL is set, then the result will either be len,
+        *                      0 if the buffer is currently too full, or -1 if len is too big even for an empty buffer.
         */
        ssize_t channel_send(channel *channel, void *data, size_t len) {
                return meshlink_channel_send(handle, channel, data, len);