#!/usr/bin/env python # Copyright (c) 2016 Facebook, Inc. # Licensed under the Apache License, Version 2.0 (the "License") import ctypes as ct import unittest from bcc import BPF class TestSharedTable(unittest.TestCase): def test_close_extern(self): b1 = BPF(text="""BPF_TABLE_PUBLIC("array", int, int, table1, 10);""") with BPF(text="""BPF_TABLE("extern", int, int, table1, 10);""") as b2: t2 = b2["table1"] t2[ct.c_int(1)] = ct.c_int(10) self.assertEqual(len(t2), 10) t1 = b1["table1"] self.assertEqual(t1[ct.c_int(1)].value, 10) self.assertEqual(len(t1), 10) if __name__ == "__main__": unittest.main()