Kristoffer Dalby
021c464148
Add cache for requested expiry times
...
This commit adds a sentral cache to keep track of clients whom has
requested an expiry time, but were we need to keep hold of it until the
second request comes in.
2021-11-22 19:32:52 +00:00
Kristoffer Dalby
9aac1fb255
Remove expiry logic, this needs to be redone
2021-11-19 09:02:29 +00:00
Kristoffer Dalby
d6739386a0
Get rid of dynamic errors
2021-11-15 19:18:14 +00:00
Kristoffer Dalby
c4d4c9c4e4
Add and fix gosec
2021-11-15 18:31:52 +00:00
Kristoffer Dalby
715542ac1c
Add and fix stylecheck (golint replacement)
2021-11-15 17:24:24 +00:00
Kristoffer Dalby
471c0b4993
Initial work eliminating one/two letter variables
2021-11-14 20:32:03 +01:00
Kristoffer Dalby
53ed749f45
Start work on making gocritic pass
2021-11-14 18:44:37 +01:00
Kristoffer Dalby
85f28a3f4a
Remove all instances of undefined numbers (gonmd)
2021-11-14 18:31:51 +01:00
Kristoffer Dalby
9390348a65
Add and fix goconst
2021-11-14 18:06:25 +01:00
Kristoffer Dalby
c9c16c7fb8
Remove unused params or returns
2021-11-14 18:03:21 +01:00
Kristoffer Dalby
0315f55fcd
Add and fix nilnil
2021-11-14 17:51:34 +01:00
Kristoffer Dalby
89eb13c6cb
Add and fix nlreturn (new line return)
2021-11-14 16:46:09 +01:00
Kristoffer Dalby
2634215f12
golangci-lint --fix
2021-11-13 08:39:04 +00:00
Kristoffer Dalby
03b7ec62ca
Go format with shorter lines
2021-11-13 08:36:45 +00:00
Kristoffer Dalby
49893305b4
Only turn on response log in grpc in trace mode
2021-11-08 22:06:25 +00:00
Kristoffer Dalby
b15efb5201
Ensure unix socket is removed before we startup
2021-11-07 09:55:32 +00:00
Kristoffer Dalby
2dfd42f80c
Attempt to dry up CLI client, add proepr config
...
This commit is trying to DRY up the initiation of the gRPC client in
each command:
It renames the function to CLI instead of GRPC as it actually set up a
CLI client, not a generic grpc client
It also moves the configuration of address, timeout (which is now
consistent) and api to use Viper, allowing users to set it via env vars
and configuration file
2021-11-07 09:41:14 +00:00
Kristoffer Dalby
706ff59d70
Clean pointer list in app.go, add grpc logging and simplify naming
2021-11-04 22:18:55 +00:00
Kristoffer Dalby
7c774bc547
Remove flag that cant be trapped
2021-11-02 21:49:19 +00:00
Kristoffer Dalby
9954a3c599
Add handling for closing the socket
2021-11-02 21:46:15 +00:00
Kristoffer Dalby
b91c115ade
Remove "auth skip" for socket traffic
2021-10-31 19:57:42 +00:00
Kristoffer Dalby
8db45a4e75
Setup a seperate, non-tls, no auth, socket grpc
2021-10-31 19:52:34 +00:00
Kristoffer Dalby
1c9b1ea91a
Add todo
2021-10-31 16:34:20 +00:00
Kristoffer Dalby
3f30bf1e33
Ensure we set up TLS for http
2021-10-31 16:19:38 +00:00
Kristoffer Dalby
264e5964f6
Resolve merge conflict
2021-10-31 09:40:43 +00:00
Kristoffer Dalby
cbf3f5d640
Resolve merge conflict
2021-10-30 15:33:01 +00:00
Kristoffer Dalby
482a31b66b
Setup swagger and swagger UI properly
2021-10-30 14:29:53 +00:00
Kristoffer Dalby
434fac52b7
Fix lint error
2021-10-30 14:29:03 +00:00
Kristoffer Dalby
6aacada852
Switch from gRPC localhost to socket
...
This commit changes the way CLI and grpc-gateway communicates with the
gRPC backend to socket, instead of localhost. Unauthenticated access now
goes on the socket, while the network interface will require API key (in
the future).
2021-10-30 14:08:16 +00:00
Kristoffer Dalby
68dab0fe7b
Move localhost check to utils
2021-10-29 17:04:58 +00:00
Kristoffer Dalby
a23d82e33a
Setup API and prepare for API keys
...
This commit sets up the API and gRPC endpoints and adds authentication
to them. Currently there is no actual authentication implemented but it
has been prepared for API keys.
In addition, there is a allow put in place for gRPC traffic over
localhost. This has two purposes:
1. grpc-gateway, which is the base of the API, connects to the gRPC
service over localhost.
2. We do not want to break current "on server" behaviour which allows
users to use the cli on the server without any fuzz
2021-10-29 16:45:06 +00:00
Kristoffer Dalby
2f045b20fb
Refactor tls and wire up grpc, grpc gateway/api
...
This commit moves the TLS configuration into a seperate function.
It also wires up the gRPC interface and prepares handing the API
endpoints to the grpc gateway.
2021-10-26 20:42:56 +00:00
Kristoffer Dalby
57f46ded83
Split derp into its own config struct
2021-10-22 16:55:14 +00:00
Juan Font
41c5a0ddf5
Apply suggestions from code review
...
Co-authored-by: Kristoffer Dalby <kradalby@kradalby.no>
2021-10-20 09:35:56 +02:00
Juan Font Alonso
18b00b5d8d
Add support for Split DNS (implements #179 )
2021-10-19 20:51:43 +02:00
Kristoffer Dalby
677bd9b657
Implement namespace matching
2021-10-18 19:27:52 +00:00
unreality
afbfc1d370
Merge branch 'main' into main
2021-10-16 22:31:37 +08:00
Juan Font Alonso
5ce1526a06
Do not return a pointer
2021-10-10 12:43:41 +02:00
Raal Goff
74e6c1479e
updates from code review
2021-10-10 17:22:42 +08:00
Juan Font
c4487b73c4
Merge branch 'main' into magic-dns-support
2021-10-09 12:24:07 +02:00
Juan Font Alonso
fc5153af3e
Generate MagicDNS search domains for any tailnet range
2021-10-09 12:22:13 +02:00
Kristoffer Dalby
2997f4d251
Merge branch 'main' into main
2021-10-08 22:21:41 +01:00
Raal Goff
e407d423d4
updates from code review
2021-10-08 17:43:52 +08:00
Kristoffer Dalby
f0c54490ed
Allow multiple namespaces to be checked for state at the same time
2021-10-06 22:06:07 +00:00
Kristoffer Dalby
ba391bc2ed
Account for updates in shared namespaces
2021-10-06 19:32:15 +00:00
Raal Goff
c487591437
use go-oidc instead of verifying and extracting tokens ourselves, rename oidc_endpoint to oidc_issuer to be more inline with spec
2021-10-06 17:19:15 +08:00
Kristoffer Dalby
a01a0d1039
Remove unstable update channel, replace with state updates
2021-10-05 16:24:46 +00:00
Juan Font Alonso
2eef535b4b
Merged main
2021-10-04 23:43:42 +02:00
Juan Font
040a18e6f8
Merge branch 'main' into magic-dns-support
2021-10-04 19:45:12 +02:00
Kristoffer Dalby
94ba5181fc
Resolve merge conflict
2021-10-04 16:38:52 +00:00