kopia lustrzana https://github.com/Hamlib/Hamlib
Allow rigctld to continue when an invalid set_conf parameter is used
rodzic
3f8da23bb6
commit
c02370d279
10
src/conf.c
10
src/conf.c
|
@ -842,6 +842,8 @@ static int frontend_get_conf2(RIG *rig, token_t token, char *val, int val_len)
|
||||||
case TOK_HANDSHAKE:
|
case TOK_HANDSHAKE:
|
||||||
if (rs->rigport.type.rig != RIG_PORT_SERIAL)
|
if (rs->rigport.type.rig != RIG_PORT_SERIAL)
|
||||||
{
|
{
|
||||||
|
rig_debug(RIG_DEBUG_ERR, "%s: getting handshake is invalid for non-serial port rig type\n",
|
||||||
|
__func__);
|
||||||
return -RIG_EINVAL;
|
return -RIG_EINVAL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1251,6 +1253,7 @@ token_t HAMLIB_API rig_token_lookup(RIG *rig, const char *name)
|
||||||
*/
|
*/
|
||||||
int HAMLIB_API rig_set_conf(RIG *rig, token_t token, const char *val)
|
int HAMLIB_API rig_set_conf(RIG *rig, token_t token, const char *val)
|
||||||
{
|
{
|
||||||
|
struct rig_state *rs = &rig->state;
|
||||||
rig_debug(RIG_DEBUG_VERBOSE, "%s called\n", __func__);
|
rig_debug(RIG_DEBUG_VERBOSE, "%s called\n", __func__);
|
||||||
|
|
||||||
if (!rig || !rig->caps)
|
if (!rig || !rig->caps)
|
||||||
|
@ -1258,6 +1261,13 @@ int HAMLIB_API rig_set_conf(RIG *rig, token_t token, const char *val)
|
||||||
return -RIG_EINVAL;
|
return -RIG_EINVAL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Some parameters can be ignored
|
||||||
|
if (token == TOK_HANDSHAKE && (rs->rigport.type.rig != RIG_PORT_SERIAL))
|
||||||
|
{
|
||||||
|
rig_debug(RIG_DEBUG_WARN, "%s: handshake is not valid for non-serial port rig\n", __func__);
|
||||||
|
return RIG_OK; // this allows rigctld to continue and just print a warning instead of error
|
||||||
|
}
|
||||||
|
|
||||||
if (rig_need_debug(RIG_DEBUG_VERBOSE))
|
if (rig_need_debug(RIG_DEBUG_VERBOSE))
|
||||||
{
|
{
|
||||||
const struct confparams *cfp;
|
const struct confparams *cfp;
|
||||||
|
|
Ładowanie…
Reference in New Issue