mirror of
https://dev.iopsys.eu/bbf/icwmp.git
synced 2026-03-13 04:28:33 +01:00
ignore get value error for some objects
- Device.DeviceInfo.ProcessStatus.Process. - Device.Hosts.Host
This commit is contained in:
parent
c25f92e9d1
commit
0a6d7f6ab4
3 changed files with 21 additions and 3 deletions
16
common.c
16
common.c
|
|
@ -43,6 +43,11 @@ struct cwmp_mem {
|
|||
char mem[0];
|
||||
};
|
||||
|
||||
char *Obj_Excluded[] = {
|
||||
"Device.DeviceInfo.ProcessStatus.Process.",
|
||||
"Device.Hosts.Host."
|
||||
};
|
||||
|
||||
struct option cwmp_long_options[] = {
|
||||
{ "boot-event", no_argument, NULL, 'b' }, { "get-rpc-methods", no_argument, NULL, 'g' },
|
||||
{ "command-input", no_argument, NULL, 'c' }, { "help", no_argument, NULL, 'h' },
|
||||
|
|
@ -718,3 +723,14 @@ int get_connection_interface()
|
|||
}
|
||||
return CWMP_OK;
|
||||
}
|
||||
|
||||
bool is_obj_excluded(char *object_name)
|
||||
{
|
||||
unsigned int i = 0;
|
||||
|
||||
for (i = 0; i < ARRAY_SIZE(Obj_Excluded); i++) {
|
||||
if (strncmp(Obj_Excluded[i], object_name, strlen(Obj_Excluded[i])) == 0)
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -488,6 +488,8 @@ void clean_custom_inform_parameters();
|
|||
char *string_to_hex(const unsigned char *str, size_t size);
|
||||
int copy_file(char *source_file, char *target_file);
|
||||
int get_connection_interface();
|
||||
bool is_obj_excluded(char *object_name);
|
||||
|
||||
#ifndef FREE
|
||||
#define FREE(x) \
|
||||
do { \
|
||||
|
|
|
|||
|
|
@ -776,7 +776,7 @@ int cwmp_handle_rpc_cpe_get_parameter_values(struct session *session, struct rpc
|
|||
}
|
||||
if (parameter_name) {
|
||||
char *err = cwmp_get_parameter_values(parameter_name, ¶meters_list);
|
||||
if (err) {
|
||||
if (err && !is_obj_excluded(parameter_name)) {
|
||||
fault_code = cwmp_get_fault_code_by_string(err);
|
||||
goto fault;
|
||||
}
|
||||
|
|
@ -887,7 +887,7 @@ int cwmp_handle_rpc_cpe_get_parameter_names(struct session *session, struct rpc
|
|||
|
||||
if (parameter_name && NextLevel) {
|
||||
char *err = cwmp_get_parameter_names(parameter_name, strcmp(NextLevel, "true") == 0 || strcmp(NextLevel, "1") == 0 ? true : false, ¶meters_list);
|
||||
if (err) {
|
||||
if (err && !is_obj_excluded(parameter_name)) {
|
||||
fault_code = cwmp_get_fault_code_by_string(err);
|
||||
goto fault;
|
||||
}
|
||||
|
|
@ -979,7 +979,7 @@ int cwmp_handle_rpc_cpe_get_parameter_attributes(struct session *session, struct
|
|||
}
|
||||
if (parameter_name) {
|
||||
char *err = cwmp_get_parameter_attributes(parameter_name, ¶meters_list);
|
||||
if (err) {
|
||||
if (err && !is_obj_excluded(parameter_name)) {
|
||||
fault_code = cwmp_get_fault_code_by_string(err);
|
||||
goto fault;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue