Hi,
I have couple of inquiries regarding the vmnet framework:
-
Incorporating Global Variables:
- How should we integrate the new global variables in macOS 15.0+ vmnet_read_max_packets_key and vmnet_write_max_packets_key into our configuration to optimize packet transmission? Are those values populated dynamically or manually if so any recommended value ranges ?
-
Buffer Allocation Issue:
- What strategies can we employ to mitigate this buffer allocation error and ensure more reliable packet transmission? We occasionally encounter the following error during packet writes:
Error Domain=NSCocoaErrorDomain Code=512 "The file couldn’t be saved." Error Domain=NSPOSIXErrorDomain Code=55 "No buffer space available"
Your insights on these matters would be greatly appreciated.
vmnet_read_max_packets_key
is a property key for the interface_desc
dictionary you pass to vmnet_start_interface
. Quoting the doc comments, it controls the maximum value that *pktcnt
may have in the call to vmnet\_read()
.
Historically there was an arbitrary limit to this. AFAICT that limit was 200. You can now use vmnet_read_max_packets_key
to configure that limit yourself, although I believe the upper bound isn’t much bigger, namely, 256.
Likewise for vmnet_write_max_packets_key
.
For context, error 55 is ENOBUFS
.
What routine is returning that error? vmnet_write
?
Share and Enjoy
—
Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@" + "apple.com"