docs: audit packet burst endpoints
This commit is contained in:
42
src/nwconn.c
42
src/nwconn.c
@@ -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) {
|
||||
|
||||
Reference in New Issue
Block a user