- change_notify_reply_packet(map->req->fsp->conn, map->req->req,
- NT_STATUS_CANCELLED);
- change_notify_remove_request(map->req);
+ change_notify_reply(map->req->req,
+ NT_STATUS_CANCELLED, 0, NULL, map->req->reply_fn);
+ change_notify_remove_request(sconn, map->req);
+}
+
+void smbd_notify_cancel_by_smbreq(const struct smb_request *smbreq)
+{
+ struct smbd_server_connection *sconn = smbreq->sconn;
+ struct notify_mid_map *map;
+
+ for (map = sconn->smb1.notify_mid_maps; map; map = map->next) {
+ if (map->req->req == smbreq) {
+ break;
+ }
+ }
+
+ if (map == NULL) {
+ return;
+ }
+
+ change_notify_reply(map->req->req,
+ NT_STATUS_CANCELLED, 0, NULL, map->req->reply_fn);
+ change_notify_remove_request(sconn, map->req);