static inline void analyze_nfsv3_procedure()

in src/analysis/nfs_parser.cpp [137:209]


static inline void analyze_nfsv3_procedure(const uint32_t procedure, XDRDecoder&& c, XDRDecoder&& r, const Session* s, Analyzers& analyzers)
{
    using namespace NST::protocols::NFS3;
    switch(procedure)
    {
    case ProcEnumNFS3::NFS_NULL:
        analyzers(&IAnalyzer::INFSv3rpcgen::null, NFSPROC3RPCGEN_NULL{c, r, s});
        break;
    case ProcEnumNFS3::GETATTR:
        analyzers(&IAnalyzer::INFSv3rpcgen::getattr3, NFSPROC3RPCGEN_GETATTR{c, r, s});
        break;
    case ProcEnumNFS3::SETATTR:
        analyzers(&IAnalyzer::INFSv3rpcgen::setattr3, NFSPROC3RPCGEN_SETATTR{c, r, s});
        break;
    case ProcEnumNFS3::LOOKUP:
        analyzers(&IAnalyzer::INFSv3rpcgen::lookup3, NFSPROC3RPCGEN_LOOKUP{c, r, s});
        break;
    case ProcEnumNFS3::ACCESS:
        analyzers(&IAnalyzer::INFSv3rpcgen::access3, NFSPROC3RPCGEN_ACCESS{c, r, s});
        break;
    case ProcEnumNFS3::READLINK:
        analyzers(&IAnalyzer::INFSv3rpcgen::readlink3, NFSPROC3RPCGEN_READLINK{c, r, s});
        break;
    case ProcEnumNFS3::READ:
        analyzers(&IAnalyzer::INFSv3rpcgen::read3, NFSPROC3RPCGEN_READ{c, r, s});
        break;
    case ProcEnumNFS3::WRITE:
        analyzers(&IAnalyzer::INFSv3rpcgen::write3, NFSPROC3RPCGEN_WRITE{c, r, s});
        break;
    case ProcEnumNFS3::CREATE:
        analyzers(&IAnalyzer::INFSv3rpcgen::create3, NFSPROC3RPCGEN_CREATE{c, r, s});
        break;
    case ProcEnumNFS3::MKDIR:
        analyzers(&IAnalyzer::INFSv3rpcgen::mkdir3, NFSPROC3RPCGEN_MKDIR{c, r, s});
        break;
    case ProcEnumNFS3::SYMLINK:
        analyzers(&IAnalyzer::INFSv3rpcgen::symlink3, NFSPROC3RPCGEN_SYMLINK{c, r, s});
        break;
    case ProcEnumNFS3::MKNOD:
        analyzers(&IAnalyzer::INFSv3rpcgen::mknod3, NFSPROC3RPCGEN_MKNOD{c, r, s});
        break;
    case ProcEnumNFS3::REMOVE:
        analyzers(&IAnalyzer::INFSv3rpcgen::remove3, NFSPROC3RPCGEN_REMOVE{c, r, s});
        break;
    case ProcEnumNFS3::RMDIR:
        analyzers(&IAnalyzer::INFSv3rpcgen::rmdir3, NFSPROC3RPCGEN_RMDIR{c, r, s});
        break;
    case ProcEnumNFS3::RENAME:
        analyzers(&IAnalyzer::INFSv3rpcgen::rename3, NFSPROC3RPCGEN_RENAME{c, r, s});
        break;
    case ProcEnumNFS3::LINK:
        analyzers(&IAnalyzer::INFSv3rpcgen::link3, NFSPROC3RPCGEN_LINK{c, r, s});
        break;
    case ProcEnumNFS3::READDIR:
        analyzers(&IAnalyzer::INFSv3rpcgen::readdir3, NFSPROC3RPCGEN_READDIR{c, r, s});
        break;
    case ProcEnumNFS3::READDIRPLUS:
        analyzers(&IAnalyzer::INFSv3rpcgen::readdirplus3, NFSPROC3RPCGEN_READDIRPLUS{c, r, s});
        break;
    case ProcEnumNFS3::FSSTAT:
        analyzers(&IAnalyzer::INFSv3rpcgen::fsstat3, NFSPROC3RPCGEN_FSSTAT{c, r, s});
        break;
    case ProcEnumNFS3::FSINFO:
        analyzers(&IAnalyzer::INFSv3rpcgen::fsinfo3, NFSPROC3RPCGEN_FSINFO{c, r, s});
        break;
    case ProcEnumNFS3::PATHCONF:
        analyzers(&IAnalyzer::INFSv3rpcgen::pathconf3, NFSPROC3RPCGEN_PATHCONF{c, r, s});
        break;
    case ProcEnumNFS3::COMMIT:
        analyzers(&IAnalyzer::INFSv3rpcgen::commit3, NFSPROC3RPCGEN_COMMIT{c, r, s});
        break;
    }
}