Commit Graph

183 Commits

Author SHA1 Message Date
Jeremy Lakeman
7c73ca7a78 Finish test and implementation of directory service 2012-09-18 12:30:15 +09:30
Jeremy Lakeman
ac8d9b93e6 Add stub directory service 2012-09-14 11:50:45 +09:30
Jeremy Lakeman
6483d9e0ae Split client mdp functions so they can be built separately 2012-09-14 11:47:48 +09:30
gardners
d796a482b7 refactored rhizome direct code to separate http transport specific
code from general rhizome direct BAR buffer gathering and processing.
2012-09-09 13:50:09 +09:30
Daniel O'Connor
1deb092a5f Add OSX magic so we can use things like u_short (which is off for POSIX source which is presumably turned on by _XOPEN_SOURCE). 2012-09-06 14:32:17 +09:30
Paul Gardner-Stephen
0562367b23 Try detecting ALSA better. 2012-09-06 12:43:06 +09:30
Paul Gardner-Stephen
bba6839656 Initial stab at porting to Solaris.
It compiles without warning (with CC=gcc) but doesn't link
because NaCL doesn't build yet.
2012-09-05 20:42:50 +09:30
Jeremy Lakeman
545c05fddb Relay broadcast payloads via olsr plugin 2012-09-01 12:41:50 +09:30
Jeremy Lakeman
e05806f25e Separate routing calculation from resulting rules, refactor more code to use subscriber structure 2012-08-31 15:11:18 +09:30
Jeremy Lakeman
f6c899e107 Refactor overlay buffer interface to support simple parsing 2012-08-31 15:03:07 +09:30
Jeremy Lakeman
90cbf8df7e Add new subscriber storage 2012-08-31 15:03:06 +09:30
gardners
2b29893a02 Initial work towards rhizome direct syncrhonisation functions #9 2012-08-31 12:58:37 +09:30
gardners
bae2e2e4c2 Updated non-Android build process to work again (sqlite3 include path fixed,
also improved so that sqlite3.c doesn't need to exist as a symlink to the
real file).
2012-08-27 17:03:50 +09:30
Andrew Bettison
27a0a6eeb5 Introduce struct __sourceloc
Replaces (const char *file, unsigned int line, const char *function) arguments
to all logging functions, simplifies malloc/free tracking code in
overlay_buffer.c and Rhizome manifest alloc/free tracking in rhizome_bundle.c.

Use __HERE__ macro instead of (__FILE__, __LINE__, __FUNCTION__) everywhere.

Special __NOWHERE__ macro is equivalent to (NULL, 0, NULL).

Declare net.c functions in new "net.h" header, so log.c doesn't have to pull
in the entire "serval.h" just to use write_str().

Facilitates progress on issue #2.
2012-08-23 12:31:07 +09:30
Daniel O'Connor
d77e5b7c62 Add strlcpy as it appears some systems (Ubuntu and probably Debian) don't have it.
This is a public domain version from http://cantrip.org/strlcpy.c
2012-08-13 18:24:19 +09:30
Daniel O'Connor
75889355fa Build static library version of libmonitorclient. 2012-08-10 14:36:46 +09:30
Jeremy Lakeman
7705676a9e Move str functions to c file to enable reuse 2012-08-09 13:30:52 +09:30
Daniel O'Connor
e3bef80965 Fix compilation of shared library on 64 bit ELF platforms (only tested on Linux so far) by using -fPIC. 2012-08-06 17:03:00 +09:30
Andrew Bettison
03da89225d Add xprintf() extensible stream formatter
Use it to replace open_memstream(3) in logServalPacket() -- not available on
Mac OS X
2012-08-03 16:44:05 +09:30
Andrew Bettison
2bd7c38483 Remove unused trans_cache.c 2012-07-31 18:12:20 +09:30
Daniel O'Connor
c241d3630c Move debug options to Makefile.dbg so we don't have to re-run configure.
Remove DO_TIMING_CHECK since it's no longer used
2012-07-29 14:55:10 +09:30
Daniel O'Connor
5e43c81214 Sort source files 2012-07-29 13:09:13 +09:30
Daniel O'Connor
3907eb3842 Use variables for source/object files. 2012-07-29 13:04:03 +09:30
gardners
93449d380e various fixes for libmonitorclient and commits made by others
inbetween. Hopefully I have captured all the changes.
2012-07-29 12:35:53 +09:30
Andrew Bettison
0dee99dec2 Remove old command-line support 2012-07-27 11:44:20 +09:30
Andrew Bettison
c7488de510 Add strbuf_helpers.[ch]
Functions to help assemble strbuf contents.
2012-07-11 14:11:59 +09:30
Andrew Bettison
86eb482ed9 Replace macros with functions
SET_NONBLOCKING(), SET_BLOCKING(), WRITE_STR() are now set_nonblock(),
set_block() and write_str() respectively, all of which log an error before
returning -1.  There are other useful methods: write_all() treats anything less
than all bytes written as an error; write_nonblock() treats EAGAIN and EINTR as
zero bytes written, and a combination: write_all_nonblock().
2012-07-10 16:33:39 +09:30
Andrew Bettison
ab64b08ceb Rewrite config file code
Gets rid of rotor in confValueGet() and duplicate config file parsing code
Currently fails three tests
2012-07-04 18:57:02 +09:30
Jeremy Lakeman
89566e4d3d Refactor how functions are scheduled or file handes are watched 2012-07-02 13:19:54 +09:30
gardners
b40a468276 Merge branch 'eventscheduler'
Conflicts:
	monitor.c
	serval.h
2012-06-25 16:50:23 +09:30
Daniel O'Connor
8d7b0d259f Add a compile time knob to disable timing checks (on by default now). 2012-06-22 20:40:29 +09:30
gardners
5dc6d122a5 significant progress towards clean callback scheduler for poll()
events and timed callbacks.
2012-06-22 16:05:49 +09:30
gardners
dceeed8d35 more work on dna helper interface.
Also added missing dna_helper.c file from previous changes.
moved sigpipe/sigio detection code to own file.
2012-06-21 16:35:28 +09:30
gardners
e5394dd143 added stubs for DNA lookup helper app (not yet complete).
cleaned up some unused variables.
2012-06-21 16:35:28 +09:30
Daniel O'Connor
8d30acedc8 Don't build libservald.so as it doesn't compile on 64 bit elf platforms and isn't used (it is only needed for JNI stuff on a phone)
While I'm here split out CFLAGS generation to make compiling without optimisation easier (for debugging)
2012-06-15 15:09:20 +09:30
Daniel O'Connor
b5581c9861 Remove generation of serval.c. It was only used (AFAIK) for the Asterisk plugin which can't/won't work at this stage. 2012-06-04 13:08:30 +09:30
Daniel O'Connor
bf2d1ca669 Supress unused-value warnings because WHY*() return -1 but this is commonly not used and clang warns about it. 2012-05-29 09:40:29 +09:30
Daniel O'Connor
dab549a22d Add clean target. 2012-05-21 13:53:34 +09:30
Andrew Bettison
345b2c1c4c Fix SEGV bug using new strbuf operations 2012-05-20 13:02:41 +09:30
Andrew Bettison
2f4d1eb720 "strbuf.h" API for assembling fixed-sized string buffers 2012-05-19 14:02:03 +09:30
Andrew Bettison
7087afc404 Refactor main() into main.c
Now dna.c only contains code for the old command line
2012-05-15 11:09:21 +09:30
Andrew Bettison
d11258cefc Overhaul debug flags
Config debug flags are now represented as individual items, eg:
   servald config set debug.verbose yes
   servald config set debug.rhizome yes
instead of aggregated, eg:
   servald config set debug verbose,rhizome  <-- no longer works

Added a debug flag "debug.all" that can be set and cleared, over which
individual flag sets/clears take priority.

Slimmed down dna.c by moving some globals and functions to the files where they
are used.

Default command line (help message) is now the new style, not the deprecated
style.
2012-05-14 18:37:32 +09:30
gardners
7b82ccbd7b work on bypass-audio.
CALLSTATUS monitor message has gained a field, thus changing
API for java side.
2012-05-11 08:14:00 +09:30
Andrew Bettison
fe25f06129 Conditionally compile new ALSA sound code 2012-05-10 18:29:27 +09:30
Andrew Bettison
4f68a945ed Less verbosity from Makefile 2012-05-10 18:02:59 +09:30
gardners
8d2792ce74 substantial work towards playing audio on IDEOS/G1 type MSM chipset
android phones directly from C to dramatically reduce latency.
2012-05-10 03:47:18 +09:30
gardners
596b20b5e8 interactive servald monitor cli command implemented. 2012-05-08 14:41:21 +09:30
gardners
d637f31ab7 work towards stream unix domain socket to allow Android/Java
monitoring of call status and rhizome bundle arrivals.
2012-05-03 02:31:12 +09:30
gardners
2ab32197a7 Put new linux-specific interface listing routine in that is needed
for android, where the portable method isn't easily available.
2012-04-28 12:25:19 +09:30
Daniel O'Connor
4cb677b737 Fix codec2 detection & compilation now I tried compiling it.. 2012-04-23 20:40:34 +09:30
Daniel O'Connor
9a06c1c4bd Add configure fu to allow pa_phone.c to not be compiled. 2012-04-23 20:17:11 +09:30
Daniel O'Connor
258f2b98f0 Sort source & header files and make them one per line (tidy tidy!) 2012-04-23 17:03:07 +09:30
Daniel O'Connor
1d10ee7ba8 Merge branch 'master' of github.com:servalproject/serval-dna 2012-04-23 16:33:44 +09:30
Daniel O'Connor
ee72e69e29 Add PA setup and FIFO code (still not plumbed into the main program) 2012-04-23 16:32:47 +09:30
Andrew Bettison
87e072f172 Fix <jni.h> detection on Mac OS X 2012-04-23 15:29:26 +09:30
gardners
44e9449988 added beginnings of portaudio based phone interface for testing
VoMP.
2012-04-23 08:24:39 +09:30
gardners
788cef0201 sqlite3.o no longer depends on serval.h for faster recompiles
when changing serval.h
2012-04-20 17:14:04 +09:30
Andrew Bettison
36c7e492e8 Native build now supports JNI code on GNU/Linux
- ./configure detects if javac and JDK are present
- Makefile default target builds libservald.so
- probably doesn't work on Mac OS X (yet)
2012-04-20 16:57:36 +09:30
Andrew Bettison
1ae0984f78 Remove redundancy in Makefile 2012-04-19 15:48:00 +09:30
gardners
1a221a32b2 Begun work on VoMP implementation. 2012-04-19 07:14:51 +09:30
gardners
6f93d7a48d Updated build environment to leave out old HLR stuff that has
been deprecated in favour of the new keyring file.
2012-04-13 09:29:43 +09:30
gardners
2b260402b5 Added keyring.c and begun work on routines to manipulate keyrings. 2012-04-10 12:56:32 +09:30
gardners
348c5ebcf3 Added Mesh Datagram Protocol (MDP) source file and initial work.
Added overlay_mdp.c to Makefile.in, and also trans_cache.c which
had not yet been added.
2012-03-17 09:28:48 +10:30
gardners
081a9f496b Put back a pile of files needed for building on osx, and also required
for building on other platforms (i.e., configure framework, including
the .in files that are needed to build configure and Makefile, and the
sqlite code that is required for stand-alone building without external
dependencies, e.g., on non-android platforms, and looking ahead to
symbian where we will need a single self-contained binary as we cannot
assume the presence of an sqlite3 library as we can on android).
Any further changes to the build environment should not be committed
until it has been verified that building from a clean checkout on osx,
followed by configure and make actually works.
2012-03-15 10:57:38 +10:30
Daniel O'Connor
a8411edf3f - Use system wide sqlite3 lib via pkg-config
- Remove nacl-gcc-prep, it's now in nacl
- Sort sources and have 1 per line.
- Add missing source files.
- Use naclinc.txt and nacllib.txt generated by nacl/nacl-gcc-prep
- Update ignore file now nacl files don't pollute this directory.
2012-02-27 12:41:48 +10:30
gardners
1eb4c34015 Renamed mphlr.h to serval.h
(also some temporary debugging has been added in some places)
2012-02-23 12:45:42 +10:30
gardners
70613baefd Added new source files to Makefile template. 2012-02-17 00:36:02 +10:30
gardners
42b5c08321 Refactored rhizome.c into several smaller files.
Manifests are now gleaned from advertisements, and the ones that
are interesting are scheduled for importing into database.
(actual importing is not yet done -- requires fetching of file).
2012-01-12 14:05:05 +10:30
gardners
f8eea651b5 Changed broadcast address to include a 64bit BPI to allow filtering
of duplicate broadcast announcements.
2012-01-10 21:56:07 +10:30
gardners
eb122f8692 Updated makefile for serval_packetvisualise.c 2012-01-10 16:29:04 +10:30
gardners
cbd0cf6117 Began work on rhizome integrated web server. 2011-12-21 16:28:08 +10:30
gardners
c110e46a08 fixes to previous commit. 2011-12-19 08:10:02 +10:30
gardners
552d0095f0 Moved route advertisment to separate file. 2011-09-13 03:35:26 +09:30
gardners
9d4666f9d4 Work towards address abbreviation framework. 2011-08-14 17:58:27 +02:00
gardners
7e30d62b79 Cleaned up various compiler warnings. Added packet parser framework for
handling overlay frames.
2011-08-12 21:05:11 +02:00
gardners
92768cdcd0 core of overlay mode getting closer.
Compiles. With -N start to try to send regular packets.
2011-08-08 22:41:46 +08:00
gardners
6e172c76c9 Fixed broadcast address discovery to work on Mac.
Fixed Linux assumptions.
Added parsing of overlay mesh interface specification from command line.
Separated overlay mesh code out into several files.
Overlay mesh is still far from working, but the infrastructure is coming together.
2011-08-08 16:11:05 +09:30
gardners
09ca959fae Assorted unknown changes. Updated Makefile.in etc to properly build serval.c for building asterisk module. 2011-06-15 13:52:30 +09:30
gardners
d20da9616e Initial work on proper gateway support with direct tie-in to Asterisk. 2011-05-16 16:58:25 +09:30
gardners
bba5ec6bd8 Reimported features from Raiders Of The Lost Source (gateway, hlr import/export) 2011-05-06 11:57:33 +09:30
gardners
5a7381bd2a Fixes for OSX compilation, preparation for adding overlay mesh network. 2011-04-27 21:18:09 +09:30
gardners
601ca12499 Added support for batmand.peers file for reliable peer querying.
Re-ported for asterisk module.
2011-03-21 13:08:35 +10:30
paul.gardner.stephen
f225465dfc Initial check in
git-svn-id: http://serval-dna.googlecode.com/svn/trunk/trunk/dna@2 6d01b88e-114a-4e5d-930d-818638e25ad7
2010-07-13 12:15:46 +00:00