# File lib/cft/rpm.rb, line 27
    def self.readstate(fname)
        result = {}
        return result unless File::exist?(fname)
        File::open(fname, "r") do |f|
            f.each_line do |l|
                na, e, v, r = l.split
                result[na] ||= []
                result[na] << RPM::Version::new(v, r, e)
            end
        end
        return result
    end