Subject: [PATCH BlueZ v4 1/8] configure, README: introduce --enable-external-plugins

From: Emil Velikov <[email protected]>

As the README chunk says, disabled by default, since they rely on
internal API/ABI and can break at any point.

Instead everyone affected should work and upstream their plugin into the
bluez project.
---
README | 13 +++++++++++++
configure.ac | 10 ++++++++++
2 files changed, 23 insertions(+)

diff --git a/README b/README
index 7de7045a8..6c0777046 100644
--- a/README
+++ b/README
@@ -249,6 +249,19 @@ For a working system, certain configuration options need to be enabled:
systems. The behavior of the deprecated tools may be unstable
or simply don't work anymore.

+ --enable-external-plugins
+
+ Enable support for external plugins
+
+ By default external plugins for bluetoothd and obexd are not
+ supported and thus disabled.
+
+ External plugins require access to internal, undocumented and
+ unversioned API in said daemons. As such they can break at any
+ time. If you have such plugins, enable this option and work
+ actively with the community to make said plugin part of the
+ upstream bluez project.
+
--enable-nfc

This option enable NFC pairing support.
diff --git a/configure.ac b/configure.ac
index b4d362494..5eb7ee0e0 100644
--- a/configure.ac
+++ b/configure.ac
@@ -364,6 +364,16 @@ AC_ARG_ENABLE(deprecated, AS_HELP_STRING([--enable-deprecated],
[enable_deprecated=${enableval}])
AM_CONDITIONAL(DEPRECATED, test "${enable_deprecated}" = "yes")

+AC_ARG_ENABLE(external-plugsin, AS_HELP_STRING([--enable-external-plugins],
+ [enable support for external plugins]),
+ [enable_external_plugins=${enableval}])
+AM_CONDITIONAL(EXTERNAL_PLUGINS, test "${enable_external_plugins}" = "yes")
+if (test "${enable_external_plugins}" = "yes"); then
+ AC_DEFINE(EXTERNAL_PLUGINS, 1, [Define if external plugin support is required])
+else
+ AC_DEFINE(EXTERNAL_PLUGINS, 0, [Define if external plugin support is required])
+fi
+
AC_ARG_ENABLE(sixaxis, AS_HELP_STRING([--enable-sixaxis],
[enable sixaxis plugin]), [enable_sixaxis=${enableval}])
AM_CONDITIONAL(SIXAXIS, test "${enable_sixaxis}" = "yes" &&

--
2.43.0



2024-01-29 17:31:44

by bluez.test.bot

[permalink] [raw]
Subject: RE: Remove support for external plugins

This is automated email and please do not reply to this email!

Dear submitter,

Thank you for submitting the patches to the linux bluetooth mailing list.
This is a CI test results with your patch series:
PW Link:https://patchwork.kernel.org/project/bluetooth/list/?series=820935

---Test result---

Test Summary:
CheckPatch FAIL 3.64 seconds
GitLint PASS 2.33 seconds
BuildEll PASS 24.08 seconds
BluezMake PASS 732.29 seconds
MakeCheck PASS 13.76 seconds
MakeDistcheck PASS 164.26 seconds
CheckValgrind PASS 226.32 seconds
CheckSmatch PASS 329.54 seconds
bluezmakeextell PASS 107.29 seconds
IncrementalBuild PASS 5502.72 seconds
ScanBuild PASS 928.77 seconds

Details
##############################
Test: CheckPatch - FAIL
Desc: Run checkpatch.pl script
Output:
[BlueZ,v4,2/8] obexd: factor out external plugin support
WARNING:IS_ENABLED_CONFIG: IS_ENABLED(x) is normally used as IS_ENABLED(CONFIG_x)
#127: FILE: obexd/src/plugin.c:37:
+#define IS_ENABLED(x) (x)

WARNING:IS_ENABLED_CONFIG: IS_ENABLED(EXTERNAL_PLUGINS) is normally used as IS_ENABLED(CONFIG_EXTERNAL_PLUGINS)
#253: FILE: obexd/src/plugin.c:200:
+ if IS_ENABLED(EXTERNAL_PLUGINS)

/github/workspace/src/src/13535810.patch total: 0 errors, 2 warnings, 166 lines checked

NOTE: For some of the reported defects, checkpatch may be able to
mechanically convert to the typical style using --fix or --fix-inplace.

/github/workspace/src/src/13535810.patch has style problems, please review.

NOTE: Ignored message types: COMMIT_MESSAGE COMPLEX_MACRO CONST_STRUCT FILE_PATH_CHANGES MISSING_SIGN_OFF PREFER_PACKED SPDX_LICENSE_TAG SPLIT_STRING SSCANF_TO_KSTRTO

NOTE: If any of the errors are false positives, please report
them to the maintainer, see CHECKPATCH in MAINTAINERS.


[BlueZ,v4,5/8] bluetoothd: factor out external plugin support
WARNING:IS_ENABLED_CONFIG: IS_ENABLED(x) is normally used as IS_ENABLED(CONFIG_x)
#127: FILE: src/plugin.c:29:
+#define IS_ENABLED(x) (x)

WARNING:BLOCK_COMMENT_STYLE: Block comments use a trailing */ on a separate line
#239: FILE: src/plugin.c:186:
+ * plugins are loaded. */

WARNING:IS_ENABLED_CONFIG: IS_ENABLED(EXTERNAL_PLUGINS) is normally used as IS_ENABLED(CONFIG_EXTERNAL_PLUGINS)
#258: FILE: src/plugin.c:205:
+ if IS_ENABLED(EXTERNAL_PLUGINS)

/github/workspace/src/src/13535813.patch total: 0 errors, 3 warnings, 178 lines checked

NOTE: For some of the reported defects, checkpatch may be able to
mechanically convert to the typical style using --fix or --fix-inplace.

/github/workspace/src/src/13535813.patch has style problems, please review.

NOTE: Ignored message types: COMMIT_MESSAGE COMPLEX_MACRO CONST_STRUCT FILE_PATH_CHANGES MISSING_SIGN_OFF PREFER_PACKED SPDX_LICENSE_TAG SPLIT_STRING SSCANF_TO_KSTRTO

NOTE: If any of the errors are false positives, please report
them to the maintainer, see CHECKPATCH in MAINTAINERS.


[BlueZ,v4,7/8] bluetoothd: change plugin loading alike obexd
WARNING:ENOSYS: ENOSYS means 'invalid syscall nr' and nothing else
#108: FILE: src/plugin.c:52:
+ if (err == -ENOSYS || err == -ENOTSUP)

/github/workspace/src/src/13535815.patch total: 0 errors, 1 warnings, 106 lines checked

NOTE: For some of the reported defects, checkpatch may be able to
mechanically convert to the typical style using --fix or --fix-inplace.

/github/workspace/src/src/13535815.patch has style problems, please review.

NOTE: Ignored message types: COMMIT_MESSAGE COMPLEX_MACRO CONST_STRUCT FILE_PATH_CHANGES MISSING_SIGN_OFF PREFER_PACKED SPDX_LICENSE_TAG SPLIT_STRING SSCANF_TO_KSTRTO

NOTE: If any of the errors are false positives, please report
them to the maintainer, see CHECKPATCH in MAINTAINERS.




---
Regards,
Linux Bluetooth