https://gpsd.gitlab.io/gpsd/libgps.html "2nd argument"
The final flag for gps_stream is described:
""" WATCH_DEVICE Restrict watching to a specified device, path given as second argument. """
Unfortunately, the flags themselves are the second argument. I assume this should be something like
""" WATCH_DEVICE Restrict watching to a specified device, whose path is given as the third argument (void *data). """
Also, as this is the only usage of *data, and treating it as a string seems to conflict with any other later usage, should the name of the parameter be changed to something more self-documenting, such as named_device?