kopia lustrzana https://github.com/Hamlib/Hamlib
rodzic
20882cb18f
commit
f463eef2cf
|
@ -81,7 +81,6 @@ static int ra37xx_one_transaction(RIG *rig, const char *cmd, char *data,
|
|||
struct rig_state *rs = &rig->state;
|
||||
char cmdbuf[BUFSZ];
|
||||
char respbuf[BUFSZ];
|
||||
int cmd_len;
|
||||
int retval;
|
||||
int pkt_header_len;
|
||||
struct timeval tv;
|
||||
|
@ -96,17 +95,17 @@ static int ra37xx_one_transaction(RIG *rig, const char *cmd, char *data,
|
|||
if (priv->receiver_id != -1)
|
||||
{
|
||||
pkt_header_len = 2;
|
||||
cmd_len = sprintf(cmdbuf, SOM "%d%s" EOM, priv->receiver_id, cmd);
|
||||
SNPRINTF(cmdbuf, sizeof(cmdbuf), SOM "%d%s" EOM, priv->receiver_id, cmd);
|
||||
}
|
||||
else
|
||||
{
|
||||
pkt_header_len = 1;
|
||||
cmd_len = sprintf(cmdbuf, SOM "%s" EOM, cmd);
|
||||
SNPRINTF(cmdbuf, sizeof(cmdbuf), SOM "%s" EOM, cmd);
|
||||
}
|
||||
|
||||
rig_flush(&rs->rigport);
|
||||
|
||||
retval = write_block(&rs->rigport, (unsigned char *) cmdbuf, cmd_len);
|
||||
retval = write_block(&rs->rigport, (unsigned char *) cmdbuf, strlen(cmdbuf));
|
||||
|
||||
if (retval != RIG_OK)
|
||||
{
|
||||
|
@ -258,12 +257,10 @@ int ra37xx_cleanup(RIG *rig)
|
|||
return RIG_OK;
|
||||
}
|
||||
|
||||
|
||||
|
||||
/*
|
||||
* Assumes rig!=NULL, rig->state.priv!=NULL
|
||||
*/
|
||||
int ra37xx_set_conf(RIG *rig, token_t token, const char *val)
|
||||
int ra37xx_set_conf2(RIG *rig, token_t token, const char *val, int val_len)
|
||||
{
|
||||
struct ra37xx_priv_data *priv = (struct ra37xx_priv_data *)rig->state.priv;
|
||||
int receiver_id;
|
||||
|
@ -288,19 +285,24 @@ int ra37xx_set_conf(RIG *rig, token_t token, const char *val)
|
|||
return RIG_OK;
|
||||
}
|
||||
|
||||
int ra37xx_set_conf(RIG *rig, token_t token, const char *val)
|
||||
{
|
||||
return ra37xx_set_conf2(rig, token, val, 128);
|
||||
}
|
||||
|
||||
/*
|
||||
* assumes rig!=NULL,
|
||||
* Assumes rig!=NULL, rig->state.priv!=NULL
|
||||
* and val points to a buffer big enough to hold the conf value.
|
||||
*/
|
||||
int ra37xx_get_conf(RIG *rig, token_t token, char *val)
|
||||
int ra37xx_get_conf2(RIG *rig, token_t token, char *val, int val_len)
|
||||
{
|
||||
struct ra37xx_priv_data *priv = (struct ra37xx_priv_data *)rig->state.priv;
|
||||
|
||||
switch (token)
|
||||
{
|
||||
case TOK_RIGID:
|
||||
sprintf(val, "%d", priv->receiver_id);
|
||||
SNPRINTF(val, val_len, "%d", priv->receiver_id);
|
||||
break;
|
||||
|
||||
default:
|
||||
|
@ -339,14 +341,8 @@ int ra37xx_close(RIG *rig)
|
|||
int ra37xx_set_freq(RIG *rig, vfo_t vfo, freq_t freq)
|
||||
{
|
||||
char freqbuf[BUFSZ];
|
||||
int freq_len;
|
||||
|
||||
freq_len = sprintf(freqbuf, "F%lu", (unsigned long)freq);
|
||||
|
||||
if (freq_len < 0)
|
||||
{
|
||||
return -RIG_ETRUNC;
|
||||
}
|
||||
SNPRINTF(freqbuf, sizeof(freqbuf), "F%lu", (unsigned long)freq);
|
||||
|
||||
return ra37xx_transaction(rig, freqbuf, NULL, NULL);
|
||||
}
|
||||
|
@ -417,9 +413,9 @@ int ra37xx_set_mode(RIG *rig, vfo_t vfo, rmode_t mode, pbwidth_t width)
|
|||
#endif
|
||||
|
||||
#ifdef XXREMOVEDXX
|
||||
sprintf(buf, "M%d;B%d,%d", ra_mode, widthtype, widthnum);
|
||||
SNPRINTF(buf, sizeof(buf), "M%d;B%d,%d", ra_mode, widthtype, widthnum);
|
||||
#else
|
||||
sprintf(buf, "M%d", ra_mode);
|
||||
SNPRINTF(buf, sizeof(buf), "M%d", ra_mode);
|
||||
#endif
|
||||
|
||||
return ra37xx_transaction(rig, buf, NULL, NULL);
|
||||
|
@ -473,7 +469,7 @@ int ra37xx_get_mode(RIG *rig, vfo_t vfo, rmode_t *mode, pbwidth_t *width)
|
|||
|
||||
/* FIXME */
|
||||
widthnum = 0;
|
||||
sprintf(buf, "QBCON%d,%d", widthtype, widthnum);
|
||||
SNPRINTF(buf, sizeof(buf), "QBCON%d,%d", widthtype, widthnum);
|
||||
retval = ra37xx_transaction(rig, buf, resbuf, &len);
|
||||
|
||||
if (retval != RIG_OK)
|
||||
|
@ -494,7 +490,7 @@ int ra37xx_set_func(RIG *rig, vfo_t vfo, setting_t func, int status)
|
|||
switch (func)
|
||||
{
|
||||
case RIG_FUNC_MUTE:
|
||||
sprintf(cmdbuf, "MUTE%d", status ? 1 : 0);
|
||||
SNPRINTF(cmdbuf, sizeof(cmdbuf), "MUTE%d", status ? 1 : 0);
|
||||
break;
|
||||
|
||||
default:
|
||||
|
@ -546,23 +542,23 @@ int ra37xx_set_level(RIG *rig, vfo_t vfo, setting_t level, value_t val)
|
|||
switch (level)
|
||||
{
|
||||
case RIG_LEVEL_AF:
|
||||
sprintf(cmdbuf, "AFL%d", (int)(val.f * 255));
|
||||
SNPRINTF(cmdbuf, sizeof(cmdbuf), "AFL%d", (int)(val.f * 255));
|
||||
break;
|
||||
|
||||
case RIG_LEVEL_PREAMP:
|
||||
sprintf(cmdbuf, "RFAMP%d", val.i ? 1 : 0);
|
||||
SNPRINTF(cmdbuf, sizeof(cmdbuf), "RFAMP%d", val.i ? 1 : 0);
|
||||
break;
|
||||
|
||||
case RIG_LEVEL_CWPITCH: /* BFO */
|
||||
sprintf(cmdbuf, "BFO%d", val.i);
|
||||
SNPRINTF(cmdbuf, sizeof(cmdbuf), "BFO%d", val.i);
|
||||
break;
|
||||
|
||||
case RIG_LEVEL_SQL:
|
||||
sprintf(cmdbuf, "CORL%d", (int)(val.f * 255));
|
||||
SNPRINTF(cmdbuf, sizeof(cmdbuf), "CORL%d", (int)(val.f * 255));
|
||||
break;
|
||||
|
||||
case RIG_LEVEL_RF:
|
||||
sprintf(cmdbuf, "G%d", (int)(val.f * 255));
|
||||
SNPRINTF(cmdbuf, sizeof(cmdbuf), "G%d", (int)(val.f * 255));
|
||||
break;
|
||||
|
||||
case RIG_LEVEL_AGC:
|
||||
|
@ -579,7 +575,7 @@ int ra37xx_set_level(RIG *rig, vfo_t vfo, setting_t level, value_t val)
|
|||
default: return -RIG_EINVAL;
|
||||
}
|
||||
|
||||
sprintf(cmdbuf, "AGC%d,%d", val.i == RIG_AGC_USER ? 1 : 0, agc);
|
||||
SNPRINTF(cmdbuf, sizeof(cmdbuf), "AGC%d,%d", val.i == RIG_AGC_USER ? 1 : 0, agc);
|
||||
break;
|
||||
|
||||
default:
|
||||
|
@ -748,7 +744,7 @@ int ra37xx_set_ant(RIG *rig, vfo_t vfo, ant_t ant, value_t option)
|
|||
return -RIG_EINVAL;
|
||||
}
|
||||
|
||||
sprintf(buf, "ANT%d", i_ant);
|
||||
SNPRINTF(buf, sizeof(buf), "ANT%d", i_ant);
|
||||
|
||||
return ra37xx_transaction(rig, buf, NULL, NULL);
|
||||
}
|
||||
|
@ -787,7 +783,7 @@ int ra37xx_set_mem(RIG *rig, vfo_t vfo, int ch)
|
|||
|
||||
/* NB: does a RIG_OP_TO_VFO!*/
|
||||
|
||||
sprintf(buf, "CHAN%d", ch);
|
||||
SNPRINTF(buf, sizeof(buf), "CHAN%d", ch);
|
||||
|
||||
return ra37xx_transaction(rig, buf, NULL, NULL);
|
||||
}
|
||||
|
@ -827,7 +823,7 @@ int ra37xx_scan(RIG *rig, vfo_t vfo, scan_t scan, int ch)
|
|||
return -RIG_EINVAL;
|
||||
}
|
||||
|
||||
sprintf(buf, "SCAN%d,0", scantype);
|
||||
SNPRINTF(buf, sizeof(buf), "SCAN%d,0", scantype);
|
||||
|
||||
return ra37xx_transaction(rig, buf, NULL, NULL);
|
||||
}
|
||||
|
@ -847,7 +843,7 @@ int ra37xx_vfo_op(RIG *rig, vfo_t vfo, vfo_op_t op)
|
|||
return ret;
|
||||
}
|
||||
|
||||
sprintf(buf, "STRE%d", ch);
|
||||
SNPRINTF(buf, sizeof(buf), "STRE%d", ch);
|
||||
return ra37xx_transaction(rig, buf, NULL, NULL);
|
||||
|
||||
case RIG_OP_TO_VFO:
|
||||
|
@ -858,7 +854,7 @@ int ra37xx_vfo_op(RIG *rig, vfo_t vfo, vfo_op_t op)
|
|||
return ret;
|
||||
}
|
||||
|
||||
sprintf(buf, "CHAN%d", ch);
|
||||
SNPRINTF(buf, sizeof(buf), "CHAN%d", ch);
|
||||
return ra37xx_transaction(rig, buf, NULL, NULL);
|
||||
|
||||
default:
|
||||
|
|
|
@ -79,14 +79,13 @@ static int racal_transaction(RIG *rig, const char *cmd, char *data,
|
|||
struct racal_priv_data *priv = (struct racal_priv_data *)rig->state.priv;
|
||||
struct rig_state *rs = &rig->state;
|
||||
char cmdbuf[BUFSZ + 1];
|
||||
int cmd_len;
|
||||
int retval;
|
||||
|
||||
cmd_len = sprintf(cmdbuf, SOM "%u%s" EOM, priv->receiver_id, cmd);
|
||||
SNPRINTF(cmdbuf, sizeof(cmdbuf), SOM "%u%s" EOM, priv->receiver_id, cmd);
|
||||
|
||||
rig_flush(&rs->rigport);
|
||||
|
||||
retval = write_block(&rs->rigport, (unsigned char *) cmdbuf, cmd_len);
|
||||
retval = write_block(&rs->rigport, (unsigned char *) cmdbuf, strlen(cmdbuf));
|
||||
|
||||
if (retval != RIG_OK)
|
||||
{
|
||||
|
@ -192,14 +191,14 @@ int racal_set_conf(RIG *rig, token_t token, const char *val)
|
|||
* Assumes rig!=NULL, rig->state.priv!=NULL
|
||||
* and val points to a buffer big enough to hold the conf value.
|
||||
*/
|
||||
int racal_get_conf(RIG *rig, token_t token, char *val)
|
||||
int racal_get_conf2(RIG *rig, token_t token, char *val, int val_len)
|
||||
{
|
||||
struct racal_priv_data *priv = (struct racal_priv_data *)rig->state.priv;
|
||||
|
||||
switch (token)
|
||||
{
|
||||
case TOK_RIGID:
|
||||
sprintf(val, "%u", priv->receiver_id);
|
||||
SNPRINTF(val, val_len, "%u", priv->receiver_id);
|
||||
break;
|
||||
|
||||
default:
|
||||
|
@ -209,6 +208,11 @@ int racal_get_conf(RIG *rig, token_t token, char *val)
|
|||
return RIG_OK;
|
||||
}
|
||||
|
||||
int racal_get_conf(RIG *rig, token_t token, char *val)
|
||||
{
|
||||
return racal_get_conf2(rig, token, val, 128);
|
||||
}
|
||||
|
||||
/*
|
||||
* racal_open
|
||||
* Assumes rig!=NULL
|
||||
|
@ -242,14 +246,8 @@ int racal_close(RIG *rig)
|
|||
int racal_set_freq(RIG *rig, vfo_t vfo, freq_t freq)
|
||||
{
|
||||
char freqbuf[BUFSZ];
|
||||
int freq_len;
|
||||
|
||||
freq_len = sprintf(freqbuf, "F%0g", (double)(freq / MHz(1)));
|
||||
|
||||
if (freq_len < 0)
|
||||
{
|
||||
return -RIG_ETRUNC;
|
||||
}
|
||||
SNPRINTF(freqbuf, sizeof(freqbuf), "F%0g", (double)(freq / MHz(1)));
|
||||
|
||||
return racal_transaction(rig, freqbuf, NULL, NULL);
|
||||
}
|
||||
|
@ -315,11 +313,11 @@ int racal_set_mode(RIG *rig, vfo_t vfo, rmode_t mode, pbwidth_t width)
|
|||
width = rig_passband_normal(rig, mode);
|
||||
}
|
||||
|
||||
sprintf(buf, "D%dI%.0f", ra_mode, (double)(width / kHz(1)));
|
||||
SNPRINTF(buf, sizeof(buf), "D%dI%.0f", ra_mode, (double)(width / kHz(1)));
|
||||
}
|
||||
else
|
||||
{
|
||||
sprintf(buf, "D%d", ra_mode);
|
||||
SNPRINTF(buf, sizeof(buf), "D%d", ra_mode);
|
||||
}
|
||||
|
||||
return racal_transaction(rig, buf, NULL, NULL);
|
||||
|
@ -388,12 +386,12 @@ int racal_set_level(RIG *rig, vfo_t vfo, setting_t level, value_t val)
|
|||
{
|
||||
case RIG_LEVEL_RF:
|
||||
/* Manually set threshold */
|
||||
sprintf(cmdbuf, "A%d", (int)(val.f * 120));
|
||||
SNPRINTF(cmdbuf, sizeof(cmdbuf), "A%d", (int)(val.f * 120));
|
||||
priv->threshold = val.f;
|
||||
break;
|
||||
|
||||
case RIG_LEVEL_IF:
|
||||
sprintf(cmdbuf, "B%+0g", ((double)val.i) / kHz(1));
|
||||
SNPRINTF(cmdbuf, sizeof(cmdbuf), "B%+0g", ((double)val.i) / kHz(1));
|
||||
priv->bfo = val.i;
|
||||
break;
|
||||
|
||||
|
@ -416,7 +414,7 @@ int racal_set_level(RIG *rig, vfo_t vfo, setting_t level, value_t val)
|
|||
agc += 4; /* with manually set threshold */
|
||||
}
|
||||
|
||||
sprintf(cmdbuf, "M%d", agc);
|
||||
SNPRINTF(cmdbuf, sizeof(cmdbuf), "M%d", agc);
|
||||
break;
|
||||
|
||||
default:
|
||||
|
@ -564,7 +562,7 @@ const char *racal_get_info(RIG *rig)
|
|||
strcpy(filterbuf, "IO error");
|
||||
}
|
||||
|
||||
sprintf(infobuf, "BITE errors: %s, Filters: %s\n",
|
||||
SNPRINTF(infobuf, sizeof(infobuf), "BITE errors: %s, Filters: %s\n",
|
||||
bitebuf + 1, filterbuf);
|
||||
|
||||
return infobuf;
|
||||
|
|
Ładowanie…
Reference in New Issue