This file is indexed.

/usr/lib/ruby/1.8/innate/cache/file_based.rb is in libinnate-ruby1.8 2010.07-1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
module Innate
  class Cache

    # Used by caches that serialize their contents to the filesystem.
    # Right now we do not lock around write access to the file outside of the
    # process, that means that all FileBased caches are not safe for use if you
    # need more than one instance of your application.
    module FileBased
      attr_reader :filename

      def cache_setup(*args)
        @prefix = args.compact.join('-')

        @dir = File.join(Dir.tmpdir, self.class::DIR)
        FileUtils.mkdir_p(@dir)

        @filename = File.join(@dir, @prefix + self.class::EXT)
        @store = self.class::STORE.new(@filename)
      end

      def cache_clear
        FileUtils.mkdir_p(@dir)
        FileUtils.rm_f(@filename)
        @store = self.class::STORE.new(@filename)
      end

      def cache_store(*args)
        super{|key, value| transaction{|store| store[key] = value } }
      end

      def cache_fetch(*args)
        super{|key| transaction{|store| store[key] } }
      end

      def cache_delete(*args)
        super{|key| transaction{|store| store.delete(key) } }
      end

      def transaction(&block)
        Innate.sync{ @store.transaction(&block) }
      end
    end
  end
end