The Serval Project's core daemon that implements Distributed Numbering Architecture (DNA), MDP, VoMP, Rhizome, MeshMS, etc.
Go to file
Andrew Bettison 0022990e72 Add new dnaprotocol test
Dnahelpers on many nodes resolve the same DIDs

Currently fails, suspicious error from overlay_mdp_sanitytest_sourceaddr()
2012-08-02 17:18:04 +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 Add new dnaprotocol test 2012-08-02 17:18:04 +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 Improve logging to help diagnose dnaprotocol test failure 2012-08-02 17:16:18 +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 Improve 'dnaprotocol' test script 2012-08-02 15:46:53 +09:30
testframework.sh Improve test framework: expose shellarg() function 2012-08-02 15:42:18 +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.