diff options
author | AdrianStoenescu <51166009+AdrianStoenescu@users.noreply.github.com> | 2019-07-25 13:36:49 +0300 |
---|---|---|
committer | Saya Sugiura <ssugiura@jp.adit-jv.com> | 2019-09-03 10:44:45 +0900 |
commit | 01a1935ec1e2ebf0601a6ff55ac957c92d6cbfa5 (patch) | |
tree | a5388bbd0300b8f77ba6e9b317b316c137fcc010 /include | |
parent | 716ecb8e223f1c89ca2a6200091ad15febb09144 (diff) | |
download | DLT-daemon-01a1935ec1e2ebf0601a6ff55ac957c92d6cbfa5.tar.gz |
Add option in dlt.conf for bindAddress to specific IPs (#130)
Add the possibility to have in dlt.conf an option that specifies a set
of IP addresses. The daemon will do a socket bind only for this list,
therefore external connections will be limited to this set of IP
addresses. If this option is not given, the default INADDR_ANY is used
("0.0.0.0") as before.
The option in dlt.conf can look like this:
BindAddress = 160.48.199.98;160.48.199.97;160.48.199.226,160.48.199.186;160.48.199.139;172.16.222.99
There can be as many addresses but only specified on one single line.
They have to be delimited by ',' or ';'. ' ' (space) delimiter does
not work. IPv6 addresses are supported as well. For instance:
BindAddress = fe80::255:7bff:feb5:7df7
IPv6 addresses are acceptable only if DLT_USE_IPv6 flag is ON at
compile time. IPv4 addresses are acceptable only if DLT_USE_IPv6 flag is
OFF at compile time. One cannot have both IPv4 and IPv6 format in the
same time.
Signed-off-by: Adrian Stoenescu Adrian.Stoenescu@harman.com
Diffstat (limited to 'include')
-rw-r--r-- | include/dlt/dlt_common.h | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/include/dlt/dlt_common.h b/include/dlt/dlt_common.h index 4f030a5..2eec4d2 100644 --- a/include/dlt/dlt_common.h +++ b/include/dlt/dlt_common.h @@ -73,6 +73,7 @@ \{ */ +# include <netinet/in.h> # include <stdio.h> # ifdef __linux__ # include <linux/limits.h> @@ -817,6 +818,17 @@ typedef struct int size; } DltBufferBlockHead; +# ifdef DLT_USE_IPv6 +# define DLT_IP_SIZE (INET6_ADDRSTRLEN) +# else +# define DLT_IP_SIZE (INET_ADDRSTRLEN) +# endif +typedef struct DltBindAddress +{ + char ip[DLT_IP_SIZE]; + struct DltBindAddress *next; +} DltBindAddress_t; + # define DLT_MESSAGE_ERROR_OK 0 # define DLT_MESSAGE_ERROR_UNKNOWN -1 # define DLT_MESSAGE_ERROR_SIZE -2 |