hamlib/tests/rigctl_parse.h
George Baltz N3GB 68e1458993
Make a padded copy of input so compare doesn't overread
Cleanup:
Fix typo and formatting
Move RIGCTLD_PASSWORDS from rig.h to rigctl_parse.h

(cherry picked from commit 11dbace230)
2026-06-12 09:05:06 -05:00

85 lines
2.4 KiB
C

/*
* rigctl_parse.h - (C) Stephane Fillod 2000-2010
*
* This program test/control a radio using Hamlib.
* It takes commands in interactive mode as well as
* from command line options.
*
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along
* with this program; if not, write to the Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*
*/
#ifndef RIGCTL_PARSE_H
#define RIGCTL_PARSE_H
#include <stdio.h>
#include <pthread.h>
#include "hamlib/rig.h"
#define RIGCTL_PARSE_END 1
#define RIGCTL_PARSE_ERROR 2
/*
* Temporary disable of rigctld/rigctltcp passwords and their help text, so no expctations
* of them working
* Set this to 1 when they are repaired
*/
#define RIGCTLD_PASSWORDS 1
/* Data that ties each thread to a connection
* Serves as the initial thread data, then as the state info for individual
* connections
*/
struct handle_data
{
RIG *rig;
int sock;
struct sockaddr_storage cli_addr;
socklen_t clilen;
int vfo_mode;
int use_password;
int is_passwordOK;
};
extern pthread_key_t thread_data_key;
/*
* external prototype
*/
int dumpcaps(RIG *, FILE *);
int dumpstate(RIG *, FILE *);
int dumpconf(RIG *, FILE *);
int dumpconf_list(RIG *, FILE *);
/*
* Prototypes
*/
void usage_rig(FILE *);
void version();
void list_models();
int dump_chan(FILE *, RIG *, channel_t *);
int print_conf_list(const struct confparams *cfp, rig_ptr_t data);
int print_conf_list2(const struct confparams *cfp, rig_ptr_t data);
int set_conf(RIG *my_rig, char *conf_parms);
void rigctl_parse_init(void);
typedef void (*sync_cb_t)(int);
int rigctl_parse(RIG *my_rig, FILE *fin, FILE *fout, char *argv[], int argc, sync_cb_t sync_cb,
int interactive, int prompt, int * vfo_mode, char send_cmd_term,
int * ext_resp_ptr, char * resp_sep_ptr, int use_password);
#endif /* RIGCTL_PARSE_H */