コード例 #1
0
ファイル: nfs.py プロジェクト: Hem1700/packet_sniffer
class SYMLINK_Call(Packet):
    name = 'SYMLINK Call'
    fields_desc = [
        PacketField('dir', File_Object(), File_Object),
        PacketField('dir_name', Object_Name(), Object_Name),
        PacketField('attributes', Sattr3(), Sattr3),
        PacketField('link_name', Object_Name(), Object_Name)
    ]
コード例 #2
0
ファイル: nfs.py プロジェクト: Hem1700/packet_sniffer
class RENAME_Call(Packet):
    name = 'RENAME Call'
    fields_desc = [
        PacketField('dir_from', File_Object(), File_Object),
        PacketField('name_from', Object_Name(), Object_Name),
        PacketField('dir_to', File_Object(), File_Object),
        PacketField('name_to', Object_Name(), Object_Name),
    ]
コード例 #3
0
ファイル: nlm.py プロジェクト: Hem1700/packet_sniffer
class UNSHARE_Call(Packet):
    name = 'UNSHARE Reply'
    fields_desc = [
        PacketField('cookie', NLM4_Cookie(), NLM4_Cookie),
        PacketField('caller', Object_Name(), Object_Name),
        PacketField('filehandle', File_Object(), File_Object),
        PacketField('owner', Object_Name(), Object_Name),
        IntField('mode', 0),
        IntField('access', 0),
        IntEnumField('reclaim', 0, {0: 'NO', 1: 'YES'})
    ]
コード例 #4
0
ファイル: nlm.py プロジェクト: Hem1700/packet_sniffer
class UNLOCK_Call(Packet):
    name = 'UNLOCK Call'
    fields_desc = [
        PacketField('cookie', NLM4_Cookie(), NLM4_Cookie),
        PacketField('caller', Object_Name(), Object_Name),
        PacketField('filehandle', File_Object(), File_Object),
        PacketField('owner', Object_Name(), Object_Name),
        IntField('svid', 0),
        LongField('l_offset', 0),
        LongField('l_len', 0)
    ]
コード例 #5
0
ファイル: nlm.py プロジェクト: Hem1700/packet_sniffer
class TEST_Call(Packet):
    name = 'TEST Call'
    fields_desc = [
        PacketField('cookie', NLM4_Cookie(), NLM4_Cookie),
        IntEnumField('exclusive', 0, {0: 'NO', 1: 'YES'}),
        PacketField('caller', Object_Name(), Object_Name),
        PacketField('filehandle', File_Object(), File_Object),
        PacketField('owner', Object_Name(), Object_Name),
        IntField('svid', 0),
        LongField('l_offset', 0),
        LongField('l_len', 0)
    ]
コード例 #6
0
ファイル: nfs.py プロジェクト: Hem1700/packet_sniffer
class MKDIR_Call(Packet):
    name = 'MKDIR Call'
    fields_desc = [
        PacketField('dir', File_Object(), File_Object),
        PacketField('dir_name', Object_Name(), Object_Name),
        PacketField('attributes', Sattr3(), Sattr3)
    ]
コード例 #7
0
ファイル: nfs.py プロジェクト: Hem1700/packet_sniffer
class LINK_Call(Packet):
    name = 'LINK Call'
    fields_desc = [
        PacketField('filehandle', File_Object(), File_Object),
        PacketField('link_dir', File_Object(), File_Object),
        PacketField('link_name', Object_Name(), Object_Name)
    ]
コード例 #8
0
ファイル: nfs.py プロジェクト: Hem1700/packet_sniffer
class READLINK_Reply(Packet):
    name = 'READLINK Reply'
    fields_desc = [
        IntEnumField('status', 0, nfsstat3),
        IntField('attributes_follow', 0),
        ConditionalField(PacketField('attributes', Fattr3(), Fattr3),
                         lambda pkt: pkt.attributes_follow == 1),
        ConditionalField(PacketField('filename', Object_Name(), Object_Name),
                         lambda pkt: pkt.status == 0)
    ]
コード例 #9
0
ファイル: nfs.py プロジェクト: Hem1700/packet_sniffer
class File_From_Dir(Packet):
    name = 'File'
    fields_desc = [
        LongField('fileid', 0),
        PacketField('filename', Object_Name(), Object_Name),
        LongField('cookie', 0),
        IntField('value_follows', 0)
    ]

    def extract_padding(self, s):
        return '', s
コード例 #10
0
ファイル: nfs.py プロジェクト: Hem1700/packet_sniffer
class CREATE_Call(Packet):
    name = 'CREATE Call'
    fields_desc = [
        PacketField('dir', File_Object(), File_Object),
        PacketField('filename', Object_Name(), Object_Name),
        IntEnumField('create_mode', None, {
            0: 'UNCHECKED',
            1: 'GUARDED',
            2: 'EXCLUSIVE'
        }),
        ConditionalField(PacketField('attributes', Sattr3(), Sattr3),
                         lambda pkt: pkt.create_mode != 2),
        ConditionalField(XLongField('verifier', 0),
                         lambda pkt: pkt.create_mode == 2)
    ]
コード例 #11
0
ファイル: nfs.py プロジェクト: Hem1700/packet_sniffer
class File_From_Dir_Plus(Packet):
    name = 'File'
    fields_desc = [
        LongField('fileid', 0),
        PacketField('filename', Object_Name(), Object_Name),
        LongField('cookie', 0),
        IntField('attributes_follow', 0),
        ConditionalField(PacketField('attributes', Fattr3(), Fattr3),
                         lambda pkt: pkt.attributes_follow == 1),
        IntField('handle_follows', 0),
        ConditionalField(PacketField('filehandle', File_Object(), File_Object),
                         lambda pkt: pkt.handle_follows == 1),
        IntField('value_follows', 0)
    ]

    def extract_padding(self, s):
        return '', s
コード例 #12
0
ファイル: nfs.py プロジェクト: Hem1700/packet_sniffer
class RMDIR_Call(Packet):
    name = 'RMDIR Call'
    fields_desc = [
        PacketField('dir', File_Object(), File_Object),
        PacketField('filename', Object_Name(), Object_Name),
    ]
コード例 #13
0
ファイル: nfs.py プロジェクト: Hem1700/packet_sniffer
class REMOVE_Call(Packet):
    name = 'REMOVE Call'
    fields_desc = [
        PacketField('dir', File_Object(), File_Object),
        PacketField('filename', Object_Name(), Object_Name)
    ]
コード例 #14
0
ファイル: nfs.py プロジェクト: Hem1700/packet_sniffer
class LOOKUP_Call(Packet):
    name = 'LOOKUP Call'
    fields_desc = [
        PacketField('dir', File_Object(), File_Object),
        PacketField('filename', Object_Name(), Object_Name)
    ]