@@ -23,20 +23,18 @@ class ZephyrSocketWrapper {
2323 int ssl_sock_temp_char = -1 ;
2424
2525 // custom deleter for shared_ptr to close automatically the socket
26- static auto socket_deleter () {
27- return [](int *fd) {
28- if (fd && *fd != -1 ) {
29- ::close (*fd);
30- delete fd;
31- }
32- };
26+ static void socket_deleter (int *fd) {
27+ if (fd && *fd != -1 ) {
28+ ::close (*fd);
29+ }
30+ delete fd;
3331 }
3432
3533public:
3634 ZephyrSocketWrapper () = default ;
3735
3836 ZephyrSocketWrapper (int fd)
39- : sock_fd(std::shared_ptr<int >(fd < 0 ? nullptr : new int (fd), socket_deleter() )) {
37+ : sock_fd(std::shared_ptr<int >(fd < 0 ? nullptr : new int (fd), socket_deleter)) {
4038 }
4139
4240 ~ZephyrSocketWrapper () = default ; // socket close managed by shared_ptr
@@ -71,8 +69,8 @@ class ZephyrSocketWrapper {
7169 }
7270
7371 raw_sock_fd = socket (AF_INET, SOCK_STREAM, IPPROTO_TCP);
74- sock_fd = std::shared_ptr< int >(raw_sock_fd < 0 ? nullptr : new int (raw_sock_fd),
75- socket_deleter () );
72+ sock_fd =
73+ std::shared_ptr< int >(raw_sock_fd < 0 ? nullptr : new int (raw_sock_fd), socket_deleter );
7674 if (!sock_fd) {
7775 rv = false ;
7876
@@ -105,8 +103,8 @@ class ZephyrSocketWrapper {
105103 inet_pton (AF_INET, _host, &addr.sin_addr );
106104
107105 raw_sock_fd = socket (AF_INET, SOCK_STREAM, IPPROTO_TCP);
108- sock_fd = std::shared_ptr< int >(raw_sock_fd < 0 ? nullptr : new int (raw_sock_fd),
109- socket_deleter () );
106+ sock_fd =
107+ std::shared_ptr< int >(raw_sock_fd < 0 ? nullptr : new int (raw_sock_fd), socket_deleter );
110108 if (!sock_fd) {
111109 return false ;
112110 }
@@ -166,8 +164,8 @@ class ZephyrSocketWrapper {
166164 }
167165
168166 raw_sock_fd = socket (AF_INET, SOCK_STREAM, IPPROTO_TLS_1_2);
169- sock_fd = std::shared_ptr< int >(raw_sock_fd < 0 ? nullptr : new int (raw_sock_fd),
170- socket_deleter () );
167+ sock_fd =
168+ std::shared_ptr< int >(raw_sock_fd < 0 ? nullptr : new int (raw_sock_fd), socket_deleter );
171169 if (!sock_fd) {
172170 goto exit;
173171 }
@@ -259,8 +257,8 @@ class ZephyrSocketWrapper {
259257 addr.sin_addr .s_addr = INADDR_ANY;
260258
261259 raw_sock_fd = socket (AF_INET, SOCK_STREAM, IPPROTO_TCP);
262- sock_fd = std::shared_ptr< int >(raw_sock_fd < 0 ? nullptr : new int (raw_sock_fd),
263- socket_deleter () );
260+ sock_fd =
261+ std::shared_ptr< int >(raw_sock_fd < 0 ? nullptr : new int (raw_sock_fd), socket_deleter );
264262 if (!sock_fd) {
265263 return false ;
266264 }
0 commit comments