Subject: [PATCH BlueZ v3 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 cab5da581..5e353a1d6 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-25 03:15:34

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=819668

---Test result---

Test Summary:
CheckPatch FAIL 2.89 seconds
GitLint PASS 1.83 seconds
BuildEll PASS 23.99 seconds
BluezMake PASS 735.43 seconds
MakeCheck PASS 11.83 seconds
MakeDistcheck PASS 163.54 seconds
CheckValgrind PASS 226.28 seconds
CheckSmatch PASS 330.80 seconds
bluezmakeextell PASS 107.89 seconds
IncrementalBuild PASS 5466.84 seconds
ScanBuild PASS 954.84 seconds

Details
##############################
Test: CheckPatch - FAIL
Desc: Run checkpatch.pl script
Output:
[BlueZ,v3,2/8] obexd: factor out external plugin support
WARNING:LONG_LINE: line length of 86 exceeds 80 columns
#134: FILE: obexd/src/plugin.c:47:
+static gboolean add_external_plugin(void *handle, const struct obex_plugin_desc *desc)

/github/workspace/src/src/13529768.patch total: 0 errors, 1 warnings, 176 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/13529768.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,v3,5/8] bluetoothd: factor out external plugin support
WARNING:BLOCK_COMMENT_STYLE: Block comments use a trailing */ on a separate line
#243: FILE: src/plugin.c:190:
+ * plugins are loaded. */

WARNING:TRAILING_SEMICOLON: macros should not use a trailing semicolon
#318: FILE: src/plugin.h:51:
+#define BLUETOOTH_PLUGIN_DEFINE(name, version, priority, init, exit) \
+ const struct bluetooth_plugin_desc \
+ __bluetooth_builtin_ ## name = { \
+ #name, priority, init, exit \
+ };

/github/workspace/src/src/13529772.patch total: 0 errors, 2 warnings, 211 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/13529772.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,v3,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/13529774.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/13529774.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