dgpsip.c
Functions:-This file provides the actual services for dgpsip corrections to dgnss.c.
int dgpsip_open(struct gps_context_t *context, const char *dgpsserver)
Tries to open a connection to a dgpsip server. Returns either -1 on failure or the socket number on success. On success, it initializes the connection, sends a HELO
to the server and stores the type of dgnss service in the context data.
void dgpsip_report(struct gps_device_t *session)
If we have not contacted the server and we have at received least 10 fixes, send a report to the server and set the flag, so we don't do it again.
static int srvcmp(const void *s, const void *t)
Compare the distance of two servers from our location. Return -ve, 0 or +ve depending if server s is nearer, the same distance away or further away than server t.
void dgpsip_autoconnect(struct gps_context_t *context, double lat, double lon, const char *serverlist)
This function takes a list of servers and tries to get a connection to the closest one relative to our location. If no servers are within 1600 km or none are in the list, the dsock value is set to -2 to lock out the function.
Notes based on $Id: dgpsip.c 3771 2006-11-02 05:15:20Z esr $