Date: Wed, 18 May 2005 23:03:44 +0000 (UTC) From: Maksim Yevmenkin <emax@FreeBSD.org> To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/usr.sbin/bluetooth/bthidd parser.y server.c Message-ID: <200505182303.j4IN3jMv071148@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
emax 2005-05-18 23:03:44 UTC FreeBSD src repository Modified files: usr.sbin/bluetooth/bthidd parser.y server.c Log: Fix problem with session termination. bthidd(8) maintains two L2CAP connections to Bluetooth HID device. As soon as Bluetooth HID device is powered off (or goes out of RF range) the stack will terminate both connections. File descriptors for both connections will become active on next select(2) call. Because bthidd(8) processes file descriptors in order, it will detect descriptor for one of the closed connections first and kill the session. However, there is still a second (active) descriptor that used to point to the same session. bthidd(8) used to assert() if it cant find session by file descriptor, which was wrong. While I'm here fix a couple of typos in parser.y Reported by: Eric Anderson anderson AT centtech DOT com MFC after: 3 days Revision Changes Path 1.4 +2 -2 src/usr.sbin/bluetooth/bthidd/parser.y 1.3 +2 -1 src/usr.sbin/bluetooth/bthidd/server.c
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200505182303.j4IN3jMv071148>