Go to file
Tom Tsou 29ef2c82db common: Restrict UDP binding to localhost only
Reported security vulnerability where control and data UDP
packets can be injected into the transceiver externally due
to socket binding to all interfaces using INADDR_ANY.

Existing socket interface does not allow specifying local
address; only the local port and remote address/port are
arguments.

Restrict socket bind to localhost with INADDR_LOOPBACK. If
external interfaces do need to be used, the API should be
modified to allow specifying the local socket address.

Reported-by: Simone Margaritelli <simone@zimperium.com>
Signed-off-by: Tom Tsou <tom.tsou@ettus.com>
2016-05-06 18:09:44 +02:00
.gitignore also ignore LockTest 2014-12-04 21:16:43 +01:00
BitVector.cpp sync from commercial 270263e2437d5105b36fec2015176cfddec48ffb 2014-12-04 19:50:34 +01:00
BitVector.h sync from commercial 270263e2437d5105b36fec2015176cfddec48ffb 2014-12-04 19:50:34 +01:00
BitVectorTest.cpp merge 5.0 preview from commercial 2014-07-16 04:32:22 +02:00
COPYING Putting versions of RRLP, CommonLibs and sqlite3 into the public release branch. 2011-10-07 19:20:49 +00:00
Configuration.cpp sync from commercial 270263e2437d5105b36fec2015176cfddec48ffb 2014-12-04 19:50:34 +01:00
Configuration.h merge 5.0 preview from commercial 2014-07-16 04:32:22 +02:00
ConfigurationTest.cpp merge 5.0 preview from commercial 2014-07-16 04:32:22 +02:00
Defines.h merge 5.0 preview from commercial 2014-07-16 04:32:22 +02:00
Exit.h merge 5.0 preview from commercial 2014-07-16 04:32:22 +02:00
F16.h merge 5.0 preview from commercial 2014-07-16 04:32:22 +02:00
F16Test.cpp merge 5.0 preview from commercial 2014-07-16 04:32:22 +02:00
Interthread.h sync from commercial 270263e2437d5105b36fec2015176cfddec48ffb 2014-12-04 19:50:34 +01:00
InterthreadTest.cpp sync from commercial 270263e2437d5105b36fec2015176cfddec48ffb 2014-12-04 19:50:34 +01:00
LinkedLists.cpp merge 5.0 preview from commercial 2014-07-16 04:32:22 +02:00
LinkedLists.h sync from commercial 270263e2437d5105b36fec2015176cfddec48ffb 2014-12-04 19:50:34 +01:00
LockTest.cpp sync from commercial 270263e2437d5105b36fec2015176cfddec48ffb 2014-12-04 19:50:34 +01:00
LogTest.cpp merge 5.0 preview from commercial 2014-07-16 04:32:22 +02:00
Logger.cpp sync from commercial 270263e2437d5105b36fec2015176cfddec48ffb 2014-12-04 19:50:34 +01:00
Logger.h sync from commercial 270263e2437d5105b36fec2015176cfddec48ffb 2014-12-04 19:50:34 +01:00
Makefile.am sync from commercial 270263e2437d5105b36fec2015176cfddec48ffb 2014-12-04 19:50:34 +01:00
MemoryLeak.h merge 5.0 preview from commercial 2014-07-16 04:32:22 +02:00
README merge 5.0 preview from commercial 2014-07-16 04:32:22 +02:00
Regexp.h merge 5.0 preview from commercial 2014-07-16 04:32:22 +02:00
RegexpTest.cpp merge 5.0 preview from commercial 2014-07-16 04:32:22 +02:00
Reporting.cpp merge 5.0 preview from commercial 2014-07-16 04:32:22 +02:00
Reporting.h merge 5.0 preview from commercial 2014-07-16 04:32:22 +02:00
ReportingTest.cpp merge 5.0 preview from commercial 2014-07-16 04:32:22 +02:00
ScalarTypes.h merge 5.0 preview from commercial 2014-07-16 04:32:22 +02:00
SelfDetect.cpp merge 5.0 preview from commercial 2014-07-16 04:32:22 +02:00
SelfDetect.h merge 5.0 preview from commercial 2014-07-16 04:32:22 +02:00
SelfDetectTest.cpp merge 5.0 preview from commercial 2014-07-16 04:32:22 +02:00
Sockets.cpp common: Restrict UDP binding to localhost only 2016-05-06 18:09:44 +02:00
Sockets.h merge 5.0 preview from commercial 2014-07-16 04:32:22 +02:00
SocketsTest.cpp merge 5.0 preview from commercial 2014-07-16 04:32:22 +02:00
ThreadTest.cpp merge 5.0 preview from commercial 2014-07-16 04:32:22 +02:00
Threads.cpp sync from commercial 270263e2437d5105b36fec2015176cfddec48ffb 2014-12-04 19:50:34 +01:00
Threads.h sync from commercial 270263e2437d5105b36fec2015176cfddec48ffb 2014-12-04 19:50:34 +01:00
Timeval.cpp sync from commercial 270263e2437d5105b36fec2015176cfddec48ffb 2014-12-04 19:50:34 +01:00
Timeval.h sync from commercial 270263e2437d5105b36fec2015176cfddec48ffb 2014-12-04 19:50:34 +01:00
TimevalTest.cpp sync from commercial 270263e2437d5105b36fec2015176cfddec48ffb 2014-12-04 19:50:34 +01:00
URLEncode.cpp merge 5.0 preview from commercial 2014-07-16 04:32:22 +02:00
URLEncode.h merge 5.0 preview from commercial 2014-07-16 04:32:22 +02:00
URLEncodeTest.cpp merge 5.0 preview from commercial 2014-07-16 04:32:22 +02:00
UnixSignal.cpp - remove need for 3rdParty include reference, libcoredump now can be built-from-scratch and installed as lib and -dev headers 2014-03-31 11:30:56 +02:00
UnixSignal.h merge 5.0 preview from commercial 2014-07-16 04:32:22 +02:00
UnixSignalTest.cpp - merging in Dave's selfDetect branch so we can limit our components to only a single instance 2014-03-31 10:59:57 +02:00
Utils.cpp sync from commercial 270263e2437d5105b36fec2015176cfddec48ffb 2014-12-04 19:50:34 +01:00
Utils.h sync from commercial 270263e2437d5105b36fec2015176cfddec48ffb 2014-12-04 19:50:34 +01:00
UtilsTest.cpp sync from commercial 270263e2437d5105b36fec2015176cfddec48ffb 2014-12-04 19:50:34 +01:00
Variables.cpp merge 5.0 preview from commercial 2014-07-16 04:32:22 +02:00
Vector.h merge 5.0 preview from commercial 2014-07-16 04:32:22 +02:00
VectorTest.cpp merge 5.0 preview from commercial 2014-07-16 04:32:22 +02:00
example.config syncing CommonLibs, and including BSD-licensed A5/1 implementation. 2013-08-13 23:17:46 +00:00
sqlite3util.cpp sync from commercial 270263e2437d5105b36fec2015176cfddec48ffb 2014-12-04 19:50:34 +01:00
sqlite3util.h merge 5.0 preview from commercial 2014-07-16 04:32:22 +02:00

README

This directory contains common-use classes, most of which are not specific to GSM.

```
Vector          A vector class (NOT std::vector<>) that supports aliased subvectors. Not resizable.
BitVector       Bit-indexable vectors based on Vector.
Interthread     A set of C++ wrappers for pthread facilities.
Sockets         A set of C++ wrappers for Unix sockets.
Timeval         A C++ wraper for struct timeval.
LinkLists       Classes for simple linked lists of pointers.
Logger          A logging interface based on syslogd.
Configuration   A key-value configuration table.
Regexp          A C++ wrapper on stdlib regular expressions.
```

Do "make tests" to build a series of unit tests for these classes.