FreeCalypso > hg > freecalypso-tools
view target-utils/buzplayer/cmdtab.c @ 965:2969032bdfac
fcup-smsend[mult]: fix buglet in K&R C NULL pointer passing
The only 100% safe way to pass a NULL pointer as a function argument
in K&R C is to cast 0 to a pointer type; failing to do so may cause
mysterious bugs (invalid stack frames or garbage in argument registers)
on 64-bit machines. This issue has already been fixed in most of
FC host tools, but I just found some missed spots: passing of NULL UDH
to PDU encoding functions in fcup-smsend[mult] in the case of single
(not concatenated) SMS.
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Fri, 01 Sep 2023 07:33:51 +0000 |
parents | 9092ff68e37d |
children |
line wrap: on
line source
#include "cmdtab.h" extern void cmd_abbr(); extern void cmd_abbw(); extern void cmd_baud_switch(); extern void cmd_buz(); extern void cmd_buzlev(); extern void cmd_bzt(); extern void cmd_jump(); extern void cmd_pwt(); extern void cmd_r8(); extern void cmd_r16(); extern void cmd_r32(); extern void cmd_w8(); extern void cmd_w16(); extern void cmd_w32(); extern void abb_init(); extern void abb_power_off(); extern void abb_unlock_page2(); extern void melody_init(); extern void melody_init_pwt(); extern void melody_entry(); extern void melody_play(); extern void pwt_entry_note(); extern void pwt_entry_rest(); const struct cmdtab cmdtab[] = { {"E", melody_entry}, {"EP", pwt_entry_rest}, {"ET", pwt_entry_note}, {"I", melody_init}, {"IT", melody_init_pwt}, {"P", melody_play}, {"abbinit", abb_init}, {"abbpage2", abb_unlock_page2}, {"abbr", cmd_abbr}, {"abbw", cmd_abbw}, {"baud", cmd_baud_switch}, {"buz", cmd_buz}, {"buzlev", cmd_buzlev}, {"bzt", cmd_bzt}, {"jump", cmd_jump}, {"poweroff", abb_power_off}, {"pwt", cmd_pwt}, {"r8", cmd_r8}, {"r16", cmd_r16}, {"r32", cmd_r32}, {"w8", cmd_w8}, {"w16", cmd_w16}, {"w32", cmd_w32}, {0, 0} };