Be able to copy active diagnostic request objects with their socket
authorRomain Forlot <romain.forlot@iot.bzh>
Tue, 23 May 2017 22:00:33 +0000 (00:00 +0200)
committerRomain Forlot <romain.forlot@iot.bzh>
Tue, 23 May 2017 22:00:33 +0000 (00:00 +0200)
Implement socket copy assignment operator on socketcan base class.

Change-Id: I75a2d3b96275b7ab83372d74ff7fe0a0b0535dc7
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
CAN-binder/low-can-binding/diagnostic/active-diagnostic-request.cpp
CAN-binder/low-can-binding/utils/socketcan.cpp
CAN-binder/low-can-binding/utils/socketcan.hpp

index e657456..e9f0cd1 100644 (file)
@@ -45,6 +45,7 @@ active_diagnostic_request_t& active_diagnostic_request_t::operator=(const active
                wait_for_multiple_responses_ = adr.wait_for_multiple_responses_;
                frequency_clock_ = adr.frequency_clock_;
                timeout_clock_ = adr.timeout_clock_;
+               socket_ = adr.socket_;
        }
        
        return *this;
index d66822d..ffd4615 100644 (file)
@@ -43,6 +43,12 @@ namespace utils
                s.socket_ = INVALID_SOCKET;
        }
 
+       socketcan_t& socketcan_t::operator=(const socketcan_t& s)
+       {
+               socket_ = std::move(s.socket_);
+               return *this;
+       }
+
        socketcan_t::~socketcan_t()
        {}
 
index c3abb2f..1e7cd3c 100644 (file)
@@ -35,6 +35,7 @@ namespace utils
                socketcan_t();
                socketcan_t(const socketcan_t& s);
                socketcan_t(socketcan_t&&);
+               socketcan_t& operator=(const socketcan_t& s);
                virtual ~socketcan_t();
 
                const struct sockaddr_can& get_tx_address() const;