Nick Craig-Wood
638058ef91
lib/http: shutdown all servers on exit to remove unix socket
...
Before this change only serve http was Shutting down its server which
was causing other servers such as serve restic to leave behind their
unix sockets.
This change moves the finalisation to lib/http so all servers have it
and removes it from serve http.
Fixes #6648
2022-12-23 12:28:07 +00:00
Nick Craig-Wood
5db4493557
lib/http: fix race condition
2022-12-15 12:38:09 +00:00
Nick Craig-Wood
a9ce86f9a3
lib/http: add UsingAuth method
2022-12-15 12:38:09 +00:00
Nick Craig-Wood
3167292c2f
lib/http: remove unused Template from Config
2022-12-15 12:38:09 +00:00
Tom Mombourquette
ec7cc2b3c3
lib/http: Simplify server.go to export an http server rather than an interface
...
This also makes the implementation public.
2022-12-15 12:38:09 +00:00
Tom Mombourquette
2a2fcf1012
lib/http: rationalise names in test servers to be more consistent
2022-12-15 12:38:09 +00:00
Tom Mombourquette
6d62267227
serve http: support unix sockets and multiple listners
...
- add support for unix sockets (which skip the auth).
- add support for multiple listeners
- collapse unnecessary internal structure of lib/http so it can all be
imported together
- moves files in sub directories of lib/http into the main lib/http
directory and reworks the code that uses them.
See: https://forum.rclone.org/t/wip-rc-rcd-over-unix-socket/33619
Fixes : #6605
2022-12-15 12:38:09 +00:00
albertony
5d6b8141ec
Replace deprecated ioutil
...
As of Go 1.16, the same functionality is now provided by package io or
package os, and those implementations should be preferred in new code.
2022-11-07 11:41:47 +00:00
Robert Newson
d2fef05fe4
httplib: Add --xxx-min-tls-version option to select minimum tls values for HTTP servers
...
This allows administrators to disable TLS 1.0 and 1.1, for example.
Example:
rclone rcd --rc-min-tls-version=tls1.2 --rc-cert <cert> --rc-key <key>
2022-10-19 17:13:12 +01:00
albertony
555def2da7
build: add package comments to silence revive linter
2022-08-28 13:43:51 +02:00
albertony
73e3bb09d7
http: fix missing response when using custom auth handler
2022-07-02 15:29:50 +02:00
albertony
fdd2f8e6d2
Error strings should not be capitalized
...
Reported by staticcheck 2022.1.2 (v0.3.2)
See: staticcheck.io
2022-06-23 23:26:02 +02:00
albertony
53f831f40a
docs: add missing code section formatting to commands and flags
2022-06-21 23:43:00 +02:00
Nick Craig-Wood
e43b5ce5e5
Remove github.com/pkg/errors and replace with std library version
...
This is possible now that we no longer support go1.12 and brings
rclone into line with standard practices in the Go world.
This also removes errors.New and errors.Errorf from lib/errors and
prefers the stdlib errors package over lib/errors.
2021-11-07 11:53:30 +00:00
Nolan Woods
a074a2b983
lib/http: Fix handling of ssl credentials
...
Adds a test that makes an actual http and https request against the server
2021-10-27 14:46:10 +03:00
albertony
e2f47ecdeb
docs: punctuation cleanup
...
See #5538
2021-10-20 22:56:19 +02:00
Nick Craig-Wood
a98e3ea6f1
build: replace the deprecated golint linter with revive
...
This fixes up a small number of new lint items also
2021-10-15 12:51:31 +01:00
Nolan Woods
023e32de05
lib/http: Factor password hash salt into options with default
2021-10-13 11:33:38 +01:00
Nolan Woods
b1cb41f8da
lib/http: Fix bad username check in single auth secret provider
2021-10-13 11:33:38 +01:00
Cnly
bc74f0621e
http: fix serve http exits directly after starting
2021-07-25 14:06:43 +01:00
Nolan Woods
e489a101f6
lib/http: add default 404 handler
2021-05-02 11:30:02 +01:00
Nolan Woods
002d323c94
lib/http: Move HTTP object serialization logic to lib/http
2021-04-28 22:54:15 +01:00
Nolan Woods
4ad62ec016
lib/http: Add authentication middleware with basic auth implementation
2021-04-28 22:54:15 +01:00
Nolan Woods
95ee14bb2c
feat: Add lib/http
...
lib/http provides an abstraction for a central http server that services can bind routes to
2021-04-28 22:54:15 +01:00