The Serval Project's core daemon that implements Distributed Numbering Architecture (DNA), MDP, VoMP, Rhizome, MeshMS, etc.
Go to file
gardners aab400164f push manifest verification to as late as possible to avoid
unwarranted 400ms CPU hits for every manifest seen.
2012-06-26 16:54:40 +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 Fix all trivial compiler warnings 2012-05-10 18:08:59 +09:30
tests Add server start/stop tests 2012-06-26 15:46:10 +09:30
win32 Allow clients to request variables for all records by passing empty did. 2011-04-27 12:17:26 +09:30
.gitignore Add other libtool scripts created by libtoolize -i 2012-04-24 11:46:35 +09:30
aclocal.m4 Merge branch 'master' of github.com:servalproject/serval-dna 2012-04-23 20:41:52 +09:30
Android.mk significant progress towards clean callback scheduler for poll() 2012-06-22 16:05:49 +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 Check for linux/ioctl.h before including it. 2012-05-21 12:21:57 +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 Expunge setReason() 2012-05-24 17:11:55 +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 Remove more obsolete and unused code 2012-06-25 15:40:35 +09:30
codecs.c added stubs for DNA lookup helper app (not yet complete). 2012-06-21 16:35:28 +09:30
commandline.c Re-instate prior server start code 2012-06-26 15:46:10 +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 Fix peer credential checking on BSD, replace write(s, m, strlen(m)) with a macro, factor out new monitor socke code. 2012-06-22 20:40:30 +09:30
dataformats.c Factor out rhizome_hex_to_bytes() and chartonybl() 2012-06-25 14:51:21 +09:30
dna_helper.c Tidyup various things (signal hander, use WRITE_STR, staticise stuff) 2012-06-25 16:24:34 +09:30
dna_identity.c Added not implemented flags to some functions. 2012-03-17 13:01:43 +10:30
dna.c Expunge old DNA protocol code (cleans up warnings) 2012-06-25 15:37:11 +09: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 suppress reporting stats for functions not called in most recent 2012-06-26 09:27:45 +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 Refactor main() into main.c 2012-05-15 11:09:21 +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 clean up debugging. 2012-06-26 09:25:42 +09:30
log.c Improve servald logging 2012-06-22 17:19:14 +09:30
lsif.c Added overall timer for main loop, minor tweaks to order and freq. of processes 2012-06-21 11:33:43 +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 Move signal handler setup to main so it's only done once. 2012-06-25 16:24:33 +09:30
Makefile.in Merge branch 'eventscheduler' 2012-06-25 16:50:23 +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 Use WRITE_STR instead of writeLine. 2012-06-25 16:24:33 +09:30
monitor.c Use message length instead of string length for audio packets 2012-06-26 14:34:39 +09:30
mpbuild Added mesh potato build script. 2011-08-10 15:39:40 +02:00
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 Check OVERLAY_ADDRESS_CACHE_SIZE is >0 directly to shut clang up. 2012-05-21 13:18:54 +09:30
overlay_advertise.c Added very crude multi-hop route determination. 2012-05-17 17:08:59 +09:30
overlay_broadcast.c Renamed mphlr.h to serval.h 2012-02-23 12:45:42 +10:30
overlay_buffer.c Fix all trivial compiler warnings 2012-05-10 18:08:59 +09:30
overlay_interface.c only handle one packet per call to help stats gathering and fairness. 2012-06-25 15:46:34 +09:30
overlay_mdp.c Refactor node info to ignore stale responses without sending another request 2012-06-26 11:20:00 +09:30
overlay_packetformats.c adjust debug output. 2012-06-25 15:46:54 +09:30
overlay_payload.c reduced debugging output. 2012-06-25 14:46:55 +09:30
overlay_route.c significant progress towards clean callback scheduler for poll() 2012-06-22 16:05:49 +09:30
overlay.c added code to time various servald functions and report periodic 2012-06-26 09:22:51 +09:30
pa_phone.c Add support for srtuct ucred on BSD. 2012-05-21 12:22:50 +09:30
packetformats.c Remove more obsolete and unused code 2012-06-25 15:40:35 +09:30
peers.c Don't use hard coded port number. 2012-06-15 15:09:21 +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 Renamed mphlr.h to serval.h 2012-02-23 12:45:42 +10:30
rhizome_bundle.c push manifest verification to as late as possible to avoid 2012-06-26 16:54:40 +09:30
rhizome_crypto.c instrumented various rhizome functions. 2012-06-26 16:03:34 +09:30
rhizome_database.c Factor out rhizome_hex_to_bytes() and chartonybl() 2012-06-25 14:51:21 +09:30
rhizome_fetch.c push manifest verification to as late as possible to avoid 2012-06-26 16:54:40 +09:30
rhizome_http.c Merge branch 'eventscheduler' 2012-06-25 16:50:23 +09:30
rhizome_packetformats.c push manifest verification to as late as possible to avoid 2012-06-26 16:54:40 +09:30
rhizome.c Factor out rhizome_hex_to_bytes() and chartonybl() 2012-06-25 14:51:21 +09:30
rhizome.h Merge branch 'eventscheduler' 2012-06-25 16:50:23 +09:30
serval_packetvisualise.c lots of fixes to get overlay mesh routing working on linux with 2012-04-29 11:56:47 +09:30
serval.h added code to time various servald functions and report periodic 2012-06-26 09:22:51 +09:30
servalwrap.c Make commandline.c error messages appear on Android log 2012-05-03 14:50:14 +09:30
server.c Add server start/stop tests 2012-06-26 15:46:10 +09:30
sha2.c Improved BYTE_ORDER detection for Android cross-compilation. 2011-12-19 09:06:34 +10: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 Renamed mphlr.h to serval.h 2012-02-23 12:45:42 +10: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.c More fixes for varargs stuff 2012-05-23 16:07:52 +09:30
strbuf.h Refactor rhizome db creation and execution functions 2012-06-12 18:12:36 +09:30
testconfig.sh.in Trival test of dna JNI command line entry point 2012-04-23 18:25:26 +09:30
testdefs.sh Add server start/stop tests 2012-06-26 15:46:10 +09:30
testframework.sh Improve test framework: tfw_log function 2012-06-26 15:46:10 +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
trans_cache.c Remove unnecessary debug messages from transaction cache 2012-03-13 16:35:15 +10:30
vomp.c make sure we really tell monitor clients when a call has died. 2012-06-25 17:10:29 +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.