FreeCalypso > hg > freecalypso-tools
comparison uptools/atcmd/smsend_multmain.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 | dc2fd8e6f42c |
children | ec7e23d5151f |
comparison
equal
deleted
inserted
replaced
964:a96cb97b66a2 | 965:2969032bdfac |
---|---|
149 exit(ERROR_USAGE); | 149 exit(ERROR_USAGE); |
150 } | 150 } |
151 if (rc == -2) | 151 if (rc == -2) |
152 goto toolong; | 152 goto toolong; |
153 init_send_process(); | 153 init_send_process(); |
154 send_in_pdu_mode(dest_addr, msgtext_gsm7, msgtext_gsmlen, 0, 0); | 154 send_in_pdu_mode(dest_addr, msgtext_gsm7, msgtext_gsmlen, |
155 (u_char *) 0, 0); | |
155 return(0); | 156 return(0); |
156 } | 157 } |
157 | 158 |
158 process_msg_ucs2() | 159 process_msg_ucs2() |
159 { | 160 { |
172 "input line %d: message exceeds 70 UCS-2 chars\n", | 173 "input line %d: message exceeds 70 UCS-2 chars\n", |
173 lineno); | 174 lineno); |
174 exit(ERROR_USAGE); | 175 exit(ERROR_USAGE); |
175 } | 176 } |
176 init_send_process(); | 177 init_send_process(); |
177 send_pdu_ucs2(dest_addr, msgtext_uni, msgtext_unilen, 0, 0); | 178 send_pdu_ucs2(dest_addr, msgtext_uni, msgtext_unilen, (u_char *) 0, 0); |
178 return(0); | 179 return(0); |
179 } | 180 } |
180 | 181 |
181 main(argc, argv) | 182 main(argc, argv) |
182 char **argv; | 183 char **argv; |