Replace StatusTuple::code() with StatusTuple::ok() in tests/
authorYaxiong Zhao <yzhao@pixielabs.ai>
Mon, 13 Dec 2021 18:57:25 +0000 (10:57 -0800)
committeryonghong-song <ys114321@gmail.com>
Tue, 14 Dec 2021 02:44:51 +0000 (18:44 -0800)
13 files changed:
tests/cc/test_array_table.cc
tests/cc/test_bpf_table.cc
tests/cc/test_cg_storage.cc
tests/cc/test_hash_table.cc
tests/cc/test_map_in_map.cc
tests/cc/test_perf_event.cc
tests/cc/test_pinned_table.cc
tests/cc/test_prog_table.cc
tests/cc/test_queuestack_table.cc
tests/cc/test_shared_table.cc
tests/cc/test_sk_storage.cc
tests/cc/test_sock_table.cc
tests/cc/test_usdt_probes.cc

index c941f0f9aa02fd32975d8947efb39362607341e9..5d84d4c4e9544f8cb073adb9c84188f59bb34061 100644 (file)
@@ -33,7 +33,7 @@ TEST_CASE("test array table", "[array_table]") {
   ebpf::BPF bpf(0, nullptr, false);
   ebpf::StatusTuple res(0);
   res = bpf.init(BPF_PROGRAM);
-  REQUIRE(res.code() == 0);
+  REQUIRE(res.ok());
 
   ebpf::BPFArrayTable<int> t = bpf.get_array_table<int>("myarray");
 
@@ -52,24 +52,24 @@ TEST_CASE("test array table", "[array_table]") {
     v1 = 42;
     // update element
     res = t.update_value(i, v1);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
     res = t.get_value(i, v2);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
     REQUIRE(v2 == 42);
 
     // update another element
     i = 2;
     v1 = 69;
     res = t.update_value(i, v1);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
     res = t.get_value(i, v2);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
     REQUIRE(v2 == 69);
 
     // get non existing element
     i = 1024;
     res = t.get_value(i, v2);
-    REQUIRE(res.code() != 0);
+    REQUIRE(!res.ok());
   }
 
   SECTION("full table") {
@@ -84,7 +84,7 @@ TEST_CASE("test array table", "[array_table]") {
       int v = dist(rng);
 
       res = t.update_value(i, v);
-      REQUIRE(res.code() == 0);
+      REQUIRE(res.ok());
 
       // save it in the local table to compare later on
       localtable[i] = v;
@@ -105,7 +105,7 @@ TEST_CASE("percpu array table", "[percpu_array_table]") {
   ebpf::BPF bpf;
   ebpf::StatusTuple res(0);
   res = bpf.init(BPF_PROGRAM);
-  REQUIRE(res.code() == 0);
+  REQUIRE(res.ok());
 
   ebpf::BPFPercpuArrayTable<uint64_t> t = bpf.get_percpu_array_table<uint64_t>("myarray");
   size_t ncpus = ebpf::BPFTable::get_possible_cpu_count();
@@ -131,9 +131,9 @@ TEST_CASE("percpu array table", "[percpu_array_table]") {
     i = 1;
     // update element
     res = t.update_value(i, v1);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
     res = t.get_value(i, v2);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
     REQUIRE(v2.size() == ncpus);
     for (size_t j = 0; j < ncpus; j++) {
       REQUIRE(v2.at(j) == 42 * j);
@@ -142,7 +142,7 @@ TEST_CASE("percpu array table", "[percpu_array_table]") {
     // get non existing element
     i = 1024;
     res = t.get_value(i, v2);
-    REQUIRE(res.code() != 0);
+    REQUIRE(!res.ok());
   }
 }
 #endif
index d61b9b5e27e8f638d73cb58b28b380a8c773c659..2d5a5644921b31865cae6007b20871c4ab73765b 100644 (file)
@@ -30,35 +30,35 @@ TEST_CASE("test bpf table", "[bpf_table]") {
   ebpf::StatusTuple res(0);
   std::vector<std::pair<std::string, std::string>> elements;
   res = bpf->init(BPF_PROGRAM);
-  REQUIRE(res.code() == 0);
+  REQUIRE(res.ok());
 
   ebpf::BPFTable t = bpf->get_table("myhash");
 
   // update element
   std::string value;
   res = t.update_value("0x07", "0x42");
-  REQUIRE(res.code() == 0);
+  REQUIRE(res.ok());
   res = t.get_value("0x7", value);
-  REQUIRE(res.code() == 0);
+  REQUIRE(res.ok());
   REQUIRE(value == "0x42");
 
   // update another element
   res = t.update_value("0x11", "0x777");
-  REQUIRE(res.code() == 0);
+  REQUIRE(res.ok());
   res = t.get_value("0x11", value);
-  REQUIRE(res.code() == 0);
+  REQUIRE(res.ok());
   REQUIRE(value == "0x777");
 
   // remove value
   res = t.remove_value("0x11");
-  REQUIRE(res.code() == 0);
+  REQUIRE(res.ok());
   res = t.get_value("0x11", value);
-  REQUIRE(res.code() != 0);
+  REQUIRE(!res.ok());
 
   res = t.update_value("0x15", "0x888");
-  REQUIRE(res.code() == 0);
+  REQUIRE(res.ok());
   res = t.get_table_offline(elements);
-  REQUIRE(res.code() == 0);
+  REQUIRE(res.ok());
   REQUIRE(elements.size() == 2);
 
   // check that elements match what is in the  table
@@ -73,22 +73,22 @@ TEST_CASE("test bpf table", "[bpf_table]") {
   }
 
   res = t.clear_table_non_atomic();
-  REQUIRE(res.code() == 0);
+  REQUIRE(res.ok());
   res = t.get_table_offline(elements);
-  REQUIRE(res.code() == 0);
+  REQUIRE(res.ok());
   REQUIRE(elements.size() == 0);
 
   // delete bpf_module, call to key/leaf printf/scanf must fail
   delete bpf;
 
   res = t.update_value("0x07", "0x42");
-  REQUIRE(res.code() != 0);
+  REQUIRE(!res.ok());
 
   res = t.get_value("0x07", value);
-  REQUIRE(res.code() != 0);
+  REQUIRE(!res.ok());
 
   res = t.remove_value("0x07");
-  REQUIRE(res.code() != 0);
+  REQUIRE(!res.ok());
 }
 
 #if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 6, 0)
@@ -100,7 +100,7 @@ TEST_CASE("test bpf percpu tables", "[bpf_percpu_table]") {
   ebpf::BPF bpf;
   ebpf::StatusTuple res(0);
   res = bpf.init(BPF_PROGRAM);
-  REQUIRE(res.code() == 0);
+  REQUIRE(res.ok());
 
   ebpf::BPFTable t = bpf.get_table("myhash");
   size_t ncpus = ebpf::BPFTable::get_possible_cpu_count();
@@ -113,9 +113,9 @@ TEST_CASE("test bpf percpu tables", "[bpf_percpu_table]") {
   // update element
   std::vector<std::string> value;
   res = t.update_value("0x07", v1);
-  REQUIRE(res.code() == 0);
+  REQUIRE(res.ok());
   res = t.get_value("0x07", value);
-  REQUIRE(res.code() == 0);
+  REQUIRE(res.ok());
   for (size_t i = 0; i < ncpus; i++) {
     REQUIRE(42 * i == std::stoul(value.at(i), nullptr, 16));
   }
@@ -130,7 +130,7 @@ TEST_CASE("test bpf hash table", "[bpf_hash_table]") {
   ebpf::BPF bpf;
   ebpf::StatusTuple res(0);
   res = bpf.init(BPF_PROGRAM);
-  REQUIRE(res.code() == 0);
+  REQUIRE(res.ok());
 
   auto t = bpf.get_hash_table<int, int>("myhash");
 
@@ -140,34 +140,34 @@ TEST_CASE("test bpf hash table", "[bpf_hash_table]") {
   key = 0x08;
   value = 0x43;
   res = t.update_value(key, value);
-  REQUIRE(res.code() == 0);
+  REQUIRE(res.ok());
   REQUIRE(t[key] == value);
 
   // update another element
   key = 0x12;
   value = 0x778;
   res = t.update_value(key, value);
-  REQUIRE(res.code() == 0);
+  REQUIRE(res.ok());
   key = 0x31;
   value = 0x123;
   res = t.update_value(key, value);
-  REQUIRE(res.code() == 0);
+  REQUIRE(res.ok());
   key = 0x12;
   value = 0;
   res = t.get_value(key, value);
-  REQUIRE(res.code() == 0);
+  REQUIRE(res.ok());
   REQUIRE(value == 0x778);
 
   // remove value and dump table
   key = 0x12;
   res = t.remove_value(key);
-  REQUIRE(res.code() == 0);
+  REQUIRE(res.ok());
   auto values = t.get_table_offline();
   REQUIRE(values.size() == 2);
 
   // clear table
   res = t.clear_table_non_atomic();
-  REQUIRE(res.code() == 0);
+  REQUIRE(res.ok());
   values = t.get_table_offline();
   REQUIRE(values.size() == 0);
 }
@@ -193,13 +193,13 @@ TEST_CASE("test bpf stack table", "[bpf_stack_table]") {
   ebpf::BPF bpf;
   ebpf::StatusTuple res(0);
   res = bpf.init(BPF_PROGRAM);
-  REQUIRE(res.code() == 0);
+  REQUIRE(res.ok());
   std::string getuid_fnname = bpf.get_syscall_fnname("getuid");
   res = bpf.attach_kprobe(getuid_fnname, "on_sys_getuid");
-  REQUIRE(res.code() == 0);
+  REQUIRE(res.ok());
   REQUIRE(getuid() >= 0);
   res = bpf.detach_kprobe(getuid_fnname);
-  REQUIRE(res.code() == 0);
+  REQUIRE(res.ok());
 
   auto id = bpf.get_hash_table<int, int>("id");
   auto stack_traces = bpf.get_stack_table("stack_traces");
@@ -246,13 +246,13 @@ TEST_CASE("test bpf stack_id table", "[bpf_stack_table]") {
   ebpf::BPF bpf;
   ebpf::StatusTuple res(0);
   res = bpf.init(BPF_PROGRAM);
-  REQUIRE(res.code() == 0);
+  REQUIRE(res.ok());
   std::string getuid_fnname = bpf.get_syscall_fnname("getuid");
   res = bpf.attach_kprobe(getuid_fnname, "on_sys_getuid");
-  REQUIRE(res.code() == 0);
+  REQUIRE(res.ok());
   REQUIRE(getuid() >= 0);
   res = bpf.detach_kprobe(getuid_fnname);
-  REQUIRE(res.code() == 0);
+  REQUIRE(res.ok());
 
   auto id = bpf.get_hash_table<int, int>("id");
   auto stack_traces = bpf.get_stackbuildid_table("stack_traces");
index a18128cdc292d74b7def1b396578e2be369bd54e..78ee3f05822a823bc52028db87af013b4a098945 100644 (file)
@@ -48,7 +48,7 @@ int test(struct bpf_sock_ops *skops)
     ebpf::BPF bpf;
     ebpf::StatusTuple res(0);
     res = bpf.init(BPF_PROGRAM);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
 
     auto cg_storage = bpf.get_cg_storage_table<int>("cg_storage1");
     struct bpf_cgroup_storage_key key = {0};
@@ -57,10 +57,10 @@ int test(struct bpf_sock_ops *skops)
     // all the following lookup/update will fail since
     // cgroup local storage only created during prog attachment time.
     res = cg_storage.get_value(key, val);
-    REQUIRE(res.code() != 0);
+    REQUIRE(!res.ok());
 
     res = cg_storage.update_value(key, val);
-    REQUIRE(res.code() != 0);
+    REQUIRE(!res.ok());
   }
 }
 #endif
@@ -87,7 +87,7 @@ int test(struct bpf_sock_ops *skops)
     ebpf::BPF bpf;
     ebpf::StatusTuple res(0);
     res = bpf.init(BPF_PROGRAM);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
 
     auto cg_storage = bpf.get_percpu_cg_storage_table<long long>("cg_storage1");
     struct bpf_cgroup_storage_key key = {0};
@@ -96,10 +96,10 @@ int test(struct bpf_sock_ops *skops)
     // all the following lookup/update will fail since
     // cgroup local storage only created during prog attachment time.
     res = cg_storage.get_value(key, val);
-    REQUIRE(res.code() != 0);
+    REQUIRE(!res.ok());
 
     res = cg_storage.update_value(key, val);
-    REQUIRE(res.code() != 0);
+    REQUIRE(!res.ok());
   }
 }
 
index 38e08b7cb82b8ee92808a87ee499a07d8a0defbe..7ed9b022323cdc48630e512f45be6bc90ea84ff6 100644 (file)
@@ -28,7 +28,7 @@ TEST_CASE("test hash table", "[hash_table]") {
   ebpf::BPF bpf;
   ebpf::StatusTuple res(0);
   res = bpf.init(BPF_PROGRAM);
-  REQUIRE(res.code() == 0);
+  REQUIRE(res.ok());
 
   ebpf::BPFHashTable<int, int> t = bpf.get_hash_table<int, int>("myhash");
 
@@ -47,36 +47,36 @@ TEST_CASE("test hash table", "[hash_table]") {
     v1 = 42;
     // create new element
     res = t.update_value(k, v1);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
     res = t.get_value(k, v2);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
     REQUIRE(v2 == 42);
 
     // update existing element
     v1 = 69;
     res = t.update_value(k, v1);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
     res = t.get_value(k, v2);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
     REQUIRE(v2 == 69);
 
     // remove existing element
     res = t.remove_value(k);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
 
     // remove non existing element
     res = t.remove_value(k);
-    REQUIRE(res.code() != 0);
+    REQUIRE(!res.ok());
 
     // get non existing element
     res = t.get_value(k, v2);
-    REQUIRE(res.code() != 0);
+    REQUIRE(!res.ok());
   }
 
   SECTION("walk table") {
     for (int i = 1; i <= 10; i++) {
       res = t.update_value(i * 3, i);
-      REQUIRE(res.code() == 0);
+      REQUIRE(res.ok());
     }
     auto offline = t.get_table_offline();
     REQUIRE(offline.size() == 10);
@@ -101,7 +101,7 @@ TEST_CASE("percpu hash table", "[percpu_hash_table]") {
   ebpf::BPF bpf;
   ebpf::StatusTuple res(0);
   res = bpf.init(BPF_PROGRAM);
-  REQUIRE(res.code() == 0);
+  REQUIRE(res.ok());
 
   ebpf::BPFPercpuHashTable<int, uint64_t> t =
     bpf.get_percpu_hash_table<int, uint64_t>("myhash");
@@ -129,9 +129,9 @@ TEST_CASE("percpu hash table", "[percpu_hash_table]") {
 
     // create new element
     res = t.update_value(k, v1);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
     res = t.get_value(k, v2);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
     for (size_t j = 0; j < ncpus; j++) {
       REQUIRE(v2.at(j) == 42 * j);
     }
@@ -141,24 +141,24 @@ TEST_CASE("percpu hash table", "[percpu_hash_table]") {
       v1[j] = 69 * j;
     }
     res = t.update_value(k, v1);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
     res = t.get_value(k, v2);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
     for (size_t j = 0; j < ncpus; j++) {
       REQUIRE(v2.at(j) == 69 * j);
     }
 
     // remove existing element
     res = t.remove_value(k);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
 
     // remove non existing element
     res = t.remove_value(k);
-    REQUIRE(res.code() != 0);
+    REQUIRE(!res.ok());
 
     // get non existing element
     res = t.get_value(k, v2);
-    REQUIRE(res.code() != 0);
+    REQUIRE(!res.ok());
   }
 
   SECTION("walk table") {
@@ -169,7 +169,7 @@ TEST_CASE("percpu hash table", "[percpu_hash_table]") {
         v[cpu] = k * cpu;
       }
       res = t.update_value(k, v);
-      REQUIRE(res.code() == 0);
+      REQUIRE(res.ok());
     }
 
     // get whole table
index 7a383de92a916616179c2e0757ab46f53510908e..c33193af3b56837b5fc070b0ce6f4c4c4d0226e3 100644 (file)
@@ -61,7 +61,7 @@ TEST_CASE("test hash of maps", "[hash_of_maps]") {
     ebpf::BPF bpf;
     ebpf::StatusTuple res(0);
     res = bpf.init(BPF_PROGRAM);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
 
     auto t = bpf.get_map_in_map_table<int>("maps_hash");
     auto ex1_table = bpf.get_array_table<int>("ex1");
@@ -73,13 +73,13 @@ TEST_CASE("test hash of maps", "[hash_of_maps]") {
 
     int key = 0, value = 0;
     res = t.update_value(key, ex1_fd);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
 
     // updating already-occupied slot will succeed.
     res = t.update_value(key, ex2_fd);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
     res = t.update_value(key, ex1_fd);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
 
     // an in-compatible map
     key = 1;
@@ -90,28 +90,28 @@ TEST_CASE("test hash of maps", "[hash_of_maps]") {
     // as hash table is not full.
     key = 10;
     res = t.update_value(key, ex2_fd);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
     res = t.remove_value(key);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
 
     // test effectiveness of map-in-map
     key = 0;
     std::string getuid_fnname = bpf.get_syscall_fnname("getuid");
     res = bpf.attach_kprobe(getuid_fnname, "syscall__getuid");
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
 
     auto cntl_table = bpf.get_array_table<int>("cntl");
     cntl_table.update_value(0, 1);
     REQUIRE(getuid() >= 0);
     res = ex1_table.get_value(key, value);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
     REQUIRE(value > 0);
 
     res = bpf.detach_kprobe(getuid_fnname);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
 
     res = t.remove_value(key);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
   }
 }
 
@@ -163,7 +163,7 @@ TEST_CASE("test hash of maps using custom key", "[hash_of_maps_custom_key]") {
     ebpf::BPF bpf;
     ebpf::StatusTuple res(0);
     res = bpf.init(BPF_PROGRAM);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
 
     auto t = bpf.get_map_in_map_table<struct custom_key>("maps_hash");
     auto ex1_table = bpf.get_hash_table<int, int>("ex1");
@@ -175,56 +175,56 @@ TEST_CASE("test hash of maps using custom key", "[hash_of_maps_custom_key]") {
     // test effectiveness of map-in-map
     std::string getuid_fnname = bpf.get_syscall_fnname("getuid");
     res = bpf.attach_kprobe(getuid_fnname, "syscall__getuid");
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
 
     struct custom_key hash_key = {1, 1};
 
     res = t.update_value(hash_key, ex1_fd);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
 
     struct custom_key hash_key2 = {1, 2};
     res = t.update_value(hash_key2, ex2_fd);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
 
     int key = 0, value = 0, value2 = 0;
 
     // Can't get value when value didn't set.
     res = ex1_table.get_value(key, value);
-    REQUIRE(res.code() != 0);
+    REQUIRE(!res.ok());
     REQUIRE(value == 0);
 
     // Call syscall__getuid, then set value to ex1_table
     res = cntl_table.update_value(key, 1);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
     REQUIRE(getuid() >= 0);
 
     // Now we can get value from ex1_table
     res = ex1_table.get_value(key, value);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
     REQUIRE(value >= 1);
 
     // Can't get value when value didn't set.
     res = ex2_table.get_value(key, value2);
-    REQUIRE(res.code() != 0);
+    REQUIRE(!res.ok());
     REQUIRE(value2 == 0);
 
     // Call syscall__getuid, then set value to ex2_table
     res = cntl_table.update_value(key, 2);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
     REQUIRE(getuid() >= 0);
 
     // Now we can get value from ex2_table
     res = ex2_table.get_value(key, value2);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
     REQUIRE(value > 0);
 
     res = bpf.detach_kprobe(getuid_fnname);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
 
     res = t.remove_value(hash_key);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
     res = t.remove_value(hash_key2);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
   }
 }
 
@@ -269,7 +269,7 @@ TEST_CASE("test array of maps", "[array_of_maps]") {
     ebpf::BPF bpf;
     ebpf::StatusTuple res(0);
     res = bpf.init(BPF_PROGRAM);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
 
     auto t = bpf.get_map_in_map_table<int>("maps_array");
     auto ex1_table = bpf.get_hash_table<int, int>("ex1");
@@ -282,13 +282,13 @@ TEST_CASE("test array of maps", "[array_of_maps]") {
 
     int key = 0, value = 0;
     res = t.update_value(key, ex1_fd);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
 
     // updating already-occupied slot will succeed.
     res = t.update_value(key, ex2_fd);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
     res = t.update_value(key, ex1_fd);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
 
     // an in-compatible map
     key = 1;
@@ -304,14 +304,14 @@ TEST_CASE("test array of maps", "[array_of_maps]") {
     key = 0;
     std::string getuid_fnname = bpf.get_syscall_fnname("getuid");
     res = bpf.attach_kprobe(getuid_fnname, "syscall__getuid");
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
 
     auto cntl_table = bpf.get_array_table<int>("cntl");
     cntl_table.update_value(0, 1);
 
     REQUIRE(getuid() >= 0);
     res = ex1_table.get_value(key, value);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
     REQUIRE(value == 1);
 
     cntl_table.update_value(0, 2);
@@ -320,10 +320,10 @@ TEST_CASE("test array of maps", "[array_of_maps]") {
     REQUIRE(res.code() == -1);
 
     res = bpf.detach_kprobe(getuid_fnname);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
 
     res = t.remove_value(key);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
   }
 }
 #endif
index d2a7b9abeed86c6e8d017b959633a9a29b891c99..3061ca856d5afa366681026f70be31e0d93fe22b 100644 (file)
@@ -58,18 +58,18 @@ TEST_CASE("test read perf event", "[bpf_perf_event]") {
   res = bpf.init(
       BPF_PROGRAM,
       {"-DNUM_CPUS=" + std::to_string(sysconf(_SC_NPROCESSORS_ONLN))}, {});
-  REQUIRE(res.code() == 0);
+  REQUIRE(res.ok());
   res =
       bpf.open_perf_event("cnt", PERF_TYPE_SOFTWARE, PERF_COUNT_SW_CPU_CLOCK);
-  REQUIRE(res.code() == 0);
+  REQUIRE(res.ok());
   std::string getuid_fnname = bpf.get_syscall_fnname("getuid");
   res = bpf.attach_kprobe(getuid_fnname, "on_sys_getuid");
-  REQUIRE(res.code() == 0);
+  REQUIRE(res.ok());
   REQUIRE(getuid() >= 0);
   res = bpf.detach_kprobe(getuid_fnname);
-  REQUIRE(res.code() == 0);
+  REQUIRE(res.ok());
   res = bpf.close_perf_event("cnt");
-  REQUIRE(res.code() == 0);
+  REQUIRE(res.ok());
 
   auto val = bpf.get_hash_table<int, uint64_t>("val");
   REQUIRE(val[0] >= 0);
@@ -113,13 +113,13 @@ TEST_CASE("test attach perf event", "[bpf_perf_event]") {
   ebpf::BPF bpf;
   ebpf::StatusTuple res(0);
   res = bpf.init(BPF_PROGRAM);
-  REQUIRE(res.code() == 0);
+  REQUIRE(res.ok());
   res = bpf.attach_perf_event(PERF_TYPE_SOFTWARE, PERF_COUNT_SW_CPU_CLOCK,
                               "on_event", 0, 1000);
-  REQUIRE(res.code() == 0);
+  REQUIRE(res.ok());
   sleep(1);
   res = bpf.detach_perf_event(PERF_TYPE_SOFTWARE, PERF_COUNT_SW_CPU_CLOCK);
-  REQUIRE(res.code() == 0);
+  REQUIRE(res.ok());
 
   auto pid = bpf.get_hash_table<int, uint64_t>("pid");
   REQUIRE(pid[0] >= 0);
index 10df90d5e7bd00ad1acd45afd7f8eb0128b0c3b0..265a8be7b3f230e54735bbed79634c640237fb05 100644 (file)
@@ -39,7 +39,7 @@ TEST_CASE("test pinned table", "[pinned_table]") {
     ebpf::BPF bpf;
     ebpf::StatusTuple res(0);
     res = bpf.init(BPF_PROGRAM);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
 
     REQUIRE(bpf_obj_pin(bpf.get_hash_table<int, int>("ids").get_fd(), "/sys/fs/bpf/test_pinned_table") == 0);
   }
@@ -54,7 +54,7 @@ TEST_CASE("test pinned table", "[pinned_table]") {
     ebpf::StatusTuple res(0);
     res = bpf.init(BPF_PROGRAM);
     unlink("/sys/fs/bpf/test_pinned_table"); // can delete table here already
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
 
     auto t = bpf.get_hash_table<int, int>("ids");
     int key, value;
@@ -63,7 +63,7 @@ TEST_CASE("test pinned table", "[pinned_table]") {
     key = 0x08;
     value = 0x43;
     res = t.update_value(key, value);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
     REQUIRE(t[key] == value);
   }
 
@@ -76,7 +76,7 @@ TEST_CASE("test pinned table", "[pinned_table]") {
     ebpf::BPF bpf;
     ebpf::StatusTuple res(0);
     res = bpf.init(BPF_PROGRAM);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
     unlink("/sys/fs/bpf/test_pinned_table");
   }
 
index 138db3e5929c48b265b4d05c3e4dfc875e9d196d..125bfeacb00bd18b7061160e31ad7eb971b4640a 100644 (file)
@@ -33,33 +33,33 @@ TEST_CASE("test prog table", "[prog_table]") {
 
   ebpf::BPF bpf;
   res = bpf.init(BPF_PROGRAM);
-  REQUIRE(res.code() == 0);
+  REQUIRE(res.ok());
 
   ebpf::BPFProgTable t = bpf.get_prog_table("myprog");
 
   ebpf::BPF bpf2;
   res = bpf2.init(BPF_PROGRAM2);
-  REQUIRE(res.code() == 0);
+  REQUIRE(res.ok());
 
   int fd;
   res = bpf2.load_func("hello", BPF_PROG_TYPE_SCHED_CLS, fd);
-  REQUIRE(res.code() == 0);
+  REQUIRE(res.ok());
 
   SECTION("update and remove") {
     // update element
     res = t.update_value(0, fd);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
 
     // remove element
     res = t.remove_value(0);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
 
     // update out of range element
     res = t.update_value(17, fd);
-    REQUIRE(res.code() != 0);
+    REQUIRE(!res.ok());
 
     // remove out of range element
     res = t.remove_value(17);
-    REQUIRE(res.code() != 0);
+    REQUIRE(!res.ok());
   }
 }
index a502d612480498729abf08bdd4135e6cfe405467..fb4ae62c1d5aabd0cf6e18265e4cf3bfcabfde69 100644 (file)
@@ -29,7 +29,7 @@ TEST_CASE("queue table", "[queue_table]") {
   ebpf::BPF bpf;
   ebpf::StatusTuple res(0);
   res = bpf.init(BPF_PROGRAM);
-  REQUIRE(res.code() == 0);
+  REQUIRE(res.ok());
 
   ebpf::BPFQueueStackTable<int> t = bpf.get_queuestack_table<int>("myqueue");
 
@@ -40,23 +40,23 @@ TEST_CASE("queue table", "[queue_table]") {
     // insert elements
     for (i=0; i<30; i++) {
       res = t.push_value(i);
-      REQUIRE(res.code() == 0);
+      REQUIRE(res.ok());
     }
 
     // checking head (peek)
     res = t.get_head(val);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
     REQUIRE(val == 0);
 
     // retrieve elements
     for (i=0; i<30; i++) {
       res = t.pop_value(val);
-      REQUIRE(res.code() == 0);
+      REQUIRE(res.ok());
       REQUIRE(val == i);
     }
     // get non existing element
     res = t.pop_value(val);
-    REQUIRE(res.code() != 0);
+    REQUIRE(!res.ok());
   }
 }
 
@@ -68,7 +68,7 @@ TEST_CASE("stack table", "[stack_table]") {
   ebpf::BPF bpf;
   ebpf::StatusTuple res(0);
   res = bpf.init(BPF_PROGRAM);
-  REQUIRE(res.code() == 0);
+  REQUIRE(res.ok());
 
   ebpf::BPFQueueStackTable<int> t = bpf.get_queuestack_table<int>("mystack");
 
@@ -79,23 +79,23 @@ TEST_CASE("stack table", "[stack_table]") {
     // insert elements
     for (i=0; i<30; i++) {
       res = t.push_value(i);
-      REQUIRE(res.code() == 0);
+      REQUIRE(res.ok());
     }
 
     // checking head (peek)
     res = t.get_head(val);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
     REQUIRE(val == 29);
 
     // retrieve elements
     for (i=0; i<30; i++) {
       res = t.pop_value(val);
-      REQUIRE(res.code() == 0);
+      REQUIRE(res.ok());
       REQUIRE( val == (30 - 1 - i));
     }
     // get non existing element
     res = t.pop_value(val);
-    REQUIRE(res.code() != 0);
+    REQUIRE(!res.ok());
   }
 }
 #endif
index a638cb50b2887233e9540f246a809c7bea46b90c..f11086f9bcf9cae2a793d07757d84580d177d98c 100644 (file)
@@ -35,16 +35,16 @@ TEST_CASE("test shared table", "[shared_table]") {
   ebpf::StatusTuple res(0);
 
   res = bpf_ns1_a.init(BPF_PROGRAM1);
-  REQUIRE(res.code() == 0);
+  REQUIRE(res.ok());
 
   res = bpf_ns1_b.init(BPF_PROGRAM2);
-  REQUIRE(res.code() == 0);
+  REQUIRE(res.ok());
 
   res = bpf_ns2_a.init(BPF_PROGRAM1);
-  REQUIRE(res.code() == 0);
+  REQUIRE(res.ok());
 
   res = bpf_ns2_b.init(BPF_PROGRAM2);
-  REQUIRE(res.code() == 0);
+  REQUIRE(res.ok());
 
   // get references to all tables
   ebpf::BPFArrayTable<int> t_ns1_a = bpf_ns1_a.get_array_table<int>("mysharedtable");
@@ -55,21 +55,21 @@ TEST_CASE("test shared table", "[shared_table]") {
   // test that tables within the same ns are shared
   int v1, v2, v3;
   res = t_ns1_a.update_value(13, 42);
-  REQUIRE(res.code() == 0);
+  REQUIRE(res.ok());
 
   res = t_ns1_b.get_value(13, v1);
-  REQUIRE(res.code() == 0);
+  REQUIRE(res.ok());
   REQUIRE(v1 == 42);
 
   // test that tables are isolated within different ns
   res = t_ns2_a.update_value(13, 69);
-  REQUIRE(res.code() == 0);
+  REQUIRE(res.ok());
 
   res = t_ns2_b.get_value(13, v2);
-  REQUIRE(res.code() == 0);
+  REQUIRE(res.ok());
   REQUIRE(v2 == 69);
 
   res = t_ns1_b.get_value(13, v3);
-  REQUIRE(res.code() == 0);
+  REQUIRE(res.ok());
   REQUIRE(v3 == 42);  // value should still be 42
 }
index 1ca1a4e5709a3093c37b85a1aeefaf9f4dcad147..a9ebe556adeb0d63f528daa78e1e5649d6bb52a7 100644 (file)
@@ -55,10 +55,10 @@ int test(struct __sk_buff *skb) {
     ebpf::BPF bpf;
     ebpf::StatusTuple res(0);
     res = bpf.init(BPF_PROGRAM);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
     int prog_fd;
     res = bpf.load_func("test", BPF_PROG_TYPE_CGROUP_SKB, prog_fd);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
 
     // create a udp socket so we can do some map operations.
     int sockfd = socket(AF_INET, SOCK_DGRAM, 0);
@@ -69,24 +69,24 @@ int test(struct __sk_buff *skb) {
 
     // no sk_storage for the table yet.
     res = sk_table.get_value(sockfd, v);
-    REQUIRE(res.code() != 0);
+    REQUIRE(!res.ok());
 
     // nothing to remove yet.
     res = sk_table.remove_value(sockfd);
-    REQUIRE(res.code() != 0);
+    REQUIRE(!res.ok());
 
     // update the table with a certain value.
     res = sk_table.update_value(sockfd, v1);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
 
     // get_value should be successful now.
     res = sk_table.get_value(sockfd, v);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
     REQUIRE(v == 10);
 
     // remove the sk_storage.
     res = sk_table.remove_value(sockfd);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
   }
 }
 
index 6db184efa95a7265274d563f974bc34acd585c15..e389b9fb673753bcc721b6a3d4ae9a182bdc5974 100644 (file)
@@ -46,7 +46,7 @@ int test(struct bpf_sock_ops *skops)
     ebpf::BPF bpf;
     ebpf::StatusTuple res(0);
     res = bpf.init(BPF_PROGRAM);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
 
     // create a udp socket so we can do some map operations.
     int sockfd = socket(AF_INET, SOCK_DGRAM, 0);
@@ -56,11 +56,11 @@ int test(struct bpf_sock_ops *skops)
     int key = 0, val = sockfd;
 
     res = sk_map.remove_value(key);
-    REQUIRE(res.code() != 0);
+    REQUIRE(!res.ok());
 
     // the socket must be TCP established socket.
     res = sk_map.update_value(key, val);
-    REQUIRE(res.code() != 0);
+    REQUIRE(!res.ok());
   }
 }
 
@@ -89,7 +89,7 @@ int test(struct bpf_sock_ops *skops)
     ebpf::BPF bpf;
     ebpf::StatusTuple res(0);
     res = bpf.init(BPF_PROGRAM);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
 
     // create a udp socket so we can do some map operations.
     int sockfd = socket(AF_INET, SOCK_DGRAM, 0);
@@ -99,11 +99,11 @@ int test(struct bpf_sock_ops *skops)
     int key = 0, val = sockfd;
 
     res = sk_hash.remove_value(key);
-    REQUIRE(res.code() != 0);
+    REQUIRE(!res.ok());
 
     // the socket must be TCP established socket.
     res = sk_hash.update_value(key, val);
-    REQUIRE(res.code() != 0);
+    REQUIRE(!res.ok());
   }
 }
 
index 6683909bdfe3750dc64c8ce7f029f8214133dc7d..1243e52c028b036a5127942fdeae4de6f4a2cbd8 100644 (file)
@@ -89,13 +89,13 @@ TEST_CASE("test fine a probe in our own binary with C++ API", "[usdt]") {
     ebpf::USDT u("/proc/self/exe", "libbcc_test", "sample_probe_1", "on_event");
 
     auto res = bpf.init("int on_event() { return 0; }", {}, {u});
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
 
     res = bpf.attach_usdt(u);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
 
     res = bpf.detach_usdt(u);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
 }
 
 TEST_CASE("test fine probes in our own binary with C++ API", "[usdt]") {
@@ -117,13 +117,13 @@ TEST_CASE("test fine a probe in our Process with C++ API", "[usdt]") {
     ebpf::USDT u(::getpid(), "libbcc_test", "sample_probe_1", "on_event");
 
     auto res = bpf.init("int on_event() { return 0; }", {}, {u});
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
 
     res = bpf.attach_usdt(u);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
 
     res = bpf.detach_usdt(u);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
 }
 
 TEST_CASE("test find a probe in our process' shared libs with c++ API", "[usdt]") {
@@ -132,7 +132,7 @@ TEST_CASE("test find a probe in our process' shared libs with c++ API", "[usdt]"
 
   auto res = bpf.init("int on_event() { return 0; }", {}, {u});
   REQUIRE(res.msg() == "");
-  REQUIRE(res.code() == 0);
+  REQUIRE(res.ok());
 }
 
 TEST_CASE("test usdt partial init w/ fail init_usdt", "[usdt]") {
@@ -144,21 +144,21 @@ TEST_CASE("test usdt partial init w/ fail init_usdt", "[usdt]") {
   // successfully
   auto res = bpf.init_usdt(u);
   REQUIRE(res.msg() != "");
-  REQUIRE(res.code() != 0);
+  REQUIRE(!res.ok());
 
   // Shouldn't be necessary to re-init bpf object either after failure to init w/
   // bad USDT
   res = bpf.init("int on_event() { return 0; }", {}, {u});
   REQUIRE(res.msg() != "");
-  REQUIRE(res.code() != 0);
+  REQUIRE(!res.ok());
 
   res = bpf.init_usdt(p);
   REQUIRE(res.msg() == "");
-  REQUIRE(res.code() == 0);
+  REQUIRE(res.ok());
 
   res = bpf.init("int on_event() { return 0; }", {}, {});
   REQUIRE(res.msg() == "");
-  REQUIRE(res.code() == 0);
+  REQUIRE(res.ok());
 }
 
 class ChildProcess {
@@ -365,13 +365,13 @@ TEST_CASE("test probing running Ruby process in namespaces",
 
     auto res = bpf.init("int on_event() { return 0; }", {}, {u});
     REQUIRE(res.msg() == "");
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
 
     res = bpf.attach_usdt(u, ruby_pid);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
 
     res = bpf.detach_usdt(u, ruby_pid);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
   }
 
   SECTION("in separate mount namespace and separate PID namespace") {
@@ -391,13 +391,13 @@ TEST_CASE("test probing running Ruby process in namespaces",
 
     auto res = bpf.init("int on_event() { return 0; }", {}, {u});
     REQUIRE(res.msg() == "");
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
 
     res = bpf.attach_usdt(u, ruby_pid);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
 
     res = bpf.detach_usdt(u, ruby_pid);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
 
     struct bcc_symbol sym;
     std::string pid_root= "/proc/" + std::to_string(ruby_pid) + "/root/";
@@ -416,15 +416,15 @@ TEST_CASE("Test uprobe refcnt semaphore activation", "[usdt]") {
     ebpf::USDT u("/proc/self/exe", "libbcc_test", "sample_probe_2", "on_event");
 
     auto res = bpf.init("int on_event() { return 0; }", {}, {u});
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
 
     res = bpf.attach_usdt(u);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
 
     REQUIRE(FOLLY_SDT_IS_ENABLED(libbcc_test, sample_probe_2));
 
     res = bpf.detach_usdt(u);
-    REQUIRE(res.code() == 0);
+    REQUIRE(res.ok());
 
     REQUIRE(a_probed_function_with_sem() != 0);
 }