From b4b8ffbfcc205ebb33f89da491ba415d0e286013 Mon Sep 17 00:00:00 2001 From: Johan Hedberg Date: Wed, 31 Mar 2010 21:08:12 +0300 Subject: [PATCH] obexd: Fix security level for server sockets Now that BtIO defaults to MEDIUM security level we need to explicitly set the level to LOW for OPP. --- obexd/src/bluetooth.c | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/obexd/src/bluetooth.c b/obexd/src/bluetooth.c index 55450b3bd..d9998b193 100644 --- a/obexd/src/bluetooth.c +++ b/obexd/src/bluetooth.c @@ -99,20 +99,19 @@ static gint server_start(struct server *server) { GError *err = NULL; struct obex_service_driver *driver; + BtIOSecLevel sec_level; driver = (struct obex_service_driver *) server->drivers->data; - /* Listen */ if (server->secure) - server->io = bt_io_listen(BT_IO_RFCOMM, NULL, confirm_event, - server, NULL, &err, - BT_IO_OPT_CHANNEL, driver->channel, - BT_IO_OPT_SEC_LEVEL, BT_IO_SEC_MEDIUM, - BT_IO_OPT_INVALID); + sec_level = BT_IO_SEC_MEDIUM; else - server->io = bt_io_listen(BT_IO_RFCOMM, NULL, confirm_event, + sec_level = BT_IO_SEC_LOW; + + server->io = bt_io_listen(BT_IO_RFCOMM, NULL, confirm_event, server, NULL, &err, BT_IO_OPT_CHANNEL, driver->channel, + BT_IO_OPT_SEC_LEVEL, sec_level, BT_IO_OPT_INVALID); if (!server->io) goto failed; -- 2.47.3