This file is indexed.

/usr/lib/python2.7/dist-packages/foolscap/vocab.py is in python-foolscap 0.6.4-2.

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
from foolscap.hashutil import sha1_hasher

# here is the list of initial vocab tables. If the two ends negotiate to use
# initial-vocab-table-index N, then both sides will start with the words from
# INITIAL_VOCAB_TABLES[n] for their VOCABized tokens.

vocab_v0 = []
vocab_v1 = [ # all opentypes used in 0.0.6
    "none", "boolean", "reference",
    "dict", "list", "tuple", "set", "immutable-set",
    "unicode", "set-vocab", "add-vocab",
    "call", "arguments", "answer", "error",
    "my-reference", "your-reference", "their-reference", "copyable",
    # these are only used by storage.py
    "instance", "module", "class", "method", "function",
    # I'm not sure this one is actually used anywhere, but the first 127 of
    # these are basically free.
    "attrdict",
    ]
INITIAL_VOCAB_TABLES = { 0: vocab_v0, 1: vocab_v1 }

# to insure both sides agree on the actual words, we can hash the vocab table
# into a short string. This is included in the negotiation decision and
# compared by the receiving side.

def hashVocabTable(table_index):
    data = "\x00".join(INITIAL_VOCAB_TABLES[table_index])
    digest = sha1_hasher(data).hexdigest()
    return digest[:4]

def getVocabRange():
    keys = INITIAL_VOCAB_TABLES.keys()
    return min(keys), max(keys)