Compare commits
167 commits
upstream/6
...
hibbian/la
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
ee15c1a996 | ||
|
|
944fdfc524 | ||
|
|
52e35f45b4 | ||
|
|
3fbe745ec9 | ||
|
|
1338e2c0a4 | ||
|
|
8dc88bc829 | ||
|
|
58ab380142 | ||
|
|
3c2c1cf9f8 | ||
|
|
367ab8fb01 | ||
|
|
e569b24f9a | ||
|
|
272c31f62b | ||
|
|
f99a060918 | ||
|
|
13c0b79af7 | ||
|
|
2e55f0a4ca | ||
|
|
acbaf26ac1 | ||
|
|
70d9b41cc1 | ||
|
|
c0425ff0e2 | ||
|
|
e4d8eadb91 | ||
|
|
ac03394a07 | ||
|
|
d0f299bc02 | ||
|
|
78f78927ab | ||
|
|
27d95452b1 | ||
|
|
e925e16114 | ||
|
|
d97d9d821b | ||
|
|
a6b3c4bdc9 | ||
|
|
3e1cbdfa4d | ||
|
|
7a5122a60f | ||
|
|
0013c3199a | ||
|
|
5d30fbc104 | ||
|
|
e21707174e | ||
|
|
26324bdc39 | ||
|
|
1cc87cf766 | ||
|
|
30b1e26a04 | ||
|
|
31bda6ce76 | ||
|
|
d2c3489aef | ||
|
|
6371d5385a | ||
|
|
b2315840b2 | ||
|
|
8d3874ec4e | ||
|
|
6a4b588a48 | ||
|
|
426f47ccb6 | ||
|
|
3ecb593511 | ||
|
|
0d3ee7fd56 | ||
|
|
96197688e7 | ||
|
|
d3b4158645 | ||
|
|
fec78cece5 | ||
|
|
bdf8a8367e | ||
|
|
f0ac0675f6 | ||
|
|
329e2f441d | ||
|
|
0b4a17004f | ||
|
|
f0b507a096 | ||
|
|
9d0d20064d | ||
|
|
ead72b2575 | ||
|
|
f1d8b647c7 | ||
|
|
bfcf049c56 | ||
|
|
488e218d34 | ||
|
|
3efea8aa10 | ||
|
|
8e9260b52d | ||
|
|
5105f0adf3 | ||
|
|
b060bf5d39 | ||
|
|
33d8e6f75a | ||
|
|
58d2baad53 | ||
|
|
1f73eb5601 | ||
|
|
a7d635fe2f | ||
|
|
eab73bee95 | ||
|
|
745a9f8e88 | ||
|
|
dd84b546a0 | ||
|
|
3a600bee23 | ||
|
|
d09a168608 | ||
|
|
757c658adc | ||
|
|
37bacc3178 | ||
|
|
7690eb8f59 | ||
|
|
a675c89dc3 | ||
|
|
7433c77604 | ||
|
|
6bd281ab30 | ||
|
|
c0637b3841 | ||
|
|
3a840054a7 | ||
|
|
8a18ca1868 | ||
|
|
49e27728c3 | ||
|
|
8e7a943558 | ||
|
|
e35489a925 | ||
|
|
c77b3e9f47 | ||
|
|
1e83f7e725 | ||
|
|
5d8d8963ef | ||
|
|
96d6e87d12 | ||
|
|
5bd018b10f | ||
|
|
4d14474d92 | ||
|
|
1b40c8c7b5 | ||
|
|
a5ce8b2319 | ||
|
|
6b795ee1f6 | ||
|
|
5767c5f6e8 | ||
|
|
61f49ee46b | ||
|
|
6e6693fde1 | ||
|
|
1a7f29f7d7 | ||
|
|
f527c60884 | ||
|
|
3de6b0150f | ||
|
|
0d48067b82 | ||
|
|
b18a579b0c | ||
|
|
ba9f74d1b8 | ||
|
|
550b4483cb | ||
|
|
383e238d61 | ||
|
|
371dac17ff | ||
|
|
24843bc9cd | ||
|
|
f17801297c | ||
|
|
f62a0288be | ||
|
|
85da9edc16 | ||
|
|
666c2aabb4 | ||
|
|
a47cc11d8a | ||
|
|
b26c87817a | ||
|
|
60585818de | ||
|
|
9dacd97014 | ||
|
|
fc0275b903 | ||
|
|
ca2a16b7fc | ||
|
|
d122a87dd1 | ||
|
|
5b3543c12a | ||
|
|
d37331205e | ||
|
|
026ad61c90 | ||
|
|
5d125856cd | ||
|
|
a7ecf779fc | ||
|
|
c26f6fe9d8 | ||
|
|
91fc60e6f0 | ||
|
|
3b36ba2a06 | ||
|
|
ec1e97d985 | ||
|
|
75eadc6bbe | ||
|
|
eaab24a3c0 | ||
|
|
4b1144ed94 | ||
|
|
37b1c8b074 | ||
|
|
0b5e0e5023 | ||
|
|
66ff00a200 | ||
|
|
566b839fd4 | ||
|
|
5f9fb109ff | ||
|
|
94179f117a | ||
|
|
831f4a75eb | ||
|
|
3f1fd46905 | ||
|
|
5b1c61bd78 | ||
|
|
ee7345ce92 | ||
|
|
733afdfcbc | ||
|
|
2dd6d1f7bf | ||
|
|
6ee8a719cf | ||
|
|
d4d0aaa8ab | ||
|
|
710cc6fde7 | ||
|
|
eec767af84 | ||
|
|
0c8b9a1da7 | ||
|
|
018d733dee | ||
|
|
851dcb6fd8 | ||
|
|
ce4f1b11b0 | ||
|
|
1fbded9d3a | ||
|
|
a4103962fc | ||
|
|
397da35dac | ||
|
|
9c15385cb6 | ||
|
|
fd1249b1e2 | ||
|
|
fda3d6ffac | ||
|
|
37a1ea33be | ||
|
|
78e830ab37 | ||
|
|
9155d3ba64 | ||
|
|
6adcb91ee5 | ||
|
|
77f96f5b63 | ||
|
|
6f53d92599 | ||
|
|
46c6058d94 | ||
|
|
3e029049d7 | ||
|
|
b6a50b9b6c | ||
|
|
fc474c29fe | ||
|
|
6546bac3f5 | ||
|
|
ee2ac63a82 | ||
|
|
95a6ab069f | ||
|
|
055c1c1891 | ||
|
|
964b72495c | ||
|
|
acb26fd980 |
69
BPQINP3.c
69
BPQINP3.c
|
|
@ -35,8 +35,6 @@ along with LinBPQ/BPQ32. If not, see http://www.gnu.org/licenses
|
|||
#include <fcntl.h>
|
||||
//#include "vmm.h"
|
||||
|
||||
uint64_t INP3timeLoadedMS = 0;
|
||||
|
||||
extern int DEBUGINP3;
|
||||
|
||||
VOID SendNegativeInfo();
|
||||
|
|
@ -64,11 +62,16 @@ static VOID SendNetFrame(struct ROUTE * Route, struct _L3MESSAGEBUFFER * Frame)
|
|||
|
||||
typedef struct _RTTMSG
|
||||
{
|
||||
UCHAR ID[7];
|
||||
UCHAR TXTIME[11];
|
||||
UCHAR SMOOTHEDRTT[11];
|
||||
UCHAR LASTRTT[11];
|
||||
UCHAR POINTER[11];
|
||||
UCHAR ID[6];
|
||||
UCHAR Space1;
|
||||
UCHAR TXTIME[10];
|
||||
UCHAR Space2;
|
||||
UCHAR SMOOTHEDRTT[10];
|
||||
UCHAR Space3;
|
||||
UCHAR LASTRTT[10];
|
||||
UCHAR Space4;
|
||||
UCHAR RTTID[10];
|
||||
UCHAR Space5;
|
||||
UCHAR ALIAS[7];
|
||||
UCHAR VERSION[12];
|
||||
UCHAR SWVERSION[9];
|
||||
|
|
@ -110,6 +113,8 @@ extern int RTTInterval; // 4 Minutes
|
|||
int RTTRetries = 2;
|
||||
int RTTTimeout = 6; // 1 Min (Horizon is 1 min)
|
||||
|
||||
uint32_t RTTID = 1;
|
||||
|
||||
VOID InitialiseRTT()
|
||||
{
|
||||
UCHAR temp[256] = "";
|
||||
|
|
@ -161,6 +166,7 @@ VOID DeleteINP3Routes(struct ROUTE * Route)
|
|||
Route->BCTimer = 0;
|
||||
Route->Status = 0;
|
||||
Route->Timeout = 0;
|
||||
Route->NeighbourSRTT = 0;
|
||||
|
||||
Dest--;
|
||||
|
||||
|
|
@ -340,8 +346,8 @@ VOID TellINP3LinkSetupFailed(struct ROUTE * Route)
|
|||
|
||||
VOID ProcessRTTReply(struct ROUTE * Route, struct _L3MESSAGEBUFFER * Buff)
|
||||
{
|
||||
int RTT;
|
||||
unsigned int OrigTime;
|
||||
uint32_t RTT;
|
||||
uint32_t OrigTime;
|
||||
|
||||
char Normcall[10];
|
||||
|
||||
|
|
@ -349,10 +355,10 @@ VOID ProcessRTTReply(struct ROUTE * Route, struct _L3MESSAGEBUFFER * Buff)
|
|||
|
||||
Route->Timeout = 0; // Got Response
|
||||
|
||||
sscanf(&Buff->L4DATA[6], "%d", &OrigTime);
|
||||
RTT = (int)((GetTickCount() - INP3timeLoadedMS) / 10 - (OrigTime)); // We work internally in mS
|
||||
sscanf(&Buff->L4DATA[6], "%u", &OrigTime);
|
||||
RTT = GetTickCountINP3() - OrigTime; // We work internally in mS
|
||||
|
||||
if (RTT > 60000)
|
||||
if (RTT > 60000 || RTT < 0)
|
||||
return; // Ignore if more than 60 secs (why ??)
|
||||
|
||||
Route->RTT = RTT;
|
||||
|
|
@ -890,8 +896,8 @@ VOID UpdateRoute(struct DEST_LIST * Dest, struct INP3_DEST_ROUTE_ENTRY * ROUTEPT
|
|||
|
||||
VOID ProcessRTTMsg(struct ROUTE * Route, struct _L3MESSAGEBUFFER * Buff, int Len, int Port)
|
||||
{
|
||||
int OtherRTT;
|
||||
int Dummy;
|
||||
uint32_t OtherRTT;
|
||||
uint32_t Dummy;
|
||||
char * ptr;
|
||||
struct _RTTMSG * RTTMsg = (struct _RTTMSG *)&Buff->L4DATA[0];
|
||||
char Normcall[10];
|
||||
|
|
@ -920,6 +926,14 @@ VOID ProcessRTTMsg(struct ROUTE * Route, struct _L3MESSAGEBUFFER * Buff, int Len
|
|||
return; // We don't want to use INP3
|
||||
}
|
||||
|
||||
// Basic Validation - look for spaces in the right place
|
||||
|
||||
if ((RTTMsg->Space1 | RTTMsg->Space2 | RTTMsg->Space3 | RTTMsg->Space4 | RTTMsg->Space5) != ' ')
|
||||
{
|
||||
Debugprintf("Corrupt INP3 RTT Message %s", &Buff->L4DATA[0]);
|
||||
}
|
||||
else
|
||||
{
|
||||
// Extract other end's SRTT
|
||||
|
||||
// Get SWVERSION to see if other end is old (Buggy) BPQ
|
||||
|
|
@ -929,9 +943,11 @@ VOID ProcessRTTMsg(struct ROUTE * Route, struct _L3MESSAGEBUFFER * Buff, int Len
|
|||
else
|
||||
Route->OldBPQ = 0;
|
||||
|
||||
sscanf(&Buff->L4DATA[6], "%d %d", &Dummy, &OtherRTT);
|
||||
sscanf(&Buff->L4DATA[6], "%u %u", &Dummy, &OtherRTT);
|
||||
|
||||
if (OtherRTT < 60000) // Don't save suspect values
|
||||
Route->NeighbourSRTT = OtherRTT;
|
||||
}
|
||||
|
||||
// Look for $M and $H (MAXRTT MAXHOPS)
|
||||
|
||||
|
|
@ -945,6 +961,8 @@ VOID ProcessRTTMsg(struct ROUTE * Route, struct _L3MESSAGEBUFFER * Buff, int Len
|
|||
if (ptr)
|
||||
Route->RemoteMAXHOPS = atoi(ptr + 2);
|
||||
|
||||
|
||||
|
||||
// Echo Back to sender
|
||||
|
||||
SendNetFrame(Route, Buff);
|
||||
|
|
@ -965,7 +983,8 @@ VOID SendRTTMsg(struct ROUTE * Route)
|
|||
char Stamp[50];
|
||||
char Normcall[10];
|
||||
unsigned char temp[256];
|
||||
uint64_t sendTime;
|
||||
uint32_t sendTime;
|
||||
int n;
|
||||
|
||||
Normcall[ConvFromAX25(Route->NEIGHBOUR_CALL, Normcall)] = 0;
|
||||
|
||||
|
|
@ -985,14 +1004,21 @@ VOID SendRTTMsg(struct ROUTE * Route)
|
|||
Msg->L4TXNO = 0;
|
||||
Msg->L4FLAGS = L4INFO;
|
||||
|
||||
// The timestamp can possibly exceed 10 digits. INP3 only works on differece between send and received, so base can be reset safely.
|
||||
// Windows GetTickCount wraps every 54 days or so. INP3 doesn't care, so long as the edge
|
||||
// case where timer wraps between sending msg and getting response is ignored
|
||||
// For platform independence use GetTickCountINP3() and map as appropriate
|
||||
|
||||
sendTime = ((uint64_t)GetTickCount() - INP3timeLoadedMS) / 10; // 10mS units
|
||||
sendTime = GetTickCountINP3(); // 10mS units
|
||||
|
||||
if (sendTime > 9999999999)
|
||||
sendTime = INP3timeLoadedMS = 0;
|
||||
sprintf(Stamp, "%10u %10d %10d %10d ", sendTime, Route->SRTT, Route->RTT, RTTID++);
|
||||
|
||||
sprintf(Stamp, "%10llu %10d %10d %10d ", sendTime, Route->SRTT, Route->RTT, 0);
|
||||
n = strlen(Stamp);
|
||||
|
||||
if (n != 44)
|
||||
{
|
||||
Debugprintf("Trying to send corrupt RTT message %s", Stamp);
|
||||
return;
|
||||
}
|
||||
|
||||
memcpy(RTTMsg.TXTIME, Stamp, 44);
|
||||
|
||||
|
|
@ -1209,6 +1235,7 @@ int SendRIPTimer()
|
|||
}
|
||||
|
||||
L2SETUPCROSSLINKEX(Route, 2); // Only try SABM twice
|
||||
Route->NeighbourSRTT = 0; // just in case!
|
||||
|
||||
Route->LastConnectAttempt = REALTIMETICKS;
|
||||
|
||||
|
|
|
|||
5
Bpq32.c
5
Bpq32.c
|
|
@ -1300,6 +1300,8 @@ along with LinBPQ/BPQ32. If not, see http://www.gnu.org/licenses
|
|||
// Fix FRMR caused by sending SREJ when no frames outstanding (8)
|
||||
// Fix some issues with NetromX connects and Route Selection when running INP3 and NODES routing (9)
|
||||
// Fix connecting to a netrom node with c p node command (10)
|
||||
// Add validation of INP3 RTT messages and various INP3 fixes (12)
|
||||
// Change NetromX connect syntax to Service@Node to fix passing commands to local applications (12)
|
||||
|
||||
|
||||
#define CKernel
|
||||
|
|
@ -1540,7 +1542,6 @@ extern char ReportDest[7];
|
|||
|
||||
extern UCHAR ConfigDirectory[260];
|
||||
|
||||
extern uint64_t INP3timeLoadedMS;
|
||||
|
||||
VOID __cdecl Debugprintf(const char * format, ...);
|
||||
VOID __cdecl Consoleprintf(const char * format, ...);
|
||||
|
|
@ -2481,8 +2482,6 @@ FirstInit()
|
|||
EnumProcessesPtr = (FARPROCX)GetProcAddress(ExtDriver,"EnumProcesses");
|
||||
}
|
||||
|
||||
INP3timeLoadedMS = GetTickCount();
|
||||
|
||||
srand(time(NULL));
|
||||
|
||||
INITIALISEPORTS();
|
||||
|
|
|
|||
160
Cmd.c
160
Cmd.c
|
|
@ -838,13 +838,14 @@ BOOL cATTACHTOBBS(TRANSPORTENTRY * Session, UINT Mask, int Paclen, int * AnySess
|
|||
return FALSE;
|
||||
}
|
||||
|
||||
void ConnecttoService(TRANSPORTENTRY * Session, char * Bufferptr, int ServiceIndex, char * Node, int Stay)
|
||||
void ConnecttoService(TRANSPORTENTRY * Session, char * Bufferptr, int Service, char * Node, int Stay)
|
||||
{
|
||||
struct DEST_LIST * Dest = DESTS;
|
||||
int n = MAXDESTS;
|
||||
int gotDest = 0;
|
||||
unsigned char axcall[7];
|
||||
int Service = -1;
|
||||
char cmdName[80];
|
||||
int i;
|
||||
|
||||
// Make Sure Node is Known
|
||||
|
||||
|
|
@ -889,9 +890,20 @@ void ConnecttoService(TRANSPORTENTRY * Session, char * Bufferptr, int ServiceInd
|
|||
|
||||
Session->STAYFLAG = Stay;
|
||||
|
||||
Service = SERVICES[ServiceIndex].ServiceNo;
|
||||
// Get command name if a named command
|
||||
|
||||
Bufferptr = Cmdprintf(Session, Bufferptr, "Connecting to Service %s on Node %s \r", SERVICES[ServiceIndex].ServiceName, Node);
|
||||
sprintf(cmdName, "%d", Service); // default to number
|
||||
|
||||
for (i = 0; i < NUMBEROFSSERVICES; i++)
|
||||
{
|
||||
if (SERVICES[i].ServiceNo == Service)
|
||||
{
|
||||
strcpy(cmdName, SERVICES[i].ServiceName);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
Bufferptr = Cmdprintf(Session, Bufferptr, "Connecting to Service %s on Node %s \r", cmdName, Node);
|
||||
|
||||
DoNetromConnect(Session, Bufferptr, Dest, 0, Service);
|
||||
|
||||
|
|
@ -930,7 +942,7 @@ int checkifService(TRANSPORTENTRY * Session, char * Bufferptr, char * CmdTail, s
|
|||
{
|
||||
if (strcmp(APPName, SERVICES[i].ServiceName) == 0)
|
||||
{
|
||||
ConnecttoService(Session, Bufferptr, i, ptr, Stay);
|
||||
ConnecttoService(Session, Bufferptr, SERVICES[i].ServiceNo, ptr, Stay);
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
|
|
@ -948,7 +960,6 @@ VOID APPLCMD(TRANSPORTENTRY * Session, char * Bufferptr, char * CmdTail, struct
|
|||
char * ptr1, *ptr2;
|
||||
int n = 12;
|
||||
BOOL Stay = FALSE;
|
||||
char * ptr, *Context;
|
||||
|
||||
// Copy Appl and Null Terminate
|
||||
|
||||
|
|
@ -967,14 +978,17 @@ VOID APPLCMD(TRANSPORTENTRY * Session, char * Bufferptr, char * CmdTail, struct
|
|||
return;
|
||||
}
|
||||
|
||||
ptr = strtok_s(CmdTail, " ", &Context);
|
||||
|
||||
// ptr is first param. Context is rest of string;
|
||||
if (CmdTail[0] == 'S')
|
||||
Stay = TRUE;
|
||||
|
||||
if (ptr)
|
||||
{
|
||||
// could be Node for NETROMX connect or S flag
|
||||
|
||||
// We now use service@node, so can't get here
|
||||
|
||||
/*
|
||||
if (ptr)
|
||||
{
|
||||
int i;
|
||||
|
||||
if (strlen(ptr) > 1)
|
||||
|
|
@ -984,6 +998,8 @@ VOID APPLCMD(TRANSPORTENTRY * Session, char * Bufferptr, char * CmdTail, struct
|
|||
|
||||
// See if APPL is one of Paula's service
|
||||
|
||||
|
||||
|
||||
for (i = 0; i < NUMBEROFSSERVICES; i++)
|
||||
{
|
||||
if (strcmp(APPName, SERVICES[i].ServiceName) == 0)
|
||||
|
|
@ -1003,7 +1019,7 @@ VOID APPLCMD(TRANSPORTENTRY * Session, char * Bufferptr, char * CmdTail, struct
|
|||
else if (ptr[0] == 'S')
|
||||
Session->STAYFLAG = Stay;
|
||||
}
|
||||
|
||||
*/
|
||||
memcpy(Session->APPL, CMD->String, 12);
|
||||
|
||||
// SEE IF THERE IS AN ALIAS DEFINDED FOR THIS COMMAND
|
||||
|
|
@ -2572,6 +2588,56 @@ VOID CMDC00(TRANSPORTENTRY * Session, char * Bufferptr, char * CmdTail, struct C
|
|||
return;
|
||||
}
|
||||
|
||||
// See if NETROMX connect c service@node
|
||||
|
||||
if (strchr(ptr, '@'))
|
||||
{
|
||||
// We now use service@node, unlike xr
|
||||
|
||||
char * Context1;
|
||||
|
||||
char * Cmd = strtok_s(ptr, "@", &Context1);
|
||||
char * Node = strtok_s(NULL, " ", &Context1);
|
||||
int i;
|
||||
int Stay = 0;
|
||||
|
||||
if (Context1 && Context1[0] == 'S')
|
||||
Session->STAYFLAG = Stay;
|
||||
|
||||
for (i = 0; i < NUMBEROFSSERVICES; i++)
|
||||
{
|
||||
if (strcmp(Cmd, SERVICES[i].ServiceName) == 0)
|
||||
{
|
||||
if (Node)
|
||||
{
|
||||
ConnecttoService(Session, Bufferptr, SERVICES[i].ServiceNo, Node, Stay);
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// May be numeric service
|
||||
|
||||
for (i = 0; i < strlen(Cmd); i++)
|
||||
{
|
||||
if (!isdigit(Cmd[i]))
|
||||
break;
|
||||
}
|
||||
|
||||
if (i == strlen(Cmd))
|
||||
{
|
||||
if (Node)
|
||||
{
|
||||
ConnecttoService(Session, Bufferptr, atoi(Cmd), Node, Stay);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
Bufferptr = Cmdprintf(Session, Bufferptr, "Invalid NetromX command\r");
|
||||
SendCommandReply(Session, REPLYBUFFER, (int)(Bufferptr - (char *)REPLYBUFFER));
|
||||
return;
|
||||
}
|
||||
|
||||
Port = atoi(ptr);
|
||||
|
||||
if (Port)
|
||||
|
|
@ -2671,7 +2737,6 @@ NoPort:
|
|||
|
||||
// SEE IF CALL TO ANY OF OUR HOST SESSIONS - UNLESS DIGIS SPECIFIED
|
||||
|
||||
// if (axcalls[7] == 0 && axcalls[9])
|
||||
if (axcalls[7] == 0)
|
||||
{
|
||||
// If this connect is as a result of a command alias, don't check appls or we will loop
|
||||
|
|
@ -2723,33 +2788,7 @@ NoPort:
|
|||
}
|
||||
}
|
||||
|
||||
// if no digis see if connect to known node.
|
||||
|
||||
// But now could have a single numeric param as a service number (Paula's Netromx)
|
||||
// cmdCopy is command tail (after call)
|
||||
|
||||
// Make sure field is numeric
|
||||
|
||||
if (cmdCopy[0] != ' ')
|
||||
{
|
||||
i = 0;
|
||||
|
||||
while (cmdCopy[i] >= '0' && cmdCopy[i]<= '9')
|
||||
i++;
|
||||
|
||||
if (i && cmdCopy[i] != ' ') // have an all digit param = probably a service
|
||||
goto Downlink;
|
||||
else
|
||||
{
|
||||
if (i > 0) // Some digits
|
||||
{
|
||||
haveService = 1;
|
||||
Service = atoi(cmdCopy);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (axcalls[7] == 0 || haveService)
|
||||
if (axcalls[7] == 0)
|
||||
{
|
||||
// SEE IF CALL TO ANOTHER NODE
|
||||
|
||||
|
|
@ -2792,9 +2831,6 @@ Downlink:
|
|||
// L2 NEEDS PORT NUMBER
|
||||
|
||||
Bufferptr = Cmdprintf(Session, Bufferptr, "Downlink connect needs port number - C P CALLSIGN\r");
|
||||
|
||||
// Send Port List
|
||||
|
||||
SendCommandReply(Session, REPLYBUFFER, (int)(Bufferptr - (char *)REPLYBUFFER));
|
||||
return;
|
||||
}
|
||||
|
|
@ -5082,6 +5118,7 @@ VOID DoTheCommand(TRANSPORTENTRY * Session)
|
|||
int n;
|
||||
int i, Service = -1;
|
||||
char * Cmd, *Node, *Context;
|
||||
int Stay = 0;
|
||||
|
||||
ptr1 = &COMMANDBUFFER[0]; //
|
||||
|
||||
|
|
@ -5176,28 +5213,47 @@ VOID DoTheCommand(TRANSPORTENTRY * Session)
|
|||
|
||||
// See if a NETROMX Service
|
||||
|
||||
Cmd = strtok_s(ptr1, " ", &Context);
|
||||
// We now use service@node, unlike xr
|
||||
|
||||
if (strchr(ptr1, '@'))
|
||||
{
|
||||
Cmd = strtok_s(ptr1, "@", &Context);
|
||||
Node = strtok_s(NULL, " ", &Context);
|
||||
|
||||
if (Cmd && Node)
|
||||
{
|
||||
if (Context && Context[0] == 'S')
|
||||
Session->STAYFLAG = Stay;
|
||||
|
||||
for (i = 0; i < NUMBEROFSSERVICES; i++)
|
||||
{
|
||||
if (strcmp(Cmd, SERVICES[i].ServiceName) == 0)
|
||||
{
|
||||
int Stay = 0;
|
||||
|
||||
if (Context && Context[0] == 'S')
|
||||
Session->STAYFLAG = Stay;
|
||||
|
||||
if (Node)
|
||||
{
|
||||
ConnecttoService(Session, ReplyPointer, i, Node, Stay);
|
||||
ConnecttoService(Session, ReplyPointer, SERVICES[i].ServiceNo, Node, Stay);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
// Connecting to service on local node - msy be possible sometime
|
||||
// May be numeric service
|
||||
|
||||
for (i = 0; i < strlen(Cmd); i++)
|
||||
{
|
||||
if (!isdigit(Cmd[i]))
|
||||
break;
|
||||
}
|
||||
|
||||
if (i == strlen(Cmd))
|
||||
{
|
||||
ConnecttoService(Session, ReplyPointer, atoi(Cmd), Node, Stay);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
ReplyPointer = Cmdprintf(Session, ReplyPointer, "Invalid NetromX command\r");
|
||||
SendCommandReply(Session, REPLYBUFFER, (int)(ReplyPointer - (char *)REPLYBUFFER));
|
||||
return;
|
||||
|
||||
}
|
||||
Session->BADCOMMANDS++;
|
||||
|
||||
if (Session->BADCOMMANDS > 6) // TOO MANY ERRORS
|
||||
|
|
|
|||
4
Events.c
4
Events.c
|
|
@ -944,9 +944,9 @@ void APIL2Trace(struct _MESSAGE * Message, char * Dirn)
|
|||
// supervisory
|
||||
|
||||
if (PF[0])
|
||||
udplen += snprintf(&UDPMsg[udplen], 2048 - udplen, ", \"pf\": \"%s\", \"rseq\": %d, \"tseq\": %d", PF, NR, NS);
|
||||
udplen += snprintf(&UDPMsg[udplen], 2048 - udplen, ", \"pf\": \"%s\", \"rseq\": %d", PF, NR);
|
||||
else
|
||||
udplen += snprintf(&UDPMsg[udplen], 2048 - udplen, ", \"rseq\": %d, \"tseq\": %d", NR, NS);
|
||||
udplen += snprintf(&UDPMsg[udplen], 2048 - udplen, ", \"rseq\": %d", NR);
|
||||
}
|
||||
|
||||
|
||||
|
|
|
|||
27
L4Code.c
27
L4Code.c
|
|
@ -1929,19 +1929,34 @@ void L3SWAPADDRESSES(L3MESSAGEBUFFER * L3MSG)
|
|||
|
||||
void SendConNAK(struct _LINKTABLE * LINK, L3MESSAGEBUFFER * L3MSG)
|
||||
{
|
||||
struct TNCINFO * TNC;
|
||||
|
||||
L3MSG->L4FLAGS = L4CACK | L4BUSY; // REJECT
|
||||
L3MSG->L4DATA[0] = 0; // WINDOW
|
||||
|
||||
L3SWAPADDRESSES(L3MSG);
|
||||
L3MSG->L3TTL = L3LIVES;
|
||||
|
||||
TNC = LINK->LINKPORT->TNC;
|
||||
|
||||
if (LINK->NEIGHBOUR && LINK->NEIGHBOUR->TCPPort)
|
||||
{
|
||||
TCPNETROMSend(LINK->NEIGHBOUR, L3MSG);
|
||||
ReleaseBuffer(L3MSG);
|
||||
}
|
||||
else if (TNC && TNC->NetRomMode)
|
||||
SendVARANetromMsg(TNC, L3MSG);
|
||||
else
|
||||
C_Q_ADD(&LINK->TX_Q, L3MSG);
|
||||
|
||||
}
|
||||
|
||||
VOID SendL4RESET(struct _LINKTABLE * LINK, L3MESSAGEBUFFER * L3MSG)
|
||||
{
|
||||
// Paula's extension
|
||||
|
||||
struct TNCINFO * TNC;
|
||||
|
||||
L3MSG->L4RXNO = L3MSG->L4ID;
|
||||
L3MSG->L4TXNO = L3MSG->L4INDEX;
|
||||
|
||||
|
|
@ -1951,7 +1966,19 @@ VOID SendL4RESET(struct _LINKTABLE * LINK, L3MESSAGEBUFFER * L3MSG)
|
|||
L3MSG->L3TTL = L3LIVES;
|
||||
|
||||
L3MSG->LENGTH = (int)(&L3MSG->L4DATA[0] - (UCHAR *)L3MSG);
|
||||
|
||||
TNC = LINK->LINKPORT->TNC;
|
||||
|
||||
if (LINK->NEIGHBOUR && LINK->NEIGHBOUR->TCPPort)
|
||||
{
|
||||
TCPNETROMSend(LINK->NEIGHBOUR, L3MSG);
|
||||
ReleaseBuffer(L3MSG);
|
||||
}
|
||||
else if (TNC && TNC->NetRomMode)
|
||||
SendVARANetromMsg(TNC, L3MSG);
|
||||
else
|
||||
C_Q_ADD(&LINK->TX_Q, L3MSG);
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
|
|
|||
4
LinBPQ.c
4
LinBPQ.c
|
|
@ -87,8 +87,6 @@ void CloseAllLinks();
|
|||
void hookNodeClosing(char * Reason);
|
||||
void NETROMTCPResolve();
|
||||
|
||||
extern uint64_t INP3timeLoadedMS;
|
||||
|
||||
BOOL IncludesMail = FALSE;
|
||||
BOOL IncludesChat = FALSE;
|
||||
|
||||
|
|
@ -861,8 +859,6 @@ int main(int argc, char * argv[])
|
|||
if (!isatty(STDOUT_FILENO) || !isatty(STDIN_FILENO))
|
||||
Redirected = 1;
|
||||
|
||||
INP3timeLoadedMS = GetTickCount();
|
||||
|
||||
#endif
|
||||
|
||||
printf("G8BPQ AX25 Packet Switch System Version %s %s\n", TextVerstring, Datestring);
|
||||
|
|
|
|||
20
NETROMTCP.c
20
NETROMTCP.c
|
|
@ -110,7 +110,7 @@ struct ConnectionInfo * AllocateNRTCPRec()
|
|||
sockptr->SocketActive = TRUE;
|
||||
sockptr->ConnectTime = sockptr->LastSendTime = time(NULL);
|
||||
|
||||
Debugprintf("NRTCP Allocated %d", i);
|
||||
// Debugprintf("NRTCP Allocated %d", i);
|
||||
return sockptr;
|
||||
}
|
||||
}
|
||||
|
|
@ -217,7 +217,7 @@ int NETROMOpenConnection(struct ROUTE * Route)
|
|||
|
||||
farCall[ConvFromAX25(Route->NEIGHBOUR_CALL, farCall)] = 0;
|
||||
|
||||
Debugprintf("Opening NRTCP Connection to %s", farCall);
|
||||
// Debugprintf("Opening NRTCP Connection to %s", farCall);
|
||||
|
||||
if (Route->TCPSession)
|
||||
{
|
||||
|
|
@ -366,14 +366,14 @@ void NETROMConnectionAccepted(struct ConnectionInfo * sockptr)
|
|||
// Not sure we can do much here until first message arrives with callsign
|
||||
|
||||
sockptr->Connected = TRUE;
|
||||
Debugprintf("NRTCP Connection Accepted");
|
||||
// Debugprintf("NRTCP Connection Accepted");
|
||||
}
|
||||
|
||||
void NETROMConnected(struct ConnectionInfo * sockptr, SOCKET sock, struct NRTCPSTRUCT * Info)
|
||||
{
|
||||
// Connection Complete
|
||||
|
||||
Debugprintf("NRTCP Connected");
|
||||
// Debugprintf("NRTCP Connected");
|
||||
|
||||
sockptr->Connecting = FALSE;
|
||||
sockptr->Connected = TRUE;
|
||||
|
|
@ -428,7 +428,7 @@ checkLen:
|
|||
|
||||
// This must be an incoming connection as Call is set before calling so need to find route record and set things up.
|
||||
|
||||
Debugprintf("New NRTCP Connection from %s", Msg->Call);
|
||||
// Debugprintf("New NRTCP Connection from %s", Msg->Call);
|
||||
|
||||
memcpy(Info->Call, Msg->Call, 10);
|
||||
|
||||
|
|
@ -461,8 +461,13 @@ checkLen:
|
|||
|
||||
if (memcmp(Info->Call, Msg->Call, 10) != 0)
|
||||
{
|
||||
Debugprintf("Mismatch");
|
||||
// something wrong - maybe connection reused
|
||||
Debugprintf("NRTCP Mismatch - closing connection");
|
||||
|
||||
closesocket(sockptr->socket);
|
||||
sockptr->SocketActive = FALSE;
|
||||
memset(sockptr, 0, sizeof(struct ConnectionInfo));
|
||||
Info->Call[0] = 0;
|
||||
return 0;
|
||||
}
|
||||
|
||||
// Format as if come from an ax.25 link
|
||||
|
|
@ -593,6 +598,7 @@ void NETROMConnectionLost(struct ConnectionInfo * sockptr)
|
|||
Route->TCPSession = 0;
|
||||
|
||||
Info->Call[0] = 0;
|
||||
Info->LINK->L2STATE = 0;
|
||||
}
|
||||
|
||||
sockptr->SocketActive = FALSE;
|
||||
|
|
|
|||
|
|
@ -10,8 +10,8 @@
|
|||
|
||||
#endif
|
||||
|
||||
#define KVers 6,0,25,11
|
||||
#define KVerstring "6.0.25.11\0"
|
||||
#define KVers 6,0,25,12
|
||||
#define KVerstring "6.0.25.12\0"
|
||||
|
||||
|
||||
#ifdef CKernel
|
||||
|
|
|
|||
27
compatbits.c
27
compatbits.c
|
|
@ -25,6 +25,8 @@ Stuff to make compiling on WINDOWS and LINUX easier
|
|||
|
||||
#ifdef WIN32
|
||||
|
||||
#include <windows.h>
|
||||
|
||||
typedef unsigned int uint32_t;
|
||||
|
||||
#define pthread_t uint32_t
|
||||
|
|
@ -41,6 +43,7 @@ int pthread_equal(pthread_t T1, pthread_t T2)
|
|||
#include <syslog.h>
|
||||
#include <stdarg.h>
|
||||
#include <unistd.h>
|
||||
#include <stdint.h>
|
||||
|
||||
#define BOOL int
|
||||
|
||||
|
|
@ -188,3 +191,27 @@ void closesocket(int sock)
|
|||
}
|
||||
|
||||
#endif
|
||||
|
||||
#ifdef WIN32
|
||||
|
||||
uint32_t GetTickCountINP3()
|
||||
{
|
||||
// Returns system uptime in 10 mS, lower 20 bits only
|
||||
|
||||
return (GetTickCount() / 10) & 0xfffff;
|
||||
}
|
||||
#else
|
||||
|
||||
uint64_t GetTickCount();
|
||||
|
||||
uint32_t GetTickCountINP3()
|
||||
{
|
||||
uint64_t Ticks = GetTickCount();
|
||||
|
||||
// Returns system uptime in 10 mS, lower 20 bits only
|
||||
|
||||
return (Ticks / 10) & 0xfffff;
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
|
|
|
|||
|
|
@ -24,6 +24,7 @@ Stuff to make compiling on WINDOWS and LINUX easier
|
|||
|
||||
#define strtoll _strtoi64
|
||||
|
||||
|
||||
#ifdef _WIN64
|
||||
#include "stdint.h"
|
||||
#else
|
||||
|
|
@ -219,7 +220,7 @@ typedef struct tagRECT
|
|||
|
||||
#endif
|
||||
|
||||
|
||||
uint32_t GetTickCountINP3();
|
||||
|
||||
#ifdef LINBPQ
|
||||
|
||||
|
|
|
|||
11
debian/NEWS
vendored
Normal file
11
debian/NEWS
vendored
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
linbpq (6.0.24.22-2) unstable; urgency=medium
|
||||
|
||||
This is quite a big update, with config moving from /opt/oarc/bpq/bpq32.cfg to
|
||||
/etc/bpq32.cfg. The system shall do this automatically for you, however
|
||||
computers and their programmers are not perfect.
|
||||
|
||||
I strongly recommend at this point backing up your entire
|
||||
/opt/oarc/bpq/ directory (cp -r /opt/oarc/bpq/ ~/bpq-backup/) before
|
||||
proceeding with the upgrade
|
||||
|
||||
-- Dave Hibberd <d@vehibberd.com> Sat, 16 Dec 2023 13:30:06 +0000
|
||||
23
debian/README.Debian
vendored
Normal file
23
debian/README.Debian
vendored
Normal file
|
|
@ -0,0 +1,23 @@
|
|||
README for linbpq on Debian
|
||||
===========================
|
||||
|
||||
Please see https://wiki.oarc.uk/packet:linbpq-apt-installation for this guide
|
||||
|
||||
# Set config
|
||||
Copy the config, edit it & set permissions.
|
||||
The permissions are so linbpq web interface can edit the config.
|
||||
|
||||
sudo mv /usr/share/doc/linbpq/examples/bpq32.cfg /etc/bpq32.cfg
|
||||
sudo nano /etc/bpq32.cfg
|
||||
sudo chown :linbpq /etc/bpq32.cfg
|
||||
sudo chmod 644 /etc/bpq32.cfg
|
||||
|
||||
# Start linbpq
|
||||
|
||||
sudo systemctl start linbpq
|
||||
|
||||
# Access your node
|
||||
|
||||
It shall be available by accessing http://localhost:8008 in the browser or telnet localhost 8010
|
||||
|
||||
-- Dave Hibberd <hibby@debian.org> Tue, 26 Mar 2024 00:53:42 +0000
|
||||
50
debian/bpq32.cfg
vendored
Normal file
50
debian/bpq32.cfg
vendored
Normal file
|
|
@ -0,0 +1,50 @@
|
|||
SIMPLE
|
||||
NODECALL=MB7NAA
|
||||
NODEALIAS=AANODE
|
||||
LOCATOR=AA00aa
|
||||
PASSWORD=xxxxxxxx
|
||||
AUTOSAVE=1
|
||||
NODESINTERVAL=10
|
||||
MINQUAL=10
|
||||
CTEXT:
|
||||
Thanks for connecting.
|
||||
Type ? for help.
|
||||
***
|
||||
PORT
|
||||
PORTNUM=1
|
||||
ID=VHF
|
||||
TYPE=ASYNC
|
||||
PROTOCOL=KISS
|
||||
KISSOPTIONS=ACKMODE
|
||||
COMPORT=/dev/ttyACM0
|
||||
SPEED=57600
|
||||
FRACK=4000
|
||||
PACLEN=150
|
||||
DIGIFLAG=0
|
||||
QUALITY=192
|
||||
MINQUAL=20
|
||||
ENDPORT
|
||||
|
||||
|
||||
PORT
|
||||
PORTNUM=9
|
||||
ID=Telnet
|
||||
DRIVER=Telnet
|
||||
CONFIG
|
||||
LOGGING=1
|
||||
CMS=1
|
||||
DisconnectOnClose=1
|
||||
SECURETELNET=1
|
||||
TCPPORT=8010
|
||||
FBBPORT=8011
|
||||
HTTPPORT=8008
|
||||
LOGINPROMPT=user:
|
||||
PASSWORDPROMPT=password:
|
||||
MAXSESSIONS=10
|
||||
CTEXT=Thanks for connecting\n Enter ? for list of commands\n\n
|
||||
USER=username,xxxxxxxx,m0aaa,,SYSOP
|
||||
ENDPORT
|
||||
|
||||
LINCHAT
|
||||
|
||||
APPLICATION 2,CHAT,,MB7NAA-9,AACHAT,255
|
||||
342
debian/changelog
vendored
Normal file
342
debian/changelog
vendored
Normal file
|
|
@ -0,0 +1,342 @@
|
|||
linbpq (6.0.25.12+repack-1~hibbian13+1) trixie-hibbian-unstable; urgency=medium
|
||||
|
||||
* New upstream version 6.0.25.12+repack
|
||||
* MINI_BUILDD_OPTION: auto-ports=trixie-packetrepo-unstable,bookworm-packetrepo-unstable,bullseye-packetrepo-unstable,noble-packetrepo-unstable,jammy-packetrepo-unstable
|
||||
|
||||
-- Dave Hibberd <hibby@debian.org> Sat, 22 Nov 2025 15:11:09 +0000
|
||||
|
||||
linbpq (6.0.25.11+repack-1~hibbian13+1) trixie-hibbian-unstable; urgency=medium
|
||||
|
||||
* New upstream version 6.0.25.11+repack
|
||||
* MINI_BUILDD_OPTION: auto-ports=trixie-packetrepo-unstable,bookworm-packetrepo-unstable,bullseye-packetrepo-unstable,noble-packetrepo-unstable,jammy-packetrepo-unstable
|
||||
|
||||
-- Dave Hibberd <hibby@debian.org> Tue, 11 Nov 2025 21:52:58 +0000
|
||||
|
||||
linbpq (6.0.25.9+repack-1~hibbian13+1) trixie-hibbian-unstable; urgency=medium
|
||||
|
||||
* New upstream version 6.0.25.9+repack
|
||||
* Refresh patches
|
||||
* MINI_BUILDD_OPTION: auto-ports=trixie-packetrepo-unstable,bookworm-packetrepo-unstable,bullseye-packetrepo-unstable,noble-packetrepo-unstable,jammy-packetrepo-unstable
|
||||
|
||||
-- Dave Hibberd <hibby@debian.org> Sun, 09 Nov 2025 22:45:07 +0000
|
||||
|
||||
linbpq (6.0.25.8+repack-1~hibbian13+1) trixie-hibbian-unstable; urgency=medium
|
||||
|
||||
* Build on latest gcc standards
|
||||
* New upstream version 6.0.25.8+repack
|
||||
* Refresh patches with gbp pq!
|
||||
* MINI_BUILDD_OPTION: auto-ports=trixie-packetrepo-unstable,bookworm-packetrepo-unstable,bullseye-packetrepo-unstable,noble-packetrepo-unstable,jammy-packetrepo-unstable
|
||||
|
||||
-- Dave Hibberd <hibby@debian.org> Fri, 24 Oct 2025 00:45:16 +0100
|
||||
|
||||
linbpq (6.0.25.06+repack-1~hibbian13+1) trixie-hibbian-unstable; urgency=medium
|
||||
|
||||
* New upstream version 6.0.25.06+repack
|
||||
* MINI_BUILDD_OPTION: auto-ports=trixie-packetrepo-unstable,bookworm-packetrepo-unstable,bullseye-packetrepo-unstable,noble-packetrepo-unstable,jammy-packetrepo-unstable
|
||||
|
||||
-- Dave Hibberd <hibby@debian.org> Fri, 10 Oct 2025 23:42:04 +0100
|
||||
|
||||
linbpq (6.0.25.1+repack-1~hibbian13+1) trixie-hibbian-unstable; urgency=medium
|
||||
|
||||
* New upstream version 6.0.25.1+repack
|
||||
* MINI_BUILDD_OPTION: auto-ports=trixie-packetrepo-unstable,bookworm-packetrepo-unstable,bullseye-packetrepo-unstable,noble-packetrepo-unstable,jammy-packetrepo-unstable
|
||||
|
||||
-- Dave Hibberd <hibby@debian.org> Sat, 20 Sep 2025 15:43:32 +0100
|
||||
|
||||
linbpq (6.0.24.82+repack-1~hibbian13+1) trixie-hibbian-unstable; urgency=medium
|
||||
|
||||
* New upstream version 6.0.24.82+repack
|
||||
* MINI_BUILDD_OPTION: auto-ports=trixie-packetrepo-unstable,bookworm-packetrepo-unstable,bullseye-packetrepo-unstable,noble-packetrepo-unstable,jammy-packetrepo-unstable
|
||||
|
||||
-- Dave Hibberd <hibby@debian.org> Sun, 17 Aug 2025 22:36:49 +0100
|
||||
|
||||
linbpq (6.0.24.78+repack-1~hibbian~TRIXIE+1) trixie-hibbian-unstable; urgency=medium
|
||||
|
||||
* New Upstream
|
||||
* New files excluded
|
||||
- No binaries in this release at all maybe!
|
||||
* MINI_BUILDD_OPTION: auto-ports=trixie-packetrepo-unstable,bookworm-packetrepo-unstable,bullseye-packetrepo-unstable,noble-packetrepo-unstable,jammy-packetrepo-unstable
|
||||
|
||||
-- Dave Hibberd <hibby@debian.org> Thu, 31 Jul 2025 01:31:38 +0100
|
||||
|
||||
linbpq (6.0.24.77+repack-1~hibbian~TRIXIE+1) trixie-hibbian-unstable; urgency=medium
|
||||
|
||||
* New upstream version 6.0.24.77+repack
|
||||
* MINI_BUILDD_OPTION: auto-ports=trixie-packetrepo-unstable,bookworm-packetrepo-unstable,bullseye-packetrepo-unstable,noble-packetrepo-unstable,jammy-packetrepo-unstable
|
||||
|
||||
-- Dave Hibberd <hibby@debian.org> Tue, 22 Jul 2025 21:46:13 +0100
|
||||
|
||||
linbpq (6.0.24.75+repack-1~hibbian~TRIXIE+2) trixie-hibbian-unstable; urgency=medium
|
||||
|
||||
* First trixie release
|
||||
* Drop hard-dep on hibbian-archive-keyring
|
||||
|
||||
-- Dave Hibberd <hibby@debian.org> Wed, 16 Jul 2025 19:10:33 +0100
|
||||
|
||||
linbpq (6.0.24.75+repack-1~hibbian+1) bookworm-hibbian-unstable; urgency=medium
|
||||
|
||||
* New upstream version 6.0.25.75+repack
|
||||
* MINI_BUILDD_OPTION: auto-ports=trixie-packetrepo-unstable,bookworm-packetrepo-unstable,bullseye-packetrepo-unstable,noble-packetrepo-unstable,jammy-packetrepo-unstable
|
||||
|
||||
-- Dave Hibberd <hibby@debian.org> Tue, 15 Jul 2025 01:10:43 +0100
|
||||
|
||||
linbpq (6.0.24.71+repack-1~hibbian+1) bookworm-hibbian-unstable; urgency=medium
|
||||
|
||||
* New upstream version 6.0.24.67+repack
|
||||
* New upstream version 6.0.24.69+repack
|
||||
* New upstream version 6.0.24.69.1+repack
|
||||
* New upstream version 6.0.24.71+repack
|
||||
* Okay that's a lot of updates.
|
||||
* Refreshed d/p/makefile to reflect new CFLAG
|
||||
* MINI_BUILDD_OPTION: auto-ports=trixie-packetrepo-unstable,bookworm-packetrepo-unstable,bullseye-packetrepo-unstable,noble-packetrepo-unstable,jammy-packetrepo-unstable
|
||||
|
||||
-- Dave Hibberd <hibby@debian.org> Wed, 21 May 2025 21:45:59 +0100
|
||||
|
||||
linbpq (6.0.24.66+repack-1~hibbian+2) bookworm-hibbian-unstable; urgency=medium
|
||||
|
||||
* Update postinst script to be a little quieter
|
||||
* MINI_BUILDD_OPTION:
|
||||
auto-ports=trixie-packetrepo-unstable,bookworm-packetrepo-unstable,bullseye-packetrepo-unstable,noble-packetrepo-unstable,jammy-packetrepo-unstable
|
||||
|
||||
-- Dave Hibberd <hibby@debian.org> Tue, 11 Mar 2025 00:51:35 +0000
|
||||
|
||||
linbpq (6.0.24.66+repack-1~hibbian+1) bookworm-hibbian-unstable; urgency=medium
|
||||
|
||||
* New upstream version 6.0.24.66+repack
|
||||
|
||||
-- Dave Hibberd <hibby@debian.org> Tue, 04 Mar 2025 22:50:09 +0000
|
||||
|
||||
linbpq (6.0.24.65+repack-1~hibbian+1) bookworm-hibbian-unstable; urgency=medium
|
||||
|
||||
* New Upstream
|
||||
|
||||
-- Dave Hibberd <hibby@debian.org> Tue, 25 Feb 2025 09:33:24 +0000
|
||||
|
||||
linbpq (6.0.24.59a+repack-1~hibbian+1) bookworm-hibbian-unstable; urgency=medium
|
||||
|
||||
* New Upstream
|
||||
* Little tweaks to makefile patch to account for new -rdynamic
|
||||
|
||||
-- Dave Hibberd <hibby@debian.org> Mon, 03 Feb 2025 22:32:11 +0000
|
||||
|
||||
linbpq (6.0.24.56+repack-1~hibbian+1) bookworm-hibbian-unstable; urgency=medium
|
||||
|
||||
* New Upstream
|
||||
|
||||
-- Dave Hibberd <hibby@debian.org> Mon, 06 Jan 2025 21:37:44 +0000
|
||||
|
||||
linbpq (6.0.24.55+repack-1~hibbian+1) bookworm-hibbian-unstable; urgency=medium
|
||||
|
||||
* New Upstream
|
||||
* d/rules
|
||||
- Increased hardening
|
||||
|
||||
-- Dave Hibberd <hibby@debian.org> Sun, 05 Jan 2025 23:35:06 +0000
|
||||
|
||||
linbpq (6.0.24.54+repack-1~hibbian+1) bookworm-hibbian-unstable; urgency=medium
|
||||
|
||||
* New Upstream
|
||||
* Drop AGW Patch
|
||||
* Drop Spelling Patch
|
||||
* Drop Dynamic Links patch
|
||||
|
||||
-- Dave Hibberd <hibby@debian.org> Tue, 17 Dec 2024 16:46:05 +0000
|
||||
|
||||
linbpq (6.0.24.53+repack-1~hibbian+1) bookworm-hibbian-unstable; urgency=medium
|
||||
|
||||
* New upstream
|
||||
- Patches refreshed
|
||||
- dropped some edits in ftbfs-gcc14
|
||||
- dropped d/patches/headers.patch
|
||||
|
||||
-- Dave Hibberd <hibby@debian.org> Tue, 03 Dec 2024 00:57:57 +0000
|
||||
|
||||
linbpq (6.0.24.52+repack-1~hibbian+1) bookworm-hibbian-unstable; urgency=medium
|
||||
|
||||
* New upstream
|
||||
- Patches happy
|
||||
|
||||
-- Dave Hibberd <hibby@debian.org> Sat, 30 Nov 2024 21:47:17 +0000
|
||||
|
||||
linbpq (6.0.24.51.1+repack-1~hibbian+2) bookworm-hibbian-unstable; urgency=medium
|
||||
|
||||
* Iron out an issue with time...
|
||||
|
||||
-- Dave Hibberd <hibby@debian.org> Fri, 29 Nov 2024 19:57:28 +0000
|
||||
|
||||
linbpq (6.0.24.51.1+repack-1~hibbian+1) bookworm-hibbian-unstable; urgency=medium
|
||||
|
||||
* New upstream import after bug report
|
||||
* Roll back some ftbfs-gcc14 edits
|
||||
* Remove some more lib headers
|
||||
|
||||
-- Dave Hibberd <hibby@debian.org> Fri, 29 Nov 2024 19:30:22 +0000
|
||||
|
||||
linbpq (6.0.24.51+repack-1~hibbian+1) bookworm-hibbian-unstable; urgency=medium
|
||||
|
||||
* New upstream import
|
||||
- Patches refreshed
|
||||
* Upstream is now repacked to include less files
|
||||
* Big build system review, now using Debian CFLAGS and LDFLAGS
|
||||
- Hardening enabled, mostly
|
||||
- A debug symbols package is now available
|
||||
* Oh yeah, everything is now dynamic linking
|
||||
- libpng
|
||||
- libpaho-mqtt
|
||||
- libjansson
|
||||
- libminiupnpc
|
||||
|
||||
-- Dave Hibberd <hibby@debian.org> Fri, 29 Nov 2024 13:08:38 +0000
|
||||
|
||||
linbpq (6.0.24.50-1~hibbian+1) bookworm-hibbian-unstable; urgency=medium
|
||||
|
||||
* New upstream import
|
||||
* Files excluded at origtargz generation time for cleanliness
|
||||
|
||||
-- Dave Hibberd <hibby@debian.org> Tue, 12 Nov 2024 21:56:38 +0000
|
||||
|
||||
linbpq (6.0.24.49-1~hibbian+1) bookworm-hibbian-unstable; urgency=medium
|
||||
|
||||
* New Upstream import
|
||||
* Patches refreshed
|
||||
* Add mqtt requirements
|
||||
|
||||
-- Dave Hibberd <hibby@debian.org> Tue, 05 Nov 2024 21:52:29 +0000
|
||||
|
||||
linbpq (6.0.24.45-1~hibbian+1) bookworm-hibbian-unstable; urgency=medium
|
||||
|
||||
* New upstream import
|
||||
* Patches refreshed
|
||||
|
||||
-- Dave Hibberd <hibby@debian.org> Fri, 11 Oct 2024 15:48:41 +0100
|
||||
|
||||
linbpq (6.0.24.42-1~hibbian+3) bookworm-hibbian-unstable; urgency=medium
|
||||
|
||||
* 32bit build error
|
||||
- Patch updated to fix hopefully
|
||||
|
||||
-- Dave Hibberd <hibby@debian.org> Fri, 30 Aug 2024 12:21:57 +0100
|
||||
|
||||
linbpq (6.0.24.42-1~hibbian+2) bookworm-hibbian-unstable; urgency=medium
|
||||
|
||||
* Forgot to fix the ninotnc-smt issue, fixed now
|
||||
|
||||
-- Dave Hibberd <hibby@debian.org> Fri, 30 Aug 2024 12:05:54 +0100
|
||||
|
||||
linbpq (6.0.24.42-1~hibbian+1) bookworm-hibbian-unstable; urgency=medium
|
||||
|
||||
* Install config to /etc
|
||||
* New upstream update
|
||||
* Patches refreshed
|
||||
* Debian hardening enabled
|
||||
- 2 new patches created that touch almost every file
|
||||
- Considered experimental.
|
||||
- gcc14 builds for Debian Trixie!
|
||||
|
||||
-- Dave Hibberd <hibby@debian.org> Fri, 30 Aug 2024 10:15:11 +0100
|
||||
|
||||
linbpq (6.0.24.40-1) unstable; urgency=medium
|
||||
|
||||
* Fresh upstream release
|
||||
- Patches refreshed
|
||||
* Secure by default patch
|
||||
|
||||
-- Dave Hibberd <hibby@debian.org> Sun, 07 Jul 2024 16:09:28 +0100
|
||||
|
||||
linbpq (6.0.24.38-1) unstable; urgency=medium
|
||||
|
||||
* New Upstream
|
||||
* Tweak config file per recommendation from 2M0MQN to make first start simple
|
||||
* Bump standards to 4.7.0.0
|
||||
|
||||
-- Dave Hibberd <hibby@debian.org> Sun, 09 Jun 2024 22:38:40 +0100
|
||||
|
||||
linbpq (6.0.24.34-2) unstable; urgency=medium
|
||||
|
||||
* Fix config permissions bug as reported by Alex 2E1PKY
|
||||
|
||||
-- Dave Hibberd <hibby@debian.org> Mon, 08 Apr 2024 22:27:02 +0100
|
||||
|
||||
linbpq (6.0.24.34-1) unstable; urgency=medium
|
||||
|
||||
* Upstream bump
|
||||
|
||||
-- Dave Hibberd <hibby@debian.org> Sat, 06 Apr 2024 02:15:28 +0100
|
||||
|
||||
linbpq (6.0.24.33-1) unstable; urgency=medium
|
||||
|
||||
* Upstream bump
|
||||
* Moved config file to examples
|
||||
* Updated service to fail on no config
|
||||
* Added helpful README.Debian
|
||||
|
||||
-- Dave Hibberd <hibby@debian.org> Tue, 26 Mar 2024 20:24:08 +0000
|
||||
|
||||
linbpq (6.0.24.30-1) unstable; urgency=medium
|
||||
|
||||
* Upstream bump
|
||||
|
||||
-- Dave Hibberd <hibby@debian.org> Fri, 23 Feb 2024 23:24:46 +0000
|
||||
|
||||
linbpq (6.0.24.29-1) unstable; urgency=medium
|
||||
|
||||
* Upstream bump
|
||||
* Added my new details
|
||||
* Tidied up some packaging errors
|
||||
|
||||
-- Dave Hibberd <hibby@debian.org> Tue, 13 Feb 2024 00:06:33 +0000
|
||||
|
||||
linbpq (6.0.24.27-2) unstable; urgency=medium
|
||||
|
||||
* Permissions fix for web-config-editor users
|
||||
|
||||
-- Dave Hibberd <d@vehibberd.com> Thu, 18 Jan 2024 10:31:56 +0000
|
||||
|
||||
linbpq (6.0.24.27-1) unstable; urgency=medium
|
||||
|
||||
* New Upstream Release
|
||||
|
||||
-- Dave Hibberd <d@vehibberd.com> Tue, 16 Jan 2024 20:51:43 +0000
|
||||
|
||||
linbpq (6.0.24.25-1) unstable; urgency=medium
|
||||
|
||||
* New Upstream Release
|
||||
|
||||
-- Dave Hibberd <d@vehibberd.com> Thu, 28 Dec 2023 10:44:47 +0000
|
||||
|
||||
linbpq (6.0.24.22-2) unstable; urgency=medium
|
||||
|
||||
* Moved config file home, caused chaos
|
||||
|
||||
-- Dave Hibberd <d@vehibberd.com> Sat, 16 Dec 2023 14:40:20 +0000
|
||||
|
||||
linbpq (6.0.24.22-1) unstable; urgency=medium
|
||||
|
||||
* New Upstream Release
|
||||
|
||||
-- Dave Hibberd <d@vehibberd.com> Fri, 08 Dec 2023 12:29:40 +0000
|
||||
|
||||
linbpq (6.0.24.16-1) unstable; urgency=medium
|
||||
|
||||
* New Upstream release
|
||||
|
||||
-- Dave Hibberd <d@vehibberd.com> Tue, 31 Oct 2023 22:50:01 +0000
|
||||
|
||||
linbpq (6.0.24.15-2) unstable; urgency=medium
|
||||
|
||||
* debian/conffiles introduced to stop linbpq overwriting config files
|
||||
- Thanks to Mark 2M0IIG for raising concern about this bug!
|
||||
|
||||
-- Dave Hibberd <d@vehibberd.com> Sun, 15 Oct 2023 21:45:24 +0100
|
||||
|
||||
linbpq (6.0.24.15-1) unstable; urgency=medium
|
||||
|
||||
* New upstream release
|
||||
|
||||
-- Dave Hibberd <d@vehibberd.com> Tue, 10 Oct 2023 22:19:48 +0100
|
||||
|
||||
linbpq (6.0.24.2-1) unstable; urgency=medium
|
||||
|
||||
* Initial release.
|
||||
|
||||
-- Dave Hibberd <d@vehibberd.com> Mon, 28 Aug 2023 23:20:45 +0100
|
||||
20
debian/control
vendored
Normal file
20
debian/control
vendored
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
Source: linbpq
|
||||
Section: hamradio
|
||||
Priority: optional
|
||||
Maintainer: Dave Hibberd <hibby@debian.org>
|
||||
Standards-Version: 4.7.2
|
||||
Vcs-Browser: https://git.hibbian.org/Hibbian/linbpq
|
||||
Vcs-Git: https://git.hibbian.org/Hibbian/linbpq.git
|
||||
Homepage: https://www.cantab.net/users/john.wiseman/Documents/
|
||||
Build-Depends: debhelper-compat (= 13)
|
||||
Build-Depends-Arch: libssl-dev, libminiupnpc-dev, libpcap-dev, libconfig-dev, zlib1g-dev, libpaho-mqtt-dev, libjansson-dev, libpng-dev
|
||||
Rules-Requires-Root: no
|
||||
|
||||
Package: linbpq
|
||||
Architecture: linux-any
|
||||
Depends: ${shlibs:Depends}, ${misc:Depends}, adduser
|
||||
Description: Packet node and ax25 stack
|
||||
LINBPQ is a Linux version of the BPQ32 Node, BBS and Chat Server components.
|
||||
It is actively developed by John G8BPQ and contains a complete, independent
|
||||
implementation of ax.25 and net/rom as well as BBS and Chat applications and
|
||||
can be used either as a packet switch or as a full featured node.
|
||||
37
debian/copyright
vendored
Normal file
37
debian/copyright
vendored
Normal file
|
|
@ -0,0 +1,37 @@
|
|||
Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
|
||||
Upstream-Name: linBPQ
|
||||
Upstream-Contact: John Wiseman G8BPQ <john.wiseman@cantab.net>
|
||||
Source: https://www.cantab.net/users/john.wiseman/Documents/
|
||||
Files-Excluded: *.vcproj* *.bak *.lib *.dll *.wav *.asm *.vcxproj* *.pdb *.exe
|
||||
.gitignore XAprs zlib.h zconf.h MQTT* pcap.h miniupnpc.h upnpdev.h
|
||||
igd_desc_parse.h upnpcommands.h upnperrors.h miniupnpctypes.h
|
||||
*.svn-base *.db *.obj
|
||||
|
||||
Files: *
|
||||
Copyright: 1990-2025 John Wiseman G8BPQ <john.wiseman@cantab.net>
|
||||
License: GPL-3
|
||||
|
||||
Files: debian/*
|
||||
Copyright: 2016-2025 Dave Hibberd <d@vehibberd.com>
|
||||
License: GPL-3
|
||||
|
||||
Files: debian/linbpq.service
|
||||
Copyright: 2024-2025 Tom Fanning M0LTE
|
||||
License: GPL-3
|
||||
|
||||
License: GPL-3
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
.
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
.
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
.
|
||||
The GPL License which applies to this package can be found on your Debian
|
||||
system at /usr/share/common-licenses/GPL-3.
|
||||
2
debian/dirs
vendored
Normal file
2
debian/dirs
vendored
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
usr/sbin
|
||||
opt/oarc/bpq
|
||||
3
debian/gbp.conf
vendored
Normal file
3
debian/gbp.conf
vendored
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
[DEFAULT]
|
||||
debian-branch = hibbian/latest
|
||||
upstream-branch = upstream/latest
|
||||
6
debian/gitlab-ci.yml
vendored
Normal file
6
debian/gitlab-ci.yml
vendored
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
include:
|
||||
- https://salsa.debian.org/salsa-ci-team/pipeline/raw/master/salsa-ci.yml
|
||||
- https://salsa.debian.org/salsa-ci-team/pipeline/raw/master/pipeline-jobs.yml
|
||||
|
||||
reprotest:
|
||||
extends: .test-reprotest-diffoscope
|
||||
1
debian/install
vendored
Normal file
1
debian/install
vendored
Normal file
|
|
@ -0,0 +1 @@
|
|||
debian/bpq32.cfg etc/
|
||||
1
debian/linbpq.examples
vendored
Normal file
1
debian/linbpq.examples
vendored
Normal file
|
|
@ -0,0 +1 @@
|
|||
debian/bpq32.cfg
|
||||
14
debian/linbpq.service
vendored
Normal file
14
debian/linbpq.service
vendored
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
[Unit]
|
||||
Description=Linbpq systemd service file
|
||||
After=network.target
|
||||
ConditionPathExists=/etc/bpq32.cfg
|
||||
|
||||
[Service]
|
||||
ExecStart=/usr/sbin/linbpq -c /etc -d /opt/oarc/bpq -l /opt/oarc/bpq
|
||||
WorkingDirectory=/opt/oarc/bpq
|
||||
Restart=always
|
||||
User=linbpq
|
||||
Group=linbpq
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
11
debian/lintian-overrides
vendored
Normal file
11
debian/lintian-overrides
vendored
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
# weirdness from oarc packaging
|
||||
linbpq: dir-or-file-in-opt [opt/oarc/]
|
||||
linbpq: dir-or-file-in-opt [opt/oarc/bpq/]
|
||||
# i know!
|
||||
linbpq: no-manual-page [usr/sbin/linbpq]
|
||||
# Directory is populated on first run
|
||||
linbpq: package-contains-empty-directory [opt/oarc/bpq/]
|
||||
# Code convenience
|
||||
linbpq: spelling-error-in-binary Dont Don't [usr/sbin/linbpq]
|
||||
linbpq: spelling-error-in-binary Paramters Parameters [usr/sbin/linbpq]
|
||||
linbpq: spelling-error-in-binary lon long [usr/sbin/linbpq]
|
||||
57
debian/patches/makefile
vendored
Normal file
57
debian/patches/makefile
vendored
Normal file
|
|
@ -0,0 +1,57 @@
|
|||
From: Dave Hibberd <hibby@debian.org>
|
||||
Date: Sat, 20 Sep 2025 15:42:15 +0100
|
||||
Subject: makefile
|
||||
|
||||
---
|
||||
makefile | 22 ++++++++++------------
|
||||
1 file changed, 10 insertions(+), 12 deletions(-)
|
||||
|
||||
diff --git a/makefile b/makefile
|
||||
index 26403e5..0f15cc0 100644
|
||||
--- a/makefile
|
||||
+++ b/makefile
|
||||
@@ -2,8 +2,7 @@
|
||||
|
||||
# To exclude i2c support run make noi2c
|
||||
|
||||
-OBJS = pngwtran.o pngrtran.o pngset.o pngrio.o pngwio.o pngtrans.o pngrutil.o pngwutil.o\
|
||||
- pngread.o pngwrite.o png.o pngerror.o pngget.o pngmem.o APRSIconData.o AISCommon.o\
|
||||
+OBJS = APRSIconData.o AISCommon.o\
|
||||
upnp.o APRSStdPages.o HSMODEM.o WinRPR.o KISSHF.o TNCEmulators.o bpqhdlc.o SerialPort.o\
|
||||
adif.o WebMail.o utf8Routines.o VARA.o LzFind.o Alloc.o LzmaDec.o LzmaEnc.o LzmaLib.o \
|
||||
Multicast.o ARDOP.o IPCode.o FLDigi.o linether.o CMSAuth.o APRSCode.o BPQtoAGW.o KAMPactor.o\
|
||||
@@ -17,12 +16,12 @@ OBJS = pngwtran.o pngrtran.o pngset.o pngrio.o pngwio.o pngtrans.o pngrutil.o pn
|
||||
|
||||
# Configuration:
|
||||
|
||||
-#Default to Linux
|
||||
- CC = gcc
|
||||
- LDFLAGS = -Xlinker -Map=output.map -lrt
|
||||
+CFLAGS:=$(shell dpkg-buildflags --get CFLAGS)
|
||||
+CFLAGS+=$(shell dpkg-buildflags --get CPPFLAGS)
|
||||
+LDFLAGS:=$(shell dpkg-buildflags --get LDFLAGS)
|
||||
|
||||
-all: CFLAGS = -DLINBPQ -MMD -g -fcommon -fasynchronous-unwind-tables $(EXTRA_CFLAGS)
|
||||
-all: LIBS = -lpaho-mqtt3a -ljansson -lminiupnpc -lm -lz -lpthread -lconfig -lpcap
|
||||
+all: CFLAGS += -DLINBPQ -MMD -g -rdynamic -fcommon -fasynchronous-unwind-tables
|
||||
+all: LIBS = -lpaho-mqtt3a -ljansson -lminiupnpc -lrt -lm -lz -lpthread -lconfig -lpcap -lpng
|
||||
all: linbpq
|
||||
|
||||
#other OS
|
||||
@@ -74,12 +73,11 @@ noi2c: linbpq
|
||||
|
||||
|
||||
linbpq: $(OBJS)
|
||||
- cc $(OBJS) $(CFLAGS) $(LDFLAGS) $(LIBS) -o linbpq
|
||||
- sudo setcap "CAP_NET_ADMIN=ep CAP_NET_RAW=ep CAP_NET_BIND_SERVICE=ep" linbpq
|
||||
+ $(CC) $(OBJS) $(CFLAGS) $(LDFLAGS) $(LIBS) -o linbpq
|
||||
|
||||
-include *.d
|
||||
|
||||
-clean :
|
||||
- rm *.d
|
||||
- rm linbpq $(OBJS)
|
||||
+install:
|
||||
+ install -b -m 755 -D -d debian/linbpq/usr/sbin
|
||||
+ install -b -m 755 -p linbpq debian/linbpq/usr/sbin
|
||||
|
||||
2
debian/patches/series
vendored
Normal file
2
debian/patches/series
vendored
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
spelling-fixes.patch
|
||||
makefile
|
||||
21
debian/patches/spelling-fixes.patch
vendored
Normal file
21
debian/patches/spelling-fixes.patch
vendored
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
From: Dave Hibberd <hibby@debian.org>
|
||||
Date: Sat, 20 Sep 2025 15:42:15 +0100
|
||||
Subject: spelling-fixes
|
||||
|
||||
---
|
||||
UZ7HODrv.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/UZ7HODrv.c b/UZ7HODrv.c
|
||||
index 2adfe12..75e40ee 100644
|
||||
--- a/UZ7HODrv.c
|
||||
+++ b/UZ7HODrv.c
|
||||
@@ -387,7 +387,7 @@ int UZ7HOSetFreq(int port, struct TNCINFO * TNC, struct AGWINFO * AGW, PDATAMESS
|
||||
|
||||
if (AGW->CenterFreq == 0)
|
||||
{
|
||||
- buffptr->Len = sprintf((UCHAR *)&buffptr->Data[0], "UZ7HO} Invalid Modem Freqency\r");
|
||||
+ buffptr->Len = sprintf((UCHAR *)&buffptr->Data[0], "UZ7HO} Invalid Modem Frequency\r");
|
||||
return 1;
|
||||
}
|
||||
|
||||
47
debian/postinst
vendored
Normal file
47
debian/postinst
vendored
Normal file
|
|
@ -0,0 +1,47 @@
|
|||
#!/bin/sh
|
||||
|
||||
set -e
|
||||
|
||||
if [ "$1" = configure ]; then
|
||||
|
||||
# if ! getent group linbpq >/dev/null; then
|
||||
# addgroup --system --force-badname linbpq || true
|
||||
# fi
|
||||
|
||||
echo "Creating/updating linbpq user account..."
|
||||
adduser --system --group --home /opt/oarc/bpq \
|
||||
--gecos "linbpq system user" --shell /bin/false \
|
||||
--quiet --disabled-password linbpq || {
|
||||
# adduser failed. Why?
|
||||
if getent passwd linbpq >/dev/null ; then
|
||||
echo "Non-system user linbpq found. I will not overwrite a non-system" >&2
|
||||
echo "user. Remove the user and reinstall linbpq." >&2
|
||||
exit 1
|
||||
fi
|
||||
# unknown adduser error, simply exit
|
||||
exit 1
|
||||
}
|
||||
if ! id -nGz linbpq | grep -qzxF 'dialout' ; then
|
||||
adduser linbpq dialout
|
||||
fi
|
||||
if ! id -nGz linbpq | grep -qzxF 'plugdev' ; then
|
||||
adduser linbpq plugdev
|
||||
fi
|
||||
chown :linbpq /opt/oarc/bpq
|
||||
chmod 775 /opt/oarc/bpq
|
||||
|
||||
# If we have setcap is installed, set the requirements
|
||||
# which allows us to install our binaries without the setuid
|
||||
# bit.
|
||||
if command -v setcap > /dev/null; then
|
||||
setcap "CAP_NET_ADMIN=ep CAP_NET_RAW=ep CAP_NET_BIND_SERVICE=ep" /usr/sbin/linbpq
|
||||
else
|
||||
echo "Setcap failed on /usr/sbin/linbpq, Features may be limited" >&2
|
||||
fi
|
||||
else
|
||||
echo "Setcap is not installed, Features may be limited" >&2
|
||||
|
||||
|
||||
fi
|
||||
|
||||
#DEBHELPER#
|
||||
14
debian/preinst
vendored
Normal file
14
debian/preinst
vendored
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
#!/bin/sh
|
||||
|
||||
set -e
|
||||
|
||||
confile="/etc/bpq32.cfg"
|
||||
node="/opt/oarc/bpq/bpq32.cfg"
|
||||
|
||||
if [ -L $confile ]; then
|
||||
rm $confile
|
||||
cp $node $confile
|
||||
mv $node $node.bak
|
||||
fi
|
||||
|
||||
#DEBHELPER#
|
||||
6
debian/rules
vendored
Executable file
6
debian/rules
vendored
Executable file
|
|
@ -0,0 +1,6 @@
|
|||
#!/usr/bin/make -f
|
||||
|
||||
export DEB_BUILD_MAINT_OPTIONS=hardening=+all
|
||||
|
||||
%:
|
||||
dh $@
|
||||
1
debian/source/format
vendored
Normal file
1
debian/source/format
vendored
Normal file
|
|
@ -0,0 +1 @@
|
|||
3.0 (quilt)
|
||||
0
debian/source/include-binaries
vendored
Normal file
0
debian/source/include-binaries
vendored
Normal file
0
debian/source/lintian-overrides
vendored
Normal file
0
debian/source/lintian-overrides
vendored
Normal file
3
debian/watch
vendored
Normal file
3
debian/watch
vendored
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
version=4
|
||||
opts="pgpmode=none,dversionmangle=s/\+repack//,repacksuffix=+repack,repack,compression=xz" \
|
||||
http://127.0.0.1:8000/linbpq-(.+)\.(?:zip|tgz|tbz|txz|(?:tar\.(?:gz|bz2|xz)))
|
||||
Loading…
Reference in a new issue