rebranding...

pull/1/head
Tom Early 8 years ago
parent 0c7a6dbe36
commit e810f4ab73

14
.gitignore vendored

@ -1,9 +1,9 @@
*.o
*.d
dvap_rptr
dvrptr
g2_link
g2_ircddb
g2link_test
g2link_test_audio
mmdvm_modem
qndvap
qndvrptr
qnlink
qngateway
qnlinktest
qnlinktestaudio
qnmodem

@ -32,30 +32,30 @@ IRCOBJS = IRCDDB.o IRCClient.o IRCReceiver.o IRCMessageQueue.o IRCProtocol.o IRC
SRCS = $(wildcard *.cpp)
OBJS = $(SRCS:.cpp=.o)
DEPS = $(SRCS:.cpp=.d)
PROGRAMS=g2_ircddb g2_link dvap_rptr dvrptr g2link_test g2link_test_audio mmdvm_modem
PROGRAMS=qngateway qnlink qnmodem qndvap qndvrptr qnlinktest qnlinktestaudio
all : $(PROGRAMS)
g2_ircddb : $(IRCOBJS) g2_ircddb.o aprs.o
g++ $(CPPFLAGS) -o g2_ircddb g2_ircddb.o aprs.o $(IRCOBJS) $(LDFLAGS) -pthread
qngateway : $(IRCOBJS) QnetGateway.o aprs.o
g++ $(CPPFLAGS) -o qngateway QnetGateway.o aprs.o $(IRCOBJS) $(LDFLAGS) -pthread
g2_link : g2_link.o
g++ $(CPPFLAGS) -o g2_link g2_link.o $(LDFLAGS) -pthread
qnlink : QnetLink.o
g++ $(CPPFLAGS) -o qnlink QnetLink.o $(LDFLAGS) -pthread
mmdvm_modem : mmdvm_modem.o
g++ $(CPPFLAGS) -o mmdvm_modem mmdvm_modem.o $(LDFLAGS)
qnmodem : QnetModem.o
g++ $(CPPFLAGS) -o qnmodem QnetModem.o $(LDFLAGS)
dvap_rptr : dvap_rptr.o DVAPDongle.o $(DSTROBJS)
g++ $(CPPFLAGS) -o dvap_rptr dvap_rptr.o DVAPDongle.o $(DSTROBJS) $(LDFLAGS) -pthread
qndvap : QnetDVAP.o DVAPDongle.o $(DSTROBJS)
g++ $(CPPFLAGS) -o qndvap QnetDVAP.o DVAPDongle.o $(DSTROBJS) $(LDFLAGS) -pthread
dvrptr : dvrptr.o $(DSTROBJS)
g++ $(CPPFLAGS) -o dvrptr dvrptr.o $(DSTROBJS) $(LDFLAGS)
qndvrptr : QnetDVRPTR.o $(DSTROBJS)
g++ $(CPPFLAGS) -o qndvrptr QnetDVRPTR.o $(DSTROBJS) $(LDFLAGS)
g2link_test : g2link_test.o
g++ $(CPPFLAGS) -o g2link_test g2link_test.o -lrt
qnlinktest : QnetLinkTest.o
g++ $(CPPFLAGS) -o qnlinktest QnetLinkTest.o -lrt
g2link_test_audio : g2link_test_audio.o
g++ $(CPPFLAGS) -o g2link_test_audio g2link_test_audio.o -lrt
qnlinktestaudio : QnetLinkTestAudio.o
g++ $(CPPFLAGS) -o qnlinktestaudio QnetLinkTestAudio.o -lrt
%.o : %.cpp
g++ $(CPPFLAGS) -MMD -MD -c $< -o $@
@ -67,76 +67,135 @@ clean:
-include $(DEPS)
installdvap : dvap_rptr g2_link g2_ircddb
######### g2_ircddb #########
/bin/cp -f g2_ircddb $(BINDIR)
/bin/cp -f g2.cfg $(CFGDIR)
/bin/cp -f service.g2_ircddb /etc/init.d/g2_ircddb
# /usr/sbin/update-rc.d g2_ircddb defaults
# /usr/sbin/update-rc.d g2_ircddb enable
######### g2_link #########
/bin/cp -f g2_link $(BINDIR)
install : qngateway qnlink qnmodem
######### QnetGateway #########
/bin/cp -f qngateway $(BINDIR)
/bin/cp -f qn.cfg $(CFGDIR)
/bin/cp -f service.qngateway /lib/systemd/system/qngateway.service
systemctl enable qngateway.service
systemctl daemon-reload
systemctl start qngateway.service
######### QnetLink #########
/bin/cp -f qnlink $(BINDIR)
/bin/cp -f announce/*.dat $(CFGDIR)
/bin/cp -f gwys.txt $(CFGDIR)
/bin/cp -f exec_?.sh $(CFGDIR)
/bin/cp -f service.g2_link /etc/init.d/g2_link
# /usr/sbin/update-rc.d g2_link defaults
# /usr/sbin/update-rc.d g2_link enable
######### dvap_rptr #########
/bin/cp -f dvap_rptr $(BINDIR)
/bin/cp -f dvap_rptr.sh $(BINDIR)
/bin/cp -f service.dvap_rptr /etc/init.d/dvap_rptr
# /usr/sbin/update-rc.d dvap_rptr defaults
# /usr/sbin/update-rc.d dvap_rptr enable
installdvrptr : dvrptr g2_link g2_ircddb
######### g2_ircddb #########
/bin/cp -f g2_ircddb $(BINDIR)
/bin/cp -f g2.cfg $(CFGDIR)
/bin/cp -f service.g2_ircddb /etc/init.d/g2_ircddb
# /usr/sbin/update-rc.d g2_ircddb defaults
# /usr/sbin/update-rc.d g2_ircddb enable
######### g2_link #########
/bin/cp -f g2_link $(BINDIR)
/bin/cp -f service.qnlink /lib/systemd/system/qnlink.service
systemctl enable qnlink.service
systemctl daemon-reload
systemctl start qnlink.service
######### QnetModem #########
/bin/cp -f qnmodem $(BINDIR)
/bin/cp -f service.qnmodem /lib/systemd/system/qnmodem.service
systemctl enable qnmodem.service
systemctl daemon-reload
systemctl start qnmodem.service
installdvap : qngateway qnlink qndvap
######### QnetGateway #########
/bin/cp -f qngateway $(BINDIR)
/bin/cp -f qn.cfg $(CFGDIR)
/bin/cp -f service.qngateway /lib/systemd/system/qngateway.service
systemctl enable qngateway.service
systemctl daemon-reload
systemctl start qngateway.service
######### QnetLink #########
/bin/cp -f qnlib $(BINDIR)
/bin/cp -f announce/*.dat $(CFGDIR)
/bin/cp -f gwys.txt $(CFGDIR)
/bin/cp -f exec_?.sh $(CFGDIR)
/bin/cp -f service.g2_link /etc/init.d/g2_link
# /usr/sbin/update-rc.d g2_link defaults
# /usr/sbin/update-rc.d g2_link enable
######### dvrptr ##########
/bin/cp -f dvrptr $(BINDIR)
/bin/cp -f dvrptr.sh $(BINDIR)
/bin/cp -f service.dvrptr /etc/init.d/dvrptr
# /usr/sbin/update-rc.d dvrptr defaults
# /usr/sbin/update-rc.d dvrptr enable
installdtmfs : g2link_test
/bin/cp -f g2link_test $(BINDIR)
/bin/cp -f proc_g2_ircddb_dtmfs.sh $(BINDIR)
/bin/cp -f service.proc_g2_ircddb_dtmfs /etc/init.d/proc_g2_ircddb_dtmfs
# /usr/sbin/update-rc.d proc_g2_ircddb_dtmfs defaults
# /usr/sbin/update-rc.d proc_g2_ircddb_dtmfs enable
/bin/cp -f service.qnlink /lib/systemd/system/qnlink.service
systemctl enable qnlink.service
systemctl daemon-reload
systemctl start qnlink.service
######### QnetDVAP #########
/bin/cp -f qndvap $(BINDIR)
/bin/cp -f qndvap.sh $(BINDIR)
/bin/cp -f service.qndvap /lib/systemd/system/qndvap.service
systemctl enable qnlink.service
systemctl daemon-reload
systemctl start qnlink.service
installdvrptr : qngateway qnlink qndvrptr
######### QnetGateway #########
/bin/cp -f qngateway $(BINDIR)
/bin/cp -f qn.cfg $(CFGDIR)
/bin/cp -f service.qngateway /lib/systemd/system/qngateway.service
systemctl enable qngateway.service
systemctl daemon-reload
systemctl start qngateway.service
######### QnetLink #########
/bin/cp -f qnlib $(BINDIR)
/bin/cp -f announce/*.dat $(CFGDIR)
/bin/cp -f gwys.txt $(CFGDIR)
/bin/cp -f exec_?.sh $(CFGDIR)
/bin/cp -f service.qnlink /lib/systemd/system/qnlink.service
systemctl enable qnlink.service
systemctl daemon-reload
systemctl start qnlink.service
######### QnetDVRPTR #########
/bin/cp -f qndvrptr $(BINDIR)
/bin/cp -f qndvrptr.sh $(BINDIR)
/bin/cp -f service.qndvrptr /lib/systemd/system/qndvrptr.service
systemctl enable qndvrptr.service
systemctl daemon-reload
systemctl start qndvrptr.service
installdtmfs : qnlinktest
/bin/cp -f qnlinktest $(BINDIR)
/bin/cp -f proc_qnlinktest $(BINDIR)
/bin/cp -f service.qnlinktest /lib/systemd/system/qnlinktest.service
systemctl enable qnlinktest.service
systemctl daemon-reload
systemctl start qnlinktest.service
uninstalldtmfs:
# /usr/sbin/service proc_g2_ircddb_dtmfs stop
# /bin/rm -f /etc/init.d/proc_g2_ircddb_dtmfs
# /usr/sbin/update-rc.d proc_g2_ircddb_dtmfs remove
/bin/rm -f $(BINDIR)/proc_g2_ircddb_dtmfs.sh
/bin/rm -f $(BINDIR)/g2link_test
systemctl stop qnlinktest.service
systemctl disable qnlinktest.service
/bin/rm -f /lib/systemd/system/qnlinktest.service
systemctl daemon-reload
/bin/rm -f $(BINDIR)/qnlinktest
/bin/rm -f $(BINDIR)/proc_qnlinktest
uninstall :
######### QnetGateway #########
systemctl stop qngateway.service
systemctl disable qngateway.service
/bin/rm -f /lib/systemd/system/qngateway.service
/bin/rm -f $(BINDIR)/qngateway
/bin/rm -f $(CFGDIR)/qn.cfg
######### QnetLink #########
systemctl stop qnlink.service
systemctl disable qnlink.service
/bin/rm -f /lib/systemd/system/qnlink.service
/bin/rm -f $(BINDIR)/qnlink
/bin/rm -f $(CFGDIR)/already_linked.dat
/bin/rm -f $(CFGDIR)/already_unlinked.dat
/bin/rm -f $(CFGDIR)/failed_linked.dat
/bin/rm -f $(CFGDIR)/id.dat
/bin/rm -f $(CFGDIR)/linked.dat
/bin/rm -f $(CFGDIR)/unlinked.dat
/bin/rm -f $(CFGDIR)/RPT_STATUS.txt
/bin/rm -f $(CFGDIR)/gwys.txt
/bin/rm -f $(CFGDIR)/exec_?.sh
######### QnetModem #########
systemctl stop qnmodem.service
systemctl disable qnmodem.service
/bin/rm -f /lib/systemd/system/qnmodem.service
/bin/rm -f $(BINDIR)/qnmodem
uninstalldvap :
######### g2_ircddb #########
# /usr/sbin/service g2_ircddb stop
# /bin/rm -f /etc/init.d/g2_ircddb
# /usr/sbin/update-rc.d g2_ircddb remove
/bin/rm -f $(BINDIR)/g2_ircddb
/bin/rm -f $(CFGDIR)/g2.cfg
######### g2_link #########
# /usr/sbin/service g2_link stop
# /bin/rm -f /etc/init.d/g2_link
# /usr/sbin/update-rc.d g2_link remove
/bin/rm -f $(BINDIR)/g2_link
######### QnetGateway #########
systemctl stop qngateway.service
systemctl disable qngateway.service
/bin/rm -f /lib/systemd/system/qngateway.service
/bin/rm -f $(BINDIR)/qngateway
/bin/rm -f $(CFGDIR)/qn.cfg
######### QnetLink #########
systemctl stop qnlink.service
systemctl disable qnlink.service
/bin/rm -f /lib/systemd/system/qnlink.service
/bin/rm -f $(BINDIR)/qnlink
/bin/rm -f $(CFGDIR)/already_linked.dat
/bin/rm -f $(CFGDIR)/already_unlinked.dat
/bin/rm -f $(CFGDIR)/failed_linked.dat
@ -146,26 +205,25 @@ uninstalldvap :
/bin/rm -f $(CFGDIR)/RPT_STATUS.txt
/bin/rm -f $(CFGDIR)/gwys.txt
/bin/rm -f $(CFGDIR)/exec_?.sh
/bin/rm -f /var/log/g2_link.log
######### dvap_rptr #########
# /usr/sbin/service dvap_rptr stop
# /bin/rm -f /etc/init.d/dvap_rptr
# /usr/sbin/update-rc.d dvap_rptr remove
# /bin/rm -f $(BINDIR)/dvap_rptr
# /bin/rm -f $(BINDIR)/dvap_rptr.sh
uninstalldvrptr:
######### g2_ircddb #########
# /usr/sbin/service g2_ircddb stop
# /bin/rm -f /etc/init.d/g2_ircddb
# /usr/sbin/update-rc.d g2_ircddb remove
# /bin/rm -f $(BINDIR)/g2_ircddb
# /bin/rm -f $(CFGDIR)/g2.cfg
######### g2_link #########
# /usr/sbin/service g2_link stop
# /bin/rm -f /etc/init.d/g2_link
# /usr/sbin/update-rc.d g2_link remove
/bin/rm -f $(BINDIR)/g2_link
######### QnetDVAP #########
systemctl stop qndvap.service
systemctl disable qndvap.service
/bin/rm -f /lib/systemd/system/qndvap.service
/bin/rm -f $(BINDIR)/qndvap
/bin/rm -f $(BINDIR)/qndvap.sh
uninstalldvrptr :
######### QnetGateway #########
systemctl stop qngateway.service
systemctl disable qngateway.service
/bin/rm -f /lib/systemd/system/qngateway.service
/bin/rm -f $(BINDIR)/qngateway
/bin/rm -f $(CFGDIR)/qn.cfg
######### QnetLink #########
systemctl stop qnlink.service
systemctl disable qnlink.service
/bin/rm -f /lib/systemd/system/qnlink.service
/bin/rm -f $(BINDIR)/qnlink
/bin/rm -f $(CFGDIR)/already_linked.dat
/bin/rm -f $(CFGDIR)/already_unlinked.dat
/bin/rm -f $(CFGDIR)/failed_linked.dat
@ -175,10 +233,9 @@ uninstalldvrptr:
/bin/rm -f $(CFGDIR)/RPT_STATUS.txt
/bin/rm -f $(CFGDIR)/gwys.txt
/bin/rm -f $(CFGDIR)/exec_?.sh
/bin/rm -f /var/log/g2_link.log
######### dvrptr ##########
# /usr/sbin/service dvrptr stop
# /bin/rm -f /etc/init.d/dvrptr
# /usr/sbin/update-rc.d dvrtpr remove
/bin/rm -f $(BINDIR)/dvrptr
/bin/rm -f $(BINDIR)/dvrptr.sh
######### QnetDVRPTR #########
systemctl stop qndvrptr.service
systemctl disable qndvrptr.service
/bin/rm -f /lib/systemd/system/qndvrptr.service
/bin/rm -f $(BINDIR)/qndvrptr
/bin/rm -f $(BINDIR)/qndvrptr.sh

@ -49,7 +49,7 @@
using namespace libconfig;
#include "DVAPDongle.h"
#include "g2_typedefs.h"
#include "QnetTypeDefs.h"
#define VERSION DVAP_VERSION
#define CALL_SIZE 8

@ -56,8 +56,8 @@
#include "IRCDDB.h"
#include "IRCutils.h"
#include "versions.h"
#include "g2_typedefs.h"
#include "g2_ircddb.h"
#include "QnetTypeDefs.h"
#include "QnetGateway.h"
extern void dstar_dv_init();
@ -75,7 +75,7 @@ static void sigCatch(int signum)
return;
}
void CG2_ircddb::set_dest_rptr(int mod_ndx, char *dest_rptr)
void CQnetGateway::set_dest_rptr(int mod_ndx, char *dest_rptr)
{
FILE *statusfp = fopen(status_file.c_str(), "r");
if (statusfp) {
@ -114,7 +114,7 @@ void CG2_ircddb::set_dest_rptr(int mod_ndx, char *dest_rptr)
}
/* compute checksum */
void CG2_ircddb::calcPFCS(unsigned char *packet, int len)
void CQnetGateway::calcPFCS(unsigned char *packet, int len)
{
const unsigned short crc_tabccitt[256] = {
0x0000,0x1189,0x2312,0x329b,0x4624,0x57ad,0x6536,0x74bf,0x8c48,0x9dc1,0xaf5a,0xbed3,0xca6c,0xdbe5,0xe97e,0xf8f7,
@ -170,7 +170,7 @@ void CG2_ircddb::calcPFCS(unsigned char *packet, int len)
return;
}
bool CG2_ircddb::get_value(const Config &cfg, const char *path, int &value, int min, int max, int default_value)
bool CQnetGateway::get_value(const Config &cfg, const char *path, int &value, int min, int max, int default_value)
{
if (cfg.lookupValue(path, value)) {
if (value < min || value > max)
@ -181,7 +181,7 @@ bool CG2_ircddb::get_value(const Config &cfg, const char *path, int &value, int
return true;
}
bool CG2_ircddb::get_value(const Config &cfg, const char *path, double &value, double min, double max, double default_value)
bool CQnetGateway::get_value(const Config &cfg, const char *path, double &value, double min, double max, double default_value)
{
if (cfg.lookupValue(path, value)) {
if (value < min || value > max)
@ -192,7 +192,7 @@ bool CG2_ircddb::get_value(const Config &cfg, const char *path, double &value, d
return true;
}
bool CG2_ircddb::get_value(const Config &cfg, const char *path, bool &value, bool default_value)
bool CQnetGateway::get_value(const Config &cfg, const char *path, bool &value, bool default_value)
{
if (! cfg.lookupValue(path, value))
value = default_value;
@ -200,7 +200,7 @@ bool CG2_ircddb::get_value(const Config &cfg, const char *path, bool &value, boo
return true;
}
bool CG2_ircddb::get_value(const Config &cfg, const char *path, std::string &value, int min, int max, const char *default_value)
bool CQnetGateway::get_value(const Config &cfg, const char *path, std::string &value, int min, int max, const char *default_value)
{
if (cfg.lookupValue(path, value)) {
int l = value.length();
@ -215,7 +215,7 @@ bool CG2_ircddb::get_value(const Config &cfg, const char *path, std::string &val
}
/* process configuration file */
bool CG2_ircddb::read_config(char *cfgFile)
bool CQnetGateway::read_config(char *cfgFile)
{
Config cfg;
@ -360,7 +360,7 @@ bool CG2_ircddb::read_config(char *cfgFile)
}
// Create ports
int CG2_ircddb::open_port(const SPORTIP &pip)
int CQnetGateway::open_port(const SPORTIP &pip)
{
struct sockaddr_in sin;
@ -392,7 +392,7 @@ int CG2_ircddb::open_port(const SPORTIP &pip)
}
/* receive data from the irc server and save it */
void CG2_ircddb::GetIRCDataThread()
void CQnetGateway::GetIRCDataThread()
{
std::string user, rptr, gateway, ipaddr;
DSTAR_PROTOCOL proto;
@ -505,7 +505,7 @@ void CG2_ircddb::GetIRCDataThread()
}
/* return codes: 0=OK(found it), 1=TRY AGAIN, 2=FAILED(bad data) */
int CG2_ircddb::get_yrcall_rptr_from_cache(char *call, char *arearp_cs, char *zonerp_cs, char *mod, char *ip, char RoU)
int CQnetGateway::get_yrcall_rptr_from_cache(char *call, char *arearp_cs, char *zonerp_cs, char *mod, char *ip, char RoU)
{
char temp[CALL_SIZE + 1];
@ -562,7 +562,7 @@ int CG2_ircddb::get_yrcall_rptr_from_cache(char *call, char *arearp_cs, char *zo
return 2;
}
bool CG2_ircddb::get_yrcall_rptr(char *call, char *arearp_cs, char *zonerp_cs, char *mod, char *ip, char RoU)
bool CQnetGateway::get_yrcall_rptr(char *call, char *arearp_cs, char *zonerp_cs, char *mod, char *ip, char RoU)
{
pthread_mutex_lock(&irc_data_mutex);
int rc = get_yrcall_rptr_from_cache(call, arearp_cs, zonerp_cs, mod, ip, RoU);
@ -604,7 +604,7 @@ bool CG2_ircddb::get_yrcall_rptr(char *call, char *arearp_cs, char *zonerp_cs, c
}
/* run the main loop for g2_ircddb */
void CG2_ircddb::process()
void CQnetGateway::process()
{
SDSVT g2buf;
fd_set fdset;
@ -645,7 +645,7 @@ void CG2_ircddb::process()
/* start the beacon thread */
if (bool_send_aprs) {
try {
aprs_future = std::async(std::launch::async, &CG2_ircddb::APRSBeaconThread, this);
aprs_future = std::async(std::launch::async, &CQnetGateway::APRSBeaconThread, this);
} catch (const std::exception &e) {
printf("Failed to start the APRSBeaconThread. Exception: %s\n", e.what());
}
@ -654,7 +654,7 @@ void CG2_ircddb::process()
}
try {
irc_data_future = std::async(std::launch::async, &CG2_ircddb::GetIRCDataThread, this);
irc_data_future = std::async(std::launch::async, &CQnetGateway::GetIRCDataThread, this);
} catch (const std::exception &e) {
printf("Failed to start GetIRCDataThread. Exception: %s\n", e.what());
keep_running = false;
@ -681,7 +681,7 @@ void CG2_ircddb::process()
/* START: echotest thread setup */
try {
std::async(std::launch::async, &CG2_ircddb::PlayFileThread, this, recd[i].file);
std::async(std::launch::async, &CQnetGateway::PlayFileThread, this, recd[i].file);
} catch (const std::exception &e) {
printf("Failed to start echotest thread. Exception: %s\n", e.what());
// when the echotest thread runs, it deletes the file,
@ -1334,7 +1334,7 @@ void CG2_ircddb::process()
/* voicemail file is closed */
if ((vm[i].fd == -1) && (vm[i].file[0] != '\0')) {
try {
std::async(std::launch::async, &CG2_ircddb::PlayFileThread, this, vm[i].file);
std::async(std::launch::async, &CQnetGateway::PlayFileThread, this, vm[i].file);
} catch (const std::exception &e) {
printf("Filed to start voicemail playback. Exception: %s\n", e.what());
}
@ -1983,7 +1983,7 @@ void CG2_ircddb::process()
/* we are in echotest mode, so play it back */
try {
std::async(std::launch::async, &CG2_ircddb::PlayFileThread, this, recd[i].file);
std::async(std::launch::async, &CQnetGateway::PlayFileThread, this, recd[i].file);
} catch (const std::exception &e) {
printf("failed to start PlayFileThread. Exception: %s\n", e.what());
// When the echotest thread runs, it deletes the file,
@ -2064,7 +2064,7 @@ void CG2_ircddb::process()
return;
}
void CG2_ircddb::compute_aprs_hash()
void CQnetGateway::compute_aprs_hash()
{
short hash = 0x73e2;
char rptr_sign[CALL_SIZE + 1];
@ -2089,7 +2089,7 @@ void CG2_ircddb::compute_aprs_hash()
return;
}
void CG2_ircddb::APRSBeaconThread()
void CQnetGateway::APRSBeaconThread()
{
char snd_buf[512];
char rcv_buf[512];
@ -2278,7 +2278,7 @@ void CG2_ircddb::APRSBeaconThread()
return;
}
void CG2_ircddb::PlayFileThread(char *file)
void CQnetGateway::PlayFileThread(char *file)
{
unsigned short rlen = 0;
unsigned char dstar_buf[56];
@ -2392,7 +2392,7 @@ void CG2_ircddb::PlayFileThread(char *file)
return;
}
void CG2_ircddb::qrgs_and_maps()
void CQnetGateway::qrgs_and_maps()
{
for(int i=0; i<3; i++) {
std::string rptrcall = OWNER;
@ -2407,7 +2407,7 @@ void CG2_ircddb::qrgs_and_maps()
return;
}
int CG2_ircddb::init(char *cfgfile)
int CQnetGateway::init(char *cfgfile)
{
short int i;
struct sigaction act;
@ -2595,11 +2595,11 @@ int CG2_ircddb::init(char *cfgfile)
return 0;
}
CG2_ircddb::CG2_ircddb()
CQnetGateway::CQnetGateway()
{
}
CG2_ircddb::~CG2_ircddb()
CQnetGateway::~CQnetGateway()
{
if (srv_sock != -1) {
close(srv_sock);
@ -2634,7 +2634,7 @@ CG2_ircddb::~CG2_ircddb()
printf("g2_ircddb exiting\n");
}
bool CG2_ircddb::validate_csum(SBANDTXT &bt, bool is_gps)
bool CQnetGateway::validate_csum(SBANDTXT &bt, bool is_gps)
{
const char *name = is_gps ? "GPS" : "GPRMC";
char *s = is_gps ? bt.gpid : bt.gprmc;
@ -2657,7 +2657,7 @@ bool CG2_ircddb::validate_csum(SBANDTXT &bt, bool is_gps)
return false;
}
void CG2_ircddb::gps_send(short int rptr_idx)
void CQnetGateway::gps_send(short int rptr_idx)
{
time_t tnow = 0;
static char old_mycall[CALL_SIZE + 1] = { " " };
@ -2710,7 +2710,7 @@ void CG2_ircddb::gps_send(short int rptr_idx)
return;
}
void CG2_ircddb::build_aprs_from_gps_and_send(short int rptr_idx)
void CQnetGateway::build_aprs_from_gps_and_send(short int rptr_idx)
{
char buf[512];
const char *delim = ",";
@ -2813,7 +2813,7 @@ void CG2_ircddb::build_aprs_from_gps_and_send(short int rptr_idx)
return;
}
bool CG2_ircddb::verify_gps_csum(char *gps_text, char *csum_text)
bool CQnetGateway::verify_gps_csum(char *gps_text, char *csum_text)
{
short computed_csum = 0;
char computed_csum_text[16];
@ -2846,9 +2846,9 @@ int main(int argc, char **argv)
printf("Example: g2_ircddb g2_ircddb.cfg\n");
return 1;
}
CG2_ircddb g2;
if (g2.init(argv[1]))
CQnetGateway QnetGateway;
if (QnetGateway.init(argv[1]))
return 1;
g2.process();
QnetGateway.process();
printf("Leaving processing loop...\n");
}

@ -81,10 +81,10 @@ typedef struct band_txt_tag {
int num_bit_errors;
} SBANDTXT;
class CG2_ircddb {
class CQnetGateway {
public:
CG2_ircddb();
~CG2_ircddb();
CQnetGateway();
~CQnetGateway();
private:
SPORTIP g2_internal, g2_external, g2_link, ircddb;

@ -33,28 +33,28 @@
#include <errno.h>
#include "versions.h"
#include "mmdvm_modem.h"
#include "g2_typedefs.h"
#include "QnetModem.h"
#include "QnetTypeDefs.h"
std::atomic<bool> CMMDVMModem::keep_running(true);
std::atomic<bool> CQnetModem::keep_running(true);
CMMDVMModem::CMMDVMModem() :
CQnetModem::CQnetModem() :
seed(time(NULL)),
COUNTER(0)
{
}
CMMDVMModem::~CMMDVMModem()
CQnetModem::~CQnetModem()
{
}
bool CMMDVMModem::Initialize(const char *cfgfile)
bool CQnetModem::Initialize(const char *cfgfile)
{
if (ReadConfig(cfgfile))
return true;
struct sigaction act;
act.sa_handler = &CMMDVMModem::SignalCatch;
act.sa_handler = &CQnetModem::SignalCatch;
sigemptyset(&act.sa_mask);
if (sigaction(SIGTERM, &act, 0) != 0) {
printf("sigaction-TERM failed, error=%d\n", errno);
@ -72,7 +72,7 @@ bool CMMDVMModem::Initialize(const char *cfgfile)
return false;
}
int CMMDVMModem::OpenSocket(const std::string &address, unsigned short port)
int CQnetModem::OpenSocket(const std::string &address, unsigned short port)
{
if (! port) {
printf("ERROR: OpenSocket: non-zero port must be specified.\n");
@ -116,7 +116,7 @@ int CMMDVMModem::OpenSocket(const std::string &address, unsigned short port)
return fd;
}
void CMMDVMModem::Run(const char *cfgfile)
void CQnetModem::Run(const char *cfgfile)
{
if (Initialize(cfgfile))
return;
@ -213,7 +213,7 @@ void CMMDVMModem::Run(const char *cfgfile)
::close(gsock);
}
int CMMDVMModem::SendTo(const int fd, const unsigned char *buf, const int size, const std::string &address, const unsigned short port)
int CQnetModem::SendTo(const int fd, const unsigned char *buf, const int size, const std::string &address, const unsigned short port)
{
sockaddr_in addr;
::memset(&addr, 0, sizeof(sockaddr_in));
@ -229,7 +229,7 @@ int CMMDVMModem::SendTo(const int fd, const unsigned char *buf, const int size,
return len;
}
bool CMMDVMModem::ProcessGateway(const int len, const unsigned char *raw)
bool CQnetModem::ProcessGateway(const int len, const unsigned char *raw)
{
if (29==len || 58==len) { //here is dstar data
SPKT buf;
@ -275,7 +275,7 @@ bool CMMDVMModem::ProcessGateway(const int len, const unsigned char *raw)
return false;
}
bool CMMDVMModem::ProcessMMDVM(const int len, const unsigned char *raw)
bool CQnetModem::ProcessMMDVM(const int len, const unsigned char *raw)
{
static short stream_id = 0U;
SMMDVMPKT mpkt;
@ -327,7 +327,7 @@ bool CMMDVMModem::ProcessMMDVM(const int len, const unsigned char *raw)
return false;
}
bool CMMDVMModem::GetValue(const Config &cfg, const char *path, int &value, const int min, const int max, const int default_value)
bool CQnetModem::GetValue(const Config &cfg, const char *path, int &value, const int min, const int max, const int default_value)
{
if (cfg.lookupValue(path, value)) {
if (value < min || value > max)
@ -338,7 +338,7 @@ bool CMMDVMModem::GetValue(const Config &cfg, const char *path, int &value, cons
return true;
}
bool CMMDVMModem::GetValue(const Config &cfg, const char *path, double &value, const double min, const double max, const double default_value)
bool CQnetModem::GetValue(const Config &cfg, const char *path, double &value, const double min, const double max, const double default_value)
{
if (cfg.lookupValue(path, value)) {
if (value < min || value > max)
@ -349,7 +349,7 @@ bool CMMDVMModem::GetValue(const Config &cfg, const char *path, double &value, c
return true;
}
bool CMMDVMModem::GetValue(const Config &cfg, const char *path, bool &value, const bool default_value)
bool CQnetModem::GetValue(const Config &cfg, const char *path, bool &value, const bool default_value)
{
if (! cfg.lookupValue(path, value))
value = default_value;
@ -357,7 +357,7 @@ bool CMMDVMModem::GetValue(const Config &cfg, const char *path, bool &value, con
return true;
}
bool CMMDVMModem::GetValue(const Config &cfg, const char *path, std::string &value, int min, int max, const char *default_value)
bool CQnetModem::GetValue(const Config &cfg, const char *path, std::string &value, int min, int max, const char *default_value)
{
if (cfg.lookupValue(path, value)) {
int l = value.length();
@ -372,7 +372,7 @@ bool CMMDVMModem::GetValue(const Config &cfg, const char *path, std::string &val
}
// process configuration file and return true if there was a problem
bool CMMDVMModem::ReadConfig(const char *cfgFile)
bool CQnetModem::ReadConfig(const char *cfgFile)
{
Config cfg;
@ -477,7 +477,7 @@ bool CMMDVMModem::ReadConfig(const char *cfgFile)
return false;
}
void CMMDVMModem::SignalCatch(const int signum)
void CQnetModem::SignalCatch(const int signum)
{
if ((signum == SIGTERM) || (signum == SIGINT) || (signum == SIGHUP))
keep_running = false;
@ -500,9 +500,9 @@ int main(int argc, const char **argv)
return 0;
}
CMMDVMModem mmdvm;
CQnetModem qnmmdvm;
mmdvm.Run(argv[1]);
qnmmdvm.Run(argv[1]);
printf("%s is closing.\n", argv[0]);

@ -29,12 +29,12 @@ using namespace libconfig;
#define CALL_SIZE 8
#define IP_SIZE 15
class CMMDVMModem
class CQnetModem
{
public:
// functions
CMMDVMModem();
~CMMDVMModem();
CQnetModem();
~CQnetModem();
void Run(const char *cfgfile);
// data

@ -1,10 +0,0 @@
#!/bin/bash
while [ 1 ];
do
/usr/local/bin/dvrptr /usr/local/etc/g2.cfg > /var/log/dvrptr.log 2>&1
sleep 3
done
exit 0

@ -51,11 +51,11 @@ do
echo "... with these contents: " $CMD " " $LUSER
if [ "$CMD" = "73" ] ; then
echo Unlinking local band $LOCAL_BAND requested by $LUSER
/usr/local/bin/g2link_test ${G2_INT_IP} ${G2_INT_PORT} "" $G2 ${LOCAL_BAND} 20 1 "$LUSER" " U" >/dev/null 2>&1
/usr/local/bin/qnlinktest ${G2_INT_IP} ${G2_INT_PORT} "" $G2 ${LOCAL_BAND} 20 1 "$LUSER" " U" >/dev/null 2>&1
echo
elif [ "$CMD" = "99" ] ; then
echo Link Status on local band $LOCAL_BAND requested by $LUSER
/usr/local/bin/g2link_test ${G2_INT_IP} ${G2_INT_PORT} "" $G2 ${LOCAL_BAND} 20 1 "$LUSER" " I" >/dev/null 2>&1
/usr/local/bin/qnlinktest ${G2_INT_IP} ${G2_INT_PORT} "" $G2 ${LOCAL_BAND} 20 1 "$LUSER" " I" >/dev/null 2>&1
echo
else
LEN=${#CMD}
@ -135,7 +135,7 @@ do
echo garbage value in prefix
else
echo linking local band $LOCAL_BAND to remote node ${RMT}${REMOTE_NODE} $REMOTE_BAND requested by $LUSER
/usr/local/bin/g2link_test ${G2_INT_IP} ${G2_INT_PORT} "" $G2 ${LOCAL_BAND} 20 1 "$LUSER" ${RMT}${REMOTE_NODE}${REMOTE_BAND}L >/dev/null 2>&1
/usr/local/bin/qnlinktest ${G2_INT_IP} ${G2_INT_PORT} "" $G2 ${LOCAL_BAND} 20 1 "$LUSER" ${RMT}${REMOTE_NODE}${REMOTE_BAND}L >/dev/null 2>&1
echo
fi
fi

@ -20,7 +20,7 @@
while [ 1 ];
do
/usr/local/bin/dvap_rptr /usr/local/etc/g2.cfg > /var/log/dvap_rptr.log 2>&1
/usr/local/bin/qndvap /usr/local/etc/qn.cfg
sleep 10
done

@ -0,0 +1,10 @@
#!/bin/bash
while [ 1 ];
do
/usr/local/bin/qndvrptr /usr/local/etc/qn.cfg
sleep 10
done
exit 0

@ -1,66 +0,0 @@
#!/bin/sh
# Start/stop the dstar dvap_rptr
#
### BEGIN INIT INFO
# Provides: dvap_rptr
# Required-Start: $remote_fs $network
# Required-Stop: $null
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: dvap_rptr
# Description: dvap_rptr
### END INIT INFO
. /lib/lsb/init-functions
DVAP_RPTR_SH=/usr/local/bin/dvap_rptr.sh
DVAP_RPTR_BIN=/usr/local/bin/dvap_rptr
DVAP_RPTR_PIDFILE=/usr/local/bin/dvap_rptr.sh_pidfile
start()
{
status_of_proc $DVAP_RPTR_SH >/dev/null
RETVAL=$?
if [ "$RETVAL" = "0" ] ; then
echo "$DVAP_RPTR_SH already running"
else
/bin/rm -rf $DVAP_RPTR_PIDFILE
echo -n "Starting $DVAP_RPTR_SH:"
start-stop-daemon --make-pidfile --pidfile $DVAP_RPTR_PIDFILE --exec $DVAP_RPTR_SH -S &
log_end_msg $?
fi
}
stop() {
start-stop-daemon --pidfile $DVAP_RPTR_PIDFILE --retry 5 -K
start-stop-daemon --exec $DVAP_RPTR_BIN --retry 5 -K
/bin/rm -rf $DVAP_RPTR_PIDFILE
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
status)
echo -n "$DVAP_RPTR_SH "
status_of_proc $DVAP_RPTR_SH
echo -n "$DVAP_RPTR_BIN "
status_of_proc $DVAP_RPTR_BIN
;;
*) log_action_msg "Usage: /etc/init.d/dvap_rptr {start|stop|restart|status}"
exit 2
;;
esac
exit 0

@ -1,66 +0,0 @@
#!/bin/sh
# Start/stop the dstar dvrptr
#
### BEGIN INIT INFO
# Provides: dvrptr
# Required-Start: $remote_fs $network
# Required-Stop:
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: dvrptr
# Description: dvrptr
### END INIT INFO
. /lib/lsb/init-functions
DVRPTR_SH=/usr/local/bin/dvrptr.sh
DVRPTR_BIN=/usr/local/bin/dvrptr
DVRPTR_PIDFILE=/usr/local/dvrptr.sh_pidfile
start()
{
status_of_proc $DVRPTR_SH >/dev/null
RETVAL=$?
if [ "$RETVAL" = "0" ] ; then
echo "$DVRPTR_SH already running"
else
/bin/rm -rf $DVRPTR_PIDFILE
echo -n "Starting $DVRPTR_SH:"
start-stop-daemon --make-pidfile --pidfile $DVRPTR_PIDFILE --exec $DVRPTR_SH -S &
log_end_msg $?
fi
}
stop() {
start-stop-daemon --pidfile $DVRPTR_PIDFILE --retry 5 -K
start-stop-daemon --exec $DVRPTR_BIN --retry 5 -K
/bin/rm -rf $DVRPTR_PIDFILE
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
status)
echo -n "$DVRPTR_SH "
status_of_proc $DVRPTR_SH
echo -n "$DVRPTR_BIN "
status_of_proc $DVRPTR_BIN
;;
*) log_action_msg "Usage: /etc/init.d/dvrptr {start|stop|restart|status}"
exit 2
;;
esac
exit 0

@ -1,60 +0,0 @@
#!/bin/sh
# Start/stop g2_ircddb
#
### BEGIN INIT INFO
# Provides: g2_ircddb
# Required-Start: $remote_fs $network
# Required-Stop: $null
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: g2_ircddb
# Description: g2_ircddb
### END INIT INFO
. /lib/lsb/init-functions
IRCDDB_EXE=/usr/local/bin/g2_ircddb
IRCDDB_CFG=/usr/local/etc/g2.cfg
IRCDDB_LOG=/var/log/g2_ircddb.log
start() {
status_of_proc g2_ircddb >/dev/null
RETVAL=$?
if [ "$RETVAL" = "0" ] ; then
echo "g2_ircddb already running"
else
echo -n "Starting g2_ircddb"
start-stop-daemon --exec $IRCDDB_EXE -S $IRCDDB_CFG > $IRCDDB_LOG 2>&1 &
log_end_msg $?
fi
}
stop() {
start-stop-daemon --exec $IRCDDB_EXE --retry 5 -K
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
status)
echo -n "g2_ircddb "
status_of_proc g2_ircddb
;;
*) log_action_msg "Usage: /etc/init.d/g2_ircddb {start|stop|restart|status}"
exit 2
;;
esac
exit 0

@ -1,60 +0,0 @@
#!/bin/sh
# Start/stop g2_link
#
### BEGIN INIT INFO
# Provides: g2_link
# Required-Start: $remote_fs $network
# Required-Stop: $null
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: g2_link
# Description: g2_link
### END INIT INFO
. /lib/lsb/init-functions
G2_LINK_EXE=/usr/local/bin/g2_link
G2_LINK_CFG=/usr/local/etc/g2.cfg
G2_LINK_LOG=/var/log/g2_link.log
start() {
status_of_proc g2_link >/dev/null
RETVAL=$?
if [ "$RETVAL" = "0" ] ; then
echo "g2_link already running"
else
echo -n "Starting g2_link"
start-stop-daemon --exec $G2_LINK_EXE -S $G2_LINK_CFG > $G2_LINK_LOG 2>&1 &
log_end_msg $?
fi
}
stop() {
start-stop-daemon --exec $G2_LINK_EXE --retry 5 -K
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
status)
echo -n "g2_link "
status_of_proc g2_link
;;
*) log_action_msg "Usage: /etc/init.d/g2_link {start|stop|restart|status}"
exit 2
;;
esac
exit 0

@ -1,63 +0,0 @@
#!/bin/sh
# proc_g2_ircddb_dtmfs
#
### BEGIN INIT INFO
# Provides: proc_g2_ircddb_dtmfs
# Required-Start: $syslog $network
# Required-Stop: $syslog $network
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: proc_g2_ircddb_dtmfs
# Description: proc_g2_ircddb_dtmfs
### END INIT INFO
. /lib/lsb/init-functions
SHFILE=/usr/local/bin/proc_g2_ircddb_dtmfs.sh
PIDFILE=/usr/local/bin/proc_g2_ircddb_dtmfs.sh_pidfile
LOG=/var/log/proc_g2_ircddb_dtmfs.log
start() {
status_of_proc $SHFILE >/dev/null
RETVAL=$?
if [ "$RETVAL" = "0" ] ; then
echo $SHFILE already running
else
echo -n Starting $SHFILE
start-stop-daemon --make-pidfile --pidfile $PIDFILE --exec $SHFILE -S > $LOG 2>&1 &
log_end_msg $?
fi
}
stop() {
start-stop-daemon --pidfile $PIDFILE --retry 5 -K
/bin/rm -rf $PIDFILE
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
status)
echo -n $SHFILE
status_of_proc $SHFILE
;;
*) log_action_msg "Usage: /etc/init.d/proc_g2_ircddb_dtmfs {start|stop|restart|status}"
exit 2
;;
esac
exit 0

@ -0,0 +1,10 @@
[Unit]
Description=QnetDVAP
After=systemd-user-session.service
[Service]
Type=simple
ExecStart=/usr/local/bin/qndvap.sh
[Install]
WantedBy=multi-user.target

@ -0,0 +1,10 @@
[Unit]
Description=QnetDVRPTR
After=systemd-user-session.service
[Service]
Type=simple
ExecStart=/usr/local/bin/qndvrptr.sh
[Install]
WantedBy=multi-user.target

@ -0,0 +1,10 @@
[Unit]
Description=QnetGateway
After=systemd-user-session.service
[Service]
Type=simple
ExecStart=/usr/local/bin/qngateway /usr/local/etc/qn.cfg
[Install]
WantedBy=multi-user.target

@ -0,0 +1,10 @@
[Unit]
Description=QnetLink
After=systemd-user-session.service
[Service]
Type=simple
ExecStart=/usr/local/bin/qnlink /usr/local/etc/qn.cfg
[Install]
WantedBy=multi-user.target

@ -0,0 +1,10 @@
[Unit]
Description=QnetDTMFS
After=systemd-user-session.service
[Service]
Type=simple
ExecStart=/usr/local/bin/proc_qnlinktest
[Install]
WantedBy=multi-user.target

@ -0,0 +1,10 @@
[Unit]
Description=QnetModem
After=systemd-user-session.service
[Service]
Type=simple
ExecStart=/usr/local/bin/qnmodem /usr/local/etc/qn.cfg
[Install]
WantedBy=multi-user.target
Loading…
Cancel
Save

Powered by TurnKey Linux.