@@ -68,20 +68,18 @@ class ZephyrSocketWrapper {
6868#endif
6969
7070 // custom deleter for shared_ptr to close automatically the socket
71- static auto socket_deleter () {
72- return [](int *fd) {
73- if (fd && *fd != -1 ) {
74- ::close (*fd);
75- delete fd;
76- }
77- };
71+ static void socket_deleter (int *fd) {
72+ if (fd && *fd != -1 ) {
73+ ::close (*fd);
74+ }
75+ delete fd;
7876 }
7977
8078public:
8179 ZephyrSocketWrapper () = default ;
8280
8381 ZephyrSocketWrapper (int fd)
84- : sock_fd(std::shared_ptr<int >(fd < 0 ? nullptr : new int (fd), socket_deleter() )) {
82+ : sock_fd(std::shared_ptr<int >(fd < 0 ? nullptr : new int (fd), socket_deleter)) {
8583 }
8684
8785 ~ZephyrSocketWrapper () = default ; // socket close managed by shared_ptr
@@ -116,8 +114,8 @@ class ZephyrSocketWrapper {
116114 }
117115
118116 raw_sock_fd = socket (AF_INET, SOCK_STREAM, IPPROTO_TCP);
119- sock_fd = std::shared_ptr< int >(raw_sock_fd < 0 ? nullptr : new int (raw_sock_fd),
120- socket_deleter () );
117+ sock_fd =
118+ std::shared_ptr< int >(raw_sock_fd < 0 ? nullptr : new int (raw_sock_fd), socket_deleter );
121119 if (!sock_fd) {
122120 rv = false ;
123121
@@ -150,8 +148,8 @@ class ZephyrSocketWrapper {
150148 inet_pton (AF_INET, _host, &addr.sin_addr );
151149
152150 raw_sock_fd = socket (AF_INET, SOCK_STREAM, IPPROTO_TCP);
153- sock_fd = std::shared_ptr< int >(raw_sock_fd < 0 ? nullptr : new int (raw_sock_fd),
154- socket_deleter () );
151+ sock_fd =
152+ std::shared_ptr< int >(raw_sock_fd < 0 ? nullptr : new int (raw_sock_fd), socket_deleter );
155153 if (!sock_fd) {
156154 return false ;
157155 }
@@ -228,8 +226,8 @@ class ZephyrSocketWrapper {
228226 }
229227
230228 raw_sock_fd = socket (AF_INET, SOCK_STREAM, IPPROTO_TLS_1_2);
231- sock_fd = std::shared_ptr< int >(raw_sock_fd < 0 ? nullptr : new int (raw_sock_fd),
232- socket_deleter () );
229+ sock_fd =
230+ std::shared_ptr< int >(raw_sock_fd < 0 ? nullptr : new int (raw_sock_fd), socket_deleter );
233231 if (!sock_fd) {
234232 goto exit;
235233 }
@@ -321,8 +319,8 @@ class ZephyrSocketWrapper {
321319 addr.sin_addr .s_addr = INADDR_ANY;
322320
323321 raw_sock_fd = socket (AF_INET, SOCK_STREAM, IPPROTO_TCP);
324- sock_fd = std::shared_ptr< int >(raw_sock_fd < 0 ? nullptr : new int (raw_sock_fd),
325- socket_deleter () );
322+ sock_fd =
323+ std::shared_ptr< int >(raw_sock_fd < 0 ? nullptr : new int (raw_sock_fd), socket_deleter );
326324 if (!sock_fd) {
327325 return false ;
328326 }
0 commit comments