Skip to content

Update to the commit for OpenSSL 3.3.0 on Windows.#778

Merged
clalancette merged 3 commits intomasterfrom
clalancette/windows-openssl-update
May 13, 2024
Merged

Update to the commit for OpenSSL 3.3.0 on Windows.#778
clalancette merged 3 commits intomasterfrom
clalancette/windows-openssl-update

Conversation

@clalancette
Copy link
Copy Markdown
Contributor

See the description in ros-infrastructure/ros2-cookbooks#68 for more information on why we are doing this.

@clalancette
Copy link
Copy Markdown
Contributor Author

CI:

  • Windows Build Status
  • Windows Debug Build Status

@clalancette
Copy link
Copy Markdown
Contributor Author

clalancette commented May 7, 2024

OK, all the fixes we need are on rolling, and most of them are on Jazzy. I've also gone back to ros-infrastructure/ros2-cookbooks#68 and cleaned things up so it should work for Humble, Iron, Jazzy, and Rolling (assuming I got my Ruby syntax correct, which is a big if). Here is a build on Rolling and Humble to see what happens:

  • Rolling Windows Build Status
  • Humble Windows Build Status

@clalancette clalancette force-pushed the clalancette/windows-openssl-update branch 3 times, most recently from 73ae83b to 1a7155f Compare May 7, 2024 19:47
Signed-off-by: Chris Lalancette <clalancette@gmail.com>
@clalancette clalancette force-pushed the clalancette/windows-openssl-update branch from 1a7155f to de178e6 Compare May 7, 2024 20:10
@clalancette
Copy link
Copy Markdown
Contributor Author

clalancette commented May 8, 2024

And here is Windows on Iron and Jazzy, now that all of the fixes have been merged:

  • Jazzy Windows Build Status
  • Iron Windows Build Status

@mikaelarguedas
Copy link
Copy Markdown
Member

Looking at the output of the test_security tests it's not clear that this is working as expected:

01:02:49 10: [test_publisher-1] [INFO] [1715130064.586728500] [rcl]: Found security directory: C:\ci\ws\build\test_security\test\test_security_files\enclaves\publisher
01:02:49 10: [test_subscriber-2] [INFO] [1715130064.600728600] [rcl]: Found security directory: C:\ci\ws\build\test_security\test\test_security_files\enclaves\subscriber
01:02:49 10: [test_subscriber-2] 1715130064.623206 [154] dq.builtin: Remote secure participant fd6b3c94:3780726e:413644eb:1c1 not allowed
01:02:49 10: [INFO] [test_subscriber-2]: process has finished cleanly [pid 11172]
01:02:49 10: [WARNING] [test_publisher-1]: 'SIGINT' sent to process[test_publisher-1] not supported on Windows, escalating to 'SIGTERM'
01:02:49 10: [INFO] [test_publisher-1]: sending signal 'SIGTERM' to process[test_publisher-1]
01:02:49 10: [ERROR] [test_publisher-1]: process has died [pid 1492, exit code 1, cmd 'C:/ci/ws/build/test_security/Release/test_secure_publisher_cpp.exe Empty /'].

I don't have a local setup to try it out but it might be worth checking on that exact setup if it's possible to establish secure communication between a talker and a listener

@clalancette
Copy link
Copy Markdown
Contributor Author

Looking at the output of the test_security tests it's not clear that this is working as expected:

While that is true, I will also say that is not different than the output in the nightlies, which show exactly the same thing.

Also, trying out SROS2_Windows locally with OpenSSL 3.3.0 installed via chocolatey, everything seems to work for me.

All of that leads me to believe that there may be a problem with the tests, but it is not new and is not caused by this change.

@mikaelarguedas
Copy link
Copy Markdown
Member

Also, trying out SROS2_Windows locally with OpenSSL 3.3.0 installed via chocolatey, everything seems to work for me.

👍 great thanks for testing locally!

All of that leads me to believe that there may be a problem with the tests, but it is not new and is not caused by this change.

😕 less great

@clalancette
Copy link
Copy Markdown
Contributor Author

All right, here is an omnibus weekend run of all combinations of Rolling, Jazzy, Iron, and Humble on both Windows and Windows debug:

  • Rolling Windows Build Status

  • Jazzy Windows Build Status

  • Iron Windows Build Status

  • Humble Windows Build Status

  • Rolling Windows Debug Build Status

  • Jazzy Windows Debug Build Status

  • Iron Windows Debug Build Status

  • Humble Windows Debug Build Status

Signed-off-by: Chris Lalancette <clalancette@gmail.com>
@clalancette
Copy link
Copy Markdown
Contributor Author

clalancette commented May 12, 2024

OK, due to problems between OpenSSL 3.3.0 and pycryptography 2.9.2 (which we still use on Windows Debug), we have to stick with OpenSSL 1.1.1. We can still get that from chocolatey, however, so we go ahead with that. Here is another omnibus set of Windows CI:

  • Rolling Windows Build Status

  • Jazzy Windows Build Status

  • Iron Windows Build Status

  • Humble Windows Build Status

  • Rolling Windows Debug Build Status

  • Jazzy Windows Debug Build Status

  • Iron Windows Debug Build Status

  • Humble Windows Debug Build Status

@clalancette clalancette marked this pull request as ready for review May 13, 2024 13:32
@clalancette
Copy link
Copy Markdown
Contributor Author

All right, all CI is happy (or at least as happy as it gets on Windows right now). I'm going to go ahead and merge ros-infrastructure/ros2-cookbooks#68 , and then update the hash here to point to the latest there.

Signed-off-by: Chris Lalancette <clalancette@gmail.com>
@clalancette
Copy link
Copy Markdown
Contributor Author

All right, hash updated. Here is one CI up to ament_cmake just to make sure that the hash is correct:

  • Rolling Windows Build Status

@clalancette clalancette merged commit 1b81095 into master May 13, 2024
@delete-merged-branch delete-merged-branch bot deleted the clalancette/windows-openssl-update branch May 13, 2024 20:21
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.

3 participants