From 551df11ec1373e6d67d2fa29f9b158c654d1f868 Mon Sep 17 00:00:00 2001 From: Jonathan Hui Date: Mon, 18 Dec 2023 10:35:26 -0800 Subject: [PATCH] [posix] fix circular dependency on `OPENTHREAD_POSIX_CONFIG_DAEMON_ENABLE` (#9719) --- .../platform/openthread-core-posix-config.h | 2 + src/posix/platform/openthread-posix-config.h | 34 --------- .../platform/openthread-posix-daemon-config.h | 72 +++++++++++++++++++ 3 files changed, 74 insertions(+), 34 deletions(-) create mode 100644 src/posix/platform/openthread-posix-daemon-config.h diff --git a/src/posix/platform/openthread-core-posix-config.h b/src/posix/platform/openthread-core-posix-config.h index 2b3297a0a..ebe784f45 100644 --- a/src/posix/platform/openthread-core-posix-config.h +++ b/src/posix/platform/openthread-core-posix-config.h @@ -34,6 +34,8 @@ #ifndef OPENTHREAD_CORE_POSIX_CONFIG_H_ #define OPENTHREAD_CORE_POSIX_CONFIG_H_ +#include "openthread-posix-daemon-config.h" + #ifndef OPENTHREAD_CONFIG_NUM_MESSAGE_BUFFERS #define OPENTHREAD_CONFIG_NUM_MESSAGE_BUFFERS 256 #endif diff --git a/src/posix/platform/openthread-posix-config.h b/src/posix/platform/openthread-posix-config.h index cc8afe5cb..87dbfe418 100644 --- a/src/posix/platform/openthread-posix-config.h +++ b/src/posix/platform/openthread-posix-config.h @@ -51,40 +51,6 @@ #define OPENTHREAD_POSIX_CONFIG_RCP_PTY_ENABLE 1 #endif -/** - * @def OPENTHREAD_POSIX_CONFIG_DAEMON_SOCKET_BASENAME - * - * Define socket basename used by POSIX app daemon. - * - */ -#ifndef OPENTHREAD_POSIX_CONFIG_DAEMON_SOCKET_BASENAME -#ifdef __linux__ -#define OPENTHREAD_POSIX_CONFIG_DAEMON_SOCKET_BASENAME "/run/openthread-%s" -#else -#define OPENTHREAD_POSIX_CONFIG_DAEMON_SOCKET_BASENAME "/tmp/openthread-%s" -#endif -#endif - -/** - * @def OPENTHREAD_POSIX_CONFIG_DAEMON_ENABLE - * - * Define to 1 to enable POSIX daemon. - * - */ -#ifndef OPENTHREAD_POSIX_CONFIG_DAEMON_ENABLE -#define OPENTHREAD_POSIX_CONFIG_DAEMON_ENABLE 0 -#endif - -/** - * @def OPENTHREAD_POSIX_CONFIG_DAEMON_CLI_ENABLE - * - * Define to 1 to enable CLI for the posix daemon. - * - */ -#ifndef OPENTHREAD_POSIX_CONFIG_DAEMON_CLI_ENABLE -#define OPENTHREAD_POSIX_CONFIG_DAEMON_CLI_ENABLE 1 -#endif - /** * @def OPENTHREAD_POSIX_CONFIG_RCP_BUS * diff --git a/src/posix/platform/openthread-posix-daemon-config.h b/src/posix/platform/openthread-posix-daemon-config.h new file mode 100644 index 000000000..d7e8b6c33 --- /dev/null +++ b/src/posix/platform/openthread-posix-daemon-config.h @@ -0,0 +1,72 @@ +/* + * Copyright (c) 2023, The OpenThread Authors. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. Neither the name of the copyright holder nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE + * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + */ + +#ifndef OPENTHREAD_POSIX_DAEMON_CONFIG_H_ +#define OPENTHREAD_POSIX_DAEMON_CONFIG_H_ + +/** + * @file + * @brief + * This file includes the POSIX daemon specific configurations. + */ + +/** + * @def OPENTHREAD_POSIX_CONFIG_DAEMON_SOCKET_BASENAME + * + * Define socket basename used by POSIX app daemon. + * + */ +#ifndef OPENTHREAD_POSIX_CONFIG_DAEMON_SOCKET_BASENAME +#ifdef __linux__ +#define OPENTHREAD_POSIX_CONFIG_DAEMON_SOCKET_BASENAME "/run/openthread-%s" +#else +#define OPENTHREAD_POSIX_CONFIG_DAEMON_SOCKET_BASENAME "/tmp/openthread-%s" +#endif +#endif + +/** + * @def OPENTHREAD_POSIX_CONFIG_DAEMON_ENABLE + * + * Define to 1 to enable POSIX daemon. + * + */ +#ifndef OPENTHREAD_POSIX_CONFIG_DAEMON_ENABLE +#define OPENTHREAD_POSIX_CONFIG_DAEMON_ENABLE 0 +#endif + +/** + * @def OPENTHREAD_POSIX_CONFIG_DAEMON_CLI_ENABLE + * + * Define to 1 to enable CLI for the posix daemon. + * + */ +#ifndef OPENTHREAD_POSIX_CONFIG_DAEMON_CLI_ENABLE +#define OPENTHREAD_POSIX_CONFIG_DAEMON_CLI_ENABLE 1 +#endif + +#endif // OPENTHREAD_POSIX_DAEMON_CONFIG_H_