[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Issues with Connector on net sockets
[Thread Prev] | [Thread Next]
- Subject: Re: Issues with Connector on net sockets
- From: g4-lisz@xxxxxxxxxxxx
- Reply-to: libssh@xxxxxxxxxx
- Date: Mon, 28 Jan 2019 19:08:52 +0100
- To: libssh@xxxxxxxxxx
On 27.01.19 19:10, g4-lisz@xxxxxxxxxxxx wrote:
>
> On 24.01.19 15:56, g4-lisz@xxxxxxxxxxxx wrote:
>
>> First of all: Is this supposed to work with more than one channel in
>> a single event loop?
>>
> Short answer: NO.
>
> Longer answer: I don't know if it was supposed to work, but it doesn't.
>
> At least it does not work when connectors are removed who share the
> same session. The problem lies in how the session is removed from the
> polling context:
>
> ssh_event_remove_connector() --> ssh_connector_remove_event():
>
> if (connector->in_channel != NULL) {
> session = ssh_channel_get_session(connector->in_channel);
>
> ssh_event_remove_session(connector->event, session);
> connector->in_channel = NULL;
> }
>
> if (connector->out_channel != NULL) {
> session = ssh_channel_get_session(connector->out_channel);
>
> ssh_event_remove_session(connector->event, session);
> connector->out_channel = NULL;
> }
> connector->event = NULL;
>
> So there is the call ssh_event_remove_session(), which removes the
> session object also used for other connectors. Hence polling for the
> session stops.
>
> One "solution" could be to simply not remove connectors as long as the
> main loop is running. But his results in another issue: The socket
> filehandles of a closed net sockets remain in the poll() call, which
> is not a good idea.
>
It seems that I'm the only one using connectors. In the few samples I
found it's only used to read/write from/to console. So the stdin and
-out file handles don't need explicit close / EOF, hence the issue from
above is not relevant.
Now I also found what I think is a bug in the connector API. Anyone
interested in this?
Ok I guess I open a new "thread" on this - I also have a simple patch
for it.
Cheers,
Till
| Re: Issues with Connector on net sockets | Andreas Schneider <asn@xxxxxxxxxxxxxx> |
| Issues with Connector on net sockets | g4-lisz@xxxxxxxxxxxx |
| Re: Issues with Connector on net sockets | g4-lisz@xxxxxxxxxxxx |