Home GnuPG

estream: Support 'es_poll' on Windows.
40e5ff0a0084Unpublished

Unpublished Commit · Learn More

Not On Permanent Ref: This commit is not an ancestor of any permanent ref.

Description

estream: Support 'es_poll' on Windows.

* src/Makefile.am (arch_sources): Add new file.
* src/estream.c (O_NONBLOCK): Move to 'gpgrt-int.h'.
(BUFFER_BLOCK_SIZE): Likewise.
(BUFFER_UNREAD_SIZE): Likewise.
(struct notify_list_s, notify_list_t): Likewise.
(struct _gpgrt_stream_internal, estream_internal_t): Likewise.
(X_POLLABLE): New macro.
(parse_mode): Parse keyword 'pollable', emulate O_NONBLOCK using the
same mechanism on Windows.
(_gpgrt_poll): Use the new '_gpgrt_w32_poll' on Windows.
* src/gpgrt-int.h (_gpgrt_functions_w32_pollable): New declaration.
(_gpgrt_w32_pollable_create): New prototype.
(_gpgrt_w32_poll): Likewise.
* src/w32-estream.c: New file.  This code is adapted from GPGME.
* tests/t-poll.c (create_pipe): Create pollable streams.
  • GnuPG-bug-id: T2731
  • Signed-off-by: Justus Winter <justus@g10code.com>

Details

Provenance
justusAuthored on Oct 19 2016, 12:20 PM
wernerCommitted on Nov 12 2016, 7:55 PM
Parents
rEe15416d3668e: estream: Track the kind of backend used.
Branches
Unknown
Tags
Unknown

Event Timeline

Werner Koch <wk@gnupg.org> committed rE40e5ff0a0084: estream: Support 'es_poll' on Windows. (authored by Justus Winter <justus@g10code.com>).Nov 12 2016, 7:55 PM
justus mentioned this in Unknown Object (Maniphest Task).Mar 27 2017, 5:10 PM
justus mentioned this in Unknown Object (Maniphest Task).Mar 27 2017, 5:33 PM