void user_quit() { // Part all channels user_quitAllChannels(CURRENT_ID); // Kill user user_reset(); INFO->state = IRCD_STATE_DISCONNECTED; uip_close(); }
static void leaveBootloader( void ) { usbDeviceDisconnect(); USB_INTR_ENABLE = 0; USB_INTR_CFG = 0; // also reset config bits bootLoaderExit(); typedef void (*vector_t)( void ) __attribute__((noreturn)); vector_t user_reset = (vector_t) (USER_RESET_ADDR / 2); user_reset(); }