FreeCalypso > hg > freecalypso-tools
view ffstools/tiaud/mkvol.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 | 1f3b28d66d53 |
children |
line wrap: on
line source
/* * This program generates an audio volume file for uploading into Calypso * device FFS; TI's Audio Service requires every *.cfg file to be accompanied * by a corresponding *.vol file. */ #include <sys/types.h> #include <sys/file.h> #include <stdio.h> #include <stdlib.h> #include <unistd.h> u_char bin[4]; write_bin_output(filename) char *filename; { int fd; fd = open(filename, O_WRONLY|O_CREAT|O_TRUNC, 0666); if (fd < 0) { perror(filename); exit(1); } write(fd, &bin, sizeof bin); close(fd); } main(argc, argv) char **argv; { if (argc != 3) { fprintf(stderr, "usage: %s volume outfile\n", argv[0]); exit(1); } bin[0] = atoi(argv[1]); write_bin_output(argv[2]); exit(0); }