Merge pull request #23 from lategoodbye/master
Bugfix XML 1.0 conformity
This commit is contained in:
commit
923858eaee
@ -9,6 +9,7 @@
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
#include <assert.h>
|
||||
#include <ctype.h>
|
||||
#include <math.h>
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
@ -865,6 +866,15 @@ mbus_data_product_name(mbus_data_variable_header *header)
|
||||
break;
|
||||
}
|
||||
}
|
||||
else if (manufacturer == MBUS_VARIABLE_DATA_MAN_SEN)
|
||||
{
|
||||
switch (header->version)
|
||||
{
|
||||
case 0x19:
|
||||
strcpy(buff,"Sensus PolluCom E");
|
||||
break;
|
||||
}
|
||||
}
|
||||
else if (manufacturer == MBUS_VARIABLE_DATA_MAN_SPX)
|
||||
{
|
||||
switch (header->version)
|
||||
@ -3226,26 +3236,34 @@ mbus_str_xml_encode(u_char *dst, const u_char *src, size_t max_len)
|
||||
{
|
||||
break;
|
||||
}
|
||||
|
||||
switch (src[i])
|
||||
{
|
||||
case '&':
|
||||
len += snprintf(&dst[len], max_len - len, "&");
|
||||
break;
|
||||
case '<':
|
||||
len += snprintf(&dst[len], max_len - len, "<");
|
||||
break;
|
||||
case '>':
|
||||
len += snprintf(&dst[len], max_len - len, ">");
|
||||
break;
|
||||
case '"':
|
||||
len += snprintf(&dst[len], max_len - len, """);
|
||||
break;
|
||||
default:
|
||||
dst[len++] = src[i];
|
||||
break;
|
||||
}
|
||||
|
||||
if (iscntrl(src[i]))
|
||||
{
|
||||
// convert all control chars into spaces
|
||||
dst[len++] = ' ';
|
||||
}
|
||||
else
|
||||
{
|
||||
switch (src[i])
|
||||
{
|
||||
case '&':
|
||||
len += snprintf(&dst[len], max_len - len, "&");
|
||||
break;
|
||||
case '<':
|
||||
len += snprintf(&dst[len], max_len - len, "<");
|
||||
break;
|
||||
case '>':
|
||||
len += snprintf(&dst[len], max_len - len, ">");
|
||||
break;
|
||||
case '"':
|
||||
len += snprintf(&dst[len], max_len - len, """);
|
||||
break;
|
||||
default:
|
||||
dst[len++] = src[i];
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
i++;
|
||||
}
|
||||
}
|
||||
|
@ -484,6 +484,7 @@ typedef struct _mbus_data_secondary_address {
|
||||
#define MBUS_VARIABLE_DATA_MAN_NZR 0x3B52
|
||||
#define MBUS_VARIABLE_DATA_MAN_PAD 0x4024
|
||||
#define MBUS_VARIABLE_DATA_MAN_QDS 0x4493
|
||||
#define MBUS_VARIABLE_DATA_MAN_SEN 0x4CAE
|
||||
#define MBUS_VARIABLE_DATA_MAN_SLB 0x4D82
|
||||
#define MBUS_VARIABLE_DATA_MAN_SON 0x4DEE
|
||||
#define MBUS_VARIABLE_DATA_MAN_SPX 0x4E18
|
||||
|
Loading…
x
Reference in New Issue
Block a user