-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[PW_SID:654784] client: fix crash from unknown properties #90
Conversation
IWD uses a few pragmas to ignore warnings which clang does not support. For -Werror builds these cause build failures but can be fixed by ignoring unknown warnings and pragmas.
This was using a lambda function as input which runs much too fast for UML to advance the time. Change this to sleep for 100ms between each check. This fixes the random hang in testNetconfig.
The dbus proxy code assumes that every interface has a set of properties registered in a 'proxy_interface_property' structure, assuming the interface has any properties at all. If the interface is assumed to have no properties (and no property table) but actually does, the property table lookup fails but is assumed to have succeeded and causes a crash. This caused iwctl to crash after some properties were added to DPP since the DPP interface previously had no properties. Now, check that the property table was valid before accessing it. This should allow properties to be added to new interfaces without crashing older versions of iwctl.
The dbus proxy code assumes that every interface has a set of properties registered in a 'proxy_interface_property' structure, assuming the interface has any properties at all. If the interface is assumed to have no properties (and no property table) but actually does, the property table lookup fails but is assumed to have succeeded and causes a crash. This caused iwctl to crash after some properties were added to DPP since the DPP interface previously had no properties. Now, check that the property table was valid before accessing it. This should allow properties to be added to new interfaces without crashing older versions of iwctl.
Fetch PR Make Distcheck Build - Configure Make Check Output:
Make Check w/Valgrind Output:
Incremental Build with patches |
Fetch PR GitLint Make Distcheck Build - Configure Make Check Output:
Make Check w/Valgrind Output:
Incremental Build with patches Autotest Runner Output:
Clang Build Output:
|
6543ff4
to
5ba404f
Compare
The dbus proxy code assumes that every interface has a set of
properties registered in a 'proxy_interface_property' structure,
assuming the interface has any properties at all. If the interface
is assumed to have no properties (and no property table) but
actually does, the property table lookup fails but is assumed to
have succeeded and causes a crash.
This caused iwctl to crash after some properties were added to DPP
since the DPP interface previously had no properties.
Now, check that the property table was valid before accessing it. This
should allow properties to be added to new interfaces without crashing
older versions of iwctl.
client/dbus-proxy.c | 3 +++
1 file changed, 3 insertions(+)