Commit Graph

11 Commits

Author SHA1 Message Date
Marek Marczykowski-Górecki
6a44eaeb09
libqrexec-utils: bring back buffered write helpers
It is required to prevent deadlocks in single-threaded select-based IO
programs (namely: qrexec). POSIX API doesn't support checking how much
can be written to pipe/socket without blocking, so to prevent blocking
application must use O_NONBLOCK mode, and somehow deal with non-written
data (buffer it).

QubesOS/qubes-issues#1347
2015-10-26 20:00:08 +01:00
Marek Marczykowski-Górecki
632522b35e
libqrexec-utils: fix linker options
Fix linking with libvchan. Previously it worked because all the users
were also linked with libvchan.
2015-10-26 20:00:08 +01:00
Marek Marczykowski-Górecki
015015d940 qrexec-lib: enable compiler optimization 2015-03-20 12:17:32 +01:00
Marek Marczykowski-Górecki
14f7f284d4 Revert "Removed -Werror from qrexec Makefile to allow unpack to compile for both Fedora 20 and 21"
This reverts commit 96a3d98f60.
This problem is already fixed.
2015-02-17 14:21:39 +01:00
Jason Mehring
96a3d98f60
Removed -Werror from qrexec Makefile to allow unpack to compile for both Fedora 20 and 21
linux-utils/qrexec-lib/unpack.c:

Different compile errors will abort.  Both different for fc20/21 but
based on same error below:
*
 * FC21 ERROR:  (but FC20 needs the code)
 * unpack.c:31:0: error: "O_TMPFILE" redefined [-Werror]
 *  #define O_TMPFILE (__O_TMPFILE | O_DIRECTORY)
 *   ^
 *   In file included from /usr/include/bits/fcntl.h:61:0,
 *                    from /usr/include/fcntl.h:35,
 *                                     from unpack.c:4:
 * /usr/include/bits/fcntl-linux.h:151:0: note: this is the location of the previous definition
 * # define O_TMPFILE __O_TMPFILE / * Atomically create nameless file.  * /
 * ^
 * cc1: all warnings being treated as errors
 * <builtin>: recipe for target 'unpack.o' failed
 */
/* #define O_TMPFILE (__O_TMPFILE | O_DIRECTORY) */
2015-02-10 11:07:20 -05:00
Marek Marczykowski-Górecki
aa31c67e24 qrexec-utils: disable write-stdin (buffered writes) compilation
Not compatible with new qrexec protocol yet. To be done.
2014-11-19 15:10:58 +01:00
Marek Marczykowski
a91a8c8312 Update for new vchan API, remove code not needed anymore
Remove some vchan wrappers, which are not necessary now.
2014-11-19 15:10:58 +01:00
Davíð Steinn Geirsson
bc75b6559b Use xenstore.h when xen >= 4.2 2014-07-23 04:32:46 +02:00
Marek Marczykowski-Górecki
b12f1539a4 Add -Wextra -Werror to all C code
Not only the security-critical one.
2014-02-16 11:10:38 +01:00
Marek Marczykowski-Górecki
516815a266 qrexec-lib: make it shared library 2014-02-07 05:29:59 +01:00
Marek Marczykowski
42e133b753 Qrexec common code, qubes.Filecopy common code, udev scripts 2013-03-20 06:27:32 +01:00