+
+ unsigned cs_get_mask, cs_accept_mask, mask =
+ ((new_line->io_pending & CS_WANT_WRITE) ? EVENT_OUTPUT : 0) |
+ ((new_line->io_pending & CS_WANT_READ) ? EVENT_INPUT : 0);
+
+ if (mask)
+ {
+ cs_accept_mask = mask; /* accept didn't complete */
+ cs_get_mask = 0;
+ }
+ else
+ {
+ cs_accept_mask = 0; /* accept completed. */
+ cs_get_mask = mask = EVENT_INPUT;
+ }
+
+ if (!(new_chan = iochan_create(cs_fileno(new_line), ir_session, mask)))