diff --git a/esphome/components/socket/socket.cpp b/esphome/components/socket/socket.cpp index d00ddaeae2..4c78397873 100644 --- a/esphome/components/socket/socket.cpp +++ b/esphome/components/socket/socket.cpp @@ -7,6 +7,8 @@ namespace esphome { namespace socket { +Socket::~Socket() {} + std::unique_ptr socket_ip(int type, int protocol) { #if LWIP_IPV6 return socket(AF_INET6, type, protocol); diff --git a/esphome/components/socket/socket.h b/esphome/components/socket/socket.h index 7400ba306f..c9b8be88a0 100644 --- a/esphome/components/socket/socket.h +++ b/esphome/components/socket/socket.h @@ -11,7 +11,7 @@ namespace socket { class Socket { public: Socket() = default; - virtual ~Socket() = default; + virtual ~Socket(); Socket(const Socket &) = delete; Socket &operator=(const Socket &) = delete; @@ -34,7 +34,7 @@ class Socket { virtual ssize_t readv(const struct iovec *iov, int iovcnt) = 0; virtual ssize_t write(const void *buf, size_t len) = 0; virtual ssize_t writev(const struct iovec *iov, int iovcnt) = 0; - virtual ssize_t sendto(const void *buf, size_t len, int flags, const struct sockaddr *to, socklen_t tolen); + virtual ssize_t sendto(const void *buf, size_t len, int flags, const struct sockaddr *to, socklen_t tolen) = 0; virtual int setblocking(bool blocking) = 0; virtual int loop() { return 0; }; diff --git a/esphome/core/string_ref.h b/esphome/core/string_ref.h index 5940a7ee65..f3dc3a38b0 100644 --- a/esphome/core/string_ref.h +++ b/esphome/core/string_ref.h @@ -1,8 +1,9 @@ #pragma once -#include -#include #include +#include +#include +#include #include "esphome/core/defines.h" #ifdef USE_JSON