2
0

Compare commits

..

No commits in common. "eef2517480eba331789021e8ad0fdc668707403b" and "7082eeeda72fced975c974bc2381e4efff540616" have entirely different histories.

4 changed files with 14 additions and 22 deletions

10
fmt.sh
View File

@ -3,11 +3,5 @@
self=$(dirname "$(readlink -f "$0")")
cd "${self}"
if [ -d venv ]; then
python=venv/bin/python3
else
python=python3
fi
"${python}" -m black src
"${python}" -m isort src
python3 -m black src
python3 -m isort src

View File

@ -142,9 +142,9 @@ class Database:
self._macs: dict[cptypes.MacAddress, MacEntry] = {}
self._state_filename = state_filename
self._changed_since_last_cleanup = False
self._send_changes: (
trio.MemorySendChannel[capport.comm.message.MacStates | list[capport.comm.message.MacStates],] | None
) = None
self._send_changes: trio.MemorySendChannel[
capport.comm.message.MacStates | list[capport.comm.message.MacStates],
] | None = None
@contextlib.asynccontextmanager
async def make_changes(self) -> typing.AsyncGenerator[PendingUpdates, None]:

View File

@ -17,7 +17,7 @@ from . import cptypes
class MetricPrinter:
args: CliArguments
now: int | None = None
_known_names: set[str] = dataclasses.field(default_factory=set, init=False)
_known_names: set[str] = dataclasses.field(default_factory=set, init=None)
_now_str: str = dataclasses.field(init=False)
_label_str: str = dataclasses.field(init=False)
@ -28,8 +28,8 @@ class MetricPrinter:
self._now_str = ""
labels = []
if self.args.instance:
labels.append(f'captive_instance="{self.args.instance}"')
labels.append(f'interface="{self.args.interface}"')
labels.append(f"captive_instance=\"{self.args.instance}\"")
labels.append(f"interface=\"{self.args.interface}\"")
self._label_str = "{" + ",".join(labels) + "}"
def print_metric(self, *, name: str, mtype: str, value: typing.Any, help: str | None = None):
@ -56,7 +56,7 @@ async def amain(args: CliArguments):
unique_ipv6 = set()
async with capport.utils.ipneigh.connect() as ipn:
ipn.ip.strict_check = True
async for mac, addr in ipn.dump_neighbors(args.interface):
async for (mac, addr) in ipn.dump_neighbors(args.interface):
if mac in captive_allowed_entries:
seen_allowed_entries.add(mac)
unique_clients.add(mac)
@ -101,13 +101,13 @@ async def amain(args: CliArguments):
total_ipv6,
help="Number of IPv6 addresses seen in neighbor cache",
)
with open("/proc/sys/net/netfilter/nf_conntrack_count") as f:
with open('/proc/sys/net/netfilter/nf_conntrack_count') as f:
printer.print_gauge(
"nf_conntrack_count",
int(f.readline()),
help="Conntrack count",
)
with open("/proc/sys/net/netfilter/nf_conntrack_max") as f:
with open('/proc/sys/net/netfilter/nf_conntrack_max') as f:
printer.print_gauge(
"nf_conntrack_max",
int(f.readline()),

View File

@ -67,11 +67,9 @@ def _build(msg_class: type[_NlMsgBase], /, attrs: dict = {}, header: dict = {},
# support passing nested attributes as dicts of subattributes (or lists of those)
if prime["nla_array"]:
value = [
(
_build(nla_class, attrs=elem)
if not isinstance(elem, pyroute2.netlink.nlmsg_base) and isinstance(elem, dict)
else elem
)
for elem in value
]
elif not isinstance(value, pyroute2.netlink.nlmsg_base) and isinstance(value, dict):