Resolved in Milestone 3. Implemented MMNetworkBandwidthProvider.h/.m querying 64-bit NET_RT_IFLIST2 sysctl data, getifaddrs IP mapping, download/upload Bps and pps. Verified with unit tests. Merged into develop.
Resolved in Milestone 3. Implemented `MMNetworkBandwidthProvider.h/.m` querying 64-bit `NET_RT_IFLIST2` sysctl data, `getifaddrs` IP mapping, download/upload Bps and pps. Verified with unit tests. Merged into `develop`.
Standard getifaddrs returns 32-bit byte counters which overflow quickly on gigabit connections. On macOS Sonoma, 64-bit counters (struct if_data64) must be queried using sysctl with NET_RT_IFLIST2 or cast via AF_LINK interface entries.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Resolved in Milestone 3. Implemented
MMNetworkBandwidthProvider.h/.mquerying 64-bitNET_RT_IFLIST2sysctl data,getifaddrsIP mapping, download/upload Bps and pps. Verified with unit tests. Merged intodevelop.gronod referenced this issue2026-09-08 10:29:08 +01:00
Technical Implementation Plan & Code Solution
1. BSD 64-Bit Network Interface Architecture
Standard
getifaddrsreturns 32-bit byte counters which overflow quickly on gigabit connections. On macOS Sonoma, 64-bit counters (struct if_data64) must be queried usingsysctlwithNET_RT_IFLIST2or cast viaAF_LINKinterface entries.2. Objective-C Provider (
MMNetworkProvider.m)3. Swift UI Integration
4. 64-Bit Overflow Protection
Querying
RTM_IFINFO2(struct if_data64) eliminates integer rollover bugs that plague classic 32-bit BSDgetifaddrsimplementations.