How to get simple networking code to run?

I am trying to run some very short simple TCP and UDP portable network socket code examples from various tutorials. The examples just try to send or receive one UDP or TCP packet. The example code run just fine on Raspberry Pi's, and can send 1 byte of data between two of them.

When on macOS Big Sur I compile and run this code from the Terminal command line,

Code Block
clang send_1_byte_via_udp.c -lm
./a.out 192.168.1.125 1024


An error box pops up saying:


Code Block
Terminal via a.out
wants to connect to 192.168.1.125 in the local network
Warning
The program "a.out" has been modified.
The checksum of the program no longer matches ...



There is a button to cancel, disable identity check, deny (in red), and accept the modification. Hitting disable identity check or accept does nothing, the box stays on top. Hit deny, and a.out quits without sending any network data.

IIRC, code similar to these examples ran under Mohave without any pop-ups appearing.

Is there way to run simple network socket code on Big Sur.

Replies

It looks like this might be an issue with a recent update to Little Snitch on Big Sur that is blocking newly compiled command-line code from sending UDP data. I disabled Little Snitch, and UDP started working.