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}
};