From fcdfa4a7f43f3249ebc8503aabaebbaa8d465b6c Mon Sep 17 00:00:00 2001 From: Johan Hedberg Date: Wed, 31 Mar 2010 14:40:51 +0300 Subject: [PATCH] obexd: Add possibility to explicitly specify source/dest channel in BtIO This is needed e.g. to create RFCOMM TTY's from incoming connections since in that case the remote (clients) RFCOMM channel needs to be known for the RFCOMMCREATEDEV ioctl. --- obexd/src/btio.c | 6 ++++++ obexd/src/btio.h | 2 ++ 2 files changed, 8 insertions(+) diff --git a/obexd/src/btio.c b/obexd/src/btio.c index 904c4acfa..cf91de7a7 100644 --- a/obexd/src/btio.c +++ b/obexd/src/btio.c @@ -891,6 +891,12 @@ static gboolean rfcomm_get(int sock, GError **err, BtIOOption opt1, *(va_arg(args, uint8_t *)) = src.rc_channel ? src.rc_channel : dst.rc_channel; break; + case BT_IO_OPT_SOURCE_CHANNEL: + *(va_arg(args, uint8_t *)) = src.rc_channel; + break; + case BT_IO_OPT_DEST_CHANNEL: + *(va_arg(args, uint8_t *)) = dst.rc_channel; + break; case BT_IO_OPT_MASTER: len = sizeof(flags); if (getsockopt(sock, SOL_RFCOMM, RFCOMM_LM, &flags, diff --git a/obexd/src/btio.h b/obexd/src/btio.h index 100047b31..00d743e08 100644 --- a/obexd/src/btio.h +++ b/obexd/src/btio.h @@ -53,6 +53,8 @@ typedef enum { BT_IO_OPT_DEFER_TIMEOUT, BT_IO_OPT_SEC_LEVEL, BT_IO_OPT_CHANNEL, + BT_IO_OPT_SOURCE_CHANNEL, + BT_IO_OPT_DEST_CHANNEL, BT_IO_OPT_PSM, BT_IO_OPT_MTU, BT_IO_OPT_OMTU, -- 2.47.3