Skip to content
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

nimble/host: Expose the API to enable / disable privacy outside of stack. #1480

Conversation

rahult-github
Copy link
Contributor

@rahult-github rahult-github commented Mar 31, 2023

This PR exposes the API to enable/ disable controller privacy outside stack. This way applications can enable / disable controller privacy as per use case.

@rahult-github rahult-github force-pushed the feature/expose_privacy_api_outside_stack branch from c8ab7a7 to 95ccba6 Compare March 31, 2023 05:48
@andrzej-kaczmarek
Copy link
Contributor

this does not disable privacy but only disables address resolution in controller - what is the use case here?

@rahult-github
Copy link
Contributor Author

Hi @andrzej-kaczmarek ,

The use case is that controller should not resolve a resolvable address and end user should get this option to control . Disabling address resolution in controller , eventually implies Link layer will not resolve the private address using the resolving list's peer IRK, thereby bypassing privacy. Please let me know if the commit message is confusing and hence can modify the commit message itself.

Please let us know if you have any other suggestion to achieve this , would be happy to modify the commit accordingly .

@andrzej-kaczmarek
Copy link
Contributor

but why would user want that? what is the specific use case? "bypassing privacy" sounds like a hack to me...

@rahult-github
Copy link
Contributor Author

Hi @andrzej-kaczmarek ,

As per our understanding, address resolution ( and hence privacy) is NOT a mandatory/ must have feature. End user can have the option to not enable it by default in its implementation. We can have it enabled by default in nimble, but providing an option to user to disable it for its use case would give the nimble stack more flexibility.

So basically, applications that don't need controller to do address resolution can disable it and then enable back when needed. Controller address resolution is good, but hosts providing support for host based privacy ( i.e. address resolution in host) , would need address resolution disabled in controller.

Having said above, if you have any other comment on how to achieve this, please do let me know.

@andrzej-kaczmarek
Copy link
Contributor

NimBLE host does not support host-based privacy. If you need to use it with controller that does not support LL Privacy, you need to add support for that.

Exposing an internal API to simply toggle address resolution makes sense only if there's a specific case where this could be useful. Disabling LL Privacy is not such case simply because disabling address resolution does only disable address resolution, not an entire LL Privacy feature.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants