nfs: log read/write/rename whatever the nfs version

These were previously logged correctly only for nfs v3

Now, the correct opcodes are used for v2 and v4 as well

Ticket: 8222
(cherry picked from commit 1832b50506)
pull/14647/head
Philippe Antoine 3 months ago committed by Victor Julien
parent 89ce3f2565
commit c6d9b573a0

@ -111,20 +111,18 @@ fn nfs_log_response(
js.set_string("status", &nfs3_status_string(tx.nfs_response_status))?;
if state.nfs_version <= 3 {
if tx.procedure == NFSPROC3_READ {
js.open_object("read")?;
nfs_file_object(tx, js)?;
js.close()?;
} else if tx.procedure == NFSPROC3_WRITE {
js.open_object("write")?;
nfs_file_object(tx, js)?;
js.close()?;
} else if tx.procedure == NFSPROC3_RENAME {
js.open_object("rename")?;
nfs_rename_object(tx, js)?;
js.close()?;
}
if nfs_is_read(state.nfs_version, tx.procedure) {
js.open_object("read")?;
nfs_file_object(tx, js)?;
js.close()?;
} else if nfs_is_write(state.nfs_version, tx.procedure) {
js.open_object("write")?;
nfs_file_object(tx, js)?;
js.close()?;
} else if nfs_is_rename(state.nfs_version, tx.procedure) {
js.open_object("rename")?;
nfs_rename_object(tx, js)?;
js.close()?;
}
Ok(())
}

@ -348,3 +348,33 @@ pub fn nfs4_procedure_string(procedure: u32) -> String {
}
pub const NFS4_OK: u32 = 0;
pub(super) fn nfs_is_read(version: u16, proc: u32) -> bool {
match version
{
2 => proc == (NfsProc2::READ as u32),
3 => proc == NFSPROC3_READ,
4 => proc == NFSPROC4_READ,
_ => false,
}
}
pub(super) fn nfs_is_write(version: u16, proc: u32) -> bool {
match version
{
2 => proc == (NfsProc2::WRITE as u32),
3 => proc == NFSPROC3_WRITE,
4 => proc == NFSPROC4_WRITE,
_ => false,
}
}
pub(super) fn nfs_is_rename(version: u16, proc: u32) -> bool {
match version
{
2 => proc == (NfsProc2::RENAME as u32),
3 => proc == NFSPROC3_RENAME,
4 => proc == NFSPROC4_RENAME,
_ => false,
}
}
Loading…
Cancel
Save