Philipp Schafft
355d7e976b
Feature: Allow client altering on auth fail and acl deny
...
This adds the following tags to the config file below <role>:
* <on-failed-action>: Action to take on auth fail
* <on-failed-argument>: Argument for action on auth fail
* <on-deny-action>: Action to take on acl deny
* <on-deny-argument>: Argument for action on acl deny
All client alter actions are supported. The corresponding
auth does not need to have the permission for those operations.
Notes:
Likely <on-deny-*> should be moved below <acl>, See: #2351
Closes : #1272
2020-10-18 16:10:26 +00:00
Philipp Schafft
e43fd645c1
Feature: Support names for ACLs
...
Closes : #2347
2020-10-15 14:20:09 +00:00
Philipp Schafft
5f3efe5d52
Fix: Corrected error code for mounts with max listeners reached
...
Closes : #738
2020-10-15 13:50:10 +00:00
Philipp Schafft
96d6190dbf
Fix: Re-implemented <no-mount>.
...
Closes : #2335
2020-10-10 13:44:37 +00:00
Philipp Schafft
b9d00301e7
Update: Reformated code attaching a listener to a source
2020-10-10 13:21:19 +00:00
Philipp Schafft
ddafdd971f
Fix: Strange patch for ICY
2019-09-17 18:08:57 +00:00
Philipp Schafft
f83fe87ab9
Update: Added some debugging lines
2019-09-17 17:32:00 +00:00
Philipp Schafft
e60a36bfb6
Fix: Corrected log output from <unknown< to <unknown>
2019-05-28 07:02:45 +00:00
Philipp Schafft
dbabf91510
Fix: Only send 100 on request and 200 only on SOURCE
2019-05-14 11:38:08 +00:00
Philipp Schafft
0288af5a93
Feature: Report SOURCE as deprecated in log on level DEBUG
2019-05-14 11:37:57 +00:00
Philipp Schafft
0467ef5657
Feature: Log HTTP method used to start a source
2019-05-14 11:37:06 +00:00
Philipp Schafft
e6122f13fb
Feature: Marked spammy development only output as such
...
See: #2358
2019-01-09 15:04:16 +00:00
Philipp Schafft
143a8b717f
Fix: Send final reply to client on HTTP upgrade
...
Closes : #2356
2018-11-13 08:51:02 +00:00
Philipp Schafft
7637e8f5e3
Fix: Do not upgrade on already upgraded connections
2018-11-13 08:45:09 +00:00
Philipp Schafft
6583bdfc56
Fix: Corrected error handling for TLS connections
...
Closes : #2355
2018-11-13 08:25:01 +00:00
Philipp Schafft
0bdad13fd2
Feature: Implemented DELETE on sources
2018-10-26 08:03:46 +00:00
Philipp Schafft
fea817da2d
Update: Replaced listensocket_container_new()
2018-10-10 15:06:45 +00:00
Philipp Schafft
f20dfcef63
Fix: SECURITY Do not handle admin-requests in listen-socket auth differently.
...
This also adds comments to _handle_authentication_global() and
_handle_authentication_mount_default() to explain the situation.
2018-10-04 09:00:26 +00:00
Philipp Schafft
9d120d126f
Fix: Corrected order of locks to avoid dead-locks
2018-09-20 14:13:19 +00:00
Philipp Schafft
7b84c45a81
Fix: Corrected two possible dead-locks.
2018-09-20 13:03:05 +00:00
Philipp Schafft
4d7a60d588
Feature: Added basic support for auth backends to manipulate the client
2018-09-19 13:32:58 +00:00
Philipp Schafft
c97e5d95fc
Cleanup: Remove redundant passing of client's uri
2018-09-13 13:38:57 +00:00
Philipp Schafft
e4560e15a2
Cleanup: Made assigning of client->admin_command a function on it's own.
2018-09-13 12:47:28 +00:00
Philipp Schafft
fe948bffea
Update: Make client's URI part of it's object
2018-09-13 12:44:57 +00:00
Philipp Schafft
ed266a5dc7
Feature: Added per <listen-socket> <authentication>
2018-09-13 11:34:01 +00:00
Philipp Schafft
6f2c6b8e84
Fix: Use ADMIN_COMMAND_ERROR not -1
2018-09-13 08:38:16 +00:00
Marvin Scholz
149194d6af
Fix: Use POSIX poll.h instead of sys/poll.h
2018-08-14 20:03:01 +02:00
Philipp Schafft
cdd09669fa
Feature: Added some more useful client fast events
2018-08-08 14:05:41 +00:00
Philipp Schafft
08cf0c1233
Feature: Emit a range of basic connection and client events
2018-08-08 14:05:41 +00:00
Philipp Schafft
2d0d496ad4
Fix: Set con->readbuffer = NULL after free()
2018-08-02 09:09:19 +00:00
Philipp Schafft
648947fe44
Cleanup: Provided connection_send_bytes() to avoid direct access to con->send()
2018-07-27 10:07:18 +00:00
Philipp Schafft
c40d12a1c7
Update: Moved _update_client_request_body_length() into new client_complete()
2018-07-20 11:41:37 +00:00
Philipp Schafft
c0155e2404
Fix: Do free connection's putback buffer regardless of it's size
2018-07-20 11:41:03 +00:00
Philipp Schafft
73f00d5934
Update: Make connection IDs it's own type
2018-07-06 18:43:25 +00:00
Philipp Schafft
d9e96a55e7
Feature: Allow <resource> to match on a specific listen-socket
2018-06-30 14:06:05 +00:00
Philipp Schafft
e1f944a3f5
Update: Added comment about global lock in __prepare_shoutcast_admin_cgi_request()
2018-06-30 13:10:08 +00:00
Philipp Schafft
ab8d1639ba
Update: Made listensocket_* perfect thread safe.
2018-06-30 13:10:08 +00:00
Philipp Schafft
fcef3f12d6
Feature: Allow complete reconfiguration of sockets on config reload
2018-06-30 13:10:08 +00:00
Philipp Schafft
4279a6caea
Update: Make use of listensocket_container_set_sockcount_cb() and listensocket_container_sockcount()
...
This fixes the starts-up-with-no-listen-sockets bug.
2018-06-30 13:10:08 +00:00
Philipp Schafft
5490120d4d
Update: Rewrote listen socket handling code comepletly.
...
This moves all the listen socket code into a nice and abstracting file.
Notes:
* Altering listen socket setup does not yet work on config reload.
(Did it ever work?)
* Server will start with no listen sockets. (There are unconfirmed
rumours it sometimes(?) did before.) This is to be re-implemented
in another commit. It can also be improved to work allow checking
on reload or other config changes.
* For slave connections the server address is now checked against
the allow/deny-IP list.
2018-06-30 13:10:08 +00:00
Philipp Schafft
b9ff70b589
Fix: Only allow access to "*" for OPTIONS
2018-06-20 06:34:00 +00:00
Philipp Schafft
7e76986741
Update: Added a fast lane for client requests with a small body
2018-06-19 13:44:07 +00:00
Philipp Schafft
59cf2ff426
Cleanup: Removed now useless start-of-stream passing code (as much as I found. There is more)
2018-06-19 13:44:07 +00:00
Philipp Schafft
c3afdff5fb
Feature: Allow POST for web requests
2018-06-19 13:44:07 +00:00
Philipp Schafft
a466900ae1
Feature: Allow POST for admin requests
2018-06-19 13:44:07 +00:00
Philipp Schafft
44ebc3cf22
Update: Added protection against re-queueing a client for reading body that has been queued once already
2018-06-19 13:44:07 +00:00
Philipp Schafft
19dda79146
Update: Added timeout and size limit to client body queue handling
2018-06-19 13:44:07 +00:00
Philipp Schafft
669707d312
Update: Added basic client body slurping
2018-06-19 13:44:07 +00:00
Philipp Schafft
e9624ef523
Cleanup: Removed unused structure
2018-06-19 13:44:07 +00:00
Philipp Schafft
01c35e2c41
Feature: Check if we know client's body length. If so do not allow reading more than it.
2018-06-19 13:44:07 +00:00