The Serval Project's core daemon that implements Distributed Numbering Architecture (DNA), MDP, VoMP, Rhizome, MeshMS, etc.
Go to file
Andrew Bettison 52ccd07020 Issue #17, improve speed of "rhizome extract manifest"
In the case that the MANIFESTS 'author' column is not NULL, do not perform a
full bundle secret verification in order to clear the '.readonly' flag, just
check whether the author's SID is present in the keyring with a proper-size
rhizome secret.
2012-10-15 18:33:44 +10: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 Artefacts created by libtoolize -c -i 2012-09-12 15:21:50 +09:30
nacl Check we could actually build something. 2012-09-06 15:27:26 +09:30
sqlite-amalgamation-3070900 Reduce use of stderr in many places 2012-08-01 17:54:02 +09:30
tests Issue #17, improve "rhizome extract manifest" command 2012-10-15 16:48:04 +10: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 Finish test and implementation of directory service 2012-09-18 12:30:15 +09:30
aclocal.m4 Merge branch 'master' of github.com:servalproject/serval-dna 2012-04-23 20:41:52 +09:30
Android.mk Merge branch 'rhizomedirect' into 'master' 2012-10-05 17:45:30 +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 Try detecting ALSA better. 2012-09-06 12:43:06 +09:30
batman.c Initial stab at porting to Solaris. 2012-09-05 20:42:50 +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
cli.c Reuse command line parsing framework with monitor interface 2012-09-25 13:31:34 +09:30
cli.h Reuse command line parsing framework with monitor interface 2012-09-25 13:31:34 +09:30
client.c Initial stab at porting to Solaris. 2012-09-05 20:42:50 +09:30
codecs.c Use new typedef time_ms_t everywhere 2012-08-09 12:14:32 +09:30
commandline.c Issue #17, improve "rhizome extract manifest" command 2012-10-15 16:48:04 +10:30
conf.c Typedef debugflags_t replaces (unsigned int) 2012-10-10 13:21:20 +10: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 Artefacts created by libtoolize -c -i 2012-09-12 15:21:50 +09:30
config.sub Artefacts created by libtoolize -c -i 2012-09-12 15:21:50 +09:30
configure.in fix interface detection on solaris. 2012-10-15 15:58:42 +10:30
constants.h Issue #17, overhaul manifest author crypto logic 2012-10-11 17:58:24 +10:30
dataformats.c Move is_sid_broadcast() and is_sid_any() macros into serval.h 2012-10-09 13:49:23 +10:30
directory_client.c Finish test and implementation of directory service 2012-09-18 12:30:15 +09:30
directory_service.c Only parse incoming packets with port numbers matching our expected responses 2012-10-02 16:15:30 +09:30
dna_helper.c Merge branch 'rhizomedirect' into 'master' 2012-10-05 17:45:30 +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 Listen to INADDR_ANY on OSX, otherwise we can't hear broadcasts 2012-08-09 13:32:08 +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 Initial stab at porting to Solaris. 2012-09-05 20:42:50 +09:30
install-sh Artefacts created by libtoolize -c -i 2012-09-12 15:21:50 +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 Add hop count to mdp ping 2012-10-10 16:22:31 +10:30
log.c Fix some minor bugs in recent commits 2012-10-10 18:13:31 +10:30
log.h Quieten Rhizome advertisement debug logging 2012-10-10 13:22:30 +10:30
lsif.c Listen to INADDR_ANY on OSX, otherwise we can't hear broadcasts 2012-08-09 13:32:08 +09:30
ltmain.sh Artefacts created by libtoolize -c -i 2012-09-12 15:21:50 +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 Merge branch 'rhizomedirect' into 'master' 2012-10-05 17:45:30 +09:30
mdp_client.c Only parse incoming packets with port numbers matching our expected responses 2012-10-02 16:15:30 +09:30
mdp_client.h Only parse incoming packets with port numbers matching our expected responses 2012-10-02 16:15:30 +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 Reuse command line parsing framework with monitor interface 2012-09-25 13:31:34 +09:30
monitor-client.c Write simple vomp console client 2012-09-28 15:23:50 +09:30
monitor-client.h Reuse command line parsing framework with monitor interface 2012-09-25 13:31:34 +09:30
monitor.c Merge branch 'rhizomedirect' into 'master' 2012-10-05 17:45:30 +09:30
mpbuild Added mesh potato build script. 2011-08-10 15:39:40 +02:00
net.c Finish test and implementation of directory service 2012-09-18 12:30:15 +09:30
net.h Introduce struct __sourceloc 2012-08-23 12:31:07 +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_address.c Fix compile errors and some warnings on solaris. 2012-10-15 15:36:36 +10:30
overlay_address.h Only allow abreviated SID's in route announcements 2012-10-10 15:29:36 +10:30
overlay_advertise.c Ensure paths decay and eventually expire 2012-10-12 14:22:26 +10:30
overlay_buffer.c Fix compile errors and some warnings on solaris. 2012-10-15 15:36:36 +10:30
overlay_buffer.h Refactor overlay buffer interface to support simple parsing 2012-08-31 15:03:07 +09:30
overlay_interface.c Merge branch 'rhizomedirect' into 'master' 2012-10-05 17:45:30 +09:30
overlay_mdp.c Add hop count to mdp ping 2012-10-10 16:22:31 +10:30
overlay_olsr.c Fix compile errors and some warnings on solaris. 2012-10-15 15:36:36 +10:30
overlay_packet.h Move requested payload queue into frame structure 2012-10-09 15:44:37 +10:30
overlay_packetformats.c Add hop count to mdp ping 2012-10-10 16:22:31 +10:30
overlay_payload.c Fix compile errors and some warnings on solaris. 2012-10-15 15:36:36 +10:30
overlay_route.c Fix compile errors and some warnings on solaris. 2012-10-15 15:36:36 +10:30
overlay.c Add and preserve QOS bit flags in packet header 2012-10-09 16:17:07 +10: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 Initial stab at porting to Solaris. 2012-09-05 20:42:50 +09:30
performance_timing.c Use new typedef time_ms_t everywhere 2012-08-09 12:14:32 +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
README.WHYNOTSIPS Add a note about why we aren't using SIPS/ZRTP. 2012-08-27 11:28:06 +09:30
responses.c Refactor log.h constants.h serval.h 2012-07-30 16:15:42 +09:30
rhizome_bundle.c Issue #17, overhaul manifest author crypto logic 2012-10-11 17:58:24 +10:30
rhizome_crypto.c Issue #17, improve speed of "rhizome extract manifest" 2012-10-15 18:33:44 +10:30
rhizome_database.c Issue #17, improve speed of "rhizome extract manifest" 2012-10-15 18:33:44 +10:30
rhizome_direct_http.c Issue #17, add AUTHOR column to Rhizome MANIFESTS table 2012-10-09 17:48:06 +10:30
rhizome_direct.c Merge branch 'rhizomedirect' into 'master' 2012-10-05 17:45:30 +09:30
rhizome_fetch.c Fix handling of socket closure on OSX 2012-10-08 16:53:52 +10:30
rhizome_http.c Fix handling of socket closure on OSX 2012-10-08 16:53:52 +10:30
rhizome_packetformats.c Quieten Rhizome advertisement debug logging 2012-10-10 13:22:30 +10:30
rhizome.c Issue #17, overhaul manifest author crypto logic 2012-10-11 17:58:24 +10:30
rhizome.h Issue #17, improve speed of "rhizome extract manifest" 2012-10-15 18:33:44 +10:30
serval_packetvisualise.c Merge branch 'rhizomedirect' into 'master' 2012-10-05 17:45:30 +09:30
serval.h fix interface detection on solaris. 2012-10-15 15:58:42 +10:30
servalwrap.c Fix compilation for android 2012-07-24 16:04:59 +09:30
server.c Issue #21, INFO message on unlink a stale pidfile 2012-10-08 17:20:19 +10:30
sha2.c Initial stab at porting to Solaris. 2012-09-05 20:42:50 +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
srandomdev.c Don't use an uninitialised variable. 2012-09-01 16:32:50 +09:30
str.c Merge branch 'rhizomedirect' into 'master' 2012-10-05 17:45:30 +09:30
str.h Merge branch 'rhizomedirect' into 'master' 2012-10-05 17:45:30 +09:30
strbuf_helpers.c Fix formatting bug in strbuf_toprint() et al 2012-10-03 17:10:57 +09:30
strbuf_helpers.h Improve alloca_toprint() functions 2012-09-28 17:46:40 +09:30
strbuf.c Fix bug in alloca_toprint() that caused SEGV 2012-08-06 15:39:08 +09:30
strbuf.h Introduce struct __sourceloc 2012-08-23 12:31:07 +09:30
strlcpy.c Fix issues arising from new strlcpy.c 2012-08-14 11:23:27 +09:30
strlcpy.h Add strlcpy as it appears some systems (Ubuntu and probably Debian) don't have it. 2012-08-13 18:24:19 +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 Issue #17, add AUTHOR column to Rhizome MANIFESTS table 2012-10-09 17:48:06 +10:30
testdefs.sh Add multi-hop routing test 2012-10-09 14:49:24 +10:30
testframework.sh Improve test framework: tfw_cat and shell backtrace 2012-09-28 15:30:47 +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_console.c Fix compiler warning on Linux gcc 4.7.1 2012-10-08 17:20:19 +10:30
vomp.c Write simple vomp console client 2012-09-28 15:23:50 +09:30
xprintf.c Add xprintf() extensible stream formatter 2012-08-03 16:44:05 +09:30
xprintf.h Add xprintf() extensible stream formatter 2012-08-03 16:44:05 +09:30

When we were looking at implementing secure calls for OpenBTS it was suggested
that we configure Asterisk to use SIPS/ZRTP. This would have been relatively
easy to setup, however there are a few problems.

Number one is that when Asterisk checks the certificates it will either
validate the certificate (checking the chain of trust and so on) and then
check that the common name attribute on the certificate matches the hostname
of the peer, or it will do none of these checks. This code is in main/tcptls.c
line 206 (in version 1.8.14.1).

This is undesirable in a setup where there is limited or no infrastructure as
there is not likely to be a DNS server setup, or even rigid IP assignments
that would allow a static hosts file based setup. This situation would force
the administrator to disable the checks completely which would allow a trivial
man in the middle attack.

It would be possible to modify Asterisk to have a third way where it validates
the certificate and checks the chain of trust but does not look at the common
name. We decided against this approach as the VOMP channel driver was written
in time to avoid it.