Lorenzo Fontana
c76518c681
update: license headers
...
Co-Authored-By: Leonardo Di Donato <leodidonato@gmail.com >
Signed-off-by: Lorenzo Fontana <lo@linux.com >
2019-10-08 16:02:26 +02:00
Mark Stemm
2bc4bfd7fb
Specify namespace compat w/ gcc 5
...
I wasn't able to compile the dev branch with gcc 5.4 (e.g. not using the
builder), getting this error:
```
.../falco/userspace/falco/grpc_server.cpp:40:109: error: specialization of ‘template<class Request, class Response> void falco::grpc::request_stream_context<Request, Response>::start(falco::grpc::server*)’ in different namespace [-fpermissive]
void falco::grpc::request_stream_context<falco::output::request, falco::output::response>::start(server* srv)
^
In file included from .../falco/userspace/falco/grpc_server.cpp:26:0:
.../falco/userspace/falco/grpc_server.h:102:7: error: from definition of ‘template<class Request, class Response> void falco::grpc::request_stream_context<Request, Response>::start(falco::grpc::server*)’ [-fpermissive]
void start(server* srv);
```
It looks like gcc 5.4 doesn't handle a declaration with namespace blocks
but a definition with namespaces in the
function. https://gcc.gnu.org/bugzilla/show_bug.cgi?id=56480 has more
detail.
A workaround is to add `namespace falco {` and `namespace grpc {` around
the declarations.
Signed-off-by: Mark Stemm <mark.stemm@gmail.com >
2019-10-04 11:43:28 +02:00
Leonardo Di Donato
db3383180c
docs(userspace/falco): documenting the keepalive field of the outputs request
...
Signed-off-by: Leonardo Di Donato <leodidonato@gmail.com >
2019-10-03 11:55:04 +02:00
Leonardo Di Donato
8a6c0b796c
fix(userspace/engine): guard lua state into falco engine
...
Co-authored-by: Lorenzo Fontana <lo@linux.com >
Signed-off-by: Leonardo Di Donato <leodidonato@gmail.com >
2019-09-30 18:07:19 +02:00
Leonardo Di Donato
f0cd3344a2
fix(userspace/falco): guard lua state for falco outputs
...
Co-authored-by: Lorenzo Fontana <lo@linux.com >
Signed-off-by: Leonardo Di Donato <leodidonato@gmail.com >
2019-09-30 18:07:19 +02:00
Lorenzo Fontana
3d8b7231f3
fix(userspace/falco): meta request should use the request field
...
Signed-off-by: Lorenzo Fontana <lo@linux.com >
2019-09-30 16:55:24 +03:00
Lorenzo Fontana
221e1b53aa
fix(userspace/falco): remove redundant check for grpc outputs
...
Signed-off-by: Lorenzo Fontana <lo@linux.com >
2019-09-30 16:55:24 +03:00
Leonardo Di Donato
98cdc30aa3
chore(userspace): addressing review comments and typos
...
Co-authored-by: Lorenzo Fontana <lo@linux.com >
Signed-off-by: Leonardo Di Donato <leodidonato@gmail.com >
2019-09-25 16:43:32 +03:00
Leonardo Di Donato
732965f973
docs(userspace/falco): document output proto messages and service
...
Co-authored-by: Lorenzo Fontana <lo@linux.com >
Signed-off-by: Leonardo Di Donato <leodidonato@gmail.com >
2019-09-25 16:43:32 +03:00
Leonardo Di Donato
905379c6da
update(userspace/falco): specify go packages into protobuf
...
Co-authored-by: Lorenzo Fontana <lo@linux.com >
Signed-off-by: Leonardo Di Donato <leodidonato@gmail.com >
2019-09-25 16:43:32 +03:00
Lorenzo Fontana
e6deb59e3d
chore(userspace/falco): we don't support tags yet
...
Co-Authored-By: Leonardo Di Donato <leodidonato@gmail.com >
Signed-off-by: Lorenzo Fontana <lo@linux.com >
2019-09-25 16:43:32 +03:00
Lorenzo Fontana
eb8248fe04
chore(userspace/falco): better organization of schema and grpc server
...
Co-Authored-By: Leonardo Di Donato <leodidonato@gmail.com >
Signed-off-by: Lorenzo Fontana <lo@linux.com >
2019-09-25 16:43:32 +03:00
Lorenzo Fontana
6cf2ccf857
update(userspace/falco): falco_grpc_server is now just server
...
Co-Authored-By: Leonardo Di Donato <leodidonato@gmail.com >
Signed-off-by: Lorenzo Fontana <lo@linux.com >
2019-09-25 16:43:32 +03:00
Lorenzo Fontana
203226d347
new(userspace/falco): namespace for falco grpc
...
Co-Authored-By: Leonardo Di Donato <leodidonato@gmail.com >
Signed-off-by: Lorenzo Fontana <lo@linux.com >
2019-09-25 16:43:32 +03:00
Lorenzo Fontana
392499f024
new(userspace/falco): utils file definition with read function
...
Co-Authored-By: Leonardo Di Donato <leodidonato@gmail.com >
Signed-off-by: Lorenzo Fontana <lo@linux.com >
2019-09-25 16:43:32 +03:00
Leonardo Di Donato
b19cb3678f
fix(userspace/falco): pop output fields lua table and correctly check parameters on the stack
...
Signed-off-by: Leonardo Di Donato <leodidonato@gmail.com >
2019-09-25 16:43:32 +03:00
Leonardo Di Donato
54b3aa9129
fix(userspace/falco): distinguish between sinsp and json events when resolving tokens
...
Signed-off-by: Leonardo Di Donato <leodidonato@gmail.com >
2019-09-25 16:43:32 +03:00
Leonardo Di Donato
944b46cb67
new(userspace/engine): json event to map type
...
Signed-off-by: Leonardo Di Donato <leodidonato@gmail.com >
2019-09-25 16:43:32 +03:00
Lorenzo Fontana
0565ce2f50
fix(userspace/falco): grpc server implementation subscribe handle output queue stop
...
Signed-off-by: Lorenzo Fontana <lo@linux.com >
2019-09-25 16:43:32 +03:00
Leonardo Di Donato
d35971e1bc
update(userspace/engine): resolve token
...
Signed-off-by: Leonardo Di Donato <leodidonato@gmail.com >
2019-09-25 16:43:32 +03:00
Leonardo Di Donato
836094b28e
chore: typos and miscellanea
...
Signed-off-by: Leonardo Di Donato <leodidonato@gmail.com >
2019-09-25 16:43:32 +03:00
Leonardo Di Donato
c96f096821
new(userspace/falco): config certificates for the gRPC server
...
Co-authored-by: Lorenzo Fontana <lo@linux.com >
Signed-off-by: Leonardo Di Donato <leodidonato@gmail.com >
2019-09-25 16:43:32 +03:00
Leonardo Di Donato
f7c19517de
update: grpc server disabled by default
...
Co-authored-by: Lorenzo Fontana <lo@linux.com >
Signed-off-by: Leonardo Di Donato <leodidonato@gmail.com >
2019-09-25 16:43:32 +03:00
Leonardo Di Donato
6800fe2ec6
fix(userspace/falco): handle grpc server thread stop gracefully
...
Co-authored-by: Lorenzo Fontana <lo@linux.com >
Signed-off-by: Leonardo Di Donato <leodidonato@gmail.com >
2019-09-25 16:43:32 +03:00
Leonardo Di Donato
495c30c87a
fix(userspace/falco): correcly log SIGINT handling ( fixes #791 )
...
Signed-off-by: Leonardo Di Donato <leodidonato@gmail.com >
2019-09-25 16:43:32 +03:00
Leonardo Di Donato
b0acff30bd
new(userspace/falco): shutdown method for grpc server
...
Signed-off-by: Leonardo Di Donato <leodidonato@gmail.com >
2019-09-25 16:43:32 +03:00
Leonardo Di Donato
6e2de3ce93
new(userspace/falco): read all the gRPC server configs
...
Signed-off-by: Leonardo Di Donato <leodidonato@gmail.com >
2019-09-25 16:43:32 +03:00
Leonardo Di Donato
c389ec1b61
new(userspace/falco): store context metadata for future usage
...
Signed-off-by: Leonardo Di Donato <leodidonato@gmail.com >
2019-09-25 16:43:32 +03:00
Leonardo Di Donato
21e588394f
new(userspace/falco): handle SIGHUP and SIGINT in the main process not in the spawned threads (grpc server)
...
Signed-off-by: Leonardo Di Donato <leodidonato@gmail.com >
2019-09-25 16:43:32 +03:00
Leonardo Di Donato
3df53f6092
new(userspace/falco): grpc ssl server credentials
...
Co-authored-by: Lorenzo Fontana <lo@linux.com >
Signed-off-by: Leonardo Di Donato <leodidonato@gmail.com >
2019-09-25 16:43:32 +03:00
Leonardo Di Donato
b94f7be3a8
new(userspace/falco): trasmit output event timestamp over gRPC
...
Co-authored-by: Lorenzo Fontana <lo@linux.com >
Signed-off-by: Leonardo Di Donato <leodidonato@gmail.com >
2019-09-25 16:43:32 +03:00
Leonardo Di Donato
f611604ac8
update(userspace/falco): remove id from falco output proto
...
Co-authored-by: Lorenzo Fontana <fontanalorenzo@me.com >
Signed-off-by: Leonardo Di Donato <leodidonato@gmail.com >
2019-09-25 16:43:32 +03:00
Leonardo Di Donato
5e511d8f09
new(userspace/falco): check lua data when handling gRPC
...
Signed-off-by: Leonardo Di Donato <leodidonato@gmail.com >
2019-09-25 16:43:32 +03:00
Leonardo Di Donato
bef491ae20
new(usespace/falco): transmit output sources
...
Co-authored-by: Lorenzo Fontana <lo@linux.com >
Signed-off-by: Leonardo Di Donato <leodidonato@gmail.com >
2019-09-25 16:43:32 +03:00
Leonardo Di Donato
286d7b1cd5
new(userspace/falco): transmit output priorities
...
Co-authored-by: Lorenzo Fontana <lo@linux.com >
Signed-off-by: Leonardo Di Donato <leodidonato@gmail.com >
2019-09-25 16:43:32 +03:00
Leonardo Di Donato
d6efb17f88
chore(userspace/falco): use the falco grpc output namespace
...
Co-authored-by: Lorenzo Fontana <lo@linux.com >
Signed-off-by: Leonardo Di Donato <leodidonato@gmail.com >
2019-09-25 16:43:32 +03:00
Leonardo Di Donato
c40b797f33
update(userspace/falco/lua): no need to pass priority num
...
Signed-off-by: Leonardo Di Donato <leodidonato@gmail.com >
2019-09-25 16:43:32 +03:00
Leonardo Di Donato
ab806a4599
update(userspace/falco): namespace the proto messages and types
...
Co-authored-by: Lorenzo Fontana <lo@linux.com >
Signed-off-by: Leonardo Di Donato <leodidonato@gmail.com >
2019-09-25 16:43:32 +03:00
Leonardo Di Donato
bd90a6ce89
update(usersoace/falco): allow aliases for enum types
...
Co-authored-by: Lorenzo Fontana <lo@linux.com >
Signed-off-by: Leonardo Di Donato <leodidonato@gmail.com >
2019-09-25 16:43:32 +03:00
Lorenzo Fontana
3cea413177
update(userspace/falco/lua): passing format to resolve output fields
...
Co-Authored-By: Leonardo Di Donato <leodidonato@gmail.com >
Signed-off-by: Lorenzo Fontana <lo@linux.com >
2019-09-25 16:43:32 +03:00
Lorenzo Fontana
26217cec5c
new(userspace/falco): read output_fields from a lua table
...
Co-Authored-By: Leonardo Di Donato <leodidonato@gmail.com >
Signed-off-by: Lorenzo Fontana <lo@linux.com >
2019-09-25 16:43:32 +03:00
Lorenzo Fontana
7f35b7f712
new(userspace/engine): expose resolve_tokens to lua
...
Co-Authored-By: Leonardo Di Donato <leodidonato@gmail.com >
Signed-off-by: Lorenzo Fontana <lo@linux.com >
2019-09-25 16:43:32 +03:00
Leonardo Di Donato
826ad0b271
new(userspace/falco): context metadata
...
Co-authored-by: Lorenzo Fontana <lo@linux.com >
Signed-off-by: Leonardo Di Donato <leodidonato@gmail.com >
2019-09-25 16:43:32 +03:00
Lorenzo Fontana
6cce448206
new(userspace/falco): send rule and message only for now
...
Co-Authored-By: Leonardo Di Donato <leodidonato@gmail.com >
Signed-off-by: Lorenzo Fontana <lo@linux.com >
2019-09-25 16:43:32 +03:00
Lorenzo Fontana
0a9f61f0fb
new(userspace/falco): implement the output queue methods directly
...
Co-Authored-By: Leonardo Di Donato <leodidonato@gmail.com >
Signed-off-by: Lorenzo Fontana <lo@linux.com >
2019-09-25 16:43:32 +03:00
Leonardo Di Donato
43cd429967
new(userspace/falco): falco output handler to send events via grpc
...
Co-authored-by: Lorenzo Fontana <lo@linux.com >
Signed-off-by: Leonardo Di Donato <leodidonato@gmail.com >
2019-09-25 16:43:32 +03:00
Leonardo Di Donato
7a99336b3b
chore(userspace/falco): cleanup boot logic for grpc server
...
Signed-off-by: Leonardo Di Donato <leodidonato@gmail.com >
2019-09-25 16:43:32 +03:00
Leonardo Di Donato
45df07bc1b
update(userspace/falco): use concurrent output queue in grpc server
...
Signed-off-by: Leonardo Di Donato <leodidonato@gmail.com >
Co-authored-by: Lorenzo Fontana <lo@linux.com >
2019-09-25 16:43:32 +03:00
Leonardo Di Donato
4f23b0bdfb
update(userspace/falco): use concurrent output queue in grpc server impl
...
Co-authored-by: Lorenzo Fontana <lo@linux.com >
Signed-off-by: Leonardo Di Donato <leodidonato@gmail.com >
2019-09-25 16:43:32 +03:00
Leonardo Di Donato
5f29d46cb3
update(userspace/falco/lua): separate events output from messages outputs using different lua functions
...
Co-authored-by: Lorenzo Fontana <lo@linux.com >
Signed-off-by: Leonardo Di Donato <leodidonato@gmail.com >
2019-09-25 16:43:32 +03:00