The Serval Project's core daemon that implements Distributed Numbering Architecture (DNA), MDP, VoMP, Rhizome, MeshMS, etc.
Go to file
Andrew Bettison ee6d9d8ea3 Fix logging in vomp.c
Replace DEBUG_SIMULATION with DEBUG_VOMP

Replace all printf(...) and fprintf(stderr,...) with WHYF(...) and DEBUGF(...)

Make all debug logging conditional on DEBUG_VOMP
2012-08-02 11:29:37 +09:30
asterisk_include Added support for batmand.peers file for reliable peer querying. 2011-03-21 13:08:35 +10:30
java/org/servalproject/servald Add GPL header comment to Java source file 2012-05-09 19:05:15 +09:30
m4 Merge branch 'master' of github.com:servalproject/serval-dna 2012-04-23 20:41:52 +09:30
nacl - Move nacl-prepare-sources to nacl. 2012-02-27 12:45:50 +10:30
sqlite-amalgamation-3070900 Reduce use of stderr in many places 2012-08-01 17:54:02 +09:30
tests Improve dnaprotocol tests: enable logging in commands 2012-07-31 17:47:59 +09:30
win32 Allow clients to request variables for all records by passing empty did. 2011-04-27 12:17:26 +09:30
.dir-locals.el Add file to set emacs variables to match the prevailing style. 2012-07-29 13:52:46 +09:30
.gitignore Mop up executable rename from 'dna' to 'servald' 2012-07-30 16:15:42 +09:30
aclocal.m4 Merge branch 'master' of github.com:servalproject/serval-dna 2012-04-23 20:41:52 +09:30
Android.mk Remove unused trans_cache.c 2012-07-31 18:12:20 +09:30
asterisk_app.c Expunge old DNA protocol code (cleans up warnings) 2012-06-25 15:37:11 +09:30
audio_alsa.c work on bypass-audio. 2012-05-11 08:14:00 +09:30
audio_msm_g1.c Fix rhizome transfers 2012-06-27 16:54:42 +09:30
audio_reflector.c work on bypass-audio. 2012-05-11 08:14:00 +09:30
audiodevices.c work on bypass-audio. 2012-05-11 08:14:00 +09:30
batman.c Rewrite many fprintf(stderr,...) to DEBUGF(...) 2012-07-27 11:29:27 +09:30
BUILD.txt Add configure fu to allow pa_phone.c to not be compiled. 2012-04-23 20:17:11 +09:30
ciphers.c Expunge setReason() 2012-05-24 17:11:55 +09:30
client.c Fix logging in vomp.c 2012-08-02 11:29:37 +09:30
codecs.c added stubs for DNA lookup helper app (not yet complete). 2012-06-21 16:35:28 +09:30
commandline.c Reduce use of stderr in many places 2012-08-01 17:54:02 +09:30
conf.c Remove carnal knowledge of conf.c from serval.h and commandline.c by providing a function to set the instance path override. 2012-07-29 18:58:41 +09:30
conf.h Remove carnal knowledge of conf.c from serval.h and commandline.c by providing a function to set the instance path override. 2012-07-29 18:58:41 +09:30
config.guess Add other libtool scripts created by libtoolize -i 2012-04-24 11:46:35 +09:30
config.sub Add other libtool scripts created by libtoolize -i 2012-04-24 11:46:35 +09:30
configure.in Remove old command-line support 2012-07-27 11:44:20 +09:30
constants.h Refactor log.h constants.h serval.h 2012-07-30 16:15:42 +09:30
dataformats.c Rewrite many fprintf(stderr,...) to DEBUGF(...) 2012-07-27 11:29:27 +09:30
dna_helper.c Replace overlay_gettime_ms() with gettime_ms() 2012-07-30 17:22:38 +09:30
dna_identity.c Added not implemented flags to some functions. 2012-03-17 13:01:43 +10:30
dnawrap.c Added missing GPL license statements. 2011-12-21 20:25:05 +10:30
encode.c Put back a pile of files needed for building on osx, and also required 2012-03-15 10:57:38 +10:30
fdqueue.c Replace overlay_gettime_ms() with gettime_ms() 2012-07-30 17:22:38 +09:30
fifo.c Add PA setup and FIFO code (still not plumbed into the main program) 2012-04-23 16:32:47 +09:30
fifo.h Add PA setup and FIFO code (still not plumbed into the main program) 2012-04-23 16:32:47 +09:30
gateway.c Improve DEBUG_GATEWAY debugging 2012-07-27 11:28:14 +09:30
install-sh Add install-sh created by "libtoolize -i" 2012-04-24 11:33:30 +09:30
jni.c Move randombytes() from jni.c to keyring.c so that it is available 2012-04-10 13:49:18 +09:30
keyring.c Replace overlay_gettime_ms() with gettime_ms() 2012-07-30 17:22:38 +09:30
log.c Fix logging in vomp.c 2012-08-02 11:29:37 +09:30
log.h Fix logging in vomp.c 2012-08-02 11:29:37 +09:30
lsif.c Reduce use of stderr in many places 2012-08-01 17:54:02 +09:30
ltmain.sh Add other libtool scripts created by libtoolize -i 2012-04-24 11:46:35 +09:30
macconfig Fixed broadcast address discovery to work on Mac. 2011-08-08 16:11:05 +09:30
main.c various fixes for libmonitorclient and commits made by others 2012-07-29 12:35:53 +09:30
Makefile.dbg Move debug options to Makefile.dbg so we don't have to re-run configure. 2012-07-29 14:55:10 +09:30
Makefile.in Remove unused trans_cache.c 2012-07-31 18:12:20 +09:30
meshpotato_build Assorted unknown changes. Updated Makefile.in etc to properly build serval.c for building asterisk module. 2011-06-15 13:52:30 +09:30
mkdir.c Overhaul debug flags 2012-05-14 18:37:32 +09:30
monitor-cli.c Replace macros with functions 2012-07-10 16:33:39 +09:30
monitor-client.c Fix warning caused by user sourced format string (not a real error) 2012-07-29 13:03:11 +09:30
monitor-client.h various fixes for libmonitorclient and commits made by others 2012-07-29 12:35:53 +09:30
monitor.c Log when a peer becomes reachable or unreachable, edit tests to wait for this message 2012-07-17 18:22:39 +09:30
mpbuild Added mesh potato build script. 2011-08-10 15:39:40 +02:00
net.c More progress on dnahelper 2012-07-19 17:59:45 +09:30
openwrt-makefile Assorted unknown changes. Updated Makefile.in etc to properly build serval.c for building asterisk module. 2011-06-15 13:52:30 +09:30
overlay_abbreviations.c Fix SEGV bug in new overlay abbreviation code 2012-07-25 17:45:57 +09:30
overlay_advertise.c Refactor packet envelope and sid abbreviation reading and writing 2012-07-17 15:30:50 +09:30
overlay_broadcast.c Convert fprintf(stderr,...) to DEBUGF() 2012-07-30 18:35:06 +09:30
overlay_buffer.c Replace fprintf(stderr,...) with DEBUGF(...) 2012-07-31 16:20:48 +09:30
overlay_interface.c Reduce use of stderr in many places 2012-08-01 17:54:02 +09:30
overlay_mdp.c Replace overlay_gettime_ms() with gettime_ms() 2012-07-30 17:22:38 +09:30
overlay_packetformats.c Remove a line of redundant log debug 2012-07-31 17:49:00 +09:30
overlay_payload.c Reduce use of stderr in many places 2012-08-01 17:54:02 +09:30
overlay_route.c Fix bug in self-announcements 2012-07-31 16:21:29 +09:30
overlay.c Replace overlay_gettime_ms() with gettime_ms() 2012-07-30 17:22:38 +09:30
pa_phone.c Add support for srtuct ucred on BSD. 2012-05-21 12:22:50 +09:30
packetformats.c Reduce use of stderr in many places 2012-08-01 17:54:02 +09:30
peers.c Reduce use of stderr in many places 2012-08-01 17:54:02 +09:30
performance_timing.c Replace overlay_gettime_ms() with gettime_ms() 2012-07-30 17:22:38 +09:30
randombytes.c Added missing GPL license declaration to file. 2012-02-17 00:42:37 +10:30
README.DUMMYNETS Added explanation of changed semantics when using dummynets. 2012-06-15 15:13:45 +09:30
responses.c Refactor log.h constants.h serval.h 2012-07-30 16:15:42 +09:30
rhizome_bundle.c More work on dnahelper, almost done 2012-07-20 18:17:43 +09:30
rhizome_crypto.c Reduce use of stderr in many places 2012-08-01 17:54:02 +09:30
rhizome_database.c Fix broken log WARN messages in "rhizome list" 2012-07-17 18:07:02 +09:30
rhizome_fetch.c Replace overlay_gettime_ms() with gettime_ms() 2012-07-30 17:22:38 +09:30
rhizome_http.c Replace overlay_gettime_ms() with gettime_ms() 2012-07-30 17:22:38 +09:30
rhizome_packetformats.c Replace overlay_gettime_ms() with gettime_ms() 2012-07-30 17:22:38 +09:30
rhizome.c Replace overlay_gettime_ms() with gettime_ms() 2012-07-30 17:22:38 +09:30
rhizome.h Fix handling of empty payload (filesize = 0) 2012-07-16 18:40:30 +09:30
serval_packetvisualise.c Reduce use of stderr in many places 2012-08-01 17:54:02 +09:30
serval.h Fix logging in vomp.c 2012-08-02 11:29:37 +09:30
servalwrap.c Fix compilation for android 2012-07-24 16:04:59 +09:30
server.c Replace overlay_gettime_ms() with gettime_ms() 2012-07-30 17:22:38 +09:30
sha2.c Silence strict-aliasing warnings 2012-07-10 14:33:14 +09:30
sha2.h Substantial preparatory work towards Rhizome/MeshMS store-and-forward 2011-12-13 19:34:12 +10:30
sighandlers.c more work on dna helper interface. 2012-06-21 16:35:28 +09:30
simulate.c Code improvements while debugging 'dnaprotocol' tests 2012-07-03 15:36:51 +09:30
socket.c Refactor out socket name setting code into one place. 2012-07-29 22:20:54 +09:30
socket.h Refactor out socket name setting code into one place. 2012-07-29 22:20:54 +09:30
sqlite3.c Put back a pile of files needed for building on osx, and also required 2012-03-15 10:57:38 +10:30
srandomdev.c Renamed mphlr.h to serval.h 2012-02-23 12:45:42 +10:30
strbuf_helpers.c Improve copyright attributions and comments 2012-07-30 16:15:42 +09:30
strbuf_helpers.h Improve copyright attributions and comments 2012-07-30 16:15:42 +09:30
strbuf.c Improve copyright attributions and comments 2012-07-30 16:15:42 +09:30
strbuf.h Improve copyright attributions and comments 2012-07-30 16:15:42 +09:30
testconfig.sh.in Trival test of dna JNI command line entry point 2012-04-23 18:25:26 +09:30
testdefs_rhizome.sh Improve 'rhizomeprotocol' tests 2012-07-17 14:09:35 +09:30
testdefs.sh Mop up executable rename from 'dna' to 'servald' 2012-07-30 16:15:42 +09:30
testframework.sh Improve test framework: always log stderr on some assertions 2012-07-31 17:47:09 +09:30
testnacl.c Added test code for NaCl. 2011-10-25 13:39:14 +10:30
TODO Assorted unknown changes. Updated Makefile.in etc to properly build serval.c for building asterisk module. 2011-06-15 13:52:30 +09:30
vomp.c Fix logging in vomp.c 2012-08-02 11:29:37 +09:30

@PGS/20120615

Sometimes it is helpful to run more than one servald instance on a given machine
for debugging purposes.  To make this easier, there is a dummy interface driver
that servald knows about.  To use it:

1. create an empty file, e.g., dummynet0, somewhere convenient

2. For each servald instance you wish to use it, set the interface specification to include the dummynet file. Use a specification like "+>pathtodummynetfile", where pathtodummynetfile is the relative path from the instance path of that servald instance to the dummynet file.  For example, you might run:
   % servald config set interfaces "+eth0,+>../dummynet0"

3. Run each servald instance.  They should now use the dummy network.

NOTE: Because dummynets are files, not sockets, poll/select does not work on them.  As a result the main overlay loop has slightly different behaviour and timing characteristics when a dummynet is in use.

TODO: Convert dummynet interface to use a unixdomain socket, and a simple dummynet server that reflects packets among the clients connected, so that all socket semantics (including use of poll/select) are preserved.