Fastboot is not providing a token when trying to unlock HTC One M9
(bootloader) [KillSwitch] : /dev/block/bootdevice/by-name/frp
(bootloader) [KillSwitch] Last Byte is 0X00, disable unlock
(bootloader) [KillSwitch] oem unlock Turn Off!


This means that you need to enable Developer Options in your phone's Settings (go to About and tap the version number repeatedly), then go into those options and check Enable OEM Unlock.  This setting prevents a thief (who doesn't know your device password and thus can't change this setting) from unlocking your bootloader, flashing a new ROM, and gaining use of the phone.

See http://www.droid-life.com/2014/11/04/fyi-android-5-0-introduces-enable-oem-unlock-option-in-developer-options/

Note that not every phone has this setting: only those that can be unlocked by fastboot in the first place do. This answer applies to the phone in the question and other phone vendors that allow their bootloaders to be unlocked. Not all vendors do.