Finish implementing rig_get_conf2

https://github.com/Hamlib/Hamlib/issues/924
pull/928/head
Mike Black W9MDB 2022-01-10 08:48:08 -06:00
rodzic b84086d7f6
commit fd935597a9
3 zmienionych plików z 16 dodań i 2 usunięć

Wyświetl plik

@ -2105,6 +2105,7 @@ enum rig_function_e {
RIG_FUNCTION_READ_FRAME_DIRECT,
RIG_FUNCTION_IS_ASYNC_FRAME,
RIG_FUNCTION_PROCESS_ASYNC_FRAME,
RIG_FUNCTION_GET_CONF2,
};
/**

Wyświetl plik

@ -692,7 +692,7 @@ static int frontend_set_conf(RIG *rig, token_t token, const char *val)
* frontend_get_conf
* assumes rig!=NULL, val!=NULL
*/
static int frontend_get_conf(RIG *rig, token_t token, char *val)
static int frontend_get_conf2(RIG *rig, token_t token, char *val, int val_len)
{
struct rig_state *rs;
const char *s = "";
@ -1245,6 +1245,11 @@ int HAMLIB_API rig_set_conf(RIG *rig, token_t token, const char *val)
* \sa rig_set_conf()
*/
int HAMLIB_API rig_get_conf(RIG *rig, token_t token, char *val)
{
return rig_get_conf2(rig, token, val, 128);
}
int HAMLIB_API rig_get_conf2(RIG *rig, token_t token, char *val, int val_len)
{
rig_debug(RIG_DEBUG_VERBOSE, "%s called\n", __func__);
@ -1255,7 +1260,12 @@ int HAMLIB_API rig_get_conf(RIG *rig, token_t token, char *val)
if (IS_TOKEN_FRONTEND(token))
{
return frontend_get_conf(rig, token, val);
return frontend_get_conf2(rig, token, val, val_len);
}
if (rig->caps->get_conf2)
{
return rig->caps->get_conf2(rig, token, val, val_len);
}
if (rig->caps->get_conf == NULL)

Wyświetl plik

@ -2351,6 +2351,9 @@ void *HAMLIB_API rig_get_function_ptr(rig_model_t rig_model,
case RIG_FUNCTION_GET_CONF:
return caps->get_conf;
case RIG_FUNCTION_GET_CONF2:
return caps->get_conf2;
case RIG_FUNCTION_SEND_DTMF:
return caps->send_dtmf;