Cleanup: standardise include path
[lttng-ust.git] / liblttng-ust-ctl / ustctl.c
index 39c8baa4b4fea4b586a9323290b6287acd4e86f4..a6fb6d83380c5bb23fc0788c5249b913163a8ea0 100644 (file)
  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 
-#define _GNU_SOURCE
-#include <byteswap.h>
 #include <stdint.h>
 #include <string.h>
 #include <sys/mman.h>
+#include <unistd.h>
 
 #include <lttng/ust-config.h>
 #include <lttng/ust-ctl.h>
 #include <lttng/ust-abi.h>
 #include <lttng/ust-events.h>
+#include <lttng/ust-endian.h>
 #include <usterr-signal-safe.h>
 #include <ust-comm.h>
 #include <helper.h>
@@ -110,8 +110,10 @@ int ustctl_release_object(int sock, struct lttng_ust_object_data *data)
                                ret = -errno;
                                return ret;
                        }
+                       data->u.channel.wakeup_fd = -1;
                }
                free(data->u.channel.data);
+               data->u.channel.data = NULL;
                break;
        case LTTNG_UST_OBJECT_TYPE_STREAM:
                if (data->u.stream.shm_fd >= 0) {
@@ -120,6 +122,7 @@ int ustctl_release_object(int sock, struct lttng_ust_object_data *data)
                                ret = -errno;
                                return ret;
                        }
+                       data->u.stream.shm_fd = -1;
                }
                if (data->u.stream.wakeup_fd >= 0) {
                        ret = close(data->u.stream.wakeup_fd);
@@ -127,6 +130,7 @@ int ustctl_release_object(int sock, struct lttng_ust_object_data *data)
                                ret = -errno;
                                return ret;
                        }
+                       data->u.stream.wakeup_fd = -1;
                }
                break;
        case LTTNG_UST_OBJECT_TYPE_EVENT:
@@ -1853,7 +1857,8 @@ int ustctl_recv_reg_msg(int sock,
        *uint64_t_alignment = reg_msg.uint64_t_alignment;
        *long_alignment = reg_msg.long_alignment;
        memcpy(name, reg_msg.name, LTTNG_UST_ABI_PROCNAME_LEN);
-       if (reg_msg.major != LTTNG_UST_ABI_MAJOR_VERSION) {
+       if (reg_msg.major < LTTNG_UST_ABI_MAJOR_VERSION_OLDEST_COMPATIBLE ||
+                       reg_msg.major > LTTNG_UST_ABI_MAJOR_VERSION) {
                return -LTTNG_UST_ERR_UNSUP_MAJOR;
        }
 
This page took 0.023707 seconds and 4 git commands to generate.