docs: audit packet burst endpoints

This commit is contained in:
Mario Fetka
2026-06-02 15:29:50 +00:00
parent 57b3eb7f6e
commit c353677d32
3 changed files with 68 additions and 28 deletions

View File

@@ -6737,7 +6737,21 @@ static int handle_ncp_serv(void)
#endif
case 0x61 :
case 0x61 : /* SDK 97 / wire 0x61 Get Big Packet NCP Max Packet Size.
* Coverage: present as the packet-burst/big-packet
* negotiation slot. This is a 4.x-era direct NCP, so it is
* in current scope and no disabled missing stub is needed.
* Request: ProposedMaxSize word Hi-Lo, then SecurityFlag
* byte. The current parser reads both fields from
* requestdata[0..2].
* Reply: AcceptedMaxSize word Hi-Lo, EchoSocket word Hi-Lo,
* then SecurityFlag byte. MARS-NWE currently replies with
* negotiated packet size, sock_echo, and a zeroed flag byte.
* Known differences: the NDK security-flag negotiation
* semantics are documented, but this compatibility path does
* not implement signatures, checksums, or encryption policy;
* if burst mode is disabled it returns 0xfb.
*/
#if ENABLE_BURSTMODE
if (server_version_flags&1) { /* enable Burstmode */
/* Negotiate Buffer Size, Packetsize new ? */
@@ -6785,7 +6799,20 @@ static int handle_ncp_serv(void)
}
break;
case 0x65 : /* Packet Burst Connection Request */
case 0x65 : /* SDK 101 / wire 0x65 Packet Burst Connection Request.
* Coverage: present. This is the 4.x-era packet burst
* session setup NCP, distinct from Bindery/Queue SDK
* 23/101 which is dispatched under function 23 in nwbind.c.
* Request: ClientConnID long, LocalMaxPacketSize long
* Hi-Lo, LocalTargetSocket word Hi-Lo, LocalMaxSendSize
* long Hi-Lo, LocalMaxRecvSize long Hi-Lo.
* Reply: RemoteTargetID long, MaxPacketSize long Hi-Lo,
* MaxSendSize long Hi-Lo, MaxRecvSize long Hi-Lo.
* Runtime: when ENABLE_BURSTMODE and server_version_flags
* permit it, MARS-NWE allocates burst state and later
* serves 0x7777 packet-burst read/write fragments through
* handle_burst(). If disabled, it returns 0xfb.
*/
#if ENABLE_BURSTMODE
if (server_version_flags&1) { /* enable burstmode */
struct INPUT {
@@ -7192,6 +7219,17 @@ static void handle_burst_response(uint32 offset, int size)
}
/* Packet Burst 0x7777 data-plane packets.
* Coverage: this is not a 0x2222 function selector, but it is the runtime data
* path enabled by SDK 101 / wire 0x65 Packet Burst Connection Request.
* Request payload: burst header plus a reassembled BIG_READ/BIG_WRITE request
* in burst_w->recv_buf. The nested function word is little-endian: 1 = read,
* 2 = write.
* Reply payload: one or more 0x7777 burst packets containing BIG_READ/BIG_WRITE
* status structures and optional file data. nwconn owns the packet-burst
* response emission through send_burst()/handle_burst_response(); this does
* not use normal NCP completion bytes.
*/
static void handle_burst(BURSTPACKET *bp, int len)
{
if (burst_w) {