mirror of
https://git.savannah.nongnu.org/git/lwip.git
synced 2025-08-06 22:44:38 +08:00
fixed const'ness of syscontact/sysname/syslocation
This commit is contained in:
parent
02dee05c16
commit
fbadb8354f
@ -777,22 +777,25 @@ static const u8_t sysdescr_len_default = 4;
|
|||||||
static const u8_t sysdescr_default[] = "lwIP";
|
static const u8_t sysdescr_default[] = "lwIP";
|
||||||
static const u8_t* sysdescr_len_ptr = &sysdescr_len_default;
|
static const u8_t* sysdescr_len_ptr = &sysdescr_len_default;
|
||||||
static const u8_t* sysdescr_ptr = &sysdescr_default[0];
|
static const u8_t* sysdescr_ptr = &sysdescr_default[0];
|
||||||
/** mib-2.system.sysContact @todo: this design is broken (SNMP-set writes without known buffer size) */
|
/** mib-2.system.sysContact */
|
||||||
static u8_t syscontact_len_default = 0;
|
static u8_t syscontact_len_default = 0;
|
||||||
static u8_t syscontact_default[] = "";
|
static u8_t syscontact_default[] = "";
|
||||||
|
static u8_t syscontact_size = 1;
|
||||||
static u8_t* syscontact_len_ptr = &syscontact_len_default;
|
static u8_t* syscontact_len_ptr = &syscontact_len_default;
|
||||||
static u8_t* syscontact_ptr = &syscontact_default[0];
|
static u8_t* syscontact_ptr = &syscontact_default[0];
|
||||||
/** mib-2.system.sysName @todo: this design is broken (SNMP-set writes without known buffer size) */
|
/** mib-2.system.sysName */
|
||||||
static u8_t sysname_len_default = 8;
|
static u8_t sysname_len_default = 8;
|
||||||
static u8_t sysname_default[] = "FQDN-unk";
|
static u8_t sysname_default[] = "FQDN-unk";
|
||||||
|
static u8_t sysname_size = 9;
|
||||||
static u8_t* sysname_len_ptr = &sysname_len_default;
|
static u8_t* sysname_len_ptr = &sysname_len_default;
|
||||||
static u8_t* sysname_ptr = &sysname_default[0];
|
static u8_t* sysname_ptr = &sysname_default[0];
|
||||||
/** mib-2.system.sysLocation @todo: this design is broken (SNMP-set writes without known buffer size) */
|
/** mib-2.system.sysLocation */
|
||||||
static u8_t syslocation_len_default = 0;
|
static u8_t syslocation_len_default = 0;
|
||||||
static u8_t syslocation_default[] = "";
|
static u8_t syslocation_default[] = "";
|
||||||
|
static u8_t syslocation_size = 1;
|
||||||
static u8_t* syslocation_len_ptr = &syslocation_len_default;
|
static u8_t* syslocation_len_ptr = &syslocation_len_default;
|
||||||
static u8_t* syslocation_ptr = &syslocation_default[0];
|
static u8_t* syslocation_ptr = &syslocation_default[0];
|
||||||
/** mib-2.snmp.snmpEnableAuthenTraps @todo: this design is broken (SNMP-set writes without known buffer size) */
|
/** mib-2.snmp.snmpEnableAuthenTraps */
|
||||||
static u8_t snmpenableauthentraps_default = 2; /* disabled */
|
static u8_t snmpenableauthentraps_default = 2; /* disabled */
|
||||||
static u8_t* snmpenableauthentraps_ptr = &snmpenableauthentraps_default;
|
static u8_t* snmpenableauthentraps_ptr = &snmpenableauthentraps_default;
|
||||||
|
|
||||||
@ -952,13 +955,16 @@ void snmp_get_sysuptime(u32_t *value)
|
|||||||
*
|
*
|
||||||
* @param ocstr if non-NULL then copy str pointer
|
* @param ocstr if non-NULL then copy str pointer
|
||||||
* @param ocstrlen points to string length, excluding zero terminator
|
* @param ocstrlen points to string length, excluding zero terminator
|
||||||
|
* @param bufsize size of the buffer in bytes, including space for zero terminator
|
||||||
|
* (this is required because the buffer can be overwritten by snmp-set)
|
||||||
*/
|
*/
|
||||||
void snmp_set_syscontact(u8_t *ocstr, u8_t *ocstrlen)
|
void snmp_set_syscontact(u8_t *ocstr, u8_t *ocstrlen, u8_t bufsize)
|
||||||
{
|
{
|
||||||
if (ocstr != NULL)
|
if (ocstr != NULL)
|
||||||
{
|
{
|
||||||
syscontact_ptr = ocstr;
|
syscontact_ptr = ocstr;
|
||||||
syscontact_len_ptr = ocstrlen;
|
syscontact_len_ptr = ocstrlen;
|
||||||
|
syscontact_size = bufsize;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -968,13 +974,16 @@ void snmp_set_syscontact(u8_t *ocstr, u8_t *ocstrlen)
|
|||||||
*
|
*
|
||||||
* @param ocstr if non-NULL then copy str pointer
|
* @param ocstr if non-NULL then copy str pointer
|
||||||
* @param ocstrlen points to string length, excluding zero terminator
|
* @param ocstrlen points to string length, excluding zero terminator
|
||||||
|
* @param bufsize size of the buffer in bytes, including space for zero terminator
|
||||||
|
* (this is required because the buffer can be overwritten by snmp-set)
|
||||||
*/
|
*/
|
||||||
void snmp_set_sysname(u8_t *ocstr, u8_t *ocstrlen)
|
void snmp_set_sysname(u8_t *ocstr, u8_t *ocstrlen, u8_t bufsize)
|
||||||
{
|
{
|
||||||
if (ocstr != NULL)
|
if (ocstr != NULL)
|
||||||
{
|
{
|
||||||
sysname_ptr = ocstr;
|
sysname_ptr = ocstr;
|
||||||
sysname_len_ptr = ocstrlen;
|
sysname_len_ptr = ocstrlen;
|
||||||
|
sysname_size = bufsize;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -984,13 +993,16 @@ void snmp_set_sysname(u8_t *ocstr, u8_t *ocstrlen)
|
|||||||
*
|
*
|
||||||
* @param ocstr if non-NULL then copy str pointer
|
* @param ocstr if non-NULL then copy str pointer
|
||||||
* @param ocstrlen points to string length, excluding zero terminator
|
* @param ocstrlen points to string length, excluding zero terminator
|
||||||
|
* @param bufsize size of the buffer in bytes, including space for zero terminator
|
||||||
|
* (this is required because the buffer can be overwritten by snmp-set)
|
||||||
*/
|
*/
|
||||||
void snmp_set_syslocation(u8_t *ocstr, u8_t *ocstrlen)
|
void snmp_set_syslocation(u8_t *ocstr, u8_t *ocstrlen, u8_t bufsize)
|
||||||
{
|
{
|
||||||
if (ocstr != NULL)
|
if (ocstr != NULL)
|
||||||
{
|
{
|
||||||
syslocation_ptr = ocstr;
|
syslocation_ptr = ocstr;
|
||||||
syslocation_len_ptr = ocstrlen;
|
syslocation_len_ptr = ocstrlen;
|
||||||
|
syslocation_size = bufsize;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -2224,22 +2236,19 @@ system_set_test(struct obj_def *od, u16_t len, void *value)
|
|||||||
switch (id)
|
switch (id)
|
||||||
{
|
{
|
||||||
case 4: /* sysContact */
|
case 4: /* sysContact */
|
||||||
if ((syscontact_ptr != syscontact_default) &&
|
if (len < syscontact_size)
|
||||||
(len <= 255))
|
|
||||||
{
|
{
|
||||||
set_ok = 1;
|
set_ok = 1;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 5: /* sysName */
|
case 5: /* sysName */
|
||||||
if ((sysname_ptr != sysname_default) &&
|
if (len < sysname_size)
|
||||||
(len <= 255))
|
|
||||||
{
|
{
|
||||||
set_ok = 1;
|
set_ok = 1;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 6: /* sysLocation */
|
case 6: /* sysLocation */
|
||||||
if ((syslocation_ptr != syslocation_default) &&
|
if (len < syslocation_size)
|
||||||
(len <= 255))
|
|
||||||
{
|
{
|
||||||
set_ok = 1;
|
set_ok = 1;
|
||||||
}
|
}
|
||||||
@ -2261,15 +2270,15 @@ system_set_value(struct obj_def *od, u16_t len, void *value)
|
|||||||
id = (u8_t)od->id_inst_ptr[0];
|
id = (u8_t)od->id_inst_ptr[0];
|
||||||
switch (id)
|
switch (id)
|
||||||
{
|
{
|
||||||
case 4: /* sysContact */
|
case 4: /* sysContact (size already checked in system_set_test) */
|
||||||
MEMCPY(syscontact_ptr, value, len);
|
MEMCPY(syscontact_ptr, value, len);
|
||||||
*syscontact_len_ptr = (u8_t)len;
|
*syscontact_len_ptr = (u8_t)len;
|
||||||
break;
|
break;
|
||||||
case 5: /* sysName */
|
case 5: /* sysName (size already checked in system_set_test) */
|
||||||
MEMCPY(sysname_ptr, value, len);
|
MEMCPY(sysname_ptr, value, len);
|
||||||
*sysname_len_ptr = (u8_t)len;
|
*sysname_len_ptr = (u8_t)len;
|
||||||
break;
|
break;
|
||||||
case 6: /* sysLocation */
|
case 6: /* sysLocation (size already checked in system_set_test) */
|
||||||
MEMCPY(syslocation_ptr, value, len);
|
MEMCPY(syslocation_ptr, value, len);
|
||||||
*syslocation_len_ptr = (u8_t)len;
|
*syslocation_len_ptr = (u8_t)len;
|
||||||
break;
|
break;
|
||||||
@ -4129,21 +4138,10 @@ snmp_set_test(struct obj_def *od, u16_t len, void *value)
|
|||||||
/* snmpEnableAuthenTraps */
|
/* snmpEnableAuthenTraps */
|
||||||
s32_t *sint_ptr = (s32_t*)value;
|
s32_t *sint_ptr = (s32_t*)value;
|
||||||
|
|
||||||
if (snmpenableauthentraps_ptr != &snmpenableauthentraps_default)
|
/* we should have writable non-volatile mem here */
|
||||||
|
if ((*sint_ptr == 1) || (*sint_ptr == 2))
|
||||||
{
|
{
|
||||||
/* we should have writable non-volatile mem here */
|
set_ok = 1;
|
||||||
if ((*sint_ptr == 1) || (*sint_ptr == 2))
|
|
||||||
{
|
|
||||||
set_ok = 1;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
/* const or hardwired value */
|
|
||||||
if (*sint_ptr == snmpenableauthentraps_default)
|
|
||||||
{
|
|
||||||
set_ok = 1;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return set_ok;
|
return set_ok;
|
||||||
|
@ -113,9 +113,9 @@ void snmp_get_sysobjid_ptr(const struct snmp_obj_id **oid);
|
|||||||
void snmp_inc_sysuptime(void);
|
void snmp_inc_sysuptime(void);
|
||||||
void snmp_add_sysuptime(u32_t value);
|
void snmp_add_sysuptime(u32_t value);
|
||||||
void snmp_get_sysuptime(u32_t *value);
|
void snmp_get_sysuptime(u32_t *value);
|
||||||
void snmp_set_syscontact(u8_t *ocstr, u8_t *ocstrlen);
|
void snmp_set_syscontact(u8_t *ocstr, u8_t *ocstrlen, u8_t bufsize);
|
||||||
void snmp_set_sysname(u8_t *ocstr, u8_t *ocstrlen);
|
void snmp_set_sysname(u8_t *ocstr, u8_t *ocstrlen, u8_t bufsize);
|
||||||
void snmp_set_syslocation(u8_t *ocstr, u8_t *ocstrlen);
|
void snmp_set_syslocation(u8_t *ocstr, u8_t *ocstrlen, u8_t bufsize);
|
||||||
|
|
||||||
/* network interface */
|
/* network interface */
|
||||||
void snmp_add_ifinoctets(struct netif *ni, u32_t value);
|
void snmp_add_ifinoctets(struct netif *ni, u32_t value);
|
||||||
@ -251,9 +251,9 @@ void snmp_get_snmpenableauthentraps(u8_t *value);
|
|||||||
#define snmp_inc_sysuptime()
|
#define snmp_inc_sysuptime()
|
||||||
#define snmp_add_sysuptime(value)
|
#define snmp_add_sysuptime(value)
|
||||||
#define snmp_get_sysuptime(value)
|
#define snmp_get_sysuptime(value)
|
||||||
#define snmp_set_syscontact(ocstr, ocstrlen);
|
#define snmp_set_syscontact(ocstr, ocstrlen, bufsize);
|
||||||
#define snmp_set_sysname(ocstr, ocstrlen);
|
#define snmp_set_sysname(ocstr, ocstrlen, bufsize);
|
||||||
#define snmp_set_syslocation(ocstr, ocstrlen);
|
#define snmp_set_syslocation(ocstr, ocstrlen, bufsize);
|
||||||
|
|
||||||
/* network interface */
|
/* network interface */
|
||||||
#define snmp_add_ifinoctets(ni,value)
|
#define snmp_add_ifinoctets(ni,value)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user