profile/ivi/GSSDP.git
13 years agoRevert "Send notify for all lower versions as well"
Jens Georg [Fri, 20 May 2011 11:44:54 +0000 (13:44 +0200)]
Revert "Send notify for all lower versions as well"

This reverts commit c39bba86c215785afefd16a9eeab1def2556a4e2.

This is wrong according to UPnP spec. Announcements must only be sent
for the largest supported version.

The issue that was fixed with this is also fixed with
ad16c1ab2e14c8736bbef0397667ad782dc8d218.

13 years agoReply for M-SEARCH on versions <= our version
Jens Georg [Fri, 20 May 2011 09:34:01 +0000 (11:34 +0200)]
Reply for M-SEARCH on versions <= our version

13 years agoKeep resource version of target around
Jens Georg [Fri, 20 May 2011 09:27:37 +0000 (11:27 +0200)]
Keep resource version of target around

13 years agoMake USN and ST match on M-SEARCH
Jens Georg [Wed, 11 May 2011 12:12:18 +0000 (14:12 +0200)]
Make USN and ST match on M-SEARCH

This is required by UPnP.

13 years agoFix all warnings from g-ir-scanner
Jens Georg [Sat, 30 Apr 2011 17:57:13 +0000 (20:57 +0300)]
Fix all warnings from g-ir-scanner

13 years agoUpdate gobject-introspection automake integration
Jens Georg [Sat, 30 Apr 2011 17:51:41 +0000 (20:51 +0300)]
Update gobject-introspection automake integration

13 years agoBump minor and LT versions
Zeeshan Ali (Khattak) [Fri, 3 Jun 2011 22:47:04 +0000 (01:47 +0300)]
Bump minor and LT versions

Bump minor version and LTVERSION now that we're breaking API/ABI.

13 years agoDon't use anonymous structs
Jens Georg [Wed, 2 Feb 2011 19:39:09 +0000 (20:39 +0100)]
Don't use anonymous structs

Needed for gtkmm-like bindings

13 years agoMake gssdp-client implement GInitable
Jens Georg [Wed, 19 Jan 2011 08:11:03 +0000 (09:11 +0100)]
Make gssdp-client implement GInitable

GObject way to pass a GError on construction.

13 years agoOnly reply if a valid MX header is present
Zeeshan Ali (Khattak) [Fri, 3 Jun 2011 21:57:46 +0000 (00:57 +0300)]
Only reply if a valid MX header is present

Fixes UPnP CTT test UDA-1.2.9.

Modified version of a patch from Jens Georg <mail@jensge.org>.

13 years agoDon't send interleaved byebye/alive on startup
Jens Georg [Tue, 24 May 2011 10:11:29 +0000 (12:11 +0200)]
Don't send interleaved byebye/alive on startup

According to UPnP CTT, there should not be any byebye message after
the device sent an alive message. So we need to group the initial
byebye messages (also requested by the tool, UDA-1.1.3) to come
before the initial alive messages.

Partially fixes UDA-1.1.1 - UDA-1.1.3

13 years agoImplement add_resource_simple using add_resource
Jens Georg [Fri, 27 May 2011 08:17:10 +0000 (10:17 +0200)]
Implement add_resource_simple using add_resource

Remove duplicate code

13 years agoFix crash on target without a colon
Sven Neumann [Wed, 4 May 2011 12:54:46 +0000 (14:54 +0200)]
Fix crash on target without a colon

Don't crash if a target without a colon is passed to
gssdp_resource_browser_set_target().

13 years agoRemove a redundant variable
Zeeshan Ali (Khattak) [Tue, 26 Apr 2011 17:47:36 +0000 (20:47 +0300)]
Remove a redundant variable

13 years agoBetter usage of g_set_error*
Alberto Mardegan [Sun, 17 Apr 2011 08:18:10 +0000 (11:18 +0300)]
Better usage of g_set_error*

Use g_set_error instead of g_error_new; do not check if the error
pointer is non-NULL, because g_set_error() does that internally.
Also, use g_set_error_literal() whenever possible.

13 years agoMemory leak: always call g_propagate_error
Alberto Mardegan [Sun, 17 Apr 2011 08:18:09 +0000 (11:18 +0300)]
Memory leak: always call g_propagate_error

Even if the "dest" error is NULL, we must call g_propagate_error()
because it free's the "src" error that would otherwise be leaked.

13 years agoReport failure even if no GError is given
Alberto Mardegan [Sun, 17 Apr 2011 08:18:08 +0000 (11:18 +0300)]
Report failure even if no GError is given

If no GError was passed to the GInitable, in some error cases
gssdp_socket_source_do_init() would still return TRUE. This change fixes
that and simplifies error handling a bit.

13 years agoAvoid accessing members of a destroyed GError
Alberto Mardegan [Sun, 17 Apr 2011 08:18:07 +0000 (11:18 +0300)]
Avoid accessing members of a destroyed GError

After g_propagate_error() has been called, the original error has either
been destroyed or moved; this code was accessing the contents of the
GError after it had been free'd.

13 years agoRelease 0.10.0
Jens Georg [Thu, 24 Mar 2011 21:17:08 +0000 (23:17 +0200)]
Release 0.10.0

13 years agoFix network calculation for IPv6
Jens Georg [Thu, 24 Mar 2011 21:07:39 +0000 (23:07 +0200)]
Fix network calculation for IPv6

13 years agoSend notify for all lower versions as well
Zeeshan Ali (Khattak) [Tue, 8 Mar 2011 15:20:55 +0000 (17:20 +0200)]
Send notify for all lower versions as well

13 years agoRefactor a function
Zeeshan Ali (Khattak) [Tue, 8 Mar 2011 14:12:46 +0000 (16:12 +0200)]
Refactor a function

Refactor create_target_regex().

13 years agoSend alive message at least 3 times before expiry
Zeeshan Ali (Khattak) [Thu, 3 Feb 2011 17:53:48 +0000 (19:53 +0200)]
Send alive message at least 3 times before expiry

We want to re-announce at least 3 times before the resource group expires
to cope with the unrelialble nature of UDP.

Read the paragraphs about 'CACHE-CONTROL' on pages 21-22 of UPnP Device
Architecture Document v1.1 for further details on this.

13 years agoClear the ChangeLog file
Luis de Bethencourt [Wed, 2 Feb 2011 11:54:14 +0000 (12:54 +0100)]
Clear the ChangeLog file

The ChangeLog was obsolete and since it's use has been replaced
by git log, an empty ChangeLog file is kept to satisfy autools.

13 years agoRelease 0.9.2
Zeeshan Ali (Khattak) [Fri, 28 Jan 2011 13:54:29 +0000 (15:54 +0200)]
Release 0.9.2

13 years agoPort network lookup code to Windows
Jens Georg [Wed, 26 Jan 2011 22:00:46 +0000 (23:00 +0100)]
Port network lookup code to Windows

13 years agoAdd 'network' property to GSSDPClient
Zeeshan Ali (Khattak) [Tue, 25 Jan 2011 15:08:12 +0000 (17:08 +0200)]
Add 'network' property to GSSDPClient

13 years agoStreamline resource cleaning in socket_source_cb
Jens Georg [Mon, 17 Jan 2011 19:54:27 +0000 (20:54 +0100)]
Streamline resource cleaning in socket_source_cb

Fixes Bug #2144.

13 years agoRequire libsoup >= 2.26.1
Zeeshan Ali (Khattak) [Wed, 22 Dec 2010 10:03:58 +0000 (12:03 +0200)]
Require libsoup >= 2.26.1

13 years agoFix issue introduced with commit 20dce239
Sven Neumann [Thu, 16 Dec 2010 13:41:21 +0000 (14:41 +0100)]
Fix issue introduced with commit 20dce239

The Reource struct is not any longer valid at the point we emit the
signal, so better not access it there.

13 years agoRelease 0.9.1
Zeeshan Ali (Khattak) [Wed, 1 Dec 2010 15:10:05 +0000 (17:10 +0200)]
Release 0.9.1

13 years agoFix potential crash in resource-unavailable()
Sven Neumann [Thu, 18 Nov 2010 21:33:49 +0000 (22:33 +0100)]
Fix potential crash in resource-unavailable()

Similar fix as for resource_expire(), emit the "resource-unavailable"
signal after having removed the resource from the list of available
resources.

13 years agoFix potential crash in resource_expire()
Sven Neumann [Mon, 15 Nov 2010 08:58:40 +0000 (09:58 +0100)]
Fix potential crash in resource_expire()

GSSDPResourceBrowser emits "resource-unavailable" before it has removed
the resource from its cache. Now if the application changes the cache
in response to this signal emission the code will crash.

Fix this potential crash by emitting the signal after the resource
has been removed from the cache.

13 years agoRelease 0.9.0
Zeeshan Ali (Khattak) [Fri, 12 Nov 2010 11:33:54 +0000 (13:33 +0200)]
Release 0.9.0

13 years agoDon't include private header in a public header
Zeeshan Ali (Khattak) [Fri, 12 Nov 2010 10:02:31 +0000 (12:02 +0200)]
Don't include private header in a public header

13 years agoDon't print the whole packet on failure to send it
Jens Georg [Sun, 10 Oct 2010 19:39:29 +0000 (21:39 +0200)]
Don't print the whole packet on failure to send it

Only print destination and the error message.

13 years agoWork-around some issues with gio on windows
Jens Georg [Sun, 2 May 2010 15:37:06 +0000 (17:37 +0200)]
Work-around some issues with gio on windows

glib uses a rather strange mechanism to init the winsock library (through
usage of g_inet_addres_*), so we better do it ourselves.

glib - rightly - doesn't set SO_REUSEADDR on g_socket_bind on windows
since it has different semantics. Nevertheless we need it on windows for
multicast sockets, so we add a helper function to set this socket option.

13 years agoPort host IP address detection code to windows
Jens Georg [Sun, 2 May 2010 14:13:50 +0000 (16:13 +0200)]
Port host IP address detection code to windows

13 years agoMake it compile on mingw
Jens Georg [Fri, 26 Jun 2009 15:04:28 +0000 (17:04 +0200)]
Make it compile on mingw

Add headers and casts necessary to silence mingw. Additionaly
"interface" is a macro on Windows which leads to weird compiler errors;
renaming the variables was unavoidable

To make libtool generate DLLs on windows the linker flag -no-undefined
needs to be passed; otherwise libtool will only create static libraries.

13 years agoMake GSSDPSocketSource a GObject
Jens Georg [Tue, 7 Sep 2010 21:14:15 +0000 (23:14 +0200)]
Make GSSDPSocketSource a GObject

13 years agoMicro coding-style fix
Zeeshan Ali (Khattak) [Fri, 8 Oct 2010 22:36:09 +0000 (01:36 +0300)]
Micro coding-style fix

13 years agoPort GSSDP to GIO/GSocket
Jens Georg [Sun, 2 May 2010 14:41:14 +0000 (16:41 +0200)]
Port GSSDP to GIO/GSocket

13 years agoPass all libs when building the tests, to please gold (#2196)
Ross Burton [Mon, 20 Sep 2010 10:47:18 +0000 (11:47 +0100)]
Pass all libs when building the tests, to please gold (#2196)

13 years agoRelease 0.8.0
Zeeshan Ali (Khattak) [Thu, 16 Sep 2010 12:09:35 +0000 (15:09 +0300)]
Release 0.8.0

13 years agoProperly catch errors in recvfrom
Jens Georg [Tue, 7 Sep 2010 20:20:42 +0000 (22:20 +0200)]
Properly catch errors in recvfrom

Errors previously were caught by sheer luck due to the fact that bytes
was declared size_t (unsigned), thus -1 mapping to typeof(size_t)_MAX
which most likely fullfilled the case of bytes > BUF_SIZE

13 years agoFix typo in socket-source
Jens Georg [Wed, 8 Sep 2010 20:14:33 +0000 (22:14 +0200)]
Fix typo in socket-source

13 years agoDon't use deprecated libsoup API
Zeeshan Ali (Khattak) [Tue, 24 Aug 2010 12:17:47 +0000 (15:17 +0300)]
Don't use deprecated libsoup API

14 years agoFlag string arg of GSSDPClient signal as static
Sven Neumann [Tue, 6 Jul 2010 13:34:06 +0000 (15:34 +0200)]
Flag string arg of GSSDPClient signal as static

Set the G_SIGNAL_TYPE_STATIC_SCOPE flag on the "from_ip" string
argument of the GSSDPClient::message-received signal.

Signed-off-by: Sven Neumann <s.neumann@raumfeld.com>
14 years agoChain up in dispose() and finalize().
Sven Neumann [Tue, 22 Jun 2010 10:08:53 +0000 (12:08 +0200)]
Chain up in dispose() and finalize().

14 years agoFix typo (thanks berrie@codevio.com)
Ross Burton [Wed, 21 Apr 2010 15:33:14 +0000 (16:33 +0100)]
Fix typo (thanks berrie@codevio.com)

14 years agoRelease 0.7.2
Zeeshan Ali (Khattak) [Thu, 8 Apr 2010 13:16:40 +0000 (16:16 +0300)]
Release 0.7.2

14 years agoUse complete paths of sources in GIR build rule
Zeeshan Ali (Khattak) [Fri, 9 Apr 2010 12:43:20 +0000 (15:43 +0300)]
Use complete paths of sources in GIR build rule

Fixes `make distcheck`.

14 years agoHide internal API from introspection scanner
Zeeshan Ali (Khattak) [Tue, 6 Apr 2010 16:06:53 +0000 (19:06 +0300)]
Hide internal API from introspection scanner

14 years agoAdd gobject-introspection check macro
Zeeshan Ali (Khattak) [Sat, 20 Feb 2010 13:20:45 +0000 (15:20 +0200)]
Add gobject-introspection check macro

Depending on gobject-introspection installation to check for
gobject-introspection is a bad idea. This patch inlines the check macro.

14 years agoAdd ACLOCAL_AMFLAGS so that autoreconf will obey ACLOCAL_FLAGS
Jens Georg [Sat, 6 Mar 2010 20:01:53 +0000 (21:01 +0100)]
Add ACLOCAL_AMFLAGS so that autoreconf will obey ACLOCAL_FLAGS

14 years agoautogen.sh: Obey the ACLOCAL_FLAGS environment variable
Neil Roberts [Thu, 18 Mar 2010 16:40:45 +0000 (16:40 +0000)]
autogen.sh: Obey the ACLOCAL_FLAGS environment variable

This allows additional macro search paths to be searched by setting
the ACLOCAL_FLAGS variable. This is needed for jhbuild.

http://bugzilla.openedhand.com/show_bug.cgi?id=2039

14 years agoIf target is not a URN, no need to deal with version
Zeeshan Ali (Khattak) [Mon, 4 Jan 2010 17:12:26 +0000 (19:12 +0200)]
If target is not a URN, no need to deal with version

14 years agoVersion in target must be at the end of the string
Zeeshan Ali (Khattak) [Thu, 31 Dec 2009 15:40:29 +0000 (17:40 +0200)]
Version in target must be at the end of the string

14 years agoUse silent rules
Ross Burton [Thu, 21 Jan 2010 08:38:12 +0000 (08:38 +0000)]
Use silent rules

14 years agoUpdate ignores
Ross Burton [Thu, 21 Jan 2010 08:36:32 +0000 (08:36 +0000)]
Update ignores

14 years agoBuild introspection data
Ross Burton [Thu, 21 Jan 2010 08:36:25 +0000 (08:36 +0000)]
Build introspection data

14 years agoCheck for gobject-introspection
Ross Burton [Thu, 21 Jan 2010 08:36:11 +0000 (08:36 +0000)]
Check for gobject-introspection

14 years agoPrepare release 0.7.1
Zeeshan Ali (Khattak) [Fri, 4 Dec 2009 13:11:45 +0000 (15:11 +0200)]
Prepare release 0.7.1

14 years agoHave specific GError code for interfaces without an IP address
Olivier Crête [Tue, 1 Dec 2009 13:08:06 +0000 (18:38 +0530)]
Have specific GError code for interfaces without an IP address

14 years agoIf we can't create a request socket don't try to create a multicast socket
Ross Burton [Wed, 2 Dec 2009 11:09:52 +0000 (11:09 +0000)]
If we can't create a request socket don't try to create a multicast socket

14 years agoUse SO_REUSEPORT if present
Mattias Wadman [Wed, 2 Dec 2009 11:06:26 +0000 (11:06 +0000)]
Use SO_REUSEPORT if present

Darwin and some BSDs don't have SO_REUSEADDR, but SO_REUSEPORT.

Signed-off-by: Ross Burton <ross@linux.intel.com>
14 years agoMake GSSDPClient ignore Point to Point interfaces so that GUPnP stops putting stuff...
iain [Tue, 24 Nov 2009 21:01:31 +0000 (21:01 +0000)]
Make GSSDPClient ignore Point to Point interfaces so that GUPnP stops putting stuff on my VPN connection

14 years agoDon't leak target regex
Olivier Crête [Tue, 8 Sep 2009 23:03:41 +0000 (19:03 -0400)]
Don't leak target regex

14 years agoRemove gssdp_client_new_full (#1796)
Ross Burton [Sun, 6 Sep 2009 10:16:04 +0000 (11:16 +0100)]
Remove gssdp_client_new_full (#1796)

14 years agoRelease announcement for release 0.7
Zeeshan Ali (Khattak) [Fri, 28 Aug 2009 13:52:57 +0000 (16:52 +0300)]
Release announcement for release 0.7

14 years agoRevert "Print interface and IP client gets bound to"
Zeeshan Ali (Khattak) [Fri, 28 Aug 2009 13:53:38 +0000 (16:53 +0300)]
Revert "Print interface and IP client gets bound to"

This reverts commit 4d48561a8e601c2fc3911839754507f9c369dd0a.

14 years agoDiscard packets from different network
Zeeshan Ali (Khattak) [Thu, 27 Aug 2009 15:38:58 +0000 (18:38 +0300)]
Discard packets from different network

We need this code to make sure the right client received the packet. We
won't need to do this if there was any way to tell Mr. Unix that we are
only interested in receiving multicast packets on this socket from a
particular interface but AFAIK that is not possible, at least not in a
portable way.

14 years agoAdd a getter for GSSDPClient:active
Zeeshan Ali (Khattak) [Wed, 29 Jul 2009 18:20:57 +0000 (21:20 +0300)]
Add a getter for GSSDPClient:active

15 years agoUpdate copyrights in docs
Zeeshan Ali (Khattak) [Tue, 21 Jul 2009 15:41:42 +0000 (18:41 +0300)]
Update copyrights in docs

15 years agoUpdate docs
Zeeshan Ali (Khattak) [Tue, 21 Jul 2009 15:29:21 +0000 (18:29 +0300)]
Update docs

15 years agoPrefer non-loopback IPv4 interfaces
Zeeshan Ali (Khattak) [Tue, 21 Jul 2009 12:02:59 +0000 (15:02 +0300)]
Prefer non-loopback IPv4 interfaces

15 years agoPrint interface and IP client gets bound to
Zeeshan Ali (Khattak) [Tue, 21 Jul 2009 07:03:50 +0000 (10:03 +0300)]
Print interface and IP client gets bound to

15 years agoNo need to find the default route
Zeeshan Ali (Khattak) [Mon, 20 Jul 2009 22:16:26 +0000 (01:16 +0300)]
No need to find the default route

The code is not just platform dependent but apparently it doesn't really
work either. Also do we really want to bind to default interface? Facts
to keep in mind:

1. If only loopback interface is up, there usually is no route set to it.
2. In case of multiple networks, the default route is usually set to the one
   connecting to internet rather than the local network (right?).

15 years agoClient now binds to interface rather than IP
Zeeshan Ali (Khattak) [Mon, 20 Jul 2009 13:43:21 +0000 (16:43 +0300)]
Client now binds to interface rather than IP

While in reality we still bind the sockets to IP, we can already fix
the API. We can later fix this completely without breaking any APIs.

15 years agoCorrect behavior/docs for get_host_ip()
Zeeshan Ali (Khattak) [Mon, 20 Jul 2009 12:58:03 +0000 (15:58 +0300)]
Correct behavior/docs for get_host_ip()

This function should also entertain loopback interface.

15 years agoVersion-independent M-SEARCH response
Zeeshan Ali (Khattak) [Wed, 15 Jul 2009 16:08:59 +0000 (19:08 +0300)]
Version-independent M-SEARCH response

Most (UPnP) resources have ":VERSION" prefix in their target and UPnP docs
and DLNA require us to respond to M-SEARCH requests even if the requested
version in M-SEARCH is different.

15 years agoVersion-independent target match
Zeeshan Ali (Khattak) [Tue, 14 Jul 2009 16:01:43 +0000 (19:01 +0300)]
Version-independent target match

DLNA and new UPnP docs make it very clear that clients should be able to
deal with any version of resource while announcing their interest in a
particular version.

15 years agoPut target compatibility in a separate function
Zeeshan Ali (Khattak) [Tue, 14 Jul 2009 13:43:46 +0000 (16:43 +0300)]
Put target compatibility in a separate function

15 years agoAdd "active" property to GSSDPClient
Zeeshan Ali (Khattak) [Tue, 14 Jul 2009 11:11:45 +0000 (14:11 +0300)]
Add "active" property to GSSDPClient

If set to FALSE, the client won't send any messages on the network.
We need this to make sure that we don't send byebye messages after
a network interface (and hence the associated GUPnPContext) goes down.

15 years agoPort gssdp-device-sniffer to GtkBuilder
Jens Georg [Fri, 1 May 2009 14:12:36 +0000 (16:12 +0200)]
Port gssdp-device-sniffer to GtkBuilder

15 years agoget_default_host_ip() is not supposed to return NULL
Zeeshan Ali (Khattak) [Fri, 3 Jul 2009 16:23:09 +0000 (19:23 +0300)]
get_default_host_ip() is not supposed to return NULL

This fixes the crash happening due to recent changes in case of empty
routing table.

15 years agoMinor indentation fix
Zeeshan Ali (Khattak) [Thu, 2 Jul 2009 14:29:31 +0000 (17:29 +0300)]
Minor indentation fix

Don't go beyond 80 columns.

15 years agoBump library version
Ross Burton [Fri, 26 Jun 2009 10:27:34 +0000 (11:27 +0100)]
Bump library version

15 years agoVersion bump to 0.7 as we have new APIs
Ross Burton [Fri, 26 Jun 2009 10:26:54 +0000 (11:26 +0100)]
Version bump to 0.7 as we have new APIs

15 years agoAdd documentation about LTVERSION
Ross Burton [Sun, 26 Apr 2009 08:54:29 +0000 (09:54 +0100)]
Add documentation about LTVERSION

15 years agoAdd basic .gitignore
Ross Burton [Sun, 26 Apr 2009 08:57:27 +0000 (09:57 +0100)]
Add basic .gitignore

15 years agoUpdate copyrights according to the latest changes.
Zeeshan Ali (Khattak) [Fri, 6 Mar 2009 20:59:24 +0000 (22:59 +0200)]
Update copyrights according to the latest changes.

15 years agoBind request socket to host_ip.
Zeeshan Ali (Khattak) [Fri, 6 Mar 2009 16:34:36 +0000 (18:34 +0200)]
Bind request socket to host_ip.

15 years agoAddress the socket is bound to is determined by the type of socket.
Zeeshan Ali (Khattak) [Fri, 6 Mar 2009 15:55:17 +0000 (17:55 +0200)]
Address the socket is bound to is determined by the type of socket.

15 years agoAttach the sockets main_context to after they are created.
Zeeshan Ali (Khattak) [Fri, 6 Mar 2009 14:34:52 +0000 (16:34 +0200)]
Attach the sockets main_context to after they are created.

15 years agoNo need to initialize private struct fields to NULL.
Zeeshan Ali (Khattak) [Fri, 6 Mar 2009 14:08:15 +0000 (16:08 +0200)]
No need to initialize private struct fields to NULL.

15 years agoInitialize the server id in _init.
Zeeshan Ali (Khattak) [Fri, 6 Mar 2009 14:07:26 +0000 (16:07 +0200)]
Initialize the server id in _init.

15 years agoEnable multicast loopback.
Zeeshan Ali (Khattak) [Fri, 6 Mar 2009 11:42:38 +0000 (13:42 +0200)]
Enable multicast loopback.

15 years agoJoin the multicast group on the specified interface.
Zeeshan Ali (Khattak) [Thu, 5 Mar 2009 22:50:37 +0000 (00:50 +0200)]
Join the multicast group on the specified interface.

15 years agoSet error later.
Zeeshan Ali (Khattak) [Thu, 5 Mar 2009 22:34:25 +0000 (00:34 +0200)]
Set error later.