New upstream version 6.0.24.16
This commit is contained in:
parent
7b2a99c53b
commit
120df97dc7
69
AGWAPI.c
69
AGWAPI.c
|
@ -55,11 +55,14 @@ struct AGWSocketConnectionInfo
|
|||
BOOL SocketActive;
|
||||
BOOL RawFlag;
|
||||
BOOL MonFlag;
|
||||
BOOL useLocalTime;
|
||||
BOOL doNodes;
|
||||
unsigned char CallSign1[10];
|
||||
unsigned char CallSign2[10];
|
||||
BOOL GotHeader;
|
||||
int MsgDataLength;
|
||||
struct AGWHeader AGWRXHeader;
|
||||
unsigned char * MsgData;
|
||||
};
|
||||
|
||||
struct BPQConnectionInfo
|
||||
|
@ -75,8 +78,6 @@ struct BPQConnectionInfo
|
|||
|
||||
char AGWPorts[1000];
|
||||
|
||||
byte AGWMessage[1000];
|
||||
|
||||
struct AGWHeader AGWTXHeader;
|
||||
|
||||
char SessionList[100];
|
||||
|
@ -127,7 +128,7 @@ int DataSocket_Write(struct AGWSocketConnectionInfo * sockptr, SOCKET sock);
|
|||
int AGWGetSessionKey(char * key, struct AGWSocketConnectionInfo * sockptr);
|
||||
int ProcessAGWCommand(struct AGWSocketConnectionInfo * sockptr);
|
||||
int SendDataToAppl(int Stream, byte * Buffer, int Length);
|
||||
int InternalAGWDecodeFrame(char * msg, char * buffer, int Stamp, int * FrameType);
|
||||
int InternalAGWDecodeFrame(char * msg, char * buffer, int Stamp, int * FrameType, int useLocalTime, int doNodes);
|
||||
int AGWDataSocket_Disconnect( struct AGWSocketConnectionInfo * sockptr);
|
||||
int SendRawPacket(struct AGWSocketConnectionInfo * sockptr, char *txmsg, int Length);
|
||||
int ShowApps();
|
||||
|
@ -686,7 +687,7 @@ int AGWDoMonitorData()
|
|||
byte AGWBuffer[1000];
|
||||
int n;
|
||||
int Stamp, Frametype;
|
||||
BOOL RXFlag, NeedAGW;
|
||||
BOOL RXFlag;
|
||||
|
||||
// Look for Monitor Data
|
||||
|
||||
|
@ -731,24 +732,16 @@ int AGWDoMonitorData()
|
|||
RXFlag = TRUE;
|
||||
}
|
||||
|
||||
NeedAGW = FALSE;
|
||||
// Can now have different mon flags per connection, so need to run decode for each socket
|
||||
|
||||
for (n = 1; n<= CurrentSockets; n++)
|
||||
{
|
||||
sockptr=&Sockets[n];
|
||||
sockptr = &Sockets[n];
|
||||
|
||||
if (sockptr->SocketActive && sockptr->MonFlag) NeedAGW = TRUE;
|
||||
}
|
||||
|
||||
if (NeedAGW)
|
||||
{
|
||||
if (RXFlag || LoopMonFlag) // only send txed frames if requested
|
||||
if (sockptr->SocketActive && sockptr->MonFlag && (RXFlag || LoopMonFlag))
|
||||
{
|
||||
Length = InternalAGWDecodeFrame(Buffer, AGWBuffer,Stamp, &Frametype);
|
||||
|
||||
//
|
||||
// Decode frame and send to applications which have requested monitoring
|
||||
//
|
||||
Length = InternalAGWDecodeFrame(Buffer, AGWBuffer, Stamp, &Frametype, sockptr->useLocalTime, sockptr->doNodes);
|
||||
|
||||
if (Length > 0)
|
||||
{
|
||||
AGWTXHeader.Port = Port - 1; // AGW Ports start from 0
|
||||
|
@ -786,13 +779,7 @@ int AGWDoMonitorData()
|
|||
memset(AGWTXHeader.callfrom, 0,10);
|
||||
ConvFromAX25(monbuff->ORIGIN, AGWTXHeader.callfrom);
|
||||
|
||||
for (n = 1; n<= CurrentSockets; n++)
|
||||
{
|
||||
sockptr=&Sockets[n];
|
||||
|
||||
if (sockptr->SocketActive && sockptr->MonFlag)
|
||||
SendRawPacket(sockptr, AGWBuffer, Length);
|
||||
}
|
||||
SendRawPacket(sockptr, AGWBuffer, Length);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -1039,10 +1026,13 @@ int AGWDataSocket_Read(struct AGWSocketConnectionInfo * sockptr, SOCKET sock)
|
|||
if (DataLength >= sockptr->MsgDataLength)
|
||||
{
|
||||
// Read Data and Process Command
|
||||
|
||||
sockptr->MsgData = malloc(sockptr->MsgDataLength);
|
||||
|
||||
i=recv(sock, AGWMessage, sockptr->MsgDataLength, 0);
|
||||
i = recv(sock, sockptr->MsgData, sockptr->MsgDataLength, 0);
|
||||
|
||||
ProcessAGWCommand (sockptr);
|
||||
free(sockptr->MsgData);
|
||||
|
||||
sockptr->GotHeader = FALSE;
|
||||
}
|
||||
|
@ -1168,7 +1158,7 @@ int ProcessAGWCommand(struct AGWSocketConnectionInfo * sockptr)
|
|||
{
|
||||
// Have digis
|
||||
|
||||
char * Digis = AGWMessage;
|
||||
char * Digis = sockptr->MsgData;
|
||||
int nDigis = Digis[0];
|
||||
|
||||
Digis ++;
|
||||
|
@ -1205,7 +1195,7 @@ int ProcessAGWCommand(struct AGWSocketConnectionInfo * sockptr)
|
|||
{
|
||||
if (memcmp(AGWConnections[con].CallKey,key,21) == 0)
|
||||
{
|
||||
SendMsg(AGWConnections[con].BPQStream, AGWMessage, sockptr->MsgDataLength);
|
||||
SendMsg(AGWConnections[con].BPQStream, sockptr->MsgData, sockptr->MsgDataLength);
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
@ -1294,15 +1284,28 @@ int ProcessAGWCommand(struct AGWSocketConnectionInfo * sockptr)
|
|||
|
||||
// Send Raw Frame
|
||||
|
||||
SendRaw(sockptr->AGWRXHeader.Port+1,&AGWMessage[1], sockptr->MsgDataLength - 1);
|
||||
SendRaw(sockptr->AGWRXHeader.Port+1,&sockptr->MsgData[1], sockptr->MsgDataLength - 1);
|
||||
|
||||
return 0;
|
||||
|
||||
case 'm':
|
||||
|
||||
// Toggle Monitor receive
|
||||
|
||||
sockptr->MonFlag = !sockptr->MonFlag;
|
||||
|
||||
if (sockptr->AGWRXHeader.DataLength == 12) // QtTermTCP monitor info
|
||||
{
|
||||
// Msg[AGWHDDRRLEN] = AGWUsers->MonSess->mlocaltime;
|
||||
// Msg[AGWHDDRRLEN + 1] = AGWUsers->MonSess->MonitorNODES;
|
||||
//Msg[AGWHDDRRLEN + 2] = AGWUsers->MonSess->MonitorColour;
|
||||
// Msg[AGWHDDRRLEN + 3] = AGWUsers->MonSess->mtxparam;
|
||||
// memcpy(&Msg[AGWHDDRRLEN + 4], (void *)&AGWUsers->MonSess->portmask, 8);
|
||||
sockptr->useLocalTime = sockptr->MsgData[0];
|
||||
sockptr->doNodes = sockptr->MsgData[1];
|
||||
sockptr->MonFlag = 1;
|
||||
}
|
||||
else
|
||||
sockptr->MonFlag = !sockptr->MonFlag;
|
||||
|
||||
return 0;
|
||||
|
||||
|
||||
|
@ -1318,11 +1321,11 @@ int ProcessAGWCommand(struct AGWSocketConnectionInfo * sockptr)
|
|||
|
||||
if (sockptr->AGWRXHeader.DataKind == 'V') // Unproto with VIA string
|
||||
{
|
||||
Digis = AGWMessage[0]; // Number of digis
|
||||
Digis = sockptr->MsgData[0]; // Number of digis
|
||||
|
||||
for (j = 1; j<= Digis; j++)
|
||||
{
|
||||
ConvToAX25(&AGWMessage[(j - 1) * 10 + 1],&TXMessage[7+(j*7)]); // No "last" bit
|
||||
ConvToAX25(&sockptr->MsgData[(j - 1) * 10 + 1],&TXMessage[7+(j*7)]); // No "last" bit
|
||||
}
|
||||
|
||||
// set end of call
|
||||
|
@ -1342,7 +1345,7 @@ int ProcessAGWCommand(struct AGWSocketConnectionInfo * sockptr)
|
|||
else
|
||||
*(TXMessageptr++) = sockptr->AGWRXHeader.PID;
|
||||
|
||||
memcpy(TXMessageptr,&AGWMessage[MsgStart], sockptr->MsgDataLength - MsgStart);
|
||||
memcpy(TXMessageptr,&sockptr->MsgData[MsgStart], sockptr->MsgDataLength - MsgStart);
|
||||
|
||||
TXMessageptr += (sockptr->MsgDataLength - MsgStart);
|
||||
|
||||
|
|
31
AGWMoncode.c
31
AGWMoncode.c
|
@ -64,12 +64,12 @@ along with LinBPQ/BPQ32. If not, see http://www.gnu.org/licenses
|
|||
char * strlop(char * buf, char delim);
|
||||
UCHAR * DisplayINP3RIF(UCHAR * ptr1, UCHAR * ptr2, int msglen);
|
||||
|
||||
static UCHAR * DISPLAY_NETROM(MESSAGE * ADJBUFFER, UCHAR * Output, int MsgLen);
|
||||
static UCHAR * DISPLAY_NETROM(MESSAGE * ADJBUFFER, UCHAR * Output, int MsgLen, int DoNodes);
|
||||
static UCHAR * DISPLAYIPDATAGRAM(IPMSG * IP, UCHAR * Output, int MsgLen);
|
||||
static UCHAR * DISPLAYARPDATAGRAM(UCHAR * Datagram, UCHAR * Output);
|
||||
|
||||
|
||||
int InternalAGWDecodeFrame(MESSAGE * msg, char * buffer, int Stamp, int * FrameType)
|
||||
int InternalAGWDecodeFrame(MESSAGE * msg, char * buffer, int Stamp, int * FrameType, int useLocalTime, int DoNodes)
|
||||
{
|
||||
UCHAR * ptr;
|
||||
int n;
|
||||
|
@ -81,7 +81,6 @@ int InternalAGWDecodeFrame(MESSAGE * msg, char * buffer, int Stamp, int * FrameT
|
|||
char PFCHAR[3] = " ";
|
||||
int MSGFLAG = 0; //CR and V1 flags
|
||||
char * Output = buffer;
|
||||
int HH, MM, SS;
|
||||
char From[10], To[10];
|
||||
BOOL Info = 0;
|
||||
BOOL FRMRFLAG = 0;
|
||||
|
@ -89,6 +88,13 @@ int InternalAGWDecodeFrame(MESSAGE * msg, char * buffer, int Stamp, int * FrameT
|
|||
BOOL TESTFLAG = 0;
|
||||
size_t MsgLen = msg->LENGTH;
|
||||
|
||||
struct tm * TM;
|
||||
|
||||
if (useLocalTime)
|
||||
TM = localtime(&Stamp);
|
||||
else
|
||||
TM = gmtime(&Stamp);
|
||||
|
||||
// GET THE CONTROL BYTE, TO SEE IF THIS FRAME IS TO BE DISPLAYED
|
||||
|
||||
n = 8; // MAX DIGIS
|
||||
|
@ -124,14 +130,6 @@ int InternalAGWDecodeFrame(MESSAGE * msg, char * buffer, int Stamp, int * FrameT
|
|||
|
||||
*FrameType = CTL;
|
||||
|
||||
Stamp = Stamp % 86400; // Secs
|
||||
HH = Stamp / 3600;
|
||||
|
||||
Stamp -= HH * 3600;
|
||||
MM = Stamp / 60;
|
||||
|
||||
SS = Stamp - MM * 60;
|
||||
|
||||
Output += sprintf((char *)Output, " %d:Fm ", msg->PORT & 0x7f); // Mask TX bit
|
||||
|
||||
From[ConvFromAX25(msg->ORIGIN, From)] = 0;
|
||||
|
@ -297,7 +295,7 @@ int InternalAGWDecodeFrame(MESSAGE * msg, char * buffer, int Stamp, int * FrameT
|
|||
|
||||
}
|
||||
|
||||
Output += sprintf((char *)Output, "[%02d:%02d:%02d]", HH, MM, SS);
|
||||
Output += sprintf((char *)Output, "[%02d:%02d:%02d]", TM->tm_hour, TM->tm_min, TM->tm_sec);
|
||||
|
||||
|
||||
if (FRMRFLAG)
|
||||
|
@ -345,7 +343,7 @@ int InternalAGWDecodeFrame(MESSAGE * msg, char * buffer, int Stamp, int * FrameT
|
|||
}
|
||||
case NETROM_PID:
|
||||
|
||||
Output = DISPLAY_NETROM(ADJBUFFER, Output,(int) MsgLen);
|
||||
Output = DISPLAY_NETROM(ADJBUFFER, Output,(int) MsgLen, DoNodes);
|
||||
break;
|
||||
|
||||
case IP_PID:
|
||||
|
@ -366,6 +364,9 @@ int InternalAGWDecodeFrame(MESSAGE * msg, char * buffer, int Stamp, int * FrameT
|
|||
}
|
||||
}
|
||||
|
||||
if (Output == NULL)
|
||||
return NULL;
|
||||
|
||||
if (Output[-1] != 13)
|
||||
Output += sprintf((char *)Output, "\r");
|
||||
|
||||
|
@ -374,7 +375,7 @@ int InternalAGWDecodeFrame(MESSAGE * msg, char * buffer, int Stamp, int * FrameT
|
|||
}
|
||||
// Display NET/ROM data
|
||||
|
||||
UCHAR * DISPLAY_NETROM(MESSAGE * ADJBUFFER, UCHAR * Output, int MsgLen)
|
||||
UCHAR * DISPLAY_NETROM(MESSAGE * ADJBUFFER, UCHAR * Output, int MsgLen, int DoNodes)
|
||||
{
|
||||
char Alias[7]= "";
|
||||
char Dest[10];
|
||||
|
@ -386,6 +387,8 @@ UCHAR * DISPLAY_NETROM(MESSAGE * ADJBUFFER, UCHAR * Output, int MsgLen)
|
|||
{
|
||||
// Display NODES
|
||||
|
||||
if (DoNodes == 0)
|
||||
return NULL;
|
||||
|
||||
// If an INP3 RIF (type <> UI) decode as such
|
||||
|
||||
|
|
13
APRSCode.c
13
APRSCode.c
|
@ -2552,6 +2552,8 @@ VOID SendAPRSMessageEx(char * Message, int toPort, char * FromCall, int Gated)
|
|||
else
|
||||
continue;
|
||||
|
||||
Msg.DEST[6] |= 0x80; // set Command Bit
|
||||
|
||||
ConvToAX25(FromCall, Msg.ORIGIN);
|
||||
Msg.PID = 0xf0;
|
||||
Msg.CTL = 3;
|
||||
|
@ -2580,6 +2582,8 @@ VOID SendAPRSMessageEx(char * Message, int toPort, char * FromCall, int Gated)
|
|||
else
|
||||
return;
|
||||
|
||||
Msg.DEST[6] |= 0x80; // set Command Bit
|
||||
|
||||
ConvToAX25(FromCall, Msg.ORIGIN);
|
||||
Msg.PID = 0xf0;
|
||||
Msg.CTL = 3;
|
||||
|
@ -2756,7 +2760,8 @@ void SendBeaconThread(void * Param)
|
|||
Debugprintf("Sending APRS Beacon to port %d", toPort);
|
||||
|
||||
memcpy(Msg.DEST, &BeaconHeader[toPort][0][0], 10 * 7); // Clear unused digis
|
||||
|
||||
Msg.DEST[6] |= 0x80; // set Command Bit
|
||||
|
||||
GetSemaphore(&Semaphore, 12);
|
||||
Send_AX_Datagram(&Msg, Len + 2, toPort);
|
||||
FreeSemaphore(&Semaphore);
|
||||
|
@ -2780,6 +2785,8 @@ void SendBeaconThread(void * Param)
|
|||
Msg.CTL = 3;
|
||||
|
||||
memcpy(Msg.DEST, &BeaconHeader[Port][0][0], 10 * 7);
|
||||
Msg.DEST[6] |= 0x80; // set Command Bit
|
||||
|
||||
GetSemaphore(&Semaphore, 12);
|
||||
Send_AX_Datagram(&Msg, Len + 2, Port);
|
||||
FreeSemaphore(&Semaphore);
|
||||
|
@ -2815,6 +2822,8 @@ VOID SendObject(struct OBJECT * Object)
|
|||
Msg.CTL = 3;
|
||||
Len = sprintf(Msg.L2DATA, "%s", Object->Message);
|
||||
memcpy(Msg.DEST, &Object->Path[0][0], Object->PathLen + 1);
|
||||
Msg.DEST[6] |= 0x80; // set Command Bit
|
||||
|
||||
Send_AX_Datagram(&Msg, Len + 2, Port);
|
||||
}
|
||||
}
|
||||
|
@ -2881,6 +2890,8 @@ VOID SendIStatus()
|
|||
if (BeaconHddrLen[Port]) // Only send to ports with a DEST defined
|
||||
{
|
||||
memcpy(Msg.DEST, &BeaconHeader[Port][0][0], 10 * 7);
|
||||
Msg.DEST[6] |= 0x80; // set Command Bit
|
||||
|
||||
Send_AX_Datagram(&Msg, Len + 2, Port);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -0,0 +1,2 @@
|
|||
g8bpq
|
||||
very bad phrase
|
|
@ -1,65 +0,0 @@
|
|||
<?xml version="1.0" encoding="Windows-1252"?>
|
||||
<VisualStudioUserFile
|
||||
ProjectType="Visual C++"
|
||||
Version="8.00"
|
||||
ShowAllFiles="false"
|
||||
>
|
||||
<Configurations>
|
||||
<Configuration
|
||||
Name="Debug|Win32"
|
||||
>
|
||||
<DebugSettings
|
||||
Command="$(TargetPath)"
|
||||
WorkingDirectory=""
|
||||
CommandArguments=""
|
||||
Attach="false"
|
||||
DebuggerType="3"
|
||||
Remote="1"
|
||||
RemoteMachine="DESKTOP-TGEL8RC"
|
||||
RemoteCommand=""
|
||||
HttpUrl=""
|
||||
PDBPath=""
|
||||
SQLDebugging=""
|
||||
Environment=""
|
||||
EnvironmentMerge="true"
|
||||
DebuggerFlavor=""
|
||||
MPIRunCommand=""
|
||||
MPIRunArguments=""
|
||||
MPIRunWorkingDirectory=""
|
||||
ApplicationCommand=""
|
||||
ApplicationArguments=""
|
||||
ShimCommand=""
|
||||
MPIAcceptMode=""
|
||||
MPIAcceptFilter=""
|
||||
/>
|
||||
</Configuration>
|
||||
<Configuration
|
||||
Name="Release|Win32"
|
||||
>
|
||||
<DebugSettings
|
||||
Command="$(TargetPath)"
|
||||
WorkingDirectory=""
|
||||
CommandArguments=""
|
||||
Attach="false"
|
||||
DebuggerType="3"
|
||||
Remote="1"
|
||||
RemoteMachine="DESKTOP-TGEL8RC"
|
||||
RemoteCommand=""
|
||||
HttpUrl=""
|
||||
PDBPath=""
|
||||
SQLDebugging=""
|
||||
Environment=""
|
||||
EnvironmentMerge="true"
|
||||
DebuggerFlavor=""
|
||||
MPIRunCommand=""
|
||||
MPIRunArguments=""
|
||||
MPIRunWorkingDirectory=""
|
||||
ApplicationCommand=""
|
||||
ApplicationArguments=""
|
||||
ShimCommand=""
|
||||
MPIAcceptMode=""
|
||||
MPIAcceptFilter=""
|
||||
/>
|
||||
</Configuration>
|
||||
</Configurations>
|
||||
</VisualStudioUserFile>
|
|
@ -1,65 +0,0 @@
|
|||
<?xml version="1.0" encoding="Windows-1252"?>
|
||||
<VisualStudioUserFile
|
||||
ProjectType="Visual C++"
|
||||
Version="8.00"
|
||||
ShowAllFiles="false"
|
||||
>
|
||||
<Configurations>
|
||||
<Configuration
|
||||
Name="Debug|Win32"
|
||||
>
|
||||
<DebugSettings
|
||||
Command="$(TargetPath)"
|
||||
WorkingDirectory=""
|
||||
CommandArguments=""
|
||||
Attach="false"
|
||||
DebuggerType="3"
|
||||
Remote="1"
|
||||
RemoteMachine="SKIGACER"
|
||||
RemoteCommand=""
|
||||
HttpUrl=""
|
||||
PDBPath=""
|
||||
SQLDebugging=""
|
||||
Environment=""
|
||||
EnvironmentMerge="true"
|
||||
DebuggerFlavor=""
|
||||
MPIRunCommand=""
|
||||
MPIRunArguments=""
|
||||
MPIRunWorkingDirectory=""
|
||||
ApplicationCommand=""
|
||||
ApplicationArguments=""
|
||||
ShimCommand=""
|
||||
MPIAcceptMode=""
|
||||
MPIAcceptFilter=""
|
||||
/>
|
||||
</Configuration>
|
||||
<Configuration
|
||||
Name="Release|Win32"
|
||||
>
|
||||
<DebugSettings
|
||||
Command="$(TargetPath)"
|
||||
WorkingDirectory=""
|
||||
CommandArguments=""
|
||||
Attach="false"
|
||||
DebuggerType="3"
|
||||
Remote="1"
|
||||
RemoteMachine="SKIGACER"
|
||||
RemoteCommand=""
|
||||
HttpUrl=""
|
||||
PDBPath=""
|
||||
SQLDebugging=""
|
||||
Environment=""
|
||||
EnvironmentMerge="true"
|
||||
DebuggerFlavor=""
|
||||
MPIRunCommand=""
|
||||
MPIRunArguments=""
|
||||
MPIRunWorkingDirectory=""
|
||||
ApplicationCommand=""
|
||||
ApplicationArguments=""
|
||||
ShimCommand=""
|
||||
MPIAcceptMode=""
|
||||
MPIAcceptFilter=""
|
||||
/>
|
||||
</Configuration>
|
||||
</Configurations>
|
||||
</VisualStudioUserFile>
|
3644
BPQMail-HPLaptop.c
3644
BPQMail-HPLaptop.c
File diff suppressed because it is too large
Load Diff
|
@ -1120,7 +1120,10 @@
|
|||
|
||||
// 6.0.25.1 ??
|
||||
|
||||
// Aff FBB reject.sys style filters (3)
|
||||
// Add FBB reject.sys style filters (3)
|
||||
// Improve Webmail on 64 bit builds
|
||||
|
||||
|
||||
|
||||
#include "bpqmail.h"
|
||||
#include "winstdint.h"
|
||||
|
|
|
@ -68,7 +68,7 @@
|
|||
<Tool
|
||||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="..\lib\bpq32.lib wsock32.lib comctl32.lib winmm.lib ..\lib\libconfig.lib DbgHelp.lib"
|
||||
OutputFile="d:\DevProgs\bpq32\BPQMail.exe"
|
||||
OutputFile="c:\DevProgs\bpq32\BPQMail.exe"
|
||||
LinkIncremental="2"
|
||||
IgnoreAllDefaultLibraries="false"
|
||||
IgnoreDefaultLibraryNames="LIBCMT"
|
||||
|
|
|
@ -1,65 +0,0 @@
|
|||
<?xml version="1.0" encoding="Windows-1252"?>
|
||||
<VisualStudioUserFile
|
||||
ProjectType="Visual C++"
|
||||
Version="8.00"
|
||||
ShowAllFiles="false"
|
||||
>
|
||||
<Configurations>
|
||||
<Configuration
|
||||
Name="Debug|Win32"
|
||||
>
|
||||
<DebugSettings
|
||||
Command="$(TargetPath)"
|
||||
WorkingDirectory=""
|
||||
CommandArguments=""
|
||||
Attach="false"
|
||||
DebuggerType="3"
|
||||
Remote="1"
|
||||
RemoteMachine="DESKTOP-MHE5LO8"
|
||||
RemoteCommand=""
|
||||
HttpUrl=""
|
||||
PDBPath=""
|
||||
SQLDebugging=""
|
||||
Environment=""
|
||||
EnvironmentMerge="true"
|
||||
DebuggerFlavor=""
|
||||
MPIRunCommand=""
|
||||
MPIRunArguments=""
|
||||
MPIRunWorkingDirectory=""
|
||||
ApplicationCommand=""
|
||||
ApplicationArguments=""
|
||||
ShimCommand=""
|
||||
MPIAcceptMode=""
|
||||
MPIAcceptFilter=""
|
||||
/>
|
||||
</Configuration>
|
||||
<Configuration
|
||||
Name="Release|Win32"
|
||||
>
|
||||
<DebugSettings
|
||||
Command="$(TargetPath)"
|
||||
WorkingDirectory=""
|
||||
CommandArguments=""
|
||||
Attach="false"
|
||||
DebuggerType="3"
|
||||
Remote="1"
|
||||
RemoteMachine="DESKTOP-MHE5LO8"
|
||||
RemoteCommand=""
|
||||
HttpUrl=""
|
||||
PDBPath=""
|
||||
SQLDebugging=""
|
||||
Environment=""
|
||||
EnvironmentMerge="true"
|
||||
DebuggerFlavor=""
|
||||
MPIRunCommand=""
|
||||
MPIRunArguments=""
|
||||
MPIRunWorkingDirectory=""
|
||||
ApplicationCommand=""
|
||||
ApplicationArguments=""
|
||||
ShimCommand=""
|
||||
MPIAcceptMode=""
|
||||
MPIAcceptFilter=""
|
||||
/>
|
||||
</Configuration>
|
||||
</Configurations>
|
||||
</VisualStudioUserFile>
|
|
@ -1,65 +0,0 @@
|
|||
<?xml version="1.0" encoding="Windows-1252"?>
|
||||
<VisualStudioUserFile
|
||||
ProjectType="Visual C++"
|
||||
Version="8.00"
|
||||
ShowAllFiles="false"
|
||||
>
|
||||
<Configurations>
|
||||
<Configuration
|
||||
Name="Debug|Win32"
|
||||
>
|
||||
<DebugSettings
|
||||
Command="$(TargetPath)"
|
||||
WorkingDirectory=""
|
||||
CommandArguments=""
|
||||
Attach="false"
|
||||
DebuggerType="3"
|
||||
Remote="1"
|
||||
RemoteMachine="DESKTOP-TGEL8RC"
|
||||
RemoteCommand=""
|
||||
HttpUrl=""
|
||||
PDBPath=""
|
||||
SQLDebugging=""
|
||||
Environment=""
|
||||
EnvironmentMerge="true"
|
||||
DebuggerFlavor=""
|
||||
MPIRunCommand=""
|
||||
MPIRunArguments=""
|
||||
MPIRunWorkingDirectory=""
|
||||
ApplicationCommand=""
|
||||
ApplicationArguments=""
|
||||
ShimCommand=""
|
||||
MPIAcceptMode=""
|
||||
MPIAcceptFilter=""
|
||||
/>
|
||||
</Configuration>
|
||||
<Configuration
|
||||
Name="Release|Win32"
|
||||
>
|
||||
<DebugSettings
|
||||
Command="$(TargetPath)"
|
||||
WorkingDirectory=""
|
||||
CommandArguments=""
|
||||
Attach="false"
|
||||
DebuggerType="3"
|
||||
Remote="1"
|
||||
RemoteMachine="DESKTOP-TGEL8RC"
|
||||
RemoteCommand=""
|
||||
HttpUrl=""
|
||||
PDBPath=""
|
||||
SQLDebugging=""
|
||||
Environment=""
|
||||
EnvironmentMerge="true"
|
||||
DebuggerFlavor=""
|
||||
MPIRunCommand=""
|
||||
MPIRunArguments=""
|
||||
MPIRunWorkingDirectory=""
|
||||
ApplicationCommand=""
|
||||
ApplicationArguments=""
|
||||
ShimCommand=""
|
||||
MPIAcceptMode=""
|
||||
MPIAcceptFilter=""
|
||||
/>
|
||||
</Configuration>
|
||||
</Configurations>
|
||||
</VisualStudioUserFile>
|
|
@ -1,65 +0,0 @@
|
|||
<?xml version="1.0" encoding="Windows-1252"?>
|
||||
<VisualStudioUserFile
|
||||
ProjectType="Visual C++"
|
||||
Version="8.00"
|
||||
ShowAllFiles="false"
|
||||
>
|
||||
<Configurations>
|
||||
<Configuration
|
||||
Name="Debug|Win32"
|
||||
>
|
||||
<DebugSettings
|
||||
Command="$(TargetPath)"
|
||||
WorkingDirectory=""
|
||||
CommandArguments=""
|
||||
Attach="false"
|
||||
DebuggerType="3"
|
||||
Remote="1"
|
||||
RemoteMachine="HPLAPTOP"
|
||||
RemoteCommand=""
|
||||
HttpUrl=""
|
||||
PDBPath=""
|
||||
SQLDebugging=""
|
||||
Environment=""
|
||||
EnvironmentMerge="true"
|
||||
DebuggerFlavor=""
|
||||
MPIRunCommand=""
|
||||
MPIRunArguments=""
|
||||
MPIRunWorkingDirectory=""
|
||||
ApplicationCommand=""
|
||||
ApplicationArguments=""
|
||||
ShimCommand=""
|
||||
MPIAcceptMode=""
|
||||
MPIAcceptFilter=""
|
||||
/>
|
||||
</Configuration>
|
||||
<Configuration
|
||||
Name="Release|Win32"
|
||||
>
|
||||
<DebugSettings
|
||||
Command="$(TargetPath)"
|
||||
WorkingDirectory=""
|
||||
CommandArguments=""
|
||||
Attach="false"
|
||||
DebuggerType="3"
|
||||
Remote="1"
|
||||
RemoteMachine="HPLAPTOP"
|
||||
RemoteCommand=""
|
||||
HttpUrl=""
|
||||
PDBPath=""
|
||||
SQLDebugging=""
|
||||
Environment=""
|
||||
EnvironmentMerge="true"
|
||||
DebuggerFlavor=""
|
||||
MPIRunCommand=""
|
||||
MPIRunArguments=""
|
||||
MPIRunWorkingDirectory=""
|
||||
ApplicationCommand=""
|
||||
ApplicationArguments=""
|
||||
ShimCommand=""
|
||||
MPIAcceptMode=""
|
||||
MPIAcceptFilter=""
|
||||
/>
|
||||
</Configuration>
|
||||
</Configurations>
|
||||
</VisualStudioUserFile>
|
|
@ -1,65 +0,0 @@
|
|||
<?xml version="1.0" encoding="Windows-1252"?>
|
||||
<VisualStudioUserFile
|
||||
ProjectType="Visual C++"
|
||||
Version="8.00"
|
||||
ShowAllFiles="false"
|
||||
>
|
||||
<Configurations>
|
||||
<Configuration
|
||||
Name="Debug|Win32"
|
||||
>
|
||||
<DebugSettings
|
||||
Command="$(TargetPath)"
|
||||
WorkingDirectory=""
|
||||
CommandArguments=""
|
||||
Attach="false"
|
||||
DebuggerType="3"
|
||||
Remote="1"
|
||||
RemoteMachine="SKIGACER"
|
||||
RemoteCommand=""
|
||||
HttpUrl=""
|
||||
PDBPath=""
|
||||
SQLDebugging=""
|
||||
Environment=""
|
||||
EnvironmentMerge="true"
|
||||
DebuggerFlavor=""
|
||||
MPIRunCommand=""
|
||||
MPIRunArguments=""
|
||||
MPIRunWorkingDirectory=""
|
||||
ApplicationCommand=""
|
||||
ApplicationArguments=""
|
||||
ShimCommand=""
|
||||
MPIAcceptMode=""
|
||||
MPIAcceptFilter=""
|
||||
/>
|
||||
</Configuration>
|
||||
<Configuration
|
||||
Name="Release|Win32"
|
||||
>
|
||||
<DebugSettings
|
||||
Command="$(TargetPath)"
|
||||
WorkingDirectory=""
|
||||
CommandArguments=""
|
||||
Attach="false"
|
||||
DebuggerType="3"
|
||||
Remote="1"
|
||||
RemoteMachine="SKIGACER"
|
||||
RemoteCommand=""
|
||||
HttpUrl=""
|
||||
PDBPath=""
|
||||
SQLDebugging=""
|
||||
Environment=""
|
||||
EnvironmentMerge="true"
|
||||
DebuggerFlavor=""
|
||||
MPIRunCommand=""
|
||||
MPIRunArguments=""
|
||||
MPIRunWorkingDirectory=""
|
||||
ApplicationCommand=""
|
||||
ApplicationArguments=""
|
||||
ShimCommand=""
|
||||
MPIAcceptMode=""
|
||||
MPIAcceptFilter=""
|
||||
/>
|
||||
</Configuration>
|
||||
</Configurations>
|
||||
</VisualStudioUserFile>
|
|
@ -1,65 +0,0 @@
|
|||
<?xml version="1.0" encoding="Windows-1252"?>
|
||||
<VisualStudioUserFile
|
||||
ProjectType="Visual C++"
|
||||
Version="8.00"
|
||||
ShowAllFiles="false"
|
||||
>
|
||||
<Configurations>
|
||||
<Configuration
|
||||
Name="Debug|Win32"
|
||||
>
|
||||
<DebugSettings
|
||||
Command="$(TargetPath)"
|
||||
WorkingDirectory=""
|
||||
CommandArguments=""
|
||||
Attach="false"
|
||||
DebuggerType="3"
|
||||
Remote="1"
|
||||
RemoteMachine="DESKTOP-TGEL8RC"
|
||||
RemoteCommand=""
|
||||
HttpUrl=""
|
||||
PDBPath=""
|
||||
SQLDebugging=""
|
||||
Environment=""
|
||||
EnvironmentMerge="true"
|
||||
DebuggerFlavor=""
|
||||
MPIRunCommand=""
|
||||
MPIRunArguments=""
|
||||
MPIRunWorkingDirectory=""
|
||||
ApplicationCommand=""
|
||||
ApplicationArguments=""
|
||||
ShimCommand=""
|
||||
MPIAcceptMode=""
|
||||
MPIAcceptFilter=""
|
||||
/>
|
||||
</Configuration>
|
||||
<Configuration
|
||||
Name="Release|Win32"
|
||||
>
|
||||
<DebugSettings
|
||||
Command="$(TargetPath)"
|
||||
WorkingDirectory=""
|
||||
CommandArguments=""
|
||||
Attach="false"
|
||||
DebuggerType="3"
|
||||
Remote="1"
|
||||
RemoteMachine="DESKTOP-TGEL8RC"
|
||||
RemoteCommand=""
|
||||
HttpUrl=""
|
||||
PDBPath=""
|
||||
SQLDebugging=""
|
||||
Environment=""
|
||||
EnvironmentMerge="true"
|
||||
DebuggerFlavor=""
|
||||
MPIRunCommand=""
|
||||
MPIRunArguments=""
|
||||
MPIRunWorkingDirectory=""
|
||||
ApplicationCommand=""
|
||||
ApplicationArguments=""
|
||||
ShimCommand=""
|
||||
MPIAcceptMode=""
|
||||
MPIAcceptFilter=""
|
||||
/>
|
||||
</Configuration>
|
||||
</Configurations>
|
||||
</VisualStudioUserFile>
|
|
@ -1,65 +0,0 @@
|
|||
<?xml version="1.0" encoding="Windows-1252"?>
|
||||
<VisualStudioUserFile
|
||||
ProjectType="Visual C++"
|
||||
Version="8.00"
|
||||
ShowAllFiles="false"
|
||||
>
|
||||
<Configurations>
|
||||
<Configuration
|
||||
Name="Debug|Win32"
|
||||
>
|
||||
<DebugSettings
|
||||
Command="$(TargetPath)"
|
||||
WorkingDirectory=""
|
||||
CommandArguments=""
|
||||
Attach="false"
|
||||
DebuggerType="3"
|
||||
Remote="1"
|
||||
RemoteMachine="DESKTOP-TGEL8RC"
|
||||
RemoteCommand=""
|
||||
HttpUrl=""
|
||||
PDBPath=""
|
||||
SQLDebugging=""
|
||||
Environment=""
|
||||
EnvironmentMerge="true"
|
||||
DebuggerFlavor=""
|
||||
MPIRunCommand=""
|
||||
MPIRunArguments=""
|
||||
MPIRunWorkingDirectory=""
|
||||
ApplicationCommand=""
|
||||
ApplicationArguments=""
|
||||
ShimCommand=""
|
||||
MPIAcceptMode=""
|
||||
MPIAcceptFilter=""
|
||||
/>
|
||||
</Configuration>
|
||||
<Configuration
|
||||
Name="Release|Win32"
|
||||
>
|
||||
<DebugSettings
|
||||
Command="$(TargetPath)"
|
||||
WorkingDirectory=""
|
||||
CommandArguments=""
|
||||
Attach="false"
|
||||
DebuggerType="3"
|
||||
Remote="1"
|
||||
RemoteMachine="DESKTOP-TGEL8RC"
|
||||
RemoteCommand=""
|
||||
HttpUrl=""
|
||||
PDBPath=""
|
||||
SQLDebugging=""
|
||||
Environment=""
|
||||
EnvironmentMerge="true"
|
||||
DebuggerFlavor=""
|
||||
MPIRunCommand=""
|
||||
MPIRunArguments=""
|
||||
MPIRunWorkingDirectory=""
|
||||
ApplicationCommand=""
|
||||
ApplicationArguments=""
|
||||
ShimCommand=""
|
||||
MPIAcceptMode=""
|
||||
MPIAcceptFilter=""
|
||||
/>
|
||||
</Configuration>
|
||||
</Configurations>
|
||||
</VisualStudioUserFile>
|
|
@ -1,65 +0,0 @@
|
|||
<?xml version="1.0" encoding="Windows-1252"?>
|
||||
<VisualStudioUserFile
|
||||
ProjectType="Visual C++"
|
||||
Version="8.00"
|
||||
ShowAllFiles="false"
|
||||
>
|
||||
<Configurations>
|
||||
<Configuration
|
||||
Name="Debug|Win32"
|
||||
>
|
||||
<DebugSettings
|
||||
Command="$(TargetPath)"
|
||||
WorkingDirectory=""
|
||||
CommandArguments=""
|
||||
Attach="false"
|
||||
DebuggerType="3"
|
||||
Remote="1"
|
||||
RemoteMachine="SKIGACER"
|
||||
RemoteCommand=""
|
||||
HttpUrl=""
|
||||
PDBPath=""
|
||||
SQLDebugging=""
|
||||
Environment=""
|
||||
EnvironmentMerge="true"
|
||||
DebuggerFlavor=""
|
||||
MPIRunCommand=""
|
||||
MPIRunArguments=""
|
||||
MPIRunWorkingDirectory=""
|
||||
ApplicationCommand=""
|
||||
ApplicationArguments=""
|
||||
ShimCommand=""
|
||||
MPIAcceptMode=""
|
||||
MPIAcceptFilter=""
|
||||
/>
|
||||
</Configuration>
|
||||
<Configuration
|
||||
Name="Release|Win32"
|
||||
>
|
||||
<DebugSettings
|
||||
Command="$(TargetPath)"
|
||||
WorkingDirectory=""
|
||||
CommandArguments=""
|
||||
Attach="false"
|
||||
DebuggerType="3"
|
||||
Remote="1"
|
||||
RemoteMachine="SKIGACER"
|
||||
RemoteCommand=""
|
||||
HttpUrl=""
|
||||
PDBPath=""
|
||||
SQLDebugging=""
|
||||
Environment=""
|
||||
EnvironmentMerge="true"
|
||||
DebuggerFlavor=""
|
||||
MPIRunCommand=""
|
||||
MPIRunArguments=""
|
||||
MPIRunWorkingDirectory=""
|
||||
ApplicationCommand=""
|
||||
ApplicationArguments=""
|
||||
ShimCommand=""
|
||||
MPIAcceptMode=""
|
||||
MPIAcceptFilter=""
|
||||
/>
|
||||
</Configuration>
|
||||
</Configurations>
|
||||
</VisualStudioUserFile>
|
6
Bpq32.c
6
Bpq32.c
|
@ -1193,7 +1193,9 @@ along with LinBPQ/BPQ32. If not, see http://www.gnu.org/licenses
|
|||
// Add SDRAngel rig control (11)
|
||||
// Add option to specify config and data directories on linbpq (12)
|
||||
// Allow zero resptime (send RR immediately) (13)
|
||||
// Fix corruptions in Webmail on 64 bit builds, eg in displaying 7+ files (15)
|
||||
// Make sure CMD bit is set on UI frames
|
||||
// Add setting Modem Flags in QtSM AGW mode
|
||||
// If FT847 om PTC Port send a "Cat On" command (16)
|
||||
|
||||
#define CKernel
|
||||
|
||||
|
@ -1602,7 +1604,7 @@ char PopupText[30][100] = {""};
|
|||
// Next 3 should be uninitialised so they are local to each process
|
||||
|
||||
UCHAR MCOM;
|
||||
UCHAR MTX;
|
||||
UCHAR MTX; // Top bit indicates use local time
|
||||
uint64_t MMASK;
|
||||
UCHAR MUIONLY;
|
||||
|
||||
|
|
Binary file not shown.
|
@ -1,65 +0,0 @@
|
|||
<?xml version="1.0" encoding="Windows-1252"?>
|
||||
<VisualStudioUserFile
|
||||
ProjectType="Visual C++"
|
||||
Version="8.00"
|
||||
ShowAllFiles="false"
|
||||
>
|
||||
<Configurations>
|
||||
<Configuration
|
||||
Name="Debug|Win32"
|
||||
>
|
||||
<DebugSettings
|
||||
Command="c:\devprogs\bpq32\bpq32.exe"
|
||||
WorkingDirectory=""
|
||||
CommandArguments=""
|
||||
Attach="false"
|
||||
DebuggerType="3"
|
||||
Remote="1"
|
||||
RemoteMachine="DESKTOP-MHE5LO8"
|
||||
RemoteCommand=""
|
||||
HttpUrl=""
|
||||
PDBPath=""
|
||||
SQLDebugging=""
|
||||
Environment=""
|
||||
EnvironmentMerge="true"
|
||||
DebuggerFlavor="0"
|
||||
MPIRunCommand=""
|
||||
MPIRunArguments=""
|
||||
MPIRunWorkingDirectory=""
|
||||
ApplicationCommand=""
|
||||
ApplicationArguments=""
|
||||
ShimCommand=""
|
||||
MPIAcceptMode=""
|
||||
MPIAcceptFilter=""
|
||||
/>
|
||||
</Configuration>
|
||||
<Configuration
|
||||
Name="Release|Win32"
|
||||
>
|
||||
<DebugSettings
|
||||
Command=""
|
||||
WorkingDirectory=""
|
||||
CommandArguments=""
|
||||
Attach="false"
|
||||
DebuggerType="3"
|
||||
Remote="1"
|
||||
RemoteMachine="DESKTOP-MHE5LO8"
|
||||
RemoteCommand=""
|
||||
HttpUrl=""
|
||||
PDBPath=""
|
||||
SQLDebugging=""
|
||||
Environment=""
|
||||
EnvironmentMerge="true"
|
||||
DebuggerFlavor=""
|
||||
MPIRunCommand=""
|
||||
MPIRunArguments=""
|
||||
MPIRunWorkingDirectory=""
|
||||
ApplicationCommand=""
|
||||
ApplicationArguments=""
|
||||
ShimCommand=""
|
||||
MPIAcceptMode=""
|
||||
MPIAcceptFilter=""
|
||||
/>
|
||||
</Configuration>
|
||||
</Configurations>
|
||||
</VisualStudioUserFile>
|
|
@ -1,65 +0,0 @@
|
|||
<?xml version="1.0" encoding="Windows-1252"?>
|
||||
<VisualStudioUserFile
|
||||
ProjectType="Visual C++"
|
||||
Version="8.00"
|
||||
ShowAllFiles="false"
|
||||
>
|
||||
<Configurations>
|
||||
<Configuration
|
||||
Name="Debug|Win32"
|
||||
>
|
||||
<DebugSettings
|
||||
Command="C:\Devprogs\BPQ32\bpq32.exe"
|
||||
WorkingDirectory=""
|
||||
CommandArguments=""
|
||||
Attach="false"
|
||||
DebuggerType="3"
|
||||
Remote="1"
|
||||
RemoteMachine="DESKTOP-TGEL8RC"
|
||||
RemoteCommand=""
|
||||
HttpUrl=""
|
||||
PDBPath=""
|
||||
SQLDebugging=""
|
||||
Environment=""
|
||||
EnvironmentMerge="true"
|
||||
DebuggerFlavor=""
|
||||
MPIRunCommand=""
|
||||
MPIRunArguments=""
|
||||
MPIRunWorkingDirectory=""
|
||||
ApplicationCommand=""
|
||||
ApplicationArguments=""
|
||||
ShimCommand=""
|
||||
MPIAcceptMode=""
|
||||
MPIAcceptFilter=""
|
||||
/>
|
||||
</Configuration>
|
||||
<Configuration
|
||||
Name="Release|Win32"
|
||||
>
|
||||
<DebugSettings
|
||||
Command="C:\Devprogs\BPQ32\bpq32.exe"
|
||||
WorkingDirectory=""
|
||||
CommandArguments=""
|
||||
Attach="false"
|
||||
DebuggerType="3"
|
||||
Remote="1"
|
||||
RemoteMachine="DESKTOP-TGEL8RC"
|
||||
RemoteCommand=""
|
||||
HttpUrl=""
|
||||
PDBPath=""
|
||||
SQLDebugging=""
|
||||
Environment=""
|
||||
EnvironmentMerge="true"
|
||||
DebuggerFlavor=""
|
||||
MPIRunCommand=""
|
||||
MPIRunArguments=""
|
||||
MPIRunWorkingDirectory=""
|
||||
ApplicationCommand=""
|
||||
ApplicationArguments=""
|
||||
ShimCommand=""
|
||||
MPIAcceptMode=""
|
||||
MPIAcceptFilter=""
|
||||
/>
|
||||
</Configuration>
|
||||
</Configurations>
|
||||
</VisualStudioUserFile>
|
|
@ -1,65 +0,0 @@
|
|||
<?xml version="1.0" encoding="Windows-1252"?>
|
||||
<VisualStudioUserFile
|
||||
ProjectType="Visual C++"
|
||||
Version="8.00"
|
||||
ShowAllFiles="false"
|
||||
>
|
||||
<Configurations>
|
||||
<Configuration
|
||||
Name="Debug|Win32"
|
||||
>
|
||||
<DebugSettings
|
||||
Command="C:\Devprogs\BPQ32\bpq32.exe"
|
||||
WorkingDirectory=""
|
||||
CommandArguments=""
|
||||
Attach="false"
|
||||
DebuggerType="3"
|
||||
Remote="1"
|
||||
RemoteMachine="HPLAPTOP"
|
||||
RemoteCommand=""
|
||||
HttpUrl=""
|
||||
PDBPath=""
|
||||
SQLDebugging=""
|
||||
Environment=""
|
||||
EnvironmentMerge="true"
|
||||
DebuggerFlavor=""
|
||||
MPIRunCommand=""
|
||||
MPIRunArguments=""
|
||||
MPIRunWorkingDirectory=""
|
||||
ApplicationCommand=""
|
||||
ApplicationArguments=""
|
||||
ShimCommand=""
|
||||
MPIAcceptMode=""
|
||||
MPIAcceptFilter=""
|
||||
/>
|
||||
</Configuration>
|
||||
<Configuration
|
||||
Name="Release|Win32"
|
||||
>
|
||||
<DebugSettings
|
||||
Command=""
|
||||
WorkingDirectory=""
|
||||
CommandArguments=""
|
||||
Attach="false"
|
||||
DebuggerType="3"
|
||||
Remote="1"
|
||||
RemoteMachine="HPLAPTOP"
|
||||
RemoteCommand=""
|
||||
HttpUrl=""
|
||||
PDBPath=""
|
||||
SQLDebugging=""
|
||||
Environment=""
|
||||
EnvironmentMerge="true"
|
||||
DebuggerFlavor=""
|
||||
MPIRunCommand=""
|
||||
MPIRunArguments=""
|
||||
MPIRunWorkingDirectory=""
|
||||
ApplicationCommand=""
|
||||
ApplicationArguments=""
|
||||
ShimCommand=""
|
||||
MPIAcceptMode=""
|
||||
MPIAcceptFilter=""
|
||||
/>
|
||||
</Configuration>
|
||||
</Configurations>
|
||||
</VisualStudioUserFile>
|
|
@ -1,65 +0,0 @@
|
|||
<?xml version="1.0" encoding="Windows-1252"?>
|
||||
<VisualStudioUserFile
|
||||
ProjectType="Visual C++"
|
||||
Version="8.00"
|
||||
ShowAllFiles="false"
|
||||
>
|
||||
<Configurations>
|
||||
<Configuration
|
||||
Name="Debug|Win32"
|
||||
>
|
||||
<DebugSettings
|
||||
Command="C:\DevProgs\BPQ32\bpq32.exe"
|
||||
WorkingDirectory=""
|
||||
CommandArguments=""
|
||||
Attach="false"
|
||||
DebuggerType="3"
|
||||
Remote="1"
|
||||
RemoteMachine="SKIGACER"
|
||||
RemoteCommand=""
|
||||
HttpUrl=""
|
||||
PDBPath=""
|
||||
SQLDebugging=""
|
||||
Environment=""
|
||||
EnvironmentMerge="true"
|
||||
DebuggerFlavor=""
|
||||
MPIRunCommand=""
|
||||
MPIRunArguments=""
|
||||
MPIRunWorkingDirectory=""
|
||||
ApplicationCommand=""
|
||||
ApplicationArguments=""
|
||||
ShimCommand=""
|
||||
MPIAcceptMode=""
|
||||
MPIAcceptFilter=""
|
||||
/>
|
||||
</Configuration>
|
||||
<Configuration
|
||||
Name="Release|Win32"
|
||||
>
|
||||
<DebugSettings
|
||||
Command="C:\DevProgs\BPQ32\bpq32.exe"
|
||||
WorkingDirectory=""
|
||||
CommandArguments=""
|
||||
Attach="false"
|
||||
DebuggerType="3"
|
||||
Remote="1"
|
||||
RemoteMachine="SKIGACER"
|
||||
RemoteCommand=""
|
||||
HttpUrl=""
|
||||
PDBPath=""
|
||||
SQLDebugging=""
|
||||
Environment=""
|
||||
EnvironmentMerge="true"
|
||||
DebuggerFlavor=""
|
||||
MPIRunCommand=""
|
||||
MPIRunArguments=""
|
||||
MPIRunWorkingDirectory=""
|
||||
ApplicationCommand=""
|
||||
ApplicationArguments=""
|
||||
ShimCommand=""
|
||||
MPIAcceptMode=""
|
||||
MPIAcceptFilter=""
|
||||
/>
|
||||
</Configuration>
|
||||
</Configurations>
|
||||
</VisualStudioUserFile>
|
9
Cmd.c
9
Cmd.c
|
@ -2157,6 +2157,7 @@ VOID CQCMD(TRANSPORTENTRY * Session, char * Bufferptr, char * CmdTail, CMDX * CM
|
|||
|
||||
ConvToAX25("CQ", CQCALL);
|
||||
memcpy(Msg.DEST, CQCALL, 7);
|
||||
Msg.DEST[6] |= 0x80; // set Command Bit
|
||||
memcpy(Msg.ORIGIN, Session->L4USER, 7);
|
||||
Msg.ORIGIN[6] ^= 0x1e; // Flip SSID
|
||||
Msg.PID = 0xf0; // Data PID
|
||||
|
@ -4714,6 +4715,7 @@ VOID InnerCommandHandler(TRANSPORTENTRY * Session, struct DATAMESSAGE * Buffer)
|
|||
Msg.PORT = Port;
|
||||
Msg.CTL = 3; // UI
|
||||
memcpy(Msg.DEST, Session->UADDRESS, 7);
|
||||
Msg.DEST[6] |= 0x80; // set Command Bit
|
||||
memcpy(Msg.ORIGIN, Session->L4USER, 7);
|
||||
memcpy(Msg.DIGIS, &Session->UADDRESS[7], Session->UAddrLen - 7);
|
||||
memcpy(&Msg.PID, &Buffer->PID, Len);
|
||||
|
@ -5789,6 +5791,7 @@ VOID HELPCMD(TRANSPORTENTRY * Session, char * Bufferptr, char * CmdTail, CMDX *
|
|||
|
||||
int UZ7HOSetFreq(int port, struct TNCINFO * TNC, struct AGWINFO * AGW, PDATAMESSAGE buff, PMSGWITHLEN buffptr);
|
||||
int UZ7HOSetModem(int port, struct TNCINFO * TNC, struct AGWINFO * AGW, PDATAMESSAGE buff, PMSGWITHLEN buffptr);
|
||||
int UZ7HOSetFlags(int port, struct TNCINFO * TNC, struct AGWINFO * AGW, PDATAMESSAGE buff, PMSGWITHLEN buffptr);
|
||||
|
||||
|
||||
VOID UZ7HOCMD(TRANSPORTENTRY * Session, char * Bufferptr, char * CmdTail, CMDX * CMD)
|
||||
|
@ -5822,7 +5825,7 @@ VOID UZ7HOCMD(TRANSPORTENTRY * Session, char * Bufferptr, char * CmdTail, CMDX *
|
|||
return;
|
||||
}
|
||||
|
||||
if (_memicmp(Cmd, "FREQ", 4) == 0 || _memicmp(Cmd, "MODEM", 5) == 0)
|
||||
if (_memicmp(Cmd, "FREQ", 4) == 0 || _memicmp(Cmd, "MODEM", 5) == 0 || _memicmp(Cmd, "FLAGS", 5) == 0)
|
||||
{
|
||||
// Pass to procesing code in UZ7HO driver. This expects command in a PDATAMESSAGE amd places response in a PMSGWITHLEN buffer
|
||||
|
||||
|
@ -5844,6 +5847,8 @@ VOID UZ7HOCMD(TRANSPORTENTRY * Session, char * Bufferptr, char * CmdTail, CMDX *
|
|||
|
||||
if (_memicmp(Cmd, "FREQ", 4) == 0)
|
||||
UZ7HOSetFreq(port, TNC, AGW, buff, buffptr);
|
||||
else if (_memicmp(Cmd, "FLAGS", 5) == 0)
|
||||
UZ7HOSetFlags(port, TNC, AGW, buff, buffptr);
|
||||
else
|
||||
UZ7HOSetModem(port, TNC, AGW, buff, buffptr);
|
||||
|
||||
|
@ -5854,7 +5859,7 @@ VOID UZ7HOCMD(TRANSPORTENTRY * Session, char * Bufferptr, char * CmdTail, CMDX *
|
|||
ReleaseBuffer(buffptr);
|
||||
}
|
||||
else
|
||||
Bufferptr = Cmdprintf(Session, Bufferptr, "Invalid UZ7HO Command (not Freq or Modem)\r");
|
||||
Bufferptr = Cmdprintf(Session, Bufferptr, "Invalid UZ7HO Command (not Freq Modem or FLAGS)\r");
|
||||
|
||||
SendCommandReply(Session, REPLYBUFFER, (int)(Bufferptr - (char *)REPLYBUFFER));
|
||||
return;
|
||||
|
|
1907
HALDriver64.c.bak
1907
HALDriver64.c.bak
File diff suppressed because it is too large
Load Diff
2
IPCode.c
2
IPCode.c
|
@ -1271,6 +1271,8 @@ static VOID Send_AX_Datagram(PMESSAGE Block, DWORD Len, UCHAR Port, UCHAR * HWAD
|
|||
memcpy(Block->DEST, HWADDR, 7);
|
||||
memcpy(Block->ORIGIN, MYCALL, 7);
|
||||
Block->DEST[6] &= 0x7e; // Clear End of Call
|
||||
Block->DEST[6] |= 0x80; // set Command Bit
|
||||
|
||||
Block->ORIGIN[6] |= 1; // Set End of Call
|
||||
Block->CTL = 3; //UI
|
||||
|
||||
|
|
3
L4Code.c
3
L4Code.c
|
@ -1297,14 +1297,11 @@ VOID CONNECTREQUEST(struct _LINKTABLE * LINK, L3MESSAGEBUFFER * L3MSG, UINT Appl
|
|||
char BPQPARAMS[10]; // Extended Connect Params from BPQ Node
|
||||
int CONERROR;
|
||||
int Index;
|
||||
char xxx[16] = "";
|
||||
|
||||
memcpy(BPQPARAMS, &L4T1, 2); // SET DEFAULT T1 IN CASE NOT FROM ANOTHER BPQ NODE
|
||||
|
||||
BPQPARAMS[2] = 0; // 'SPY' NOT SET
|
||||
|
||||
ConvFromAX25(&L3MSG->L4DATA[1], xxx);
|
||||
|
||||
if (CheckExcludeList(&L3MSG->L4DATA[1]) == 0)
|
||||
{
|
||||
SendConNAK(LINK, L3MSG);
|
||||
|
|
|
@ -1,65 +0,0 @@
|
|||
<?xml version="1.0" encoding="Windows-1252"?>
|
||||
<VisualStudioUserFile
|
||||
ProjectType="Visual C++"
|
||||
Version="8.00"
|
||||
ShowAllFiles="false"
|
||||
>
|
||||
<Configurations>
|
||||
<Configuration
|
||||
Name="Debug|Win32"
|
||||
>
|
||||
<DebugSettings
|
||||
Command="$(TargetPath)"
|
||||
WorkingDirectory=""
|
||||
CommandArguments=""
|
||||
Attach="false"
|
||||
DebuggerType="3"
|
||||
Remote="1"
|
||||
RemoteMachine="DESKTOP-TGEL8RC"
|
||||
RemoteCommand=""
|
||||
HttpUrl=""
|
||||
PDBPath=""
|
||||
SQLDebugging=""
|
||||
Environment=""
|
||||
EnvironmentMerge="true"
|
||||
DebuggerFlavor=""
|
||||
MPIRunCommand=""
|
||||
MPIRunArguments=""
|
||||
MPIRunWorkingDirectory=""
|
||||
ApplicationCommand=""
|
||||
ApplicationArguments=""
|
||||
ShimCommand=""
|
||||
MPIAcceptMode=""
|
||||
MPIAcceptFilter=""
|
||||
/>
|
||||
</Configuration>
|
||||
<Configuration
|
||||
Name="Release|Win32"
|
||||
>
|
||||
<DebugSettings
|
||||
Command="$(TargetPath)"
|
||||
WorkingDirectory=""
|
||||
CommandArguments=""
|
||||
Attach="false"
|
||||
DebuggerType="3"
|
||||
Remote="1"
|
||||
RemoteMachine="DESKTOP-TGEL8RC"
|
||||
RemoteCommand=""
|
||||
HttpUrl=""
|
||||
PDBPath=""
|
||||
SQLDebugging=""
|
||||
Environment=""
|
||||
EnvironmentMerge="true"
|
||||
DebuggerFlavor=""
|
||||
MPIRunCommand=""
|
||||
MPIRunArguments=""
|
||||
MPIRunWorkingDirectory=""
|
||||
ApplicationCommand=""
|
||||
ApplicationArguments=""
|
||||
ShimCommand=""
|
||||
MPIAcceptMode=""
|
||||
MPIAcceptFilter=""
|
||||
/>
|
||||
</Configuration>
|
||||
</Configurations>
|
||||
</VisualStudioUserFile>
|
BIN
MailNode.ncb
BIN
MailNode.ncb
Binary file not shown.
|
@ -1,65 +0,0 @@
|
|||
<?xml version="1.0" encoding="Windows-1252"?>
|
||||
<VisualStudioUserFile
|
||||
ProjectType="Visual C++"
|
||||
Version="8.00"
|
||||
ShowAllFiles="false"
|
||||
>
|
||||
<Configurations>
|
||||
<Configuration
|
||||
Name="Debug|Win32"
|
||||
>
|
||||
<DebugSettings
|
||||
Command="$(TargetPath)"
|
||||
WorkingDirectory=""
|
||||
CommandArguments=""
|
||||
Attach="false"
|
||||
DebuggerType="3"
|
||||
Remote="1"
|
||||
RemoteMachine="DESKTOP-MHE5LO8"
|
||||
RemoteCommand=""
|
||||
HttpUrl=""
|
||||
PDBPath=""
|
||||
SQLDebugging=""
|
||||
Environment=""
|
||||
EnvironmentMerge="true"
|
||||
DebuggerFlavor=""
|
||||
MPIRunCommand=""
|
||||
MPIRunArguments=""
|
||||
MPIRunWorkingDirectory=""
|
||||
ApplicationCommand=""
|
||||
ApplicationArguments=""
|
||||
ShimCommand=""
|
||||
MPIAcceptMode=""
|
||||
MPIAcceptFilter=""
|
||||
/>
|
||||
</Configuration>
|
||||
<Configuration
|
||||
Name="Release|Win32"
|
||||
>
|
||||
<DebugSettings
|
||||
Command="$(TargetPath)"
|
||||
WorkingDirectory=""
|
||||
CommandArguments=""
|
||||
Attach="false"
|
||||
DebuggerType="3"
|
||||
Remote="1"
|
||||
RemoteMachine="DESKTOP-MHE5LO8"
|
||||
RemoteCommand=""
|
||||
HttpUrl=""
|
||||
PDBPath=""
|
||||
SQLDebugging=""
|
||||
Environment=""
|
||||
EnvironmentMerge="true"
|
||||
DebuggerFlavor=""
|
||||
MPIRunCommand=""
|
||||
MPIRunArguments=""
|
||||
MPIRunWorkingDirectory=""
|
||||
ApplicationCommand=""
|
||||
ApplicationArguments=""
|
||||
ShimCommand=""
|
||||
MPIAcceptMode=""
|
||||
MPIAcceptFilter=""
|
||||
/>
|
||||
</Configuration>
|
||||
</Configurations>
|
||||
</VisualStudioUserFile>
|
|
@ -1,65 +0,0 @@
|
|||
<?xml version="1.0" encoding="Windows-1252"?>
|
||||
<VisualStudioUserFile
|
||||
ProjectType="Visual C++"
|
||||
Version="8.00"
|
||||
ShowAllFiles="false"
|
||||
>
|
||||
<Configurations>
|
||||
<Configuration
|
||||
Name="Debug|Win32"
|
||||
>
|
||||
<DebugSettings
|
||||
Command="$(TargetPath)"
|
||||
WorkingDirectory="C:\linbpq"
|
||||
CommandArguments="-h"
|
||||
Attach="false"
|
||||
DebuggerType="3"
|
||||
Remote="1"
|
||||
RemoteMachine="DESKTOP-TGEL8RC"
|
||||
RemoteCommand=""
|
||||
HttpUrl=""
|
||||
PDBPath=""
|
||||
SQLDebugging=""
|
||||
Environment=""
|
||||
EnvironmentMerge="true"
|
||||
DebuggerFlavor="0"
|
||||
MPIRunCommand=""
|
||||
MPIRunArguments=""
|
||||
MPIRunWorkingDirectory=""
|
||||
ApplicationCommand=""
|
||||
ApplicationArguments=""
|
||||
ShimCommand=""
|
||||
MPIAcceptMode=""
|
||||
MPIAcceptFilter=""
|
||||
/>
|
||||
</Configuration>
|
||||
<Configuration
|
||||
Name="Release|Win32"
|
||||
>
|
||||
<DebugSettings
|
||||
Command="$(TargetPath)"
|
||||
WorkingDirectory=""
|
||||
CommandArguments=""
|
||||
Attach="false"
|
||||
DebuggerType="3"
|
||||
Remote="1"
|
||||
RemoteMachine="DESKTOP-TGEL8RC"
|
||||
RemoteCommand=""
|
||||
HttpUrl=""
|
||||
PDBPath=""
|
||||
SQLDebugging=""
|
||||
Environment=""
|
||||
EnvironmentMerge="true"
|
||||
DebuggerFlavor=""
|
||||
MPIRunCommand=""
|
||||
MPIRunArguments=""
|
||||
MPIRunWorkingDirectory=""
|
||||
ApplicationCommand=""
|
||||
ApplicationArguments=""
|
||||
ShimCommand=""
|
||||
MPIAcceptMode=""
|
||||
MPIAcceptFilter=""
|
||||
/>
|
||||
</Configuration>
|
||||
</Configurations>
|
||||
</VisualStudioUserFile>
|
|
@ -1,65 +0,0 @@
|
|||
<?xml version="1.0" encoding="Windows-1252"?>
|
||||
<VisualStudioUserFile
|
||||
ProjectType="Visual C++"
|
||||
Version="8.00"
|
||||
ShowAllFiles="false"
|
||||
>
|
||||
<Configurations>
|
||||
<Configuration
|
||||
Name="Debug|Win32"
|
||||
>
|
||||
<DebugSettings
|
||||
Command="$(TargetPath)"
|
||||
WorkingDirectory=""
|
||||
CommandArguments=""
|
||||
Attach="false"
|
||||
DebuggerType="3"
|
||||
Remote="1"
|
||||
RemoteMachine="HPLAPTOP"
|
||||
RemoteCommand=""
|
||||
HttpUrl=""
|
||||
PDBPath=""
|
||||
SQLDebugging=""
|
||||
Environment=""
|
||||
EnvironmentMerge="true"
|
||||
DebuggerFlavor=""
|
||||
MPIRunCommand=""
|
||||
MPIRunArguments=""
|
||||
MPIRunWorkingDirectory=""
|
||||
ApplicationCommand=""
|
||||
ApplicationArguments=""
|
||||
ShimCommand=""
|
||||
MPIAcceptMode=""
|
||||
MPIAcceptFilter=""
|
||||
/>
|
||||
</Configuration>
|
||||
<Configuration
|
||||
Name="Release|Win32"
|
||||
>
|
||||
<DebugSettings
|
||||
Command="$(TargetPath)"
|
||||
WorkingDirectory=""
|
||||
CommandArguments=""
|
||||
Attach="false"
|
||||
DebuggerType="3"
|
||||
Remote="1"
|
||||
RemoteMachine="HPLAPTOP"
|
||||
RemoteCommand=""
|
||||
HttpUrl=""
|
||||
PDBPath=""
|
||||
SQLDebugging=""
|
||||
Environment=""
|
||||
EnvironmentMerge="true"
|
||||
DebuggerFlavor=""
|
||||
MPIRunCommand=""
|
||||
MPIRunArguments=""
|
||||
MPIRunWorkingDirectory=""
|
||||
ApplicationCommand=""
|
||||
ApplicationArguments=""
|
||||
ShimCommand=""
|
||||
MPIAcceptMode=""
|
||||
MPIAcceptFilter=""
|
||||
/>
|
||||
</Configuration>
|
||||
</Configurations>
|
||||
</VisualStudioUserFile>
|
|
@ -1,65 +0,0 @@
|
|||
<?xml version="1.0" encoding="Windows-1252"?>
|
||||
<VisualStudioUserFile
|
||||
ProjectType="Visual C++"
|
||||
Version="8.00"
|
||||
ShowAllFiles="false"
|
||||
>
|
||||
<Configurations>
|
||||
<Configuration
|
||||
Name="Debug|Win32"
|
||||
>
|
||||
<DebugSettings
|
||||
Command="$(TargetPath)"
|
||||
WorkingDirectory="c:\linbpq"
|
||||
CommandArguments=""
|
||||
Attach="false"
|
||||
DebuggerType="3"
|
||||
Remote="1"
|
||||
RemoteMachine="SKIGACER"
|
||||
RemoteCommand=""
|
||||
HttpUrl=""
|
||||
PDBPath=""
|
||||
SQLDebugging=""
|
||||
Environment=""
|
||||
EnvironmentMerge="true"
|
||||
DebuggerFlavor="0"
|
||||
MPIRunCommand=""
|
||||
MPIRunArguments=""
|
||||
MPIRunWorkingDirectory=""
|
||||
ApplicationCommand=""
|
||||
ApplicationArguments=""
|
||||
ShimCommand=""
|
||||
MPIAcceptMode=""
|
||||
MPIAcceptFilter=""
|
||||
/>
|
||||
</Configuration>
|
||||
<Configuration
|
||||
Name="Release|Win32"
|
||||
>
|
||||
<DebugSettings
|
||||
Command="$(TargetPath)"
|
||||
WorkingDirectory=""
|
||||
CommandArguments=""
|
||||
Attach="false"
|
||||
DebuggerType="3"
|
||||
Remote="1"
|
||||
RemoteMachine="SKIGACER"
|
||||
RemoteCommand=""
|
||||
HttpUrl=""
|
||||
PDBPath=""
|
||||
SQLDebugging=""
|
||||
Environment=""
|
||||
EnvironmentMerge="true"
|
||||
DebuggerFlavor=""
|
||||
MPIRunCommand=""
|
||||
MPIRunArguments=""
|
||||
MPIRunWorkingDirectory=""
|
||||
ApplicationCommand=""
|
||||
ApplicationArguments=""
|
||||
ShimCommand=""
|
||||
MPIAcceptMode=""
|
||||
MPIAcceptFilter=""
|
||||
/>
|
||||
</Configuration>
|
||||
</Configurations>
|
||||
</VisualStudioUserFile>
|
|
@ -0,0 +1,8 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<LocalDebuggerCommand>C:\Dev\Msdev2005\projects\bpq32\BPQMail\x64\Debug\LinBPQ.exe</LocalDebuggerCommand>
|
||||
<LocalDebuggerWorkingDirectory>c:\linbpq</LocalDebuggerWorkingDirectory>
|
||||
<DebuggerFlavor>WindowsLocalDebugger</DebuggerFlavor>
|
||||
</PropertyGroup>
|
||||
</Project>
|
File diff suppressed because it is too large
Load Diff
32
Moncode.c
32
Moncode.c
|
@ -163,7 +163,6 @@ int IntDecodeFrame(MESSAGE * msg, char * buffer, time_t Stamp, uint64_t Mask, BO
|
|||
int Port;
|
||||
int MSGFLAG = 0; //CR and V1 flags
|
||||
char * Output = buffer;
|
||||
int HH, MM, SS;
|
||||
char TR = 'R';
|
||||
char From[10], To[10];
|
||||
BOOL Info = 0;
|
||||
|
@ -173,6 +172,15 @@ int IntDecodeFrame(MESSAGE * msg, char * buffer, time_t Stamp, uint64_t Mask, BO
|
|||
|
||||
size_t MsgLen = msg->LENGTH;
|
||||
|
||||
// Use gmtime so we can also display in local time
|
||||
|
||||
struct tm * TM;
|
||||
|
||||
if (MTX & 0x80)
|
||||
TM = localtime(&Stamp);
|
||||
else
|
||||
TM = gmtime(&Stamp);
|
||||
|
||||
// MINI mode is for Node Listen (remote monitor) Mode. Keep info to minimum
|
||||
/*
|
||||
KO6IZ*>K7TMG-1:
|
||||
|
@ -190,7 +198,7 @@ KC6OAR*>ID:
|
|||
|
||||
if (Port & 0x80)
|
||||
{
|
||||
if (MTX == 0)
|
||||
if ((MTX & 1) == 0)
|
||||
return 0; // TRANSMITTED FRAME - SEE IF MTX ON
|
||||
|
||||
TR = 'T';
|
||||
|
@ -214,17 +222,9 @@ KC6OAR*>ID:
|
|||
|
||||
// Need Timestamp and T/R
|
||||
|
||||
Stamp = Stamp % 86400; // Secs
|
||||
HH = (int)(Stamp / 3600);
|
||||
|
||||
Stamp -= HH * 3600;
|
||||
MM = (int)(Stamp / 60);
|
||||
|
||||
SS = (int)(Stamp - MM * 60);
|
||||
|
||||
// Add Port: unless Mail Mon (port 64)
|
||||
|
||||
Output += sprintf((char *)Output, "%02d:%02d:%02d%c ", HH, MM, SS, TR);
|
||||
Output += sprintf((char *)Output, "%02d:%02d:%02d%c ", TM->tm_hour, TM->tm_min, TM->tm_sec, TR);
|
||||
|
||||
strcpy(Output, &msg->DEST[1]);
|
||||
Output += strlen(Output);
|
||||
|
@ -286,18 +286,10 @@ KC6OAR*>ID:
|
|||
}
|
||||
|
||||
|
||||
Stamp = Stamp % 86400; // Secs
|
||||
HH = (int)(Stamp / 3600);
|
||||
|
||||
Stamp -= HH * 3600;
|
||||
MM = (int)(Stamp / 60);
|
||||
|
||||
SS = (int)(Stamp - MM * 60);
|
||||
|
||||
// Add Port: if MINI mode and monitoring more than one port
|
||||
|
||||
if (MINI == 0)
|
||||
Output += sprintf((char *)Output, "%02d:%02d:%02d%c ", HH, MM, SS, TR);
|
||||
Output += sprintf((char *)Output, "%02d:%02d:%02d%c ", TM->tm_hour, TM->tm_min, TM->tm_sec, TR);
|
||||
else
|
||||
if (CountBits64(Mask) > 1)
|
||||
Output += sprintf((char *)Output, "%d:", Port);
|
||||
|
|
Binary file not shown.
120
QtTermTCP.ini
120
QtTermTCP.ini
|
@ -1,120 +0,0 @@
|
|||
[General]
|
||||
HostParams0=|0||||
|
||||
HostParams1=|0||||
|
||||
HostParams2=|0||||
|
||||
HostParams3=|0||||
|
||||
HostParams4=|0||||
|
||||
HostParams5=|0||||
|
||||
HostParams6=|0||||
|
||||
HostParams7=|0||||
|
||||
HostParams8=|0||||
|
||||
HostParams9=|0||||
|
||||
HostParams10=|0||||
|
||||
HostParams11=|0||||
|
||||
HostParams12=|0||||
|
||||
HostParams13=|0||||
|
||||
HostParams14=|0||||
|
||||
HostParams15=|0||||
|
||||
Split=50
|
||||
ChatMode=1
|
||||
AutoTeletext=0
|
||||
Bells=1
|
||||
StripLF=1
|
||||
AlertBeep=1
|
||||
ConnectBeep=1
|
||||
AlertInterval=300
|
||||
CurrentHost=0 0 0 0 0 0 0 0 0 0
|
||||
YAPPPath=
|
||||
MaxRXSize=100000
|
||||
listenPort=8015
|
||||
listenEnable=0
|
||||
listenCText=
|
||||
convUTF8=0
|
||||
PTT=None
|
||||
PTTBAUD=19200
|
||||
PTTMode=19200
|
||||
CATHex=1
|
||||
PTTOffString=
|
||||
PTTOnString=
|
||||
pttGPIOPin=17
|
||||
pttGPIOPinR=17
|
||||
CM108Addr=0xD8C:0x08
|
||||
HamLibPort=4532
|
||||
HamLibHost=127.0.0.1
|
||||
FLRigPort=12345
|
||||
FLRigHost=127.0.0.1
|
||||
AGWEnable=0
|
||||
AGWMonEnable=0
|
||||
AGWTermCall=
|
||||
AGWBeaconDest=
|
||||
AGWBeaconPath=
|
||||
AGWBeaconInterval=0
|
||||
AGWBeaconPorts=
|
||||
AGWBeaconText=
|
||||
AGWHost=127.0.0.1
|
||||
AGWPort=8000
|
||||
AGWPaclen=80
|
||||
AGWToCalls=
|
||||
KISSEnable=0
|
||||
MYCALL=
|
||||
KISSHost=127.0.0.1
|
||||
KISSMode=0
|
||||
KISSPort=8100
|
||||
KISSSerialPort=None
|
||||
KISSBAUD=19200
|
||||
VARAEnable=0
|
||||
VARATermCall=
|
||||
VARAHost=127.0.0.1
|
||||
VARAPort=8300
|
||||
VARAInit=
|
||||
VARAPath=C:\\VARA\\VARA.exe
|
||||
VARAHostHF=127.0.0.1
|
||||
VARAPortHF=8300
|
||||
VARAPathHF=C:\\VARA\\VARA.exe
|
||||
VARAHostFM=127.0.0.1
|
||||
VARAPortFM=8300
|
||||
VARAPathFM=C:\\VARA\\VARAFM.exe
|
||||
VARAHostSAT=127.0.0.1
|
||||
VARAPortSAT=8300
|
||||
VARAPathSAT=C:\\VARA\\VARASAT.exe
|
||||
VARA500=0
|
||||
VARA2300=1
|
||||
VARA2750=0
|
||||
VARAHF=1
|
||||
VARAFM=0
|
||||
VARASAT=0
|
||||
TabType=1 1 1 1 1 1 1 2 2 0
|
||||
AutoConnect=0 0 0 0 0 0 0 0 0 0
|
||||
monBackground=@Variant(\0\0\0\x43\x1\xff\xff\xff\xff\xff\xff\xff\xff\0\0)
|
||||
monRxText=@Variant(\0\0\0\x43\x1\xff\xff\0\0\0\0\xff\xff\0\0)
|
||||
monTxText=@Variant(\0\0\0\x43\x1\xff\xff\xff\xff\0\0\0\0\0\0)
|
||||
monOtherText=@Variant(\0\0\0\x43\x1\xff\xff\0\0\0\0\0\0\0\0)
|
||||
termBackground=@Variant(\0\0\0\x43\x1\xff\xff\xff\xff\xff\xff\xff\xff\0\0)
|
||||
outputText=@Variant(\0\0\0\x43\x1\xff\xff\0\0\0\0\xff\xff\0\0)
|
||||
EchoText=@Variant(\0\0\0\x43\x1\xff\xff\0\0\0\0\0\0\0\0)
|
||||
WarningText=@Variant(\0\0\0\x43\x1\xff\xff\xff\xff\0\0\0\0\0\0)
|
||||
inputBackground=@Variant(\0\0\0\x43\x1\xff\xff\xff\xff\xff\xff\xff\xff\0\0)
|
||||
inputText=@Variant(\0\0\0\x43\x1\xff\xff\0\0\0\0\0\0\0\0)
|
||||
useBeep=false
|
||||
geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\x2\x39\0\0\0\xab\0\0\x5\x45\0\0\x3\x64\0\0\x2\x39\0\0\0\xab\0\0\x5\x45\0\0\x3\x64\0\0\0\0\0\0\0\0\a\x80\0\0\x2\x39\0\0\0\xab\0\0\x5\x45\0\0\x3\x64)
|
||||
windowState=@ByteArray(\0\0\0\xff\0\0\0\0\xfd\0\0\0\0\0\0\x3\r\0\0\x2\xa4\0\0\0\x4\0\0\0\x4\0\0\0\b\0\0\0\b\xfc\0\0\0\x1\0\0\0\x3\0\0\0\x1\0\0\0\x16\0m\0\x61\0i\0n\0T\0o\0o\0l\0\x62\0\x61\0r\0\0\0\0\0\xff\xff\xff\xff\0\0\0\0\0\0\0\0)
|
||||
ConnectWAV=C:/OneDrive/Dev/Source/bpq32/CommonSource/Ring.wav
|
||||
|
||||
[AX25_A]
|
||||
Retries=10
|
||||
Maxframe=4
|
||||
Paclen=128
|
||||
FrackTime=8
|
||||
IdleTime=180
|
||||
SlotTime=100
|
||||
Persist=128
|
||||
RespTime=1500
|
||||
TXFrmMode=1
|
||||
FrameCollector=6
|
||||
ExcludeCallsigns=
|
||||
ExcludeAPRSFrmType=
|
||||
KISSOptimization=0
|
||||
DynamicFrack=0
|
||||
BitRecovery=0
|
||||
IPOLL=80
|
||||
MyDigiCall=
|
22
RigControl.c
22
RigControl.c
|
@ -2230,7 +2230,7 @@ DllExport BOOL APIENTRY Rig_Init()
|
|||
TNC->ClientHeight = NeedRig * 20 + 60;
|
||||
TNC->ClientWidth = 550;
|
||||
|
||||
for (port = 0; port < 33; port++)
|
||||
for (port = 0; port < MAXBPQPORTS; port++)
|
||||
{
|
||||
if (RadioConfigMsg[port])
|
||||
{
|
||||
|
@ -2263,7 +2263,7 @@ DllExport BOOL APIENTRY Rig_Init()
|
|||
struct TNCINFO * PTCTNC;
|
||||
int n;
|
||||
|
||||
for (n = 1; n < 33; n++)
|
||||
for (n = 1; n < MAXBPQPORTS; n++)
|
||||
{
|
||||
PTCTNC = TNCInfo[n];
|
||||
|
||||
|
@ -2346,7 +2346,6 @@ DllExport BOOL APIENTRY Rig_Init()
|
|||
{
|
||||
SDRANGELRunning = 1;
|
||||
ConnecttoSDRANGEL(PORT);
|
||||
|
||||
}
|
||||
//---- G7TAJ ----
|
||||
else if (PORT->HIDDevice) // This is RAWHID, Not CM108
|
||||
|
@ -2363,6 +2362,15 @@ DllExport BOOL APIENTRY Rig_Init()
|
|||
}
|
||||
else
|
||||
PORT->hPTTDevice = PORT->hDevice; // Use same port for PTT
|
||||
|
||||
|
||||
// Looks like FT847 Needa a "Cat On" Command. If PTC port need to send it here
|
||||
|
||||
if (PORT->PTC && strcmp(PORT->Rigs[0].RigName, "FT847") == 0)
|
||||
{
|
||||
UCHAR CATON[6] = {0,0,0,0,0};
|
||||
SendPTCRadioCommand(PORT->PTC, CATON, 5);
|
||||
}
|
||||
}
|
||||
|
||||
for (p = 0; p < NumberofPorts; p++)
|
||||
|
@ -2573,7 +2581,7 @@ DllExport BOOL APIENTRY Rig_Close()
|
|||
|
||||
// And free the TNC config info
|
||||
|
||||
for (p = 1; p < 33; p++)
|
||||
for (p = 1; p < MAXBPQPORTS; p++)
|
||||
{
|
||||
TNC = TNCInfo[p];
|
||||
|
||||
|
@ -2788,7 +2796,6 @@ int OpenRigCOMMPort(struct RIGPORTINFO * PORT, VOID * Port, int Speed)
|
|||
COMClearDTR(PORT->hDevice);
|
||||
else
|
||||
COMSetDTR(PORT->hDevice);
|
||||
|
||||
if (strcmp(PORT->Rigs[0].RigName, "FT847") == 0)
|
||||
{
|
||||
// Looks like FT847 Needa a "Cat On" Command
|
||||
|
@ -2798,6 +2805,7 @@ int OpenRigCOMMPort(struct RIGPORTINFO * PORT, VOID * Port, int Speed)
|
|||
WriteCOMBlock(PORT->hDevice, CATON, 5);
|
||||
}
|
||||
|
||||
|
||||
if (PORT->PortType == NMEA)
|
||||
{
|
||||
// Looks like NMEA Needs Remote ON
|
||||
|
@ -7310,7 +7318,7 @@ VOID SetupScanInterLockGroups(struct RIGINFO *RIG)
|
|||
|
||||
// Find TNC ports in this Rig's scan group
|
||||
|
||||
for (port = 1; port < 33; port++)
|
||||
for (port = 1; port < MAXBPQPORTS; port++)
|
||||
{
|
||||
TNC = TNCInfo[port];
|
||||
|
||||
|
@ -7359,7 +7367,7 @@ VOID SetupPortRIGPointers()
|
|||
struct TNCINFO * TNC;
|
||||
int port;
|
||||
|
||||
for (port = 1; port < 33; port++)
|
||||
for (port = 1; port < MAXBPQPORTS; port++)
|
||||
{
|
||||
TNC = TNCInfo[port];
|
||||
|
||||
|
|
2
UIARQ.c
2
UIARQ.c
|
@ -634,6 +634,8 @@ static VOID SendPacket(struct TNCINFO * TNC, struct STREAMINFO * STREAM, UCHAR *
|
|||
Block.PID = 0xF0;
|
||||
|
||||
ConvToAX25(STREAM->RemoteCall, Block.DEST);
|
||||
Block.DEST[6] |= 0x80; // set Command Bit
|
||||
|
||||
memcpy(Block.ORIGIN, MYCALL, 7);
|
||||
|
||||
Block.L2DATA[0] = STREAM->ARQInfo->FarStream;
|
||||
|
|
159
UZ7HODrv.c
159
UZ7HODrv.c
|
@ -86,6 +86,9 @@ static char ClassName[]="ARDOPSTATUS";
|
|||
static char WindowTitle[] = "UZ7HO";
|
||||
static int RigControlRow = 165;
|
||||
|
||||
char FX25Modes[8][8] = {"None", "RxOnly", "RX+TX"};
|
||||
char IL2PModes[8][10] = {"None", "RxOnly", "RX+TX", "il2pOnly"};
|
||||
|
||||
|
||||
//LOGFONT LFTTYFONT ;
|
||||
|
||||
|
@ -378,7 +381,7 @@ int UZ7HOSetFreq(int port, struct TNCINFO * TNC, struct AGWINFO * AGW, PDATAMESS
|
|||
return 1;
|
||||
}
|
||||
|
||||
if (TNCInfo[MasterPort[port]]->AGWInfo->isQTSM == 3)
|
||||
if (TNCInfo[MasterPort[port]]->AGWInfo->isQTSM >= 3)
|
||||
{
|
||||
// QtSM so can send Set Freq Command
|
||||
|
||||
|
@ -437,7 +440,7 @@ int UZ7HOSetModem(int port, struct TNCINFO * TNC, struct AGWINFO * AGW, PDATAMES
|
|||
|
||||
return 1;
|
||||
}
|
||||
else if (TNCInfo[MasterPort[port]]->AGWInfo->isQTSM == 3)
|
||||
else if (TNCInfo[MasterPort[port]]->AGWInfo->isQTSM >= 3)
|
||||
{
|
||||
// Can send modem name to QTSM
|
||||
|
||||
|
@ -452,6 +455,8 @@ int UZ7HOSetModem(int port, struct TNCINFO * TNC, struct AGWINFO * AGW, PDATAMES
|
|||
|
||||
strcpy(&Buffer[4], &buff->L2DATA[6]);
|
||||
|
||||
Buffer[27] = 1; // Modem can set modem flags
|
||||
|
||||
AGW->TXHeader.Port = UZ7HOChannel[port];
|
||||
AGW->TXHeader.DataKind = 'g';
|
||||
memset(AGW->TXHeader.callfrom, 0, 10);
|
||||
|
@ -496,6 +501,119 @@ int UZ7HOSetModem(int port, struct TNCINFO * TNC, struct AGWINFO * AGW, PDATAMES
|
|||
return 1;
|
||||
}
|
||||
|
||||
int UZ7HOSetFlags(int port, struct TNCINFO * TNC, struct AGWINFO * AGW, PDATAMESSAGE buff, PMSGWITHLEN buffptr)
|
||||
{
|
||||
int txlen = GetLengthfromBuffer(buff) - (MSGHDDRLEN + 1);
|
||||
char Buffer[32] = "";
|
||||
int MsgLen = 32;
|
||||
char * ptr, * context;
|
||||
int i;
|
||||
|
||||
if (TNCInfo[MasterPort[port]]->AGWInfo->isQTSM != 7)
|
||||
{
|
||||
buffptr->Len = sprintf((UCHAR *)&buffptr->Data[0], "UZ7HO} Sorry Setting UZ7HO flags not supported on this modem\r");
|
||||
return 1;
|
||||
}
|
||||
|
||||
// May be read or set flags
|
||||
|
||||
if (txlen == 6)
|
||||
{
|
||||
// Read Flags
|
||||
|
||||
buffptr->Len = sprintf((UCHAR *)&buffptr->Data[0], "UZ7HO} fx25 %s il2p %s %s\r",
|
||||
FX25Modes[TNC->AGWInfo->fx25Flags], IL2PModes[TNC->AGWInfo->il2pFlags], TNC->AGWInfo->il2pcrc?"CRC":"");
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
ptr = strtok_s(&buff->L2DATA[6], " ,\r", &context);
|
||||
|
||||
while (ptr && ptr[0])
|
||||
{
|
||||
if (_stricmp(ptr, "fx25") == 0)
|
||||
{
|
||||
ptr = strtok_s(NULL, " ,\r", &context);
|
||||
i = 4;
|
||||
|
||||
if (ptr && ptr[0])
|
||||
{
|
||||
for (i = 0; i < 4; i++)
|
||||
{
|
||||
if (_stricmp(FX25Modes[i], ptr) == 0)
|
||||
{
|
||||
TNC->AGWInfo->fx25Flags = i;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (i == 4)
|
||||
{
|
||||
buffptr->Len = sprintf((UCHAR *)&buffptr->Data[0], "UZ7HO} Failed - fx25 flags invalid\r");
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
else if (_stricmp(ptr, "il2p") == 0)
|
||||
{
|
||||
ptr = strtok_s(NULL, " ,\r", &context);
|
||||
i = 4;
|
||||
|
||||
if (ptr && ptr[0])
|
||||
{
|
||||
for (i = 0; i < 4; i++)
|
||||
{
|
||||
if (_stricmp(IL2PModes[i], ptr) == 0)
|
||||
{
|
||||
TNC->AGWInfo->il2pFlags = i;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (i == 4)
|
||||
{
|
||||
buffptr->Len = sprintf((UCHAR *)&buffptr->Data[0], "UZ7HO} Failed - il2p flags invalid\r");
|
||||
return 1;
|
||||
|
||||
}
|
||||
}
|
||||
else if (_stricmp(ptr, "crc") == 0)
|
||||
TNC->AGWInfo->il2pcrc = 1;
|
||||
else if (_stricmp(ptr, "nocrc") == 0)
|
||||
TNC->AGWInfo->il2pcrc = 0;
|
||||
else
|
||||
{
|
||||
buffptr->Len = sprintf((UCHAR *)&buffptr->Data[0], "UZ7HO} Failed - invalid flag %s\r", ptr);
|
||||
return 1;
|
||||
}
|
||||
|
||||
ptr = strtok_s(NULL, " ,\r", &context);
|
||||
}
|
||||
|
||||
|
||||
Buffer[27] = 2; // Set Flags
|
||||
|
||||
Buffer[28] = TNC->AGWInfo->fx25Flags;
|
||||
Buffer[29] = TNC->AGWInfo->il2pFlags;
|
||||
Buffer[30] = TNC->AGWInfo->il2pcrc;
|
||||
|
||||
AGW->TXHeader.Port = UZ7HOChannel[port];
|
||||
AGW->TXHeader.DataKind = 'g';
|
||||
memset(AGW->TXHeader.callfrom, 0, 10);
|
||||
memset(AGW->TXHeader.callto, 0, 10);
|
||||
#ifdef __BIG_ENDIAN__
|
||||
AGW->TXHeader.DataLength = reverse(MsgLen);
|
||||
#else
|
||||
AGW->TXHeader.DataLength = MsgLen;
|
||||
#endif
|
||||
send(TNCInfo[MasterPort[port]]->TCPSock, (char *)&AGW->TXHeader, AGWHDDRLEN, 0);
|
||||
send(TNCInfo[MasterPort[port]]->TCPSock, Buffer, MsgLen, 0);
|
||||
|
||||
buffptr->Len = sprintf((UCHAR *)&buffptr->Data[0], "UZ7HO} Set Modem Flags command sent Ok\r");
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
||||
static size_t ExtProc(int fn, int port, PDATAMESSAGE buff)
|
||||
{
|
||||
|
@ -977,6 +1095,18 @@ static size_t ExtProc(int fn, int port, PDATAMESSAGE buff)
|
|||
}
|
||||
return 1;
|
||||
}
|
||||
if (_memicmp(&buff->L2DATA[0], "FLAGS", 5) == 0)
|
||||
{
|
||||
PMSGWITHLEN buffptr = (PMSGWITHLEN)GetBuff();
|
||||
if (buffptr)
|
||||
{
|
||||
UZ7HOSetFlags(port, TNC, AGW, buff, buffptr);
|
||||
C_Q_ADD(&STREAM->PACTORtoBPQ_Q, buffptr);
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
||||
// See if a Connect Command.
|
||||
|
||||
if (toupper(buff->L2DATA[0]) == 'C' && buff->L2DATA[1] == ' ' && txlen > 2) // Connect
|
||||
|
@ -1311,7 +1441,7 @@ void * UZ7HOExtInit(EXTPORTDATA * PortEntry)
|
|||
|
||||
#ifndef LINBPQ
|
||||
|
||||
CreatePactorWindow(TNC, ClassName, WindowTitle, RigControlRow, PacWndProc, 500, 450, ForcedClose);
|
||||
CreatePactorWindow(TNC, ClassName, WindowTitle, RigControlRow, PacWndProc, 520, 450, ForcedClose);
|
||||
|
||||
CreateWindowEx(0, "STATIC", "Comms State", WS_CHILD | WS_VISIBLE, 10,6,120,20, TNC->hDlg, NULL, hInstance, NULL);
|
||||
TNC->xIDC_COMMSSTATE = CreateWindowEx(0, "STATIC", "", WS_CHILD | WS_VISIBLE, 120,6,386,20, TNC->hDlg, NULL, hInstance, NULL);
|
||||
|
@ -1327,7 +1457,7 @@ void * UZ7HOExtInit(EXTPORTDATA * PortEntry)
|
|||
0,170,250,300, TNC->hDlg, NULL, hInstance, NULL);
|
||||
|
||||
TNC->ClientHeight = 450;
|
||||
TNC->ClientWidth = 500;
|
||||
TNC->ClientWidth = 520;
|
||||
|
||||
TNC->hMenu = CreatePopupMenu();
|
||||
|
||||
|
@ -2615,7 +2745,7 @@ GotStream:
|
|||
if (RXHeader->DataLength == 12)
|
||||
{
|
||||
// First reply - request Modem Freq and Name
|
||||
for (p = This; p < 33; p++)
|
||||
for (p = This; p < MAXBPQPORTS; p++)
|
||||
{
|
||||
if (MasterPort[p] == This)
|
||||
{
|
||||
|
@ -2627,6 +2757,7 @@ GotStream:
|
|||
int MsgLen = 32;
|
||||
SOCKET sock = TNCInfo[MasterPort[This]]->TCPSock;
|
||||
|
||||
Buffer[27] = 1; // Modem can set modem flags
|
||||
|
||||
TNC->AGWInfo->isQTSM |= 2;
|
||||
|
||||
|
@ -2647,7 +2778,7 @@ GotStream:
|
|||
return;
|
||||
}
|
||||
|
||||
if (RXHeader->DataLength == 44)
|
||||
if (RXHeader->DataLength == 44 || RXHeader->DataLength == 48)
|
||||
{
|
||||
// Modem Freq and Type Report from QtSM
|
||||
|
||||
|
@ -2662,7 +2793,21 @@ GotStream:
|
|||
memcpy(&TNC->AGWInfo->ModemName, &Message[16], 20);
|
||||
memcpy(&TNC->AGWInfo->Version, &Message[38], 4);
|
||||
|
||||
sprintf(TNC->WEB_MODE, "%s / %d Hz", TNC->AGWInfo->ModemName, TNC->AGWInfo->CenterFreq);
|
||||
if (RXHeader->DataLength == 48)
|
||||
{
|
||||
// includes modem flags
|
||||
|
||||
TNC->AGWInfo->isQTSM |= 4; // can send flags
|
||||
TNC->AGWInfo->fx25Flags = (Message[45] & 3);
|
||||
TNC->AGWInfo->il2pFlags = (Message[46] & 3);
|
||||
TNC->AGWInfo->il2pcrc = Message[47];
|
||||
|
||||
sprintf(TNC->WEB_MODE, "%s/%d Hz FX %s IL2P %s %s", TNC->AGWInfo->ModemName, TNC->AGWInfo->CenterFreq,
|
||||
FX25Modes[TNC->AGWInfo->fx25Flags], IL2PModes[TNC->AGWInfo->il2pFlags], TNC->AGWInfo->il2pcrc?"CRC":"");
|
||||
}
|
||||
else
|
||||
sprintf(TNC->WEB_MODE, "%s/%d Hz ", TNC->AGWInfo->ModemName, TNC->AGWInfo->CenterFreq);
|
||||
|
||||
SetWindowText(TNC->xIDC_MODE, TNC->WEB_MODE);
|
||||
}
|
||||
}
|
||||
|
|
5
VARA.c
5
VARA.c
|
@ -2413,6 +2413,7 @@ VOID VARAProcessReceivedData(struct TNCINFO * TNC)
|
|||
Msg->PID = 0xcf;
|
||||
Msg->PORT = TNC->Port | 0x80;
|
||||
Msg->CTL = 3;
|
||||
Msg->DEST[6] |= 0x80; // set Command Bit
|
||||
Msg->ORIGIN[6] |= 1; // set end of address
|
||||
time(&Msg->Timestamp);
|
||||
BPQTRACE(Msg, FALSE);
|
||||
|
@ -2445,6 +2446,8 @@ VOID VARAProcessReceivedData(struct TNCINFO * TNC)
|
|||
ConvToAX25(TNC->NRNeighbour, Buffer->DEST);
|
||||
memcpy(Buffer->ORIGIN, NETROMCALL, 7);
|
||||
Buffer->ORIGIN[6] |= 1; // set end of address
|
||||
Buffer->DEST[6] |= 0x80; // set Command Bit
|
||||
|
||||
time(&Buffer->Timestamp);
|
||||
BPQTRACE(Buffer, FALSE); // TRACE
|
||||
NETROMMSG(TNC->DummyLink, L3MSG);
|
||||
|
@ -2886,6 +2889,8 @@ void SendVARANetromMsg(struct TNCINFO * TNC, L3MESSAGEBUFFER * MSG)
|
|||
ConvToAX25(TNC->NRNeighbour, Buffer->DEST);
|
||||
memcpy(Buffer->ORIGIN, NETROMCALL, 7);
|
||||
Buffer->ORIGIN[6] |= 1; // set end of address
|
||||
Buffer->DEST[6] |= 0x80; // set Command Bit
|
||||
|
||||
|
||||
time(&Buffer->Timestamp);
|
||||
|
||||
|
|
|
@ -10,8 +10,8 @@
|
|||
|
||||
#endif
|
||||
|
||||
#define KVers 6,0,24,15
|
||||
#define KVerstring "6.0.24.15\0"
|
||||
#define KVers 6,0,24,16
|
||||
#define KVerstring "6.0.24.16\0"
|
||||
|
||||
#ifdef CKernel
|
||||
|
||||
|
|
24
WebMail.c
24
WebMail.c
|
@ -1193,6 +1193,10 @@ int ViewWebMailMessage(struct HTTPConnectionInfo * Session, char * Reply, int Nu
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (DisplayHTML && stristr(Message, "</html>"))
|
||||
DisplayStyle = "div"; // Use div so HTML and XML are interpreted
|
||||
|
||||
return sprintf(Reply, WebMailMsgTemplate, BBSName, User->Call, Msg->number, Msg->number, Key, Msg->number, Key, DownLoad, Key, Key, Key, DisplayStyle, Message, DisplayStyle);
|
||||
}
|
||||
|
||||
|
@ -1232,9 +1236,7 @@ int ViewWebMailMessage(struct HTTPConnectionInfo * Session, char * Reply, int Nu
|
|||
size_t origlen = msgLen + 1;
|
||||
|
||||
UCHAR * BufferB = malloc(2 * origlen);
|
||||
|
||||
#ifdef WIN32
|
||||
|
||||
WCHAR * BufferW = malloc(2 * origlen);
|
||||
int wlen;
|
||||
int len = (int)origlen;
|
||||
|
@ -1246,10 +1248,10 @@ int ViewWebMailMessage(struct HTTPConnectionInfo * Session, char * Reply, int Nu
|
|||
Save = MsgBytes = BufferB;
|
||||
free(BufferW);
|
||||
msgLen = len - 1; // exclude NULL
|
||||
|
||||
#else
|
||||
size_t left = 2 * msgLen;
|
||||
size_t len = msgLen;
|
||||
size_t outbuflen = left;
|
||||
size_t len = msgLen + 1; // include null
|
||||
int ret;
|
||||
UCHAR * BufferBP = BufferB;
|
||||
char * orig = MsgBytes;
|
||||
|
@ -1270,15 +1272,18 @@ int ViewWebMailMessage(struct HTTPConnectionInfo * Session, char * Reply, int Nu
|
|||
iconv(icu, NULL, NULL, NULL, NULL); // Reset State Machine
|
||||
ret = iconv(icu, &MsgBytes, &len, (char ** __restrict__)&BufferBP, &left);
|
||||
}
|
||||
|
||||
// left is next location to write, so length written is outbuflen - left
|
||||
// add a null in case iconv didn't complete comversion
|
||||
|
||||
BufferB[outbuflen - left] = 0;
|
||||
|
||||
free(Save);
|
||||
Save = MsgBytes = BufferB;
|
||||
msgLen = strlen(MsgBytes);
|
||||
|
||||
#endif
|
||||
|
||||
}
|
||||
|
||||
|
||||
// ptr += sprintf(ptr, "%s", MsgBytes);
|
||||
|
||||
memcpy(ptr, MsgBytes, msgLen);
|
||||
|
@ -1307,13 +1312,10 @@ int ViewWebMailMessage(struct HTTPConnectionInfo * Session, char * Reply, int Nu
|
|||
ptr += sprintf(ptr, "File for Message %d not found\r", Number);
|
||||
}
|
||||
|
||||
if (DisplayHTML && stristr(Message, "html>"))
|
||||
if (DisplayHTML && stristr(Message, "</html>"))
|
||||
DisplayStyle = "div"; // Use div so HTML and XML are interpreted
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
return sprintf(Reply, WebMailMsgTemplate, BBSName, User->Call, Msg->number, Msg->number, Key, Msg->number, Key, DownLoad, Key, Key, Key, DisplayStyle, Message, DisplayStyle);
|
||||
}
|
||||
|
||||
|
|
|
@ -1,65 +0,0 @@
|
|||
<?xml version="1.0" encoding="Windows-1252"?>
|
||||
<VisualStudioUserFile
|
||||
ProjectType="Visual C++"
|
||||
Version="8.00"
|
||||
ShowAllFiles="false"
|
||||
>
|
||||
<Configurations>
|
||||
<Configuration
|
||||
Name="Debug|Win32"
|
||||
>
|
||||
<DebugSettings
|
||||
Command="$(TargetPath)"
|
||||
WorkingDirectory=""
|
||||
CommandArguments="COM53 127.0.0.1:4532"
|
||||
Attach="false"
|
||||
DebuggerType="3"
|
||||
Remote="1"
|
||||
RemoteMachine="DESKTOP-TGEL8RC"
|
||||
RemoteCommand=""
|
||||
HttpUrl=""
|
||||
PDBPath=""
|
||||
SQLDebugging=""
|
||||
Environment=""
|
||||
EnvironmentMerge="true"
|
||||
DebuggerFlavor="0"
|
||||
MPIRunCommand=""
|
||||
MPIRunArguments=""
|
||||
MPIRunWorkingDirectory=""
|
||||
ApplicationCommand=""
|
||||
ApplicationArguments=""
|
||||
ShimCommand=""
|
||||
MPIAcceptMode=""
|
||||
MPIAcceptFilter=""
|
||||
/>
|
||||
</Configuration>
|
||||
<Configuration
|
||||
Name="Release|Win32"
|
||||
>
|
||||
<DebugSettings
|
||||
Command="$(TargetPath)"
|
||||
WorkingDirectory=""
|
||||
CommandArguments="COM53 127.0.0.1:4532"
|
||||
Attach="false"
|
||||
DebuggerType="3"
|
||||
Remote="1"
|
||||
RemoteMachine="DESKTOP-TGEL8RC"
|
||||
RemoteCommand=""
|
||||
HttpUrl=""
|
||||
PDBPath=""
|
||||
SQLDebugging=""
|
||||
Environment=""
|
||||
EnvironmentMerge="true"
|
||||
DebuggerFlavor="0"
|
||||
MPIRunCommand=""
|
||||
MPIRunArguments=""
|
||||
MPIRunWorkingDirectory=""
|
||||
ApplicationCommand=""
|
||||
ApplicationArguments=""
|
||||
ShimCommand=""
|
||||
MPIAcceptMode=""
|
||||
MPIAcceptFilter=""
|
||||
/>
|
||||
</Configuration>
|
||||
</Configurations>
|
||||
</VisualStudioUserFile>
|
|
@ -1,65 +0,0 @@
|
|||
<?xml version="1.0" encoding="Windows-1252"?>
|
||||
<VisualStudioUserFile
|
||||
ProjectType="Visual C++"
|
||||
Version="8.00"
|
||||
ShowAllFiles="false"
|
||||
>
|
||||
<Configurations>
|
||||
<Configuration
|
||||
Name="Debug|Win32"
|
||||
>
|
||||
<DebugSettings
|
||||
Command="$(TargetPath)"
|
||||
WorkingDirectory=""
|
||||
CommandArguments=""
|
||||
Attach="false"
|
||||
DebuggerType="3"
|
||||
Remote="1"
|
||||
RemoteMachine="DESKTOP-TGEL8RC"
|
||||
RemoteCommand=""
|
||||
HttpUrl=""
|
||||
PDBPath=""
|
||||
SQLDebugging=""
|
||||
Environment=""
|
||||
EnvironmentMerge="true"
|
||||
DebuggerFlavor=""
|
||||
MPIRunCommand=""
|
||||
MPIRunArguments=""
|
||||
MPIRunWorkingDirectory=""
|
||||
ApplicationCommand=""
|
||||
ApplicationArguments=""
|
||||
ShimCommand=""
|
||||
MPIAcceptMode=""
|
||||
MPIAcceptFilter=""
|
||||
/>
|
||||
</Configuration>
|
||||
<Configuration
|
||||
Name="Release|Win32"
|
||||
>
|
||||
<DebugSettings
|
||||
Command="$(TargetPath)"
|
||||
WorkingDirectory=""
|
||||
CommandArguments=""
|
||||
Attach="false"
|
||||
DebuggerType="3"
|
||||
Remote="1"
|
||||
RemoteMachine="DESKTOP-TGEL8RC"
|
||||
RemoteCommand=""
|
||||
HttpUrl=""
|
||||
PDBPath=""
|
||||
SQLDebugging=""
|
||||
Environment=""
|
||||
EnvironmentMerge="true"
|
||||
DebuggerFlavor=""
|
||||
MPIRunCommand=""
|
||||
MPIRunArguments=""
|
||||
MPIRunWorkingDirectory=""
|
||||
ApplicationCommand=""
|
||||
ApplicationArguments=""
|
||||
ShimCommand=""
|
||||
MPIAcceptMode=""
|
||||
MPIAcceptFilter=""
|
||||
/>
|
||||
</Configuration>
|
||||
</Configurations>
|
||||
</VisualStudioUserFile>
|
|
@ -1,65 +0,0 @@
|
|||
<?xml version="1.0" encoding="Windows-1252"?>
|
||||
<VisualStudioUserFile
|
||||
ProjectType="Visual C++"
|
||||
Version="8.00"
|
||||
ShowAllFiles="false"
|
||||
>
|
||||
<Configurations>
|
||||
<Configuration
|
||||
Name="Debug|Win32"
|
||||
>
|
||||
<DebugSettings
|
||||
Command="$(TargetPath)"
|
||||
WorkingDirectory=""
|
||||
CommandArguments=""
|
||||
Attach="false"
|
||||
DebuggerType="3"
|
||||
Remote="1"
|
||||
RemoteMachine="SKIGACER"
|
||||
RemoteCommand=""
|
||||
HttpUrl=""
|
||||
PDBPath=""
|
||||
SQLDebugging=""
|
||||
Environment=""
|
||||
EnvironmentMerge="true"
|
||||
DebuggerFlavor=""
|
||||
MPIRunCommand=""
|
||||
MPIRunArguments=""
|
||||
MPIRunWorkingDirectory=""
|
||||
ApplicationCommand=""
|
||||
ApplicationArguments=""
|
||||
ShimCommand=""
|
||||
MPIAcceptMode=""
|
||||
MPIAcceptFilter=""
|
||||
/>
|
||||
</Configuration>
|
||||
<Configuration
|
||||
Name="Release|Win32"
|
||||
>
|
||||
<DebugSettings
|
||||
Command="$(TargetPath)"
|
||||
WorkingDirectory=""
|
||||
CommandArguments=""
|
||||
Attach="false"
|
||||
DebuggerType="3"
|
||||
Remote="1"
|
||||
RemoteMachine="SKIGACER"
|
||||
RemoteCommand=""
|
||||
HttpUrl=""
|
||||
PDBPath=""
|
||||
SQLDebugging=""
|
||||
Environment=""
|
||||
EnvironmentMerge="true"
|
||||
DebuggerFlavor=""
|
||||
MPIRunCommand=""
|
||||
MPIRunArguments=""
|
||||
MPIRunWorkingDirectory=""
|
||||
ApplicationCommand=""
|
||||
ApplicationArguments=""
|
||||
ShimCommand=""
|
||||
MPIAcceptMode=""
|
||||
MPIAcceptFilter=""
|
||||
/>
|
||||
</Configuration>
|
||||
</Configurations>
|
||||
</VisualStudioUserFile>
|
|
@ -1,36 +0,0 @@
|
|||
// ADIF Logging Bits
|
||||
|
||||
typedef struct ADIF
|
||||
{
|
||||
char Call[16];
|
||||
time_t StartTime;
|
||||
int Mode;
|
||||
char LOC[7];
|
||||
char Band[8]; // ?Derive from freq?
|
||||
int Freq;
|
||||
|
||||
// Extra fields for Trimode comment fields
|
||||
|
||||
char CMSCall[16];
|
||||
char ServerSID[80];
|
||||
char UserSID[80];
|
||||
char ReportMode[16];
|
||||
char Termination[8]; // Last "F" message from CMS
|
||||
int Sent;
|
||||
int Received;
|
||||
int BytesSent;
|
||||
int BytesReceived;
|
||||
|
||||
char Dirn; // Direction of current transfer (In/Out)
|
||||
|
||||
int FBBIndex; // For saving proposals
|
||||
int FBBLen[5]; // Proposed messages
|
||||
BOOL GotFC; // Flag for acking messages on first FC
|
||||
char PartMessage[256]; // Some modes frame size too small for complete lines
|
||||
|
||||
} ADIF;
|
||||
|
||||
BOOL UpdateADIFRecord(ADIF * ADIF, char * Msg, char Dirn);
|
||||
BOOL WriteADIFRecord(ADIF * ADIF);
|
||||
|
||||
|
214
getopt.h
214
getopt.h
|
@ -1,108 +1,108 @@
|
|||
#ifndef __GETOPT_H__
|
||||
/*
|
||||
* getopt.h
|
||||
*
|
||||
* $Id: getopt.h,v 1.4 2009/01/04 17:35:36 keithmarshall Exp $
|
||||
*
|
||||
* Defines constants and function prototypes required to implement
|
||||
* the `getopt', `getopt_long' and `getopt_long_only' APIs.
|
||||
*
|
||||
* This file is part of the MinGW32 package set.
|
||||
*
|
||||
* Contributed by Keith Marshall <keithmarshall@users.sourceforge.net>
|
||||
*
|
||||
*
|
||||
* THIS SOFTWARE IS NOT COPYRIGHTED
|
||||
*
|
||||
* This source code is offered for use in the public domain. You may
|
||||
* use, modify or distribute it freely.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful but
|
||||
* WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY
|
||||
* DISCLAIMED. This includes but is not limited to warranties of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||
*
|
||||
* $Revision: 1.4 $
|
||||
* $Author: keithmarshall $
|
||||
* $Date: 2009/01/04 17:35:36 $
|
||||
*
|
||||
*/
|
||||
#define __GETOPT_H__
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
extern int optind; /* index of first non-option in argv */
|
||||
extern int optopt; /* single option character, as parsed */
|
||||
extern int opterr; /* flag to enable built-in diagnostics... */
|
||||
/* (user may set to zero, to suppress) */
|
||||
|
||||
extern char *optarg; /* pointer to argument of current option */
|
||||
|
||||
extern int getopt( int, char * const [], const char * );
|
||||
|
||||
#ifdef _BSD_SOURCE
|
||||
/*
|
||||
* BSD adds the non-standard `optreset' feature, for reinitialisation
|
||||
* of `getopt' parsing. We support this feature, for applications which
|
||||
* proclaim their BSD heritage, before including this header; however,
|
||||
* to maintain portability, developers are advised to avoid it.
|
||||
*/
|
||||
# define optreset __mingw_optreset
|
||||
|
||||
extern int optreset;
|
||||
#endif
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
/*
|
||||
* POSIX requires the `getopt' API to be specified in `unistd.h';
|
||||
* thus, `unistd.h' includes this header. However, we do not want
|
||||
* to expose the `getopt_long' or `getopt_long_only' APIs, when
|
||||
* included in this manner. Thus, close the standard __GETOPT_H__
|
||||
* declarations block, and open an additional __GETOPT_LONG_H__
|
||||
* specific block, only when *not* __UNISTD_H_SOURCED__, in which
|
||||
* to declare the extended API.
|
||||
*/
|
||||
#endif /* !defined(__GETOPT_H__) */
|
||||
#if !defined(__UNISTD_H_SOURCED__) && !defined(__GETOPT_LONG_H__)
|
||||
#define __GETOPT_LONG_H__
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
struct option /* specification for a long form option... */
|
||||
{
|
||||
const char *name; /* option name, without leading hyphens */
|
||||
int has_arg; /* does it take an argument? */
|
||||
int *flag; /* where to save its status, or NULL */
|
||||
int val; /* its associated status value */
|
||||
};
|
||||
|
||||
enum /* permitted values for its `has_arg' field... */
|
||||
{
|
||||
no_argument = 0, /* option never takes an argument */
|
||||
required_argument, /* option always requires an argument */
|
||||
optional_argument /* option may take an argument */
|
||||
};
|
||||
|
||||
extern int getopt_long( int, char * const [], const char *, const struct option *, int * );
|
||||
extern int getopt_long_only( int, char * const [], const char *, const struct option *, int * );
|
||||
/*
|
||||
* Previous MinGW implementation had...
|
||||
*/
|
||||
#ifndef HAVE_DECL_GETOPT
|
||||
/*
|
||||
* ...for the long form API only; keep this for compatibility.
|
||||
*/
|
||||
# define HAVE_DECL_GETOPT 1
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* !defined(__UNISTD_H_SOURCED__) && !defined(__GETOPT_LONG_H__) */
|
||||
#ifndef __GETOPT_H__
|
||||
/*
|
||||
* getopt.h
|
||||
*
|
||||
* $Id: getopt.h,v 1.4 2009/01/04 17:35:36 keithmarshall Exp $
|
||||
*
|
||||
* Defines constants and function prototypes required to implement
|
||||
* the `getopt', `getopt_long' and `getopt_long_only' APIs.
|
||||
*
|
||||
* This file is part of the MinGW32 package set.
|
||||
*
|
||||
* Contributed by Keith Marshall <keithmarshall@users.sourceforge.net>
|
||||
*
|
||||
*
|
||||
* THIS SOFTWARE IS NOT COPYRIGHTED
|
||||
*
|
||||
* This source code is offered for use in the public domain. You may
|
||||
* use, modify or distribute it freely.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful but
|
||||
* WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY
|
||||
* DISCLAIMED. This includes but is not limited to warranties of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||
*
|
||||
* $Revision: 1.4 $
|
||||
* $Author: keithmarshall $
|
||||
* $Date: 2009/01/04 17:35:36 $
|
||||
*
|
||||
*/
|
||||
#define __GETOPT_H__
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
extern int optind; /* index of first non-option in argv */
|
||||
extern int optopt; /* single option character, as parsed */
|
||||
extern int opterr; /* flag to enable built-in diagnostics... */
|
||||
/* (user may set to zero, to suppress) */
|
||||
|
||||
extern char *optarg; /* pointer to argument of current option */
|
||||
|
||||
extern int getopt( int, char * const [], const char * );
|
||||
|
||||
#ifdef _BSD_SOURCE
|
||||
/*
|
||||
* BSD adds the non-standard `optreset' feature, for reinitialisation
|
||||
* of `getopt' parsing. We support this feature, for applications which
|
||||
* proclaim their BSD heritage, before including this header; however,
|
||||
* to maintain portability, developers are advised to avoid it.
|
||||
*/
|
||||
# define optreset __mingw_optreset
|
||||
|
||||
extern int optreset;
|
||||
#endif
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
/*
|
||||
* POSIX requires the `getopt' API to be specified in `unistd.h';
|
||||
* thus, `unistd.h' includes this header. However, we do not want
|
||||
* to expose the `getopt_long' or `getopt_long_only' APIs, when
|
||||
* included in this manner. Thus, close the standard __GETOPT_H__
|
||||
* declarations block, and open an additional __GETOPT_LONG_H__
|
||||
* specific block, only when *not* __UNISTD_H_SOURCED__, in which
|
||||
* to declare the extended API.
|
||||
*/
|
||||
#endif /* !defined(__GETOPT_H__) */
|
||||
#if !defined(__UNISTD_H_SOURCED__) && !defined(__GETOPT_LONG_H__)
|
||||
#define __GETOPT_LONG_H__
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
struct option /* specification for a long form option... */
|
||||
{
|
||||
const char *name; /* option name, without leading hyphens */
|
||||
int has_arg; /* does it take an argument? */
|
||||
int *flag; /* where to save its status, or NULL */
|
||||
int val; /* its associated status value */
|
||||
};
|
||||
|
||||
enum /* permitted values for its `has_arg' field... */
|
||||
{
|
||||
no_argument = 0, /* option never takes an argument */
|
||||
required_argument, /* option always requires an argument */
|
||||
optional_argument /* option may take an argument */
|
||||
};
|
||||
|
||||
extern int getopt_long( int, char * const [], const char *, const struct option *, int * );
|
||||
extern int getopt_long_only( int, char * const [], const char *, const struct option *, int * );
|
||||
/*
|
||||
* Previous MinGW implementation had...
|
||||
*/
|
||||
#ifndef HAVE_DECL_GETOPT
|
||||
/*
|
||||
* ...for the long form API only; keep this for compatibility.
|
||||
*/
|
||||
# define HAVE_DECL_GETOPT 1
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* !defined(__UNISTD_H_SOURCED__) && !defined(__GETOPT_LONG_H__) */
|
||||
/* $RCSfile: getopt.h,v $Revision: 1.4 $: end of file */
|
Loading…
Reference in New Issue