When closing the slave side of a pseudo terminal, the exclusive access mode will persists on the master side. The result is that re-opening the slave side will fail with EBUSY, unless the process has root priviliges. To workaround this problem, we already introduced an option that enables better compatibility with pseudo terminals. See commmit fab606b00a44ea2114a4029ad09b70c66c3049f7 for details. In my development environment, I always have this option enabled. But occasionally I also need to test release builds. And then I usually end up with inaccessible pty's again, because the pty support is disabled by default for release build. This problem can easily be avoided by disabling the exclusive access mode, just before closing the file descriptor.
Overview ======== Libdivecomputer is a cross-platform and open source library for communication with dive computers from various manufacturers. The official web site is: http://www.libdivecomputer.org/ The sourceforge project page is: http://sourceforge.net/projects/libdivecomputer/ Installation ============ On UNIX-like systems (including Linux, Mac OS X, MinGW), use the autotools based build system. Run the following commands from the top directory (containing this file) to configure, build and install the library and utilities: $ ./configure $ make $ make install If you downloaded the libdivecomputer source code directly from the git source code repository, then you need to create the configure script as the first step: $ autoreconf --install To uninstall libdivecomputer again, run: $ make uninstall Support ======= Please send bug reports, feedback or questions to the mailing list: http://libdivecomputer.org/cgi-bin/mailman/listinfo/devel or contact me directly: jef@libdivecomputer.org License ======= Libdivecomputer is free software, released under the terms of the GNU Lesser General Public License (LGPL). You can find a copy of the license in the file COPYING.
Description
Languages
C
98.3%
M4
1.2%
Makefile
0.5%