Commit graph

860 commits

Author SHA1 Message Date
Wim Taymans
b2bc84cdbf address-pool: fix address increment
Use a guint instead of guint8 to increment the address. It's still not
completely correct because a guint might not be able to hold the complete
address range, but that's an enhacement for later.
Add unit test to test improved behaviour.

https://bugzilla.gnome.org/show_bug.cgi?id=708237
2013-11-12 16:54:59 +01:00
Patricia Muscalu
adc02db975 client: allow absolute path in requests
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=711689
2013-11-12 12:21:50 +01:00
Patricia Muscalu
8ce453d97d client: make make_path_from_uri a vmethod 2013-11-12 12:08:06 +01:00
Wim Taymans
8d5ce0d4ee stream: Add functions to get rtp and rtcp sockets
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=710100
2013-11-12 12:04:55 +01:00
Wim Taymans
d443f8546b context: defing a GType for the context
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=710018
2013-11-12 11:21:55 +01:00
Sebastian Pölsterl
e756324490 Fixed several GIR warnings 2013-11-12 11:15:58 +01:00
Wim Taymans
533d237754 auth: small typos 2013-11-12 11:15:46 +01:00
Sebastian Rasmussen
0e1665b7c6 tests: Add unit tests for token
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=710520
2013-11-12 10:44:43 +01:00
Sebastian Rasmussen
e4509ed92c token: Validate args for gst_rtsp_token_is_allowed
See https://bugzilla.gnome.org/show_bug.cgi?id=710520
2013-11-12 10:38:37 +01:00
Sebastian Rasmussen
c9025a58e1 token: Fix bug when creating empty token
We always want to have a valid GstStructure in the token.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=710520
2013-11-12 10:37:45 +01:00
Wim Taymans
c4ae13dbb5 thread-pool: avoid race in shutdown
If we call g_main_loop_quit before the thread has entered g_main_loop_run, we
don't actually stop the mainloop ever. Solve this race by adding an idle source
to the mainloop that calls the _quit. This way we immediately exit the mainloop
if quit was called before we started it.
2013-11-12 10:28:55 +01:00
Sebastian Rasmussen
a2eb48a27c tests: Add unit tests for permissions
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=710202
2013-11-12 09:54:46 +01:00
Sebastian Rasmussen
c0828a5d53 tests: Test mediafactory permissions
See https://bugzilla.gnome.org/show_bug.cgi?id=710202
2013-11-12 09:54:04 +01:00
Sebastian Rasmussen
4036f210af permissions: Fix refcounting when adding/removing roles
Previously a role that was removed was unreffed twice, and when
replacing an existing role the replaced role was freed while still being
referenced. Both bugs are now fixed.

See https://bugzilla.gnome.org/show_bug.cgi?id=710202
2013-11-12 09:54:04 +01:00
Sebastian Rasmussen
eee8b0db88 tests: Check gst_rtsp_url_parse return value
See https://bugzilla.gnome.org/show_bug.cgi?id=710202
2013-11-12 09:54:03 +01:00
Tim-Philipp Müller
7e8f6ffc34 Automatic update of common submodule
From 865aa20 to dbedaa0
2013-11-05 11:22:51 +00: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
Sebastian Dröge
935e8f852d rtsp-session-pool: Make sure session IDs are properly URI-escaped
https://bugzilla.gnome.org/show_bug.cgi?id=643812
2013-10-30 22:16:54 +01:00
Aleix Conchillo Flaque
fcad523dd7 examples: fix compilation when WITH_AUTH is defined
https://bugzilla.gnome.org/show_bug.cgi?id=710228
2013-10-30 19:12:10 +01:00
Sebastian Dröge
c96f1aaff7 gitignore: Add new test binary 2013-10-30 19:10:59 +01:00
Ognyan Tonchev
fa7898b0a6 thread-pool: Add unit test for the thread pools
https://bugzilla.gnome.org/show_bug.cgi?id=710228
2013-10-30 19:02:24 +01:00
Ognyan Tonchev
78e5a9148e thread-pool: Fix thread leak when reusing threads
https://bugzilla.gnome.org/show_bug.cgi?id=709730
2013-10-30 19:01:48 +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
Sebastian Rasmussen
cf82d90452 tests: Improve address pool unit tests
Add a range with mixed IPV4 and IPV6 addresses to pool.
Get an IPV4 address from an IPV6-only pool.
Get an IPV6 address from an IPV4-only pool.
Reserve a IPV6 address from an IPV4-only pool.
Check for unicast addresses in multicast-only pool.
Check for unicast addresses in uni-/multicast-mixed pool.

https://bugzilla.gnome.org/show_bug.cgi?id=710128
2013-10-14 20:20:05 +02:00
Wim Taymans
d4b8a8249c client: append query string in PAUSE/PLAY/TEARDOWN as well 2013-10-04 06:29:30 +02:00
Jonas Holmberg
1742399e23 client: Add query to control path
If the SETUP url contains a query it must be appended to the control
path so that it matches any already created stream in the media. The
query will also be appended to the session media path.
2013-10-04 06:14:32 +02:00
Wim Taymans
59b53c90c3 rtsp-media: remove old line 2013-10-04 05:48:52 +02:00
Jonas Holmberg
fcf51d3485 stream: Correct control comparison
https://bugzilla.gnome.org/show_bug.cgi?id=709176
2013-10-02 11:57:06 +02:00
Youness Alaoui
917bbfcc20 media: Check dynamically if the pipeline supports seeking
We should not depend on whether or not the pipeline state change
returned NO_PREROLL or not. A media could dynamically change its
element and switch from seekable to non seekable so it's best to test
the seekable nature of the pipeline dynamically when we try to do a seek.
2013-10-02 06:00:10 +02:00
Youness Alaoui
33dc78209c media: Return FALSE if seeking is not supported 2013-10-02 05:57:15 +02:00
Wim Taymans
d138f79da0 rtsp-media: don't seek accurate by default
Accurate seeking is perhaps a little overkill in the most common situation and
causes some formats (mp3) over slow media to seek extremely slowly.
2013-10-01 17:16:11 +02:00
Ognyan Tonchev
39dceb77ff tests: fix unit test
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=708742
2013-09-26 14:36:58 +02:00
Jonas Holmberg
0cd24e2257 client: Reply 400 if media cannot be constructed
Reply 400 Bad Request instead of 503 Service Unavailable if media
cannot be constructed in SETUP.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=708821
2013-09-26 14:32:43 +02:00
Jonas Holmberg
74b8da9396 client: Send setup reply once only
If find_media() failed in handle_setup_request() two replies was sent.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=708819
2013-09-26 14:25:36 +02:00
Tim-Philipp Müller
986bd13463 Automatic update of common submodule
From 6b03ba7 to 865aa20
2013-09-24 18:35:36 +01: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
Patrick Radizi
7b0ad7c25f addresspool: return reason of failure
Let gst_rtsp_address_pool_reserve_address() return the reason why
the address could not be reserved.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=708229
2013-09-24 17:30:18 +02:00
Edward Hervey
c7bed54b87 autogen.sh: Sync behaviour with other GStreamer modules
Allows building from outside of tree amongst other things
2013-09-20 16:47:56 +02:00
Edward Hervey
59aedf8d63 Automatic update of common submodule
From b613661 to 6b03ba7
2013-09-20 16:18:54 +02:00
Tim-Philipp Müller
a16761a451 Automatic update of common submodule
From 74a6857 to b613661
2013-09-19 18:46:14 +01:00
Tim-Philipp Müller
cc9f3bf8c0 Automatic update of common submodule
From 01a7a46 to 74a6857
2013-09-19 17:39:24 +01:00
Jonas Holmberg
e88b71aee4 client: Do not read beyond end of path string
If the setup was done without a control url, make sure we don't try to read the
non-existing control string and crash.
2013-09-19 15:44:26 +02:00
Wim Taymans
b41422bad7 client: Fix RTPInfo header
Refactor the method to make the content_base.
Use the content-base and the control url to construct the RTPInfo
url.
2013-09-17 14:39:44 +02:00
Wim Taymans
4d6c038fc7 client: map url to path only in describe
Only map the request url to a path in the DESCRIBE method. The SDP then
contains the base and control urls that should be used to SETUP/PAUSE/
PLAY/TEARDOWN the media.
2013-09-17 12:21:02 +02:00
Wim Taymans
fe3f63de7c Revert "client: map URL to path in requests"
This reverts commit e3fded2cec.

This is not correct, we only remap the URL to a path in DESCRIBE, the SDP then
contains the base and control urls which are used in the SETUP, PLAY,
PAUSE and TEARDOWN requests.
2013-09-17 11:41:57 +02:00
Wim Taymans
e3fded2cec client: map URL to path in requests 2013-09-16 17:17:35 +02:00
Wim Taymans
952aa309dc mount-points: make vmethod to make path from uri
Make a vmethod to transform an url into a path. The path is then used to lookup
the factory. This makes it possible to also use other bits of the url, such as
the query parameters, to locate the factory.
2013-09-16 17:17:34 +02:00
Ognyan Tonchev
258f63b8ac thread-pool: Add cleanup to wait for the threadpool to finish
Also fix race condition if two threads are asking for the first
thread from the thread pool at once. This would case two internal
GThreadPools to be created.

https://bugzilla.gnome.org/show_bug.cgi?id=707753
2013-09-09 14:36:12 +02:00
Jonas Holmberg
23b3f21595 client: free threadpool
https://bugzilla.gnome.org/show_bug.cgi?id=707638
2013-09-06 20:44:10 +01:00
Jonas Holmberg
cafdba8445 mountpoints tests: unref matched factories
https://bugzilla.gnome.org/show_bug.cgi?id=707638
2013-09-06 19:03:22 +01:00