Update upstream source from tag 'upstream/6.0.24.55+repack'

Update to upstream version '6.0.24.55+repack'
with Debian dir ba150ac059
This commit is contained in:
Hibby 2025-01-05 23:25:05 +00:00
commit b060bf5d39
No known key found for this signature in database
12 changed files with 41 additions and 49 deletions

View File

@ -1238,7 +1238,10 @@ along with LinBPQ/BPQ32. If not, see http://www.gnu.org/licenses
// Fix handling long unix device names (now max 250 bytes) (52) // Fix handling long unix device names (now max 250 bytes) (52)
// Fix error reporting in api update (53) // Fix error reporting in api update (53)
// Coding changes to remove some compiler warnings (53, 54) // Coding changes to remove some compiler warnings (53, 54)
// Add MQTT reporting o // Add MQTT reporting of Mail Events (54)
// Fix beaconong on KISSHF ports (55)
// Fix MailAPI msgs endpoint
#define CKernel #define CKernel

View File

@ -92,7 +92,6 @@ VOID InnerCommandHandler(TRANSPORTENTRY * Session, struct DATAMESSAGE * Buffer);
VOID DoTheCommand(TRANSPORTENTRY * Session); VOID DoTheCommand(TRANSPORTENTRY * Session);
char * MOVEANDCHECK(TRANSPORTENTRY * Session, char * Bufferptr, char * Source, int Len); char * MOVEANDCHECK(TRANSPORTENTRY * Session, char * Bufferptr, char * Source, int Len);
VOID DISPLAYCIRCUIT(TRANSPORTENTRY * L4, char * Buffer); VOID DISPLAYCIRCUIT(TRANSPORTENTRY * L4, char * Buffer);
char * FormatUptime(int Uptime);
char * strlop(const char * buf, char delim); char * strlop(const char * buf, char delim);
BOOL CompareCalls(UCHAR * c1, UCHAR * c2); BOOL CompareCalls(UCHAR * c1, UCHAR * c2);

12
Cmd.c
View File

@ -1005,8 +1005,16 @@ VOID CMDSTATS(TRANSPORTENTRY * Session, char * Bufferptr, char * CmdTail, struct
if (Port == 0) if (Port == 0)
{ {
uptime = FormatUptime(STATSTIME); struct tm * TM;
Bufferptr = Cmdprintf(Session, Bufferptr, "%s", uptime); char UPTime[50];
time_t szClock = STATSTIME * 60;
TM = gmtime(&szClock);
sprintf(UPTime, "Uptime (Days Hours Mins) %.2d:%.2d:%.2d\r",
TM->tm_yday, TM->tm_hour, TM->tm_min);
Bufferptr = Cmdprintf(Session, Bufferptr, "%s", UPTime);
Bufferptr = Cmdprintf(Session, Bufferptr, "Semaphore Get-Rel/Clashes %9d%9d\r", Bufferptr = Cmdprintf(Session, Bufferptr, "Semaphore Get-Rel/Clashes %9d%9d\r",
Semaphore.Gets - Semaphore.Rels, Semaphore.Clashes); Semaphore.Gets - Semaphore.Rels, Semaphore.Clashes);

View File

@ -722,8 +722,6 @@ VOID CheckForDetach(struct TNCINFO * TNC, int Stream, struct STREAMINFO * STREAM
if (STREAM->Connected || STREAM->Connecting) if (STREAM->Connected || STREAM->Connecting)
{ {
char logmsg[120];
time_t Duration;
// Need to do a tidy close // Need to do a tidy close
@ -1603,9 +1601,9 @@ DllExport int APIENTRY SendRaw(int port, char * msg, int len)
MSG->LENGTH = len + MSGHDDRLEN; MSG->LENGTH = len + MSGHDDRLEN;
if (PORT->PROTOCOL == 10) // PACTOR/WINMOR Style if (PORT->PROTOCOL == 10 && PORT->TNC && PORT->TNC->Hardware != H_KISSHF) // PACTOR/WINMOR Style
{ {
// Pactor Style. Probably will only be used for Tracker uneless we do APRS over V4 or WINMOR // Pactor Style. Probably will only be used for Tracker unless we do APRS over V4 or WINMOR
EXTPORTDATA * EXTPORT = (EXTPORTDATA *) PORT; EXTPORTDATA * EXTPORT = (EXTPORTDATA *) PORT;
@ -3009,19 +3007,7 @@ DllExport int APIENTRY ClearNodes ()
return (0); return (0);
} }
char * FormatUptime(int Uptime)
{
struct tm * TM;
static char UPTime[50];
time_t szClock = Uptime * 60;
TM = gmtime(&szClock);
sprintf(UPTime, "Uptime (Days Hours Mins) %.2d:%.2d:%.2d\r",
TM->tm_yday, TM->tm_hour, TM->tm_min);
return UPTime;
}
static char *month[] = {"Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"}; static char *month[] = {"Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"};
@ -4992,7 +4978,7 @@ DllExport VOID WINAPI SendWebRequest(char * Host, char * Request, char * Params,
while (InputLen != -1) while (InputLen != -1)
{ {
InputLen = recv(sock, &Buffer[inptr], 4096 - inptr, 0); InputLen = recv(sock, &Buffer[inptr], 4095 - inptr, 0);
if (InputLen == -1 || InputLen == 0) if (InputLen == -1 || InputLen == 0)
{ {
@ -5053,7 +5039,7 @@ DllExport VOID WINAPI SendWebRequest(char * Host, char * Request, char * Params,
if (ptr1) if (ptr1)
{ {
// Just accept anything until I've sorted things with Lee // Just accept anything until I've sorted things with Lee
Debugprintf("%s", ptr1);
closesocket(sock); closesocket(sock);
Debugprintf("Web Database update ok"); Debugprintf("Web Database update ok");
return; return;
@ -5148,7 +5134,6 @@ skipit:
void SendDataToPktMap(char *Msg) void SendDataToPktMap(char *Msg)
{ {
SOCKET sock;
char Return[256]; char Return[256];
char Request[64]; char Request[64];
char Params[50000]; char Params[50000];

View File

@ -350,6 +350,7 @@ ok:
// See if any frames for this port // See if any frames for this port
STREAM = &TNC->Streams[0]; STREAM = &TNC->Streams[0];
if (STREAM->BPQtoPACTOR_Q) if (STREAM->BPQtoPACTOR_Q)

View File

@ -476,7 +476,7 @@ UINT UIARQExtInit(EXTPORTDATA * PortEntry)
while (TNC->ARQPorts[i]) while (TNC->ARQPorts[i])
{ {
PORT = GetPortTableEntryFromPortNum(TNC->ARQPorts[i]); PORT = GetPortTableEntryFromPortNum(TNC->ARQPorts[i]);
PORT->UIHook = (FARPROCY)UIHook; PORT->UIHook = UIHook;
PORT->HookPort = (struct PORTCONTROL *)PortEntry; PORT->HookPort = (struct PORTCONTROL *)PortEntry;
i++; i++;
} }

View File

@ -10,8 +10,8 @@
#endif #endif
#define KVers 6,0,24,54 #define KVers 6,0,24,55
#define KVerstring "6.0.24.54\0" #define KVerstring "6.0.24.55\0"
#ifdef CKernel #ifdef CKernel

8
debian/changelog vendored
View File

@ -1,3 +1,11 @@
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 linbpq (6.0.24.54+repack-1~hibbian+1) bookworm-hibbian-unstable; urgency=medium
* New Upstream * New Upstream

7
debian/control vendored
View File

@ -3,10 +3,11 @@ Section: hamradio
Priority: optional Priority: optional
Maintainer: Dave Hibberd <hibby@debian.org> Maintainer: Dave Hibberd <hibby@debian.org>
Standards-Version: 4.7.0.0 Standards-Version: 4.7.0.0
Vcs-Browser: https://github.com/Online-Amateur-Radio-Club-M0OUK/oarc-bpqnode Vcs-Browser: https://git.hibbian.org/Hibbian/linbpq
Vcs-Git: https://github.com/Online-Amateur-Radio-Club-M0OUK/oarc-bpqnode.git Vcs-Git: https://git.hibbian.org/Hibbian/linbpq.git
Homepage: https://www.cantab.net/users/john.wiseman/Documents/ Homepage: https://www.cantab.net/users/john.wiseman/Documents/
Build-Depends: debhelper-compat (= 13), libssl-dev, libminiupnpc-dev, libpcap-dev, libconfig-dev, zlib1g-dev, libpaho-mqtt-dev, libjansson-dev, libpng-dev 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 Rules-Requires-Root: no
Package: linbpq Package: linbpq

2
debian/rules vendored
View File

@ -1,6 +1,6 @@
#!/usr/bin/make -f #!/usr/bin/make -f
export DEB_BUILD_MAINT_OPTIONS=hardening=+all,-format qa=-bug-implicit-func export DEB_BUILD_MAINT_OPTIONS=hardening=+all
%: %:
dh $@ dh $@

View File

@ -406,8 +406,8 @@ int WebMailAPIProcessHTTPMessage(char * response, char * Method, char * URL, cha
return 0; return 0;
} }
// Unauthorised users can only get bulls. // Unauthenticated users can only get bulls.
// Autothorised may read only users message or all messages depending on sysop status // Authenticated users may read only that users messages or all messages depending on sysop status
int sendMsgList(struct HTTPConnectionInfo * Session, char * response, char * Rest, int Auth) int sendMsgList(struct HTTPConnectionInfo * Session, char * response, char * Rest, int Auth)
{ {
@ -442,15 +442,10 @@ int sendMsgList(struct HTTPConnectionInfo * Session, char * response, char * Res
char UTF8Title[4096]; char UTF8Title[4096];
char * EncodedTitle; char * EncodedTitle;
// List if it is the right type and in the page range we want // List if it is the right type
if (Count++ < Session->WebMailSkip)
continue;
ptr += sprintf(ptr, "{\r\n"); ptr += sprintf(ptr, "{\r\n");
strcpy(Via, Msg->via); strcpy(Via, Msg->via);
strlop(Via, '.'); strlop(Via, '.');
@ -473,18 +468,8 @@ int sendMsgList(struct HTTPConnectionInfo * Session, char * response, char * Res
free(EncodedTitle); free(EncodedTitle);
// ptr += sprintf(ptr, "<a href=/WebMail/WM?%s&%d>%6d</a> %s %c%c %5d %-8s%-8s%-8s%s\r\n",
// Session->Key, Msg->number, Msg->number,
// FormatDateAndTime((time_t)Msg->datecreated, TRUE), Msg->type,
// Msg->status, Msg->length, Msg->to, Via,
// Msg->from, UTF8Title);
ptr += sprintf(ptr, "},\r\n"); ptr += sprintf(ptr, "},\r\n");
n--;
if (n == 0)
break;
} }
} }

View File

@ -893,7 +893,9 @@ static VOID ForcedClose(struct TNCINFO * TNC, int Stream);
static VOID CloseComplete(struct TNCINFO * TNC, int Stream); static VOID CloseComplete(struct TNCINFO * TNC, int Stream);
VOID CheckForDetach(struct TNCINFO * TNC, int Stream, struct STREAMINFO * STREAM, VOID CheckForDetach(struct TNCINFO * TNC, int Stream, struct STREAMINFO * STREAM,
VOID TidyClose(), VOID ForcedClose(), VOID CloseComplete()); VOID TidyCloseProc(struct TNCINFO * TNC, int Stream), VOID ForcedCloseProc(struct TNCINFO * TNC, int Stream),
VOID CloseComplete(struct TNCINFO * TNC, int Stream));
BOOL InterlockedCheckBusy(struct TNCINFO * ThisTNC); BOOL InterlockedCheckBusy(struct TNCINFO * ThisTNC);