| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
| |
There's no longer any need for an alloca() prototype, now that
alloca() is gone.
TESTED:
Ran "scons build-all check" on OSX 10.9, Ubuntu 14.04, and CentOS 7.
Signed-off-by: Gary E. Miller <gem@rellim.com>
|
|
|
|
|
| |
gpsd now compiles, and runs scons check, with no warnings on
FreeBSD.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In general, the use of alloca() is discouraged. Here, there was
only one use, with a maximum size determinable at compile time,
so the code has been reworked to use an ordinary array (without
relying on the C99 variable-length array feature). This always
allows for a GPS_PATH_MAX-sized device_name, but the amount of
space needed for that is relatively modest, and the behavior is
more reproducible with a fixed allocation.
TESTED:
Ran "scons build-all check" on OSX. This code shouldn't be
OS-dependent.
Signed-off-by: Gary E. Miller <gem@rellim.com>
|
| |
|
|
|
|
| |
vsnprintf() and strlcmp() are happier now.
|
|
|
|
|
|
| |
This fixes 32-bit Gentoo on RasPi.
All regression tests pass.
|
| |
|
|
|
|
| |
Not in POSIX, so a little undefined.
|
|
|
|
| |
This is to confrm with gpsd hacking standards which discourage malloc().
|
| |
|
|
|
|
| |
I would rather find where the bad data is coming from...
|
|
|
|
|
|
|
|
|
|
| |
In the current system session->mode seemed to ignore the
O_OPTIMIZE flag, leading to the ACTIVATE hook being ignored.
Another way to fix this would be to keep the session->mode
condition pull up the check for O_CONTINUE.
Signed-off-by: Moritz Fischer <moritz.fischer@ettus.com>
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This reverts commit d1965788249d7e22cdde4021d452cf0dc6c6b9bd.
This breaks my build on Gentoo running gcc 4.9.2
libgps_shm.c: In function 'int gps_shm_read(gps_data_t*)':
libgps_shm.c:122:12: error: no match for 'operator=' (operand types are
'gps_data_t' and 'volatile gps_data_t')
noclobber = shared->gpsdata;
^
libgps_shm.c:122:12: note: candidate is:
In file included from gpsd.h:350:0,
from libgps_shm.c:30:
gps.h:1918:8: note: gps_data_t& gps_data_t::operator=(const gps_data_t&)
struct gps_data_t {
^
gps.h:1918:8: note: no known conversion for argument 1 from 'volatile
gps_data_t' to 'const gps_data_t&'
|
| |
|
|
|
|
| |
netlib_connectsock() lost the underscore.
|
|
|
|
|
| |
Conflicts:
gpscap.ini
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
With a bit of refactoring we can eliminate one of the hooks.
PPS observed live, telnetting to localhost:2947 with gpsd running.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The proximate cause was that we've been seing emission of error
messages that were randomly and disturbingly variable across different
environments - notably Raspbian and Gentoo splint gave nontrivially
different results than Ubuntu 14.10 splint. And this was *not* due to
Ubuntu patches! A pristine splint built from the 3.1.2 tarball on
Ubuntu didn't match the Raspbian and Gentoo results either.
But this has been coming for a while. Easy access to more modern
static analyzers such as coverity, scan-build and cppcheck has been
decreasing the utility of splint, which is unmaintained and somewhat
buggy and not easy to use.
Only file not cleaned is ppsthread.c, because Gary has been working
on it during this cleanup.
All regression tests pass. PPS observed live on GR601-W.
|
| |
|
| |
|
|
|
|
|
| |
That is, "probably LOG_SHOUT should be replaced with LOG_ERROR in
assignments and comparison". Fix the only case of this.
|
|
|
|
|
| |
Currently, debug level 0 is actually LOG_SHOUT.
This change doesn't affect generated binary code.
|
|
|
|
| |
All regression tests pass.
|
| |
|
| |
|
|
|
|
|
|
| |
gpsd sends a ton of strings to the GPS on change from NMEA -> UBX
mode. Most of it gets lost. So move version request later in
the initialization.
|
|
|
|
| |
All regression tests pass.
|
| |
|
|
|
|
| |
PPS observed live on GR601W.
|
|
|
|
| |
Missing guard for PPS_ENABLED ifdef guard around ppsthread_log
|
| |
|
|
|
|
| |
PPS observed live on GR-601W. All regression yests pass.
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is the big step towards ntplib. A couple of minor issues remain to be
ironed out, the most significant of which is what to do about the timestamp_t
type.
This changes some field offsets of private fields in struct gps_device_t.
Probably does not require a version bump as access to them is all through
the libgpsd API.
All regression tests pass. PPS observed live in gpsmon direct mode.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This change is done so we can add a "log" hook to the pps_thread_t
structure (this is not done yet) and harmonize with the name of the
outer logging function. If that name had been left as gpsd_report()
there would have been scope for bad confusion with the report_hook
member.
Also, remove two stray duplicative printf calls from the NMEA2000 driver
(drivers shouldn't have printfs!) and fix one typo.
This is a step towards factoring out ntplib. For that to happen, the
PPS thread code needs to be decoupled from the core session structure.
No logic changes. Object compatibility preserved. All regression tests pass.
|
|
|
|
|
|
|
|
|
|
|
| |
No logic changes, though it looks like there are two because two guards
that would always have failed when the code was compiled with pps=off
are now conditioned out. Also, this code is offset-preserving
so as not to break link-time compatibility of libgpsd.
(This is the subtler approach...)
All regression tests pass.
|
|
|
|
|
|
|
| |
Not exploitable, but could gave been trouble if the funcition was fed more
data than exprected through a coding error.
All regression tests pass.
|