dovecot-2.0: config: Added support for "octal integer", which is...
dovecot at dovecot.org
dovecot at dovecot.org
Tue Jan 19 14:40:20 EET 2010
details: http://hg.dovecot.org/dovecot-2.0/rev/443927a546e2
changeset: 10554:443927a546e2
user: Timo Sirainen <tss at iki.fi>
date: Tue Jan 19 14:39:24 2010 +0200
description:
config: Added support for "octal integer", which is just printed as octal.
diffstat:
3 files changed, 17 insertions(+), 2 deletions(-)
src/config/config-request.c | 13 +++++++++++--
src/lib-settings/settings-parser.c | 5 +++++
src/lib-settings/settings-parser.h | 1 +
diffs (79 lines):
diff -r b8966b8133f2 -r 443927a546e2 src/config/config-request.c
--- a/src/config/config-request.c Mon Jan 18 10:55:55 2010 +0200
+++ b/src/config/config-request.c Tue Jan 19 14:39:24 2010 +0200
@@ -137,10 +137,19 @@ settings_export(struct settings_export_c
break;
}
case SET_UINT:
+ case SET_UINT_OCT:
case SET_TIME: {
const unsigned int *val = value, *dval = default_value;
- if (dump_default || dval == NULL || *val != *dval)
- str_printfa(ctx->value, "%u", *val);
+ if (dump_default || dval == NULL || *val != *dval) {
+ switch (def->type) {
+ case SET_UINT_OCT:
+ str_printfa(ctx->value, "0%o", *val);
+ break;
+ default:
+ str_printfa(ctx->value, "%u", *val);
+ break;
+ }
+ }
break;
}
case SET_STR_VARS: {
diff -r b8966b8133f2 -r 443927a546e2 src/lib-settings/settings-parser.c
--- a/src/lib-settings/settings-parser.c Mon Jan 18 10:55:55 2010 +0200
+++ b/src/lib-settings/settings-parser.c Tue Jan 19 14:39:24 2010 +0200
@@ -551,6 +551,7 @@ settings_parse(struct setting_parser_con
return -1;
break;
case SET_UINT:
+ case SET_UINT_OCT:
if (get_uint(ctx, value, (unsigned int *)ptr) < 0)
return -1;
break;
@@ -1023,6 +1024,7 @@ settings_var_expand_info(const struct se
switch (def->type) {
case SET_BOOL:
case SET_UINT:
+ case SET_UINT_OCT:
case SET_TIME:
case SET_SIZE:
case SET_STR:
@@ -1095,6 +1097,7 @@ bool settings_vars_have_key(const struct
switch (def->type) {
case SET_BOOL:
case SET_UINT:
+ case SET_UINT_OCT:
case SET_TIME:
case SET_SIZE:
case SET_STR:
@@ -1166,6 +1169,7 @@ setting_copy(enum setting_type type, con
break;
}
case SET_UINT:
+ case SET_UINT_OCT:
case SET_TIME: {
const unsigned int *src_uint = src;
unsigned int *dest_uint = dest;
@@ -1276,6 +1280,7 @@ settings_changes_dup(const struct settin
switch (def->type) {
case SET_BOOL:
case SET_UINT:
+ case SET_UINT_OCT:
case SET_TIME:
case SET_SIZE:
case SET_STR_VARS:
diff -r b8966b8133f2 -r 443927a546e2 src/lib-settings/settings-parser.h
--- a/src/lib-settings/settings-parser.h Mon Jan 18 10:55:55 2010 +0200
+++ b/src/lib-settings/settings-parser.h Tue Jan 19 14:39:24 2010 +0200
@@ -19,6 +19,7 @@ enum setting_type {
enum setting_type {
SET_BOOL,
SET_UINT,
+ SET_UINT_OCT,
SET_TIME,
SET_SIZE,
SET_STR,
More information about the dovecot-cvs
mailing list