Hangup on DTMF 'D'?

I’m trying to interface with a Toshiba PBX via analog lines. The PBX using a DTMF ‘D’ tone to signal hangup. Is there any easy way to treat the D tone as hangup, unconditionally?

I’ve added it to extensions.conf, and that covers most things, except voicemail. When a user hangs up when leaving voice mail, the connection lingers until maxsilence cuts it off, then it lingers again in the dialplan, until it times out.

I poked around in the voicemail code (app_voicemail.c) and I see that it doesn’t have any handling for A - D tones. I’ve considered hacking it in, but I wonder what other apps will give me the same problem, and thought some smart person here might have a better solution.

Thanks in advance!

Oh, asterisk 1.2.15 from source, on openSUSE 10.2, with a TDM400 card.