I am developing an application that uses disk arbitration to find out which devices are connected to a machine and react to connect/disconnect events and that has been working well for years. Just recently I discovered that something does not work as expected when working with external thunderbolt drives and I debugged this to find that the volume's ejectable property (kDADiskDescriptionMediaEjectableKey in Disk Arbitration which maps to kIOMediaEjectableKey i IOKit) is set to false. However, the drive is displayed with an eject button.
What does finder use to decide if this volume is ejectable? Obviously not the obvious kDADiskDescriptionMediaEjectableKey.
Any hint appreciated.