Skip to content

Commit 5d42d62

Browse files
Merge pull request #143 from fabik111/add-get-setting
Add getter of network settings
2 parents fa8e957 + 0c52c56 commit 5d42d62

File tree

4 files changed

+16
-0
lines changed

4 files changed

+16
-0
lines changed

src/ConnectionHandlerInterface.h

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -101,6 +101,11 @@ class ConnectionHandler {
101101
return false;
102102
}
103103

104+
virtual void getSetting(models::NetworkSetting& s) {
105+
memcpy(&s, &_settings, sizeof(s));
106+
return;
107+
}
108+
104109
virtual void setKeepAlive(bool keep_alive=true) { this->_keep_alive = keep_alive; }
105110

106111
protected:

src/EthernetConnectionHandler.cpp

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@ EthernetConnectionHandler::EthernetConnectionHandler(
4141
bool const keep_alive)
4242
: ConnectionHandler{keep_alive, NetworkAdapter::ETHERNET}
4343
{
44+
_settings.type = NetworkAdapter::ETHERNET;
4445
memset(_settings.eth.ip.dword, 0, sizeof(_settings.eth.ip.dword));
4546
memset(_settings.eth.dns.dword, 0, sizeof(_settings.eth.dns.dword));
4647
memset(_settings.eth.gateway.dword, 0, sizeof(_settings.eth.gateway.dword));
@@ -54,6 +55,7 @@ EthernetConnectionHandler::EthernetConnectionHandler(
5455
unsigned long const timeout, unsigned long const responseTimeout, bool const keep_alive)
5556
: ConnectionHandler{keep_alive, NetworkAdapter::ETHERNET}
5657
{
58+
_settings.type = NetworkAdapter::ETHERNET;
5759
fromIPAddress(ip, _settings.eth.ip);
5860
fromIPAddress(dns, _settings.eth.dns);
5961
fromIPAddress(gateway, _settings.eth.gateway);

src/GenericConnectionHandler.cpp

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,14 @@ bool GenericConnectionHandler::updateSetting(const models::NetworkSetting& s) {
4646
}
4747
}
4848

49+
void GenericConnectionHandler::getSetting(models::NetworkSetting& s) {
50+
if(_ch != nullptr) {
51+
_ch->getSetting(s);
52+
} else {
53+
s.type = NetworkAdapter::NONE;
54+
}
55+
}
56+
4957
NetworkConnectionState GenericConnectionHandler::updateConnectionState() {
5058
return _ch != nullptr ? _ch->updateConnectionState() : NetworkConnectionState::INIT;
5159
}

src/GenericConnectionHandler.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@ class GenericConnectionHandler : public ConnectionHandler
4949
#endif
5050

5151
bool updateSetting(const models::NetworkSetting& s) override;
52+
void getSetting(models::NetworkSetting& s) override;
5253

5354
void connect() override;
5455
void disconnect() override;

0 commit comments

Comments
 (0)