skip to content
==> tests/golden.c <==
1/* @ajax/mesh-abi-host-nics's functions against vectors the Rust computed (alpha-rust-mesh, the same inputs). */
2#include "mesh/abi/host_nics.h"
3#include "mesh/check.h"
4
5#include <stdint.h>
6
7int main(void) {
8    CHECK_U(mesh_nic(0), 2816u);
9    CHECK_U(mesh_nic(1), 2912u);
10    CHECK_U(mesh_nic(3), 3104u);
11    CHECK_U(mesh_nic(7), 3488u);
12    CHECK_U(mesh_nic(8), 3584u);
13    CHECK_U(mesh_nic_virtual((const uint8_t *)"lo", 2), 1);
14    CHECK_U(mesh_nic_virtual((const uint8_t *)"lo0", 3), 1);
15    CHECK_U(mesh_nic_virtual((const uint8_t *)"l", 1), 0);
16    CHECK_U(mesh_nic_virtual((const uint8_t *)"", 0), 0);
17    CHECK_U(mesh_nic_virtual((const uint8_t *)"eth0", 4), 0);
18    CHECK_U(mesh_nic_virtual((const uint8_t *)"enP7s7", 6), 0);
19    CHECK_U(mesh_nic_virtual((const uint8_t *)"en0", 3), 0);
20    CHECK_U(mesh_nic_virtual((const uint8_t *)"docker0", 7), 1);
21    CHECK_U(mesh_nic_virtual((const uint8_t *)"br-8c53", 7), 1);
22    CHECK_U(mesh_nic_virtual((const uint8_t *)"bridge0", 7), 1);
23    CHECK_U(mesh_nic_virtual((const uint8_t *)"virbr0", 6), 1);
24    CHECK_U(mesh_nic_virtual((const uint8_t *)"lxdbr0", 6), 1);
25    CHECK_U(mesh_nic_virtual((const uint8_t *)"veth12ab", 8), 1);
26    CHECK_U(mesh_nic_virtual((const uint8_t *)"cni0", 4), 1);
27    CHECK_U(mesh_nic_virtual((const uint8_t *)"flannel.1", 9), 1);
28    CHECK_U(mesh_nic_virtual((const uint8_t *)"vmenet0", 7), 1);
29    CHECK_U(mesh_nic_virtual((const uint8_t *)"tailscale0", 10), 1);
30    CHECK_U(mesh_nic_virtual((const uint8_t *)"utun3", 5), 1);
31    CHECK_U(mesh_nic_virtual((const uint8_t *)"tun0", 4), 1);
32    CHECK_U(mesh_nic_virtual((const uint8_t *)"wg0", 3), 1);
33    CHECK_U(mesh_nic_virtual((const uint8_t *)"gif0", 4), 1);
34    CHECK_U(mesh_nic_virtual((const uint8_t *)"stf0", 4), 1);
35    CHECK_U(mesh_nic_virtual((const uint8_t *)"wlan0", 5), 0);
36    CHECK_U(mesh_nic_virtual((const uint8_t *)"bond0", 5), 0);
37    CHECK_U(mesh_nic_virtual((const uint8_t *)"ib0", 3), 0);
38    return mesh_check_done();
39}