Andrew Bettison
ae61a4f35c
Issue #20 : Make abstract sockets work
...
Finish the work started by Daniel in 2012, by using abstract local
AF_UNIX sockets on platforms that support them (Linux, Android).
Fix all sorts of bugs and issues that prevented the existing MDP and
Monitor client and server code from working with abstract socket names.
2013-09-19 17:26:06 +09:30
Andrew Bettison
4937757d36
Improve Serval instance path operations
...
Replace form_serval_instance_path(), which takes a single 'path'
argument, with formf_serval_instance_path() and
vformf_serval_instance_path(), which take printf(3)-like arguments.
This supports more flexible instance path file names.
FORM_SERVAL_INSTANCE_PATH() macro works as before, but reimplemented
2013-09-19 17:19:37 +09:30
Andrew Bettison
f3cd0d8718
Improve socket function prototypes and macros
...
Remove '__whence' argument name from all struct __sourceloc prototype
arguments
Parentheses around macro arguments
Use __WHENCE__ instead of __HERE__ in macros
2013-09-19 16:37:34 +09:30
Andrew Bettison
a4704dfd3c
Add strbuf_va_vprintf() convenience macro
2013-09-19 16:34:02 +09:30
Andrew Bettison
5c84b2ffd5
Fix Rom's socket cleanup-on-start code
...
Fix buffer overflow bug: replace call to sprintf(3) with call to
FORM_SERVAL_INSTANCE_PATH()
Fix file descriptor leak bug: add missing closedir(3) call
Use lstat() instead of stat() to avoid warnings on broken sym links
Use WARNF_perror() where appropriate in preference to WARNF()
Remove redundant one-line comments
2013-09-19 04:30:40 +09:30
Andrew Bettison
d64d9487c1
Issue #20 : improve socket set-up logging
2013-09-19 04:30:40 +09:30
Andrew Bettison
259834a4c1
Issue #20 : fix bug in new esocket() function
2013-09-19 04:30:40 +09:30
Andrew Bettison
7453e82a27
Issue #20 : improve new socket function logging
...
__whence argument and function macros
2013-09-19 04:30:40 +09:30
Andrew Bettison
498eba2051
Improve fdqueue.c debug logging
2013-09-19 04:30:40 +09:30
Andrew Bettison
2b3119b49b
Issue #20 : merge branch 'sockets' into 'development'
...
Daniel's improvements to the local file/abstract socket code, with many
improvements to bring it up to date.
2013-09-19 04:30:14 +09:30
Andrew Bettison
db7e9004b3
Fix bug in version_string.sh
...
git describe --dirty does not accept HEAD (committish) arg
2013-09-17 10:51:50 +09:30
Jeremy Lakeman
c13c7799f6
Send mavlink heartbeat every second
2013-09-13 14:37:33 +09:30
Jeremy Lakeman
2a5ba97b48
Add rhizome test over fakeradio
2013-09-13 14:02:35 +09:30
Jeremy Lakeman
7076b5abb9
Protect most mavlink header bytes with FEC
2013-09-13 10:51:52 +09:30
Andrew Bettison
987875969c
Improve version_string.sh script
...
Full --help usage message
Better error handling and reporting
Only considers tags that look like version numbers
Does not create and delete local "START" tag
Lots of options, including --ignore-untracked and --unmodified
Suitable for use in Batphone repository
2013-09-12 17:50:54 +09:30
Jeremy Lakeman
3f123e1875
Send the next packet via stream interface ASAP
2013-09-12 16:14:01 +09:30
Jeremy Lakeman
589c334d5b
Fakeradio responds to mavlink heartbeat packets
...
- attempts to send mavlink packets in one piece
2013-09-12 14:07:08 +09:30
Jeremy Lakeman
6f26594447
Simplify mavlink link frame creation
...
- build one frame at a time directly from the prepared overlay buffer
2013-09-11 17:15:43 +09:30
Jeremy Lakeman
e29564bc6c
Refactor fakeradio
...
- completely event driven and non-blocking
- modelling of tx & rx serial buffers that will truncate on overfilling
- each radio takes turns to send a packet, with approx TDMA overhead
2013-09-11 15:03:43 +09:30
Jeremy Lakeman
9d7e37cc5e
Pass ownership of final packet buffer to broadcast_ensemble
2013-09-11 11:13:33 +09:30
gardners
c120f27e99
tweak debug output
2013-09-10 15:15:00 +09:30
gardners
fa157500b3
Add debug output for mavlink sent and received frames.
...
debug.interactive_io can be used to pause after sending or receiving a packet.
2013-09-10 15:14:23 +09:30
gardners
6d273eb966
Add Reed-Solomon protection to MAVLink frames.
2013-09-10 14:53:12 +09:30
gardners
c28fdcf558
import Reed-Solomon LGPL implementation for use on packet radio.
...
Encodes 223 bytes in 255 bytes, allowing upto 16 errors.
2013-09-10 14:53:12 +09:30
Jeremy Lakeman
91fcf8b1b3
Stop announcing BARs via legacy process
2013-09-10 14:53:12 +09:30
gardners
33ad9ae0bc
Split debugging info related to ACK's and packet retransmissions
2013-09-10 14:53:12 +09:30
gardners
f02e55c443
add 32bit crc to mavlink frames, and reject those that fail.
2013-09-10 14:53:12 +09:30
gardners
61c219a1f9
implement fragmentation of MDP frames over mavlink serial link.
2013-09-10 14:53:12 +09:30
Jeremy Lakeman
e2c3f1a8fb
Improve fakeradio
...
- block until writes have completed
- implement transfer rate throttling
- add optional bit-flip errors
2013-09-10 14:53:12 +09:30
Andrew Bettison
e8ab8477be
Get rid of worse-than-useless keyring debug
2013-09-10 13:28:27 +09:30
gardners
7248e01567
Implement flow of mavlink packets over serial connections
...
Replaces upper-7 bit slip encoding
Solves reliability of reading radio status messages
2013-09-10 13:07:52 +09:30
gardners
8ff14dce7a
import mavlink.c from rfd900 radio firmware to use as basis for
...
mavlink communications with radios.
2013-09-10 11:54:15 +09:30
gardners
da32f6e6cd
don't report radio link every second, even when debugging packetradio.
...
every 30sec is enough.
2013-09-10 11:54:15 +09:30
gardners
0cbebedc77
Add tx throttling for packet radios
...
avoids missing data due to lack of flow control.
2013-09-10 11:53:38 +09:30
Andrew Bettison
7add45214c
Add [keyring-pin] arg to keyring load command
2013-09-10 11:28:55 +09:30
gardners
2b1ec5232c
allow proper reading of RSSI from right antenna
2013-09-10 10:51:04 +09:30
Andrew Bettison
e74aec9354
Tests for starting daemon with keyring entry PINs
2013-09-09 14:47:02 +09:30
Andrew Bettison
d177512746
Add test for server start with --keyring-pin option
2013-09-09 14:47:02 +09:30
Jeremy Lakeman
d1234cb0f9
Use consistent integer types and formats
2013-09-09 12:09:40 +09:30
Andrew Bettison
f0a74e6cf2
Merge "keyring load" command and other keyring improvements into 'development'
2013-09-07 04:22:55 +09:30
Andrew Bettison
18e2916cec
Add more keyring load tests, fix duplicate identity bugs
2013-09-07 04:03:28 +09:30
Andrew Bettison
befb658958
All keyring commands now close (free) the keyring
2013-09-05 16:34:52 +09:30
Andrew Bettison
8a300c2520
Get new keyring dump command and test working
2013-09-05 16:34:01 +09:30
Andrew Bettison
4b0550afd1
Fix new keyring load test
2013-09-05 09:19:45 +09:30
Andrew Bettison
55efc73b7e
Improve test framework: assertGrep --fixed-strings option
2013-09-05 09:19:14 +09:30
Andrew Bettison
f95e41374b
Implement keyring load command, not working yet
...
Write new keyring test, fails with ERROR because assertGrep -F option is
not supported.
2013-09-04 23:47:17 +09:30
Andrew Bettison
08c02e0e20
More progress towards keyring load command
2013-09-03 17:31:10 +09:30
Andrew Bettison
34bbfb9b30
Add strn_fromhex(), improve hexvalue()
...
Implement fromhex() and fromhexstr() using strn_fromhex()
2013-09-03 17:29:41 +09:30
Andrew Bettison
9d1c3e0cba
Fix test case doc comment
2013-09-03 17:05:50 +09:30
Andrew Bettison
425aa1005c
Start work on "keyring load" command
2013-09-02 17:33:52 +09:30