Change all ackbuf in ic10.c to 64 bytes to prevent overflow

This commit is contained in:
Michael Black 2020-03-23 10:50:50 -05:00
parent 01a8ec4ba1
commit b9baf18f53

View File

@ -152,7 +152,7 @@ static int get_ic10_if(RIG *rig, char *data)
*/
int ic10_set_vfo(RIG *rig, vfo_t vfo)
{
char ackbuf[16], cmdbuf[6];
char ackbuf[64], cmdbuf[6];
int cmd_len, retval, ack_len;
char vfo_function;
@ -323,7 +323,7 @@ int ic10_get_mode(RIG *rig, vfo_t vfo, rmode_t *mode, pbwidth_t *width)
*/
int ic10_set_mode(RIG *rig, vfo_t vfo, rmode_t mode, pbwidth_t width)
{
char modebuf[6], ackbuf[16];
char modebuf[6], ackbuf[64];
int mode_len, ack_len, retval;
char mode_letter;
@ -392,7 +392,7 @@ int ic10_get_freq(RIG *rig, vfo_t vfo, freq_t *freq)
*/
int ic10_set_freq(RIG *rig, vfo_t vfo, freq_t freq)
{
char freqbuf[16], ackbuf[16];
char freqbuf[64], ackbuf[64];
int freq_len, ack_len, retval;
unsigned char vfo_letter;
vfo_t tvfo;
@ -432,7 +432,7 @@ int ic10_set_freq(RIG *rig, vfo_t vfo, freq_t freq)
*/
int ic10_set_ant(RIG *rig, vfo_t vfo, ant_t ant, value_t option)
{
char buf[6], ackbuf[16];
char buf[6], ackbuf[64];
int len, ack_len, retval;
len = sprintf(buf, "AN%c;", ant == RIG_ANT_1 ? '1' : '2');
@ -511,7 +511,7 @@ int ic10_get_ptt(RIG *rig, vfo_t vfo, ptt_t *ptt)
*/
int ic10_set_ptt(RIG *rig, vfo_t vfo, ptt_t ptt)
{
char pttbuf[4], ackbuf[16];
char pttbuf[4], ackbuf[64];
int ptt_len, ack_len, retval;
unsigned char ptt_letter;
@ -570,7 +570,7 @@ int ic10_get_mem(RIG *rig, vfo_t vfo, int *ch)
*/
int ic10_set_mem(RIG *rig, vfo_t vfo, int ch)
{
char membuf[8], ackbuf[16];
char membuf[8], ackbuf[64];
int mem_len, ack_len, retval;
mem_len = sprintf(membuf, "MC %02d;", ch);
@ -670,7 +670,7 @@ int ic10_get_channel(RIG *rig, channel_t *chan)
int ic10_set_channel(RIG *rig, const channel_t *chan)
{
char membuf[32], ackbuf[32];
char membuf[32], ackbuf[64];
int retval, ack_len, len, md;
int64_t freq;
@ -804,7 +804,7 @@ int ic10_get_func(RIG *rig, vfo_t vfo, setting_t func, int *status)
*/
int ic10_set_func(RIG *rig, vfo_t vfo, setting_t func, int status)
{
char cmdbuf[4], fctbuf[16], ackbuf[16];
char cmdbuf[4], fctbuf[16], ackbuf[64];
int cmdlen, fct_len, ack_len;
switch (func)
@ -924,7 +924,7 @@ int ic10_get_parm(RIG *rig, setting_t parm, value_t *val)
*/
int ic10_set_powerstat(RIG *rig, powerstat_t status)
{
char pwrbuf[16], ackbuf[16];
char pwrbuf[16], ackbuf[64];
int pwr_len, ack_len;
pwr_len = sprintf(pwrbuf, "PS%c;", status == RIG_POWER_ON ? '1' : '0');
@ -969,7 +969,7 @@ int ic10_get_powerstat(RIG *rig, powerstat_t *status)
*/
int ic10_set_trn(RIG *rig, int trn)
{
char trnbuf[16], ackbuf[16];
char trnbuf[16], ackbuf[64];
int trn_len, ack_len;
trn_len = sprintf(trnbuf, "AI%c;", trn == RIG_TRN_RIG ? '1' : '0');
@ -1014,7 +1014,7 @@ int ic10_get_trn(RIG *rig, int *trn)
*/
int ic10_vfo_op(RIG *rig, vfo_t vfo, vfo_op_t op)
{
char *cmd, ackbuf[16];
char *cmd, ackbuf[64];
int ack_len;
switch (op)
@ -1039,7 +1039,7 @@ int ic10_vfo_op(RIG *rig, vfo_t vfo, vfo_op_t op)
*/
int ic10_scan(RIG *rig, vfo_t vfo, scan_t scan, int ch)
{
char ackbuf[16];
char ackbuf[64];
int ack_len;
return ic10_transaction(rig, scan == RIG_SCAN_STOP ? "SC0;" : "SC1;", 4,