summaryrefslogtreecommitdiff
path: root/application/smm
diff options
context:
space:
mode:
Diffstat (limited to 'application/smm')
-rw-r--r--application/smm/smm-server/src/smm_req.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/application/smm/smm-server/src/smm_req.c b/application/smm/smm-server/src/smm_req.c
index 85c885f0bf..5f860845b8 100644
--- a/application/smm/smm-server/src/smm_req.c
+++ b/application/smm/smm-server/src/smm_req.c
@@ -222,6 +222,7 @@ void req_ip_get(unsigned char *smmentry, size_t *smmentry_len)
char iface[INTERFACE_STRING_MAX_LENGTH];
char ip_addr_string[IP_ADDRESS_STRING_MAX_LENGTH];
char netmask_string[NETMASK_STRING_MAX_LENGTH];
+ char broadcast_string[NETMASK_STRING_MAX_LENGTH];
char gateway_string[GATEWAY_STRING_MAX_LENGTH];
struct in_addr ip_addr, netmask, gateway;
char ip_mode[IP_MODE_STRING_MAX_LENGTH];
@@ -245,6 +246,7 @@ void req_ip_get(unsigned char *smmentry, size_t *smmentry_len)
smmentry[0] = 0x01;
*smmentry_len = 1;
+#if 0
/* Get requested data and fill response smmentry. */
ret = spidlib_get_ip_addr(iface, ip_addr_string, sizeof(ip_addr_string));
if ((ret != 0) && (ret != -EFAULT))
@@ -267,6 +269,15 @@ void req_ip_get(unsigned char *smmentry, size_t *smmentry_len)
syslog(LOG_ERR, "[req_ip_get] spidlib_get_ip_gateway: errno = %d", errno);
return;
}
+#endif // 0
+
+ ret = spidlib_get_ip_data(iface, ip_addr_string, netmask_string, broadcast_string /* unused */, gateway_string);
+ if ((ret != 0) && (ret != -EFAULT))
+ {
+ syslog(LOG_ERR, "[req_ip_get] spidlib_get_ip_data: errno = %d", errno);
+ return;
+ }
+
ret = spidlib_get_ip_mode(ip_mode, sizeof(ip_mode));
/* EFAULT: no ip mode found => return default value = 0 */
if ((ret != 0) && (ret != -EFAULT))