docs: audit direct lifecycle and buffer endpoints

This commit is contained in:
Mario Fetka
2026-06-02 05:32:34 +00:00
parent bfcb2e178f
commit 9be855ec7b
4 changed files with 100 additions and 14 deletions

View File

@@ -2946,11 +2946,26 @@ static void handle_fxx(int gelen, int func)
break;
} /* switch */
} else if (func == 0x18) { /* End of Job */
/* Forwarded direct NCP 0x2222/24 cleanup after nwconn releases local handles. */
/*
* Forwarded direct NCP 0x2222/24 End of Job.
*
* handle_fxx() does not consume a grouped subfunction header for this
* direct function: requestdata points at the empty post-FunctionCode
* payload. nwconn has already released task-local handles; nwbind only
* closes the matching print jobs and returns a normal empty reply.
*/
if (!(entry8_flags&0x200)) /* pcz: 14-Apr-00 */
nw_close_connection_jobs(act_connection, ncprequest->task); /* close print jobs */
} else if (func == 0x19) { /* logout */
/* Forwarded direct NCP 0x2222/25 logout cleanup after nwconn resets connection state. */
/*
* Forwarded direct NCP 0x2222/25 Logout.
*
* handle_fxx() does not consume a grouped subfunction header for this
* direct function: requestdata points at the empty post-FunctionCode
* payload. nwconn has already released local queue/file/user state;
* nwbind closes any remaining print jobs, records logout state, clears
* bindery identity, and returns a normal empty reply.
*/
nw_close_connection_jobs(act_connection, -1); /* close all print jobs */
write_utmp(0, act_connection, act_c->pid_nwconn, &(act_c->client_adr), NULL);
act_c->object_id = 0; /* not LOGIN */