Hello,
There are 2 CAN schools: ISO and Bosch.
One says you can recover from bus off by software. The other requests manual intervention.
The Bus-Off can be dealt with (detected) with the msCAN Error Interrupt and the state bits.
See CANRFLG with bits TSTAT[1:0] and RSTAT[1:0] description.
See CANRIER for how to enable Interrupts linked to the state of the module (Active, Passive, Bus Off)
Cheers,
Alban.