-
Notifications
You must be signed in to change notification settings - Fork 466
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
[bugfix] remove SecCertificateRef that will cause tls handshake failed #547
base: master
Are you sure you want to change the base?
Conversation
@yacosdad Thanks for spotting and fixing this |
Don't worry about CI - that is just flakiness. |
@jcavar No,we can not. The kCFStreamSSLCertificates Discussion shows that the SecIdentityRef must be first item in the array. |
Hmm, I am still not sure I understand. |
Finally, the certificates was used in "open" method of MQTTSSLSecurityPolicyTransport class. That was set into the key kCFStreamSSLCertificates of ssloptions to set kCFStreamPropertySSLSettings property of CFReadStreamRef/CFWriteStreamRef. |
Ok, I see. But the docs state that it should be an array of Also, implementation of this other library does the same thing as we are doing now: |
YES, my code works fine and the package screenshot in the issue topic shows that the communication process is right. You can grab the network package and take a test. |
I understand what you are saying, but I don't understand why that is the case. Documentation confirms what our current code is doing. (and other library is doing the same thing). Maybe there is an issue somewhere else? |
Before deleting the 'cert' code, the package info of client for exchange had two certificates which were same with each other. The screenshot is below:
After deleting that, everything was OK!
The SecIdentityRef contains a SecCertificateRef, so we do not add another SecCertificateRef again!
Please fix it and release a new pod version, thanks!