anchao commented on code in PR #20686:
URL: https://github.com/apache/nuttx/pull/20686#discussion_r4389559389
##########
libs/zblue/CMakeLists.txt:
##########
@@ -0,0 +1,40 @@
+#
##############################################################################
+# libs/zblue/CMakeLists.txt
Review Comment:
@acassis @casaroli
I understand the concern about the attack surface. A full BT/BLE stack is
definitely security-sensitive, and we should treat it as such.
However, I think this is very similar to the situation Zephyr faces: the
Bluetooth host stack is a core OS networking subsystem with a large attack
surface, so the right solution is to harden it, fuzz/test it, and keep fixing
issues in the stack itself. I do not think moving it to nuttx-apps
fundamentally solves the security problem.
For the majority of NuttX deployments today, especially IoT devices, Flat
mode is still the main usage model. In that model, putting the stack in
nuttx-apps does not provide real isolation. It also does not solve the
performance and integration issues around HCI, net buffers, protocol state, and
driver interaction.
For Protected/Kernel mode, I agree that userspace isolation would be
valuable. But today we do not yet have a complete Classic Bluetooth stack that
can run properly in that model. We had also considered porting BlueZ, but the
glibc, D-Bus, and userspace runtime dependencies make it a poor fit for typical
NuttX targets.
So my view is:
- security is a real concern, but apps placement is not a complete solution;
- Flat mode remains the dominant deployment model for NuttX IoT devices;
- zblue is much closer to an OS networking subsystem than to an application;
- BlueZ-style userspace architecture is too heavy for many NuttX targets;
- we should land the core stack in nuttx.git first, then continue hardening,
testing, fuzzing, and eventually evaluate better isolation for Protected/Kernel
mode.
In other words, I agree we need to be careful about security, but I still
think the practical first step is to integrate the host stack as a NuttX
networking subsystem and improve its robustness there.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]