After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 720372 - Rygel segfaults when the port is set to a non-0 value in rygel.conf
Rygel segfaults when the port is set to a non-0 value in rygel.conf
Status: RESOLVED FIXED
Product: GUPnP
Classification: Other
Component: gupnp
0.20.x
Other Linux
: Normal normal
: ---
Assigned To: GUPnP Maintainers
GUPnP Maintainers
Depends on:
Blocks:
 
 
Reported: 2013-12-13 03:38 UTC by Craig Pratt
Modified: 2013-12-14 14:56 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
context: Ensure msearch-port property exists before setting (1.07 KB, patch)
2013-12-13 10:18 UTC, Jussi Kukkonen
committed Details | Review

Description Craig Pratt 2013-12-13 03:38:51 UTC
I'm seeing the following crash when setting the port to a non-0 value (e.g. "4004" in my case). 

Here's the backtrace:

  • #0 g_value_set_uint
    from /home/craig/projects/cvp2/root/lib/libgobject-2.0.so.0
  • #1 gupnp_context_constructor
    from /home/craig/projects/cvp2/root/lib/libgupnp-1.0.so.4
  • #2 g_object_newv
    from /home/craig/projects/cvp2/root/lib/libgobject-2.0.so.0
  • #3 g_object_new_valist
    from /home/craig/projects/cvp2/root/lib/libgobject-2.0.so.0
  • #4 g_initable_new_valist
    from /home/craig/projects/cvp2/root/lib/libgio-2.0.so.0
  • #5 g_initable_new
    from /home/craig/projects/cvp2/root/lib/libgio-2.0.so.0
  • #6 network_device_create_context
    from /home/craig/projects/cvp2/root/lib/libgupnp-1.0.so.4
  • #7 create_context
    from /home/craig/projects/cvp2/root/lib/libgupnp-1.0.so.4
  • #8 receive_netlink_message
    from /home/craig/projects/cvp2/root/lib/libgupnp-1.0.so.4
  • #9 on_netlink_message_available
    from /home/craig/projects/cvp2/root/lib/libgupnp-1.0.so.4
  • #10 socket_source_dispatch
    from /home/craig/projects/cvp2/root/lib/libgio-2.0.so.0
  • #11 g_main_dispatch
    from /home/craig/projects/cvp2/root/lib/libglib-2.0.so.0
  • #12 g_main_context_dispatch
    from /home/craig/projects/cvp2/root/lib/libglib-2.0.so.0
  • #13 g_main_context_iterate
    from /home/craig/projects/cvp2/root/lib/libglib-2.0.so.0
  • #14 g_main_loop_run
    from /home/craig/projects/cvp2/root/lib/libglib-2.0.so.0
  • #15 rygel_main_run
    at /home/craig/projects/cvp2/git/rygel-master/src/rygel/rygel-main.vala line 89
  • #16 rygel_main_main
    at /home/craig/projects/cvp2/git/rygel-master/src/rygel/ryge l-main.vala line 298
  • #17 main
    at /home/craig/projects/cvp2/git/rygel-master/src/rygel/rygel-main.vala line 271

This is with gupnp-0.20.8. It doesn't occur with gupnp-0.20.5. Not sure about the intermediate versions.

Building with:

--prefix=blah --enable-uninstalled --disable-tracker-plugin --enable-gst-launch-plugin --enable-vala --enable-debug

Steps:

 cp data/rygel.conf ./
 change "port=0" to "port=4004" 
 src/rygel/rygel -c ./rygel.conf

Let me know if there's any other information I can provide.
Comment 1 Craig Pratt 2013-12-13 05:45:54 UTC
OK - another important data point:

Everything I had was current except my gssdp which was behind (version 0.14.3, commit e4c8a58). And updating gssdp to version 0.14.6 (commit 357f083) prevents this segfault.

Strange as it isn't in the backtrace. But I see there were changes to ssdp related to setting the port at startup. So it seems there must be a relationship here.
Comment 2 Jussi Kukkonen 2013-12-13 10:18:26 UTC
Created attachment 264131 [details] [review]
context: Ensure msearch-port property exists before setting

Fix a typo that crashes gupnp_context_constructor() if msearch-port
property does not exist (it was added in gssdp 0.14.6).
Comment 3 Craig Pratt 2013-12-13 19:30:36 UTC
Yeah - that definitely lines up with the backtrace.

I'll apply the change and confirm.
Comment 4 Craig Pratt 2013-12-13 19:38:07 UTC
Confirmed the patch resolves the segfault

(Reverted gssdp to 0.14.3, confirmed segfault, applied patch, built, and re-tested) 

I'm sure I have the status all wrong on this bug. Please update appropriately. Thx!
Comment 5 Jens Georg 2013-12-14 14:50:37 UTC
Review of attachment 264131 [details] [review]:

+1
Comment 6 Jens Georg 2013-12-14 14:56:39 UTC
Attachment 264131 [details] pushed as 485d15d - context: Ensure msearch-port property exists before setting