From: Szymon Janc <szymon.janc@codecoup.pl>
To: John Klug <ski.brimson@gmail.com>
Cc: linux-bluetooth@vger.kernel.org
Subject: Re: Profile1 close question
Date: Thu, 14 Dec 2017 16:35:44 +0100 [thread overview]
Message-ID: <1530610.7dBsjPVAZJ@ix> (raw)
In-Reply-To: <CADU0VqxBm3dv3oMsvMLqQ_h0EqwQpekJsVT6RkZZ_buiK_db_w@mail.gmail.com>
Hi John,
On Thursday, 14 December 2017 16:21:32 CET John Klug wrote:
> What is holding the connection open is bluetoothd.
>
> After closing the file descriptor for RFCOMM, there are two file
> descriptors in the Bluetooth daemon that are left:
>
> bluetooth 1406 root 18u sock 0,7 0t0 26587 protocol:
> RFCOMM bluetooth 1406 root 19u sock 0,7 0t0 26602
> protocol: RFCOMM
>
> By terminating the application these go away, but what if I wish to
> keep the daemon running? How do I tell the Bluetooth daemon to close
> the RFCOMM sockets?
I think you need to shutdown() socket.
>
> On Wed, Dec 13, 2017 at 6:13 PM, John Klug <ski.brimson@gmail.com> wrote:
> > The file descriptor that is placed as a parameter to the NewConnection
> > callback does not close the connection when it is called with the OS's
> > close. This is using Bluez 5.47 on Linux.
> >
> > Bluetoothctl still shows the connection as being up, as does the remote.
> >
> > What method should one use to close the connection?
> >
> > I am using Python and GObject Introspection.
> >
> > Before connection:
> > rw.py 3983 root 0u CHR 136,3 0t0 6 /dev/pts/3
> > rw.py 3983 root 1u CHR 136,3 0t0 6 /dev/pts/3
> > rw.py 3983 root 2u CHR 136,3 0t0 6 /dev/pts/3
> > rw.py 3983 root 3u unix 0xceaf54a0 0t0 22976 type=STREAM
> > rw.py 3983 root 4u a_inode 0,9 0 7 [eventfd]
> > rw.py 3983 root 5u a_inode 0,9 0 7 [eventfd]
> >
> > After Connection:
> > NewConnection(/org/bluez/hci0/dev_BC_44_86_56_6B_95, 8)
> >
> > rw.py 3983 root 0u CHR 136,3 0t0 6 /dev/pts/3
> > rw.py 3983 root 1u CHR 136,3 0t0 6 /dev/pts/3
> > rw.py 3983 root 2u CHR 136,3 0t0 6 /dev/pts/3
> > rw.py 3983 root 3u unix 0xceaf54a0 0t0 22976 type=STREAM
> > rw.py 3983 root 4u a_inode 0,9 0 7 [eventfd]
> > rw.py 3983 root 5u a_inode 0,9 0 7 [eventfd]
> > rw.py 3983 root 8u sock 0,7 0t0 23050 protocol:
> > RFCOMM
> >
> > After Close:
> > rw.py 3983 root 0u CHR 136,3 0t0 6 /dev/pts/3
> > rw.py 3983 root 1u CHR 136,3 0t0 6 /dev/pts/3
> > rw.py 3983 root 2u CHR 136,3 0t0 6 /dev/pts/3
> > rw.py 3983 root 3u unix 0xceaf54a0 0t0 22976 type=STREAM
> > rw.py 3983 root 4u a_inode 0,9 0 7 [eventfd]
> > rw.py 3983 root 5u a_inode 0,9 0 7 [eventfd]
> >
> >
> > Device BC:44:86:56:6B:95
> > ...
> > Connected: yes
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-bluetooth"
> in the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
--
pozdrawiam
Szymon Janc
next prev parent reply other threads:[~2017-12-14 15:35 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-12-14 0:13 Profile1 close question John Klug
2017-12-14 15:21 ` John Klug
2017-12-14 15:35 ` Szymon Janc [this message]
2017-12-14 16:08 ` Luiz Augusto von Dentz
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1530610.7dBsjPVAZJ@ix \
--to=szymon.janc@codecoup.pl \
--cc=linux-bluetooth@vger.kernel.org \
--cc=ski.brimson@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.