summaryrefslogtreecommitdiff
path: root/application/spidlib
diff options
context:
space:
mode:
authorCeline Buret2008-11-14 19:23:58 +0100
committerCeline Buret2008-11-14 19:23:58 +0100
commit8fa5ef7da88e709eb79b13a622cb396625773f0f (patch)
tree3173632fc953353016162c33af27a6eedfce17db /application/spidlib
parentbf3116ebd986f1a7d1b002855fec5a9cd00fec1d (diff)
parenta93ce02b5a73edabd355af9658fb648f75e1fe98 (diff)
Auto merge
Diffstat (limited to 'application/spidlib')
-rw-r--r--application/spidlib/inc/network.h5
-rw-r--r--application/spidlib/src/network/ip_netmask.c14
-rw-r--r--application/spidlib/src/network/vlan.c4
-rw-r--r--application/spidlib/src/plc/white_list.c2
4 files changed, 15 insertions, 10 deletions
diff --git a/application/spidlib/inc/network.h b/application/spidlib/inc/network.h
index 52e9fd0249..cb07953829 100644
--- a/application/spidlib/inc/network.h
+++ b/application/spidlib/inc/network.h
@@ -13,7 +13,7 @@
#ifndef _NETWORK_H_
#define _NETWORK_H_
-#define IP_ADDRESS_STRING_MAX_LENGTH 11
+#define IP_ADDRESS_STRING_MAX_LENGTH 16
#define INTERFACE_STRING_MAX_LENGTH 8
@@ -53,7 +53,7 @@ extern int spidlib_set_ip_gateway(const char *iface, char *text);
#define NETWORK_CONFIG_TMP_FILE "../test/etc/config/network.tmp"
#endif /* TEST */
-#define IP_MODE_STRING_MAX_LENGTH 6
+#define IP_MODE_STRING_MAX_LENGTH 8
#define SPIDLIB_IP_MODE_STATIC "static"
#define SPIDLIB_IP_MODE_DHCP "dhcp"
@@ -73,7 +73,6 @@ extern int spidlib_check_ip_netmask(char *text);
extern int spidlib_set_ip_netmask(const char *iface, char *text);
#define MAC_ADDRESS_STRING_MAX_LENGTH 17
-#define INTERFACES_MAX_LINE_LENGTH 512
/*---------------------- Function declarations ------------------------------*/
diff --git a/application/spidlib/src/network/ip_netmask.c b/application/spidlib/src/network/ip_netmask.c
index 4600d9e95c..abe7e0b574 100644
--- a/application/spidlib/src/network/ip_netmask.c
+++ b/application/spidlib/src/network/ip_netmask.c
@@ -16,6 +16,7 @@
#include <stdlib.h>
#include <string.h>
#include <errno.h>
+#include <syslog.h>
#include "spidlib.h"
/*-----------------------------------------------------------------------------
@@ -42,15 +43,16 @@ spidlib_get_ip_netmask(const char *iface, char *text, int buffer_len)
spidlib_boolean_t found_netmask = SPIDLIB_FALSE;
/* Check buffer_len argument */
- if ( (buffer_len <= 0) || (buffer_len < NETMASK_STRING_MAX_LENGTH) )
+ if ( (buffer_len <= 0) || (buffer_len > NETMASK_STRING_MAX_LENGTH) )
{
- errno = EINVAL;
- return -1;
+ syslog(LOG_ERR, "[spidlib_get_ip_netmask] buffer_len = %d", buffer_len);
+ return (-(errno = EINVAL));
}
/* Check for valid interface */
if (strcmp(iface,"br0") && strcmp(iface,"plc0") && strcmp(iface,"eth0"))
{
+ syslog(LOG_ERR, "[spidlib_get_ip_netmask] iface = %s", iface);
return (-(errno = EINVAL));
}
@@ -113,15 +115,13 @@ spidlib_get_ip_netmask(const char *iface, char *text, int buffer_len)
/* Check if IP found */
if ( !found_netmask )
{
- errno = -EFAULT;
- return -1;
+ return (-(errno = EFAULT));
}
}
else
{
/* Return 'No such file or directory' error */
- errno = ENOENT;
- return -1;
+ return (-(errno = ENOENT));
}
return 0;
diff --git a/application/spidlib/src/network/vlan.c b/application/spidlib/src/network/vlan.c
index 906e13ecf3..1b0a0365b6 100644
--- a/application/spidlib/src/network/vlan.c
+++ b/application/spidlib/src/network/vlan.c
@@ -267,6 +267,8 @@ spidlib_get_vlan_all(spidlib_vlan_link_t vlan_direction, spidlib_vlan_rule_t *vl
{
memcpy(vlan_rule, stub_downlink, *nb_rules * sizeof(spidlib_vlan_rule_t));
}
+#else
+ *nb_rules = 0;
#endif /* SPIDLIB_STUB */
/* TODO: read the VLAN configuration file using spidlib_read_line() */
@@ -302,6 +304,8 @@ spidlib_get_vlan_common_all(spidlib_vlan_common_rule_t *vlan_common_rule, int *n
#ifdef SPIDLIB_STUB
stub_vlan_init();
memcpy(vlan_common_rule, stub_common, *nb_rules * sizeof(spidlib_vlan_common_rule_t));
+#else
+ *nb_rules = 0;
#endif /* SPIDLIB_STUB */
/* TODO: read the VLAN configuration file using spidlib_read_line() */
diff --git a/application/spidlib/src/plc/white_list.c b/application/spidlib/src/plc/white_list.c
index d80d174136..cd974dca3c 100644
--- a/application/spidlib/src/plc/white_list.c
+++ b/application/spidlib/src/plc/white_list.c
@@ -113,6 +113,8 @@ spidlib_get_white_list_all(spidlib_white_list_register_t *white_list, int *nb_re
}
}
*nb_registered = updated_nb;
+#else
+ *nb_registered = 0;
#endif /* SPIDLIB_STUB */
/* TODO: read the white list configuration file using spidlib_read_line() */