src/bluez/peripheral.rs:145: mtu() does characteristic.info.mtu.unwrap(). In bluez-async 0.8, CharacteristicInfo::mtu is Option<u16> and is None on BlueZ versions that don't expose the MTU property (< 5.62).
Failure scenario: discover_services() then mtu() on an older distro panics. The panic happens while holding the services std Mutex, poisoning it; afterwards services() and the notification stream also panic on lock().unwrap().
Fix direction: fall back to DEFAULT_MTU_SIZE when the property is absent.
src/bluez/peripheral.rs:145:mtu()doescharacteristic.info.mtu.unwrap(). In bluez-async 0.8,CharacteristicInfo::mtuisOption<u16>and isNoneon BlueZ versions that don't expose theMTUproperty (< 5.62).Failure scenario:
discover_services()thenmtu()on an older distro panics. The panic happens while holding theservicesstd Mutex, poisoning it; afterwardsservices()and the notification stream also panic onlock().unwrap().Fix direction: fall back to
DEFAULT_MTU_SIZEwhen the property is absent.