[PATCH] service: Prevent sending D-Bus error reply twice with hidden networks
wagi at monom.org
Fri Jul 19 04:29:49 PDT 2019
On 7/5/19 4:51 PM, Jussi Laakkonen wrote:
> When the input request has timed out or some other error has occurred do
> not allow to send duplicate D-Bus error replies. This would result in
> crashes when hidden network is first informed with ETIMEDOUT and error
> is returned and if the __connman_device_request_hidden_scan() reports an
> error or that it is already running (EALREADY) and then second error
> reply is sent.
> After each reply to pending D-Bus message (reply_pending()) the
> service->pending is set NULL but since request_input_cb() holds the
> reference to the pending D-Bus message (user_data) there will be a
> second reply.
> This fixes the issue by 1) recording the error also when D-Bus error is
> other than Canceled to prevent connecting attempt at done label and 2)
> skipping hidden network connect in such case as well.
More information about the connman