示例#1
0
    def explain(self, query, result):
        self.fd.explain(query, result)

        tmp = result.__class__(result)
        v = self.get_vol_object()

        # Get system time
        timespec = info_systime(v.addr_space, v.theProfile, v.symtable)
        tv_sec = timespec.tv_sec
        time = self.format_time(tv_sec)

        # Get timezone information
        sys_tz = info_timezone(v.addr_space, v.theProfile, v.symtable)
        tz_minuteswest = sys_tz.tz_minuteswest
        tz_hours = tz_minuteswest / 60
        tz_dsttime = sys_tz.tz_dsttime

        # Get the number of cpus
        num_cpus = info_cpus(v.addr_space, v.theProfile, v.symtable)

        # Get utsname info
        system_utsname = info_system_utsname(v.addr_space, v.theProfile,
                                             v.symtable)
        if not system_utsname:
            print "Cannot access uts information"
            return

        release = read_null_string(v.addr_space, v.theProfile.abstract_types,\
                ['new_utsname', 'release'], system_utsname.offset)
        nodename = read_null_string(v.addr_space, v.theProfile.abstract_types,\
                ['new_utsname', 'nodename'], system_utsname.offset)
        sysname = read_null_string(v.addr_space, v.theProfile.abstract_types,\
                ['new_utsname', 'sysname'], system_utsname.offset)
        version = read_null_string(v.addr_space, v.theProfile.abstract_types,\
                ['new_utsname', 'version'], system_utsname.offset)
        machine = read_null_string(v.addr_space, v.theProfile.abstract_types,\
                ['new_utsname', 'machine'], system_utsname.offset)
        domainname = read_null_string(v.addr_space, v.theProfile.abstract_types,\
                ['new_utsname', 'domainname'], system_utsname.offset)

        tmp.row("CPUS", num_cpus, **{'class': 'explain'})
        tmp.row("GMTDATE", time, **{'class': 'explain'})
        tmp.row(
            "TIMEZONE", "GMT -%d (minutes west: %d dsttime: %d)" %
            (tz_hours, tz_minuteswest, tz_dsttime), **{'class': 'explain'})
        tmp.row("RELEASE", release, **{'class': 'explain'})
        tmp.row("NODENAME", nodename, **{'class': 'explain'})
        tmp.row("SYSNAME", sysname, **{'class': 'explain'})
        tmp.row("VERSION", version, **{'class': 'explain'})
        tmp.row("MACHINE", machine, **{'class': 'explain'})
        tmp.row("DOMAINNAME", domainname, **{'class': 'explain'})

        result.row("Linux Memory Image", tmp, **{'class': 'explainrow'})
示例#2
0
    def execute(self):

        (profile, addr_space, symtab, types) = linux_load_and_identify_image( \
                   self.op, self.opts)

        theProfile = Profile(abstract_types=profile)

        # Get system time
        timespec = info_systime(addr_space, theProfile, symtab)
        tv_sec = timespec.tv_sec
        time = self.format_time(tv_sec)

        # Get timezone information
        sys_tz = info_timezone(addr_space, theProfile, symtab)
        tz_minuteswest = sys_tz.tz_minuteswest
        tz_hours = tz_minuteswest / 60
        tz_dsttime = sys_tz.tz_dsttime

        # Get the number of cpus
        num_cpus = info_cpus(addr_space, theProfile, symtab)

        # Get utsname info
        system_utsname = info_system_utsname(addr_space, theProfile, symtab)
        if not system_utsname:
            print "Cannot access uts information"
            return

        release = read_null_string(addr_space, theProfile.abstract_types,\
                ['new_utsname', 'release'], system_utsname.offset)
        nodename = read_null_string(addr_space, theProfile.abstract_types,\
                ['new_utsname', 'nodename'], system_utsname.offset)
        sysname = read_null_string(addr_space, theProfile.abstract_types,\
                ['new_utsname', 'sysname'], system_utsname.offset)
        version = read_null_string(addr_space, theProfile.abstract_types,\
                ['new_utsname', 'version'], system_utsname.offset)
        machine = read_null_string(addr_space, theProfile.abstract_types,\
                ['new_utsname', 'machine'], system_utsname.offset)
        domainname = read_null_string(addr_space, theProfile.abstract_types,\
                ['new_utsname', 'domainname'], system_utsname.offset)

        print "%-11s: %s" % ("DUMPFILE", self.opts.filename)
        print "%-11s: %d" % ("CPUS", num_cpus)
        print "%-11s: %s" % ("GMTDATE", time)
        print "%-11s: %s" % ("TIMEZONE",
                             "GMT -%d (minutes west: %d dsttime: %d)" %
                             (tz_hours, tz_minuteswest, tz_dsttime))
        print "%-11s: %s" % ("RELEASE", release)
        print "%-11s: %s" % ("NODENAME", nodename)
        print "%-11s: %s" % ("SYSNAME", sysname)
        print "%-11s: %s" % ("VERSION", version)
        print "%-11s: %s" % ("MACHINE", machine)
        print "%-11s: %s" % ("DOMAINNAME", domainname)
示例#3
0
    def execute(self):

	(profile, addr_space, symtab, types) = linux_load_and_identify_image( \
            self.op, self.opts)

        theProfile = Profile(abstract_types=profile)

        # Get system time
        timespec = info_systime(addr_space, theProfile, symtab)
	tv_sec = timespec.tv_sec
	time = self.format_time(tv_sec)

        # Get timezone information
        sys_tz = info_timezone(addr_space, theProfile, symtab)
        tz_minuteswest = sys_tz.tz_minuteswest
	tz_hours = tz_minuteswest/60
	tz_dsttime = sys_tz.tz_dsttime

        # Get the number of cpus
        num_cpus = info_cpus(addr_space, theProfile, symtab)

        # Get utsname info
        system_utsname = info_system_utsname(addr_space, theProfile, symtab)
        if not system_utsname:
	    print "Cannot access uts information"
	    return

        release = read_null_string(addr_space, theProfile.abstract_types,\
                ['new_utsname', 'release'], system_utsname.offset)
        nodename = read_null_string(addr_space, theProfile.abstract_types,\
                ['new_utsname', 'nodename'], system_utsname.offset)
        sysname = read_null_string(addr_space, theProfile.abstract_types,\
                ['new_utsname', 'sysname'], system_utsname.offset)
        version = read_null_string(addr_space, theProfile.abstract_types,\
                ['new_utsname', 'version'], system_utsname.offset)
        machine = read_null_string(addr_space, theProfile.abstract_types,\
                ['new_utsname', 'machine'], system_utsname.offset)
        domainname = read_null_string(addr_space, theProfile.abstract_types,\
                ['new_utsname', 'domainname'], system_utsname.offset)

        print "%-11s: %s"%("DUMPFILE",self.opts.filename)
        print "%-11s: %d"%("CPUS",num_cpus)
        print "%-11s: %s"%("GMTDATE",time)
       	print "%-11s: %s"%("TIMEZONE","GMT -%d (minutes west: %d dsttime: %d)"%(tz_hours,tz_minuteswest,tz_dsttime))
        print "%-11s: %s"%("RELEASE",release)
        print "%-11s: %s"%("NODENAME",nodename)
        print "%-11s: %s"%("SYSNAME",sysname)
        print "%-11s: %s"%("VERSION",version)
        print "%-11s: %s"%("MACHINE",machine)
        print "%-11s: %s"%("DOMAINNAME",domainname)
示例#4
0
    def explain(self, query, result):
        self.fd.explain(query,result)

        tmp = result.__class__(result)
        v=self.get_vol_object()

        # Get system time
        timespec = info_systime(v.addr_space, v.theProfile, v.symtable)
	tv_sec = timespec.tv_sec
	time = self.format_time(tv_sec)

        # Get timezone information
        sys_tz = info_timezone(v.addr_space, v.theProfile, v.symtable)
        tz_minuteswest = sys_tz.tz_minuteswest
	tz_hours = tz_minuteswest/60
	tz_dsttime = sys_tz.tz_dsttime

        # Get the number of cpus
        num_cpus = info_cpus(v.addr_space, v.theProfile, v.symtable)

        # Get utsname info
        system_utsname = info_system_utsname(v.addr_space, v.theProfile, v.symtable)
        if not system_utsname:
	    print "Cannot access uts information"
	    return

        release = read_null_string(v.addr_space, v.theProfile.abstract_types,\
                ['new_utsname', 'release'], system_utsname.offset)
        nodename = read_null_string(v.addr_space, v.theProfile.abstract_types,\
                ['new_utsname', 'nodename'], system_utsname.offset)
        sysname = read_null_string(v.addr_space, v.theProfile.abstract_types,\
                ['new_utsname', 'sysname'], system_utsname.offset)
        version = read_null_string(v.addr_space, v.theProfile.abstract_types,\
                ['new_utsname', 'version'], system_utsname.offset)
        machine = read_null_string(v.addr_space, v.theProfile.abstract_types,\
                ['new_utsname', 'machine'], system_utsname.offset)
        domainname = read_null_string(v.addr_space, v.theProfile.abstract_types,\
                ['new_utsname', 'domainname'], system_utsname.offset)

        tmp.row("CPUS",num_cpus,**{'class': 'explain'})
        tmp.row("GMTDATE",time,**{'class': 'explain'})
       	tmp.row("TIMEZONE","GMT -%d (minutes west: %d dsttime: %d)"%(tz_hours,tz_minuteswest,tz_dsttime),**{'class': 'explain'})
        tmp.row("RELEASE",release,**{'class': 'explain'})
        tmp.row("NODENAME",nodename,**{'class': 'explain'})
        tmp.row("SYSNAME",sysname,**{'class': 'explain'})
        tmp.row("VERSION",version,**{'class': 'explain'})
        tmp.row("MACHINE",machine,**{'class': 'explain'})
        tmp.row("DOMAINNAME",domainname,**{'class': 'explain'})

        result.row("Linux Memory Image", tmp,**{'class': 'explainrow'})