1. 09 Aug, 2010 1 commit
  2. 03 Aug, 2010 1 commit
    • Marcus Brinkmann's avatar
      2010-08-03 Marcus Brinkmann <marcus@g10code.de> · ff420632
      Marcus Brinkmann authored
              * gpgcedev.c (GPGCEDEV_IOCTL_ASSIGN_RVID): New call ASSIGN_RVID.
              (PIPE_FLAG_HALT_MONITOR): New flag.
              (struct pipeimpl_s): New members monitor_proc, monitor_access.
              (pipeimpl_new): Initialize them.
              (assert_pipeimpl): New function.
              (access_opnctx, make_pipe): Use it.
              (make_pipe): If there is a monitor, halt it.
              (monitor, assign_rvid): New functions.
      	(GPG_IOControl): Handle GPGCEDEV_IOCTL_ASSIGN_RVID.
      ff420632
  3. 02 Aug, 2010 1 commit
    • Marcus Brinkmann's avatar
      2010-08-03 Marcus Brinkmann <marcus@g10code.de> · 60b31b40
      Marcus Brinkmann authored
      	* gpgcedev.c: Use index (between 1 and table size) into
      	opnctx_table as public context identifiers, instead using pointers
      	into the table directly (which are not stable under table resize).
      	(OPNCTX_TO_IDX, OPNCTX_FROM_IDX, OPNCTX_VALID_IDX_P): New macros.
      60b31b40
  4. 29 Jun, 2010 1 commit
  5. 10 Jun, 2010 2 commits
    • Marcus Brinkmann's avatar
      2010-06-11 Marcus Brinkmann <marcus@g10code.de> · 9f4ec52c
      Marcus Brinkmann authored
      	* assuan-handler.c (std_handler_input,
      	std_handler_output) [HAVE_W32CE_SYSTEM]: Finish the pipe.  We must
      	do this here, because otherwise assuan_close_input_fd() and
      	assuan_close_output_fd() can't work.
      	* system-w32ce.c (_assuan_w32ce_finish_pipe): Call SetLastError in
      	error case.
      	(__assuan_close): Save WSAGetLastError before trashing it!
      	Otherwise handle is never closed and GPGME hangs.
      9f4ec52c
    • Marcus Brinkmann's avatar
      2010-06-10 Marcus Brinkmann <marcus@g10code.de> · 9ab3e9b9
      Marcus Brinkmann authored
      	* w32ce-add.h (ASSUAN_STDIN, ASSUAN_STDOUT): Define magic handle values.
      	* system-w32ce.c (__assuan_read, __assuan_write): Handle magic
      	handle values differently.
      	
      	* system-w32ce.c (_assuan_w32ce_finish_pipe): Return error on RVID 0.
      9ab3e9b9
  6. 09 Jun, 2010 1 commit
    • Marcus Brinkmann's avatar
      2010-06-09 Marcus Brinkmann <marcus@g10code.de> · 64360f7f
      Marcus Brinkmann authored
      	* gpgcedev.c (GPGCEDEV_IOCTL_UNBLOCK): New ioctl.
      	(PIPE_FLAG_UNBLOCK_READER, PIPE_FLAG_UNBLOCK_WRITER): New flags.
      	(GPG_Read): Check if PIPE_FLAG_UNBLOCK_READER is set and return
      	ERROR_BUSY in that case.
      	(GPG_Write): Likewise for PIPE_FLAG_UNBLOCK_WRITER.
      	(unblock_call): New function.
      	(GPG_IOControl): Implement GPGCEDEV_IOCTL_UNBLOCK.
      64360f7f
  7. 07 Jun, 2010 1 commit
    • Marcus Brinkmann's avatar
      2010-06-07 Marcus Brinkmann <marcus@g10code.de> · 863135d8
      Marcus Brinkmann authored
      	* gpgcedev.c: This rewrite does away with troublesome race
      	conditions (close vs everything else, for example) by simplifying
      	the locking model.  It also handles EOF, EPIPE, but still assumes
      	that there is always only ever one reader and writer.  Also, no
      	need to treat ERROR_PIPE_NOT_CONNECTED and ERROR_BUSY as EAGAIN
      	anymore.
      	(struct pipeimpl_s, pipeimpl_t): New types.
      	(PIPE_FLAG_NO_READER, PIPE_FLAG, NO_WRITER): New macros.
      	(struct opnctx_s): Remove everything that's now in struct
      	pipeimpl_s.  Remove also assoc and locked.  Add pipeimpl field.
      	(pipeimpl_new, pipeimpl_unref, allocate_opnctx, verify_opnctx,
      	access_opnctx): New functions.
      	(get_new_opnctx, find_and_lock_opnctx, validate_and_lock_opnctx,
      	unlock_opnctx): Removed.
      	(GPG_Init, GPG_Deinit): Improve debugging output.
      	(GPG_Open): Improve debugging output, use allocate_opnctx instead
      	of get_new_opnctx.
      	(GPG_Close): Improve debugging output.  Rewrite to use reference
      	counting.  Also check if reader or writer is closed and set flags
      	for triggering EOF or EPIPE.
      	(GPG_Read): Improve debugging output.  Rewrite using pipeimpl.
      	Check for EOF.
      	(GPG_Write): Improve debugging output.  Rewrite using pipeimpl.
      	Check for EPIPE.
      	(make_pipe): Rewrite using pipeimpl.
      	(GPG_IOControl): Improve debugging output.
      863135d8
  8. 22 Apr, 2010 1 commit
  9. 20 Apr, 2010 1 commit
  10. 19 Apr, 2010 1 commit
  11. 16 Apr, 2010 1 commit
  12. 14 Apr, 2010 4 commits
  13. 06 Apr, 2010 1 commit
  14. 30 Mar, 2010 1 commit
  15. 22 Mar, 2010 2 commits
  16. 16 Mar, 2010 1 commit
  17. 11 Mar, 2010 1 commit
  18. 05 Mar, 2010 1 commit
  19. 25 Feb, 2010 1 commit
  20. 24 Feb, 2010 1 commit
  21. 03 Feb, 2010 1 commit
  22. 29 Jan, 2010 1 commit
  23. 28 Jan, 2010 3 commits
  24. 22 Jan, 2010 2 commits
  25. 14 Jan, 2010 1 commit
  26. 11 Jan, 2010 2 commits
  27. 08 Jan, 2010 2 commits
  28. 05 Jan, 2010 3 commits