OSDN Git Service

Don't register Device ID record on sdp server start
authorSzymon Janc <szymon.janc@tieto.com>
Thu, 10 Oct 2013 09:38:49 +0000 (11:38 +0200)
committerJohan Hedberg <johan.hedberg@intel.com>
Thu, 10 Oct 2013 20:38:08 +0000 (22:38 +0200)
This makes SDP code no longer depends on main_opts. DID record is now
registered from main() after sdp server was started. This is OK since
mainloop is not yet running and record will be present when first
request comes.

src/main.c
src/sdpd-server.c

index eafe2ed..91d90b4 100644 (file)
@@ -550,6 +550,10 @@ int main(int argc, char *argv[])
 
        start_sdp_server(sdp_mtu, sdp_flags);
 
+       if (main_opts.did_source > 0)
+               register_device_id(main_opts.did_source, main_opts.did_vendor,
+                               main_opts.did_product, main_opts.did_version);
+
        /* Loading plugins has to be done after D-Bus has been setup since
         * the plugins might wanna expose some paths on the bus. However the
         * best order of how to init various subsystems of the Bluetooth
index 10e46a1..b411abe 100644 (file)
@@ -42,7 +42,6 @@
 
 #include <glib.h>
 
-#include "hcid.h"
 #include "log.h"
 #include "sdpd.h"
 
@@ -238,10 +237,6 @@ int start_sdp_server(uint16_t mtu, uint32_t flags)
                return -1;
        }
 
-       if (main_opts.did_source > 0)
-               register_device_id(main_opts.did_source, main_opts.did_vendor,
-                               main_opts.did_product, main_opts.did_version);
-
        io = g_io_channel_unix_new(l2cap_sock);
        g_io_channel_set_close_on_unref(io, TRUE);