[SERVER-69131] remove the Socket class Created: 24/Aug/22  Updated: 05/Dec/22

Status: Open
Project: Core Server
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Improvement Priority: Major - P3
Reporter: Billy Donahue Assignee: Backlog - Service Architecture
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Depends
Assigned Teams:
Service Arch
Participants:

 Description   

We have a Socket class in util/net/sock.h

This doesn't use ASIO so they're in a completely different API from the transport layer.
But the transport layer tries to reuse some of the Socket configuration functions in socket_util.h, like setSocketKeepAliveParams or disableNagle.

This is unfortunate, because we have to break our sockets out of ASIO with native_handle calls to do this, and we don't get the benefits of ASIO's abstractions, and we have two ways to do the same socket configurations.



 Comments   
Comment by Mark Benvenuto [ 25/Aug/22 ]

This change is beneficial to server security was it would permit us to remove our non-ASIO SSL code. We have a related project to cleanup TLS tech debt: PM-2718.

Generated at Thu Feb 08 06:12:39 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.