Re: [PATCH] tools/rfcomm-tester: Add bind after connected test case

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Andrzej,

On Thu, Feb 13, 2014, Andrzej Kaczmarek wrote:
> This testcase will check if it's possible to bind socket on the same
> channel number as used by some other socket connected to remote device.
> ---
>  tools/rfcomm-tester.c | 29 +++++++++++++++++++++++++++--
>  1 file changed, 27 insertions(+), 2 deletions(-)

Sorry for not getting around to this one earlier.

> @@ -389,10 +397,24 @@ static gboolean rc_connect_cb(GIOChannel *io, GIOCondition cond,
>  		return false;
>  	}
>  
> -	if (err < 0)
> +	if (!client_data->bind_channel) {
> +		if (err < 0)
> +			tester_test_failed();
> +		else
> +			tester_test_passed();
> +		return false;
> +	}
> +
> +	master_addr = hciemu_get_master_bdaddr(data->hciemu);
> +	sk = create_rfcomm_sock((bdaddr_t *) master_addr,
> +						client_data->bind_channel);
> +	if (sk < 0) {
>  		tester_test_failed();
> -	else
> +	} else {
> +		close(sk);
>  		tester_test_passed();
> +	}
> +
>  
>  	return false;
>  }

Considering that rc_connect_cb is a generic function used by many test
cases I find it strange to add this much extra code for it for a single
special case which is only needed by a single test case. I'd rather have
this in a separate function.

Either reuse the existing test_connect() and add a way to specify (in
the test case declaration) a custom function to pass to g_io_add_watch()
or then create completely new test function from scratch. This will help
avoid confusion when someone tries to understand what all the other
tests which do not need this extra hack are trying to do.

Johan
--
To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Bluez Devel]     [Linux Wireless Networking]     [Linux Wireless Personal Area Networking]     [Linux ATH6KL]     [Linux USB Devel]     [Linux Media Drivers]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Big List of Linux Books]

  Powered by Linux