Sebastian Dröge
84a7f459a1
Include ONVIF types from single-include rtsp-server.h
...
... by actually making it a single-include header and moving everything
related to the GstRTSPServer type to rtsp-server-object.h instead.
Otherwise there are too many circular includes.
https://bugzilla.gnome.org/show_bug.cgi?id=797361
2018-11-01 10:18:22 +02:00
Tim-Philipp Müller
62d4c0b179
libs: fix API export/import and 'inconsistent linkage' on MSVC
...
Export rtsp-server library API in headers when we're building the
library itself, otherwise import the API from the headers.
This fixes linker warnings on Windows when building with MSVC.
Fix up some missing config.h includes when building the lib which
is needed to get the export api define from config.h
https://bugzilla.gnome.org/show_bug.cgi?id=797185
2018-09-24 09:36:21 +01:00
Tim-Philipp Müller
2eb4d1b810
Update for g_type_class_add_private() deprecation in recent GLib
2018-06-24 12:48:11 +02:00
Mathieu Duponchelle
c725ef01a4
All around: add annotations and API guards
2018-02-12 19:16:11 +01:00
Marcus Prebble
b90d4ba917
rtsp-server: Change the logic so we don't pop a NULL context
...
When doing a port scan (e.g. with nmap) the call to GST_RTSP_CHECK()
will sometimes fail. This call is made before any context is pushed
resulting in an attempt to pop a NULL context.
https://bugzilla.gnome.org/show_bug.cgi?id=757949
2015-11-11 15:58:27 +01:00
Xavier Claessens
8511ffe178
Document that source keeps a ref on server until it's destroyed
...
https://bugzilla.gnome.org/show_bug.cgi?id=749227
2015-08-10 12:18:53 -04:00
Wim Taymans
ecde0051db
server: implement client REMOVE filter
2014-07-10 17:10:06 +02:00
Wim Taymans
945c93fde0
filter: Release lock in filter functions
...
Release the object lock before calling the filter functions. We need to
keep a cookie to detect when the list changed during the filter
callback. We also keep a hashtable to make sure we only call the filter
function once for each object in case of concurrent modification.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=732950
2014-07-10 11:36:55 +02:00
Wim Taymans
661f4d928f
signals: use generic marshal function
...
Use the generic C marshal function.
Use more explicit type instead of G_TYPE_POINTER
2014-06-24 09:43:44 +02:00
Sebastian Rasmussen
b1b5301577
gobject-introspection: Add annotations to support language bindings
...
In addition a few cosmetic changes:
* Adjust the order of arguments
* Fix typo: occured -> occurred
* Fix indentation after Return:-clauses
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=726941
2014-03-24 00:36:42 +00:00
Sebastian Rasmussen
08160e0913
rtsp-*: Refer to NULL as a constant in comments
...
Plus one typo fix.
https://bugzilla.gnome.org/show_bug.cgi?id=714988
2013-11-22 09:13:14 +00:00
Tim-Philipp Müller
33c4bdfa01
rtsp-server: sprinkle some allow-none annotations for g-i
2013-11-18 10:47:04 +00:00
Wim Taymans
b0f609ce7f
rtsp: allow NULL func in filters
...
Passing a null function make the filters return a list of
refcounted objects.
2013-11-15 16:35:05 +01:00
Ognyan Tonchev
7b34d1e915
rtsp-server: Fix socket leak
...
https://bugzilla.gnome.org/show_bug.cgi?id=710088
2013-11-04 20:08:06 +01:00
Patricia Muscalu
de7be1c9b2
tests: fixed racy behavior in rtspserver tests
...
https://bugzilla.gnome.org/show_bug.cgi?id=710078
2013-10-15 11:28:27 +02:00
Jonas Holmberg
eb03b5c172
server: Emit client-connected signal earlier
...
Emit client-connected before the client ref is given to a GSource,
otherwise client-connected can be emitted after the client object has
been freed.
2013-09-24 17:36:07 +02:00
Youness Alaoui
76cbc7c86c
Fix gst_rtsp_server_client_filter, using wrong variable type
2013-08-23 10:29:21 +02:00
Wim Taymans
f124d11298
server: add method to iterate clients of server
2013-08-02 17:19:42 +02:00
Wim Taymans
f78a65379c
ClientState -> Context
...
Rename the clientstate to context and put the code in a separate file.
2013-07-22 14:25:04 +02:00
Wim Taymans
3fe1096fd1
server: add small debug
2013-07-15 14:50:26 +02:00
Wim Taymans
9fe107a96a
auth: let the auth module check client_settings
...
Let the auth module decide if client settings are allowed for the
current client.
2013-07-12 17:07:53 +02:00
Wim Taymans
4b2e6d88b3
auth: move TLS handling to auth module
...
Remove the TLS settings on the server and move it to the auth module because
that is where security related bits go.
2013-07-12 12:41:52 +02:00
Wim Taymans
c2d4b79b69
server: let context ref the server
...
So that we don't risk losing the server object early anc crash.
2013-07-11 17:18:58 +02:00
Wim Taymans
0b3644a21b
docs: improve docs
2013-07-11 16:57:14 +02:00
Wim Taymans
01b921e8a6
server: configure client thread pool
2013-07-10 17:07:13 +02:00
Wim Taymans
27917f4ef3
server: use thread pool
...
Use the thread pool instead of doing our own thing.
2013-07-10 17:02:58 +02:00
Ognyan Tonchev
c5b3066c33
rtsp-server: Expose the use_client_settings API
...
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=699935
2013-06-03 12:04:44 +02:00
Wim Taymans
0a285290cb
server: add support for TLS
...
Add methods to set and get a TLS certificate.
Add vmethod to configure a new connection. By default, configure the TLS
certificate in a new connection if needed.
2013-05-31 11:42:36 +02:00
Wim Taymans
531ffca018
server: remove accept_client vmethod
...
This vmethod is not very useful so remove it.
2013-05-31 11:14:17 +02:00
Wim Taymans
0091339254
server: don't crash on NULL GError
2013-05-30 17:23:51 +02:00
Wim Taymans
d638b03ff9
server: refactor connection setup
...
Let the server accept the socket connection and construct a GstRTSPConnection
from it. Remove the code from the client and let the client only deal with
a fully configure GstRTSPConnection object.
We will need this later when the server will configure the connection for
TLS.
2013-05-30 07:18:22 +02:00
Alexander Schrab
c75e1c6b47
rtsp-server: Do not crash on nmapping of server
...
* generate error when gst_rtsp_connection_accept fails
* do not stop accepting incoming connections because
accepting a client fails
https://bugzilla.gnome.org/show_bug.cgi?id=701072
2013-05-27 13:20:36 +02:00
Olivier Crête
4c61c6d308
rtsp-server: Limit the number of threads per server instance
...
If we exceed the maximum, just round robin the clients over the existing
threads.
2013-03-11 11:07:20 +01:00
Olivier Crête
4071e1b999
rtsp-server: No need to store the GMainContext in the client context
2013-03-11 11:07:20 +01:00
Olivier Crête
b9d111372e
Document locking and its order
2013-03-11 11:07:19 +01:00
Wim Taymans
ad00c5e792
rtsp: make object details private
...
Make all object details private
Add methods to access private bits
2012-11-29 11:11:05 +01:00
Wim Taymans
8da4171055
client: remove reference to server
...
We don't need to keep a ref to the server
2012-11-26 16:39:26 +01:00
Wim Taymans
1d53c46d23
MediaMapping -> MountPoints
...
Describes better what the object manages.
2012-11-26 12:37:55 +01:00
David Svensson Fors
0eeb4a5c73
server: start and stop multiple times
...
Stop listening on the RTSP port when the GSource is removed, so clients
can't connect and the server can be started again.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=688395
2012-11-20 11:30:37 +01:00
Wim Taymans
8a7197f078
server: fix small leak
2012-11-20 11:24:35 +01:00
Wim Taymans
7d6e4606fa
server: set default max-threads property
2012-11-13 12:05:42 +01:00
Wim Taymans
65fa516677
server: free old socket
2012-11-12 16:30:16 +01:00
Wim Taymans
06cadebe71
server: add max-thread property
2012-11-12 15:53:28 +01:00
Wim Taymans
8523c9ca92
server: use a threadpool for the mainloops
2012-11-12 15:29:39 +01:00
Wim Taymans
a58d404e1f
server: rework maincontext handling in clients
...
Make a separate method to attach a client to a MainContext.
Let the server decide in what GMainContext the client will operate and give this
context to the client in attach. Then the server can later decide to use a
separate thread for each client or just use the mainthread.
2012-11-12 15:01:09 +01:00
Tim-Philipp Müller
4dba434f16
Fix FSF address
2012-11-04 00:14:25 +00:00
Wim Taymans
348b7f9c21
docs: update docs
2012-10-26 12:35:20 +02:00
Ognyan Tonchev
78bde6fa3e
rtsp-server: don't ref server socket if it is NULL
...
Fixes test_bind_already_in_use unit test again after commit 6a497440
.
https://bugzilla.gnome.org/show_bug.cgi?id=686644
2012-10-22 18:11:28 +01:00
Sebastian Pölsterl
e11e855ac8
rtsp-server: fixed comments and GIR annotations
...
https://bugzilla.gnome.org/show_bug.cgi?id=680777
2012-10-18 19:17:01 +01:00
Alessandro Decina
1e954a1a5e
rtsp-server: allow binding on port 0 (binds on a random port)
2012-10-15 10:50:27 +02:00