Fix age mask parsing from config
- initialize age mask to zero - drop default bitstring for age mask, use string instead -remove default age mask bits, use string instead -strdup
This commit is contained in:
parent
d1379e492d
commit
dc5b0fb0d3
@ -207,10 +207,10 @@ libtaler_extension_age_restriction_init (void *arg)
|
|||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
mask.bits = TALER_EXTENSION_AGE_RESTRICTION_DEFAULT_AGE_MASK;
|
if (NULL == groups)
|
||||||
|
groups = GNUNET_strdup (TALER_EXTENSION_AGE_RESTRICTION_DEFAULT_AGE_GROUPS);
|
||||||
|
|
||||||
if ((groups != NULL) &&
|
if (GNUNET_OK != TALER_parse_age_group_string (groups, &mask))
|
||||||
(GNUNET_OK != TALER_parse_age_group_string (groups, &mask)))
|
|
||||||
{
|
{
|
||||||
GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
|
GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
|
||||||
"[age restriction] couldn't parse age groups: '%s'\n",
|
"[age restriction] couldn't parse age groups: '%s'\n",
|
||||||
|
@ -344,10 +344,6 @@ TALER_extensions_verify_manifests_signature (
|
|||||||
* The default age mask represents the age groups
|
* The default age mask represents the age groups
|
||||||
* 0-7, 8-9, 10-11, 12-13, 14-15, 16-17, 18-20, 21-...
|
* 0-7, 8-9, 10-11, 12-13, 14-15, 16-17, 18-20, 21-...
|
||||||
*/
|
*/
|
||||||
#define TALER_EXTENSION_AGE_RESTRICTION_DEFAULT_AGE_MASK (1 | 1 << 8 | 1 << 10 \
|
|
||||||
| 1 << 12 | 1 << 14 \
|
|
||||||
| 1 << 16 | 1 << 18 \
|
|
||||||
| 1 << 21)
|
|
||||||
#define TALER_EXTENSION_AGE_RESTRICTION_DEFAULT_AGE_GROUPS "8:10:12:14:16:18:21"
|
#define TALER_EXTENSION_AGE_RESTRICTION_DEFAULT_AGE_GROUPS "8:10:12:14:16:18:21"
|
||||||
|
|
||||||
|
|
||||||
|
@ -513,6 +513,9 @@ TALER_parse_age_group_string (
|
|||||||
unsigned int val = 0;
|
unsigned int val = 0;
|
||||||
char c;
|
char c;
|
||||||
|
|
||||||
|
/* reset mask */
|
||||||
|
mask->bits = 0;
|
||||||
|
|
||||||
while (*pos)
|
while (*pos)
|
||||||
{
|
{
|
||||||
c = *pos++;
|
c = *pos++;
|
||||||
|
Loading…
Reference in New Issue
Block a user