iwd/tools
James Prestwood 4ebc79c466 hwsim: allow concurrent radio creations
Currently CreateRadio only allows a single outstanding DBus message
until the radio is fully created. 99% of the time this is just fine
but in order to test dual phy cards there needs to be support for
phy's appearing at the same time.

This required storing the pending DBus message inside the radio object
rather than a single static variable.

The code was refactored to handle the internal radio info objects better
for the various cases:
 - Creation from CreateRadio()
 - Radio already existed before hwsim started, or created externally
 - Existing radio changed name, address, etc.

First, Name is now a required option to CreateRadio(). This allows
the radio info to be pushed to the queue immediately (also allowing the
pending DBus message to be tracked). Then, when the NEW_RADIO event
fires the pending radio can be looked up (by name) and filled with the
remaining info.

If the radio was not found by name but a matching ID was found this is
the 'changed' case and the radio is re-initialized with the changed
values.

If neither name or ID matches the radio was created externally, or
prior to hwsim starting. A radio info object is created at this time
and initialized.

The ID was changed to a signed integer in order to initialize it to an
invalid number -1. Doing this was required since a pending uninitalized
radio ID (0) could match an existing radio ID. This required some
bounds checks in case the kernels counter reaches an extremely high value.
This isn't likely to ever happen in practice.
2022-02-16 16:20:43 -06:00
..
hw.conf test-runner: Allow native hardware passthrough 2019-05-01 17:03:34 -05:00
hwsim-dbus.conf tools: Change net.connman.iwd.hwsim to net.connman.hwsim 2018-09-14 15:27:57 +02:00
hwsim.c hwsim: allow concurrent radio creations 2022-02-16 16:20:43 -06:00
hwsim.rst build: Add skeleton manual pages for all installed binaries 2019-09-22 21:57:47 +02:00
ios_convert.py tools: ios_convert: embed certs rather than using paths 2019-10-07 23:09:29 -05:00
iwd-decrypt-profile.c tools: add decrypt-profile tool 2022-02-16 16:10:55 -06:00
probe-req.c tools: Add utility to tx Probe Requests 2020-03-20 10:18:04 -05:00
run-iwd.sh build: Add StateDirectoryMode=0700 option to systemd service 2019-09-09 06:55:22 +02:00
test-runner test-runner: allow IWD to start with no radios 2022-02-14 16:02:14 -06:00
test_runner_kernel_config tools: enable CONFIG_CRYPTO_ARC4 in kernel config 2019-09-11 11:40:39 -05:00