diff options
| author | Kaushal M <kaushal@redhat.com> | 2012-03-07 13:06:38 +0530 | 
|---|---|---|
| committer | Anand Avati <avati@redhat.com> | 2012-03-18 00:52:40 -0700 | 
| commit | 93022c0cc6c22b3a30ded3e109a3fe0a0dce8ca0 (patch) | |
| tree | e3544585d651356c8e8bbb17d62f432855f1ea47 /xlators/protocol | |
| parent | c3bbf6aa6c090fd066ab0079aa1c8ae332309d2a (diff) | |
mgmt/glusterd : volume set validation fixes
This is the new version of the patch by Kaushik at review.gluster.com/699
The following new option types have been introduced:
 * GF_OPTION_TYPE_INTERNET_ADDRESS_LIST
 * GF_OPTION_TYPE_PRIORITY_LIST
 * GF_OPTION_TYPE_SIZE_LIST
and option types of several options in translators have been updated to use the
new types.
valid_internet_address(), valid_ipv4_address() & valid_ipv6_address() functions
has been updated for * wildcard matching. Previously used standalone wildcard
address checking functions have been removed.
Changes have been done to stripe translator to correctly set, update and use
stripe-blocksize. Also minimum value for block-size has been set to 16KB.
Change-Id: I2aa484ff695f6a915a8fc9a9f965cf0344f41d59
BUG: 765248
Signed-off-by: Kaushal M <kaushal@redhat.com>
Reviewed-on: http://review.gluster.com/2899
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Shishir Gowda <shishirng@gluster.com>
Reviewed-by: Anand Avati <avati@redhat.com>
Diffstat (limited to 'xlators/protocol')
| -rw-r--r-- | xlators/protocol/auth/addr/src/addr.c | 6 | ||||
| -rw-r--r-- | xlators/protocol/server/src/server.c | 16 | 
2 files changed, 16 insertions, 6 deletions
diff --git a/xlators/protocol/auth/addr/src/addr.c b/xlators/protocol/auth/addr/src/addr.c index 0209dd3538f..2bc604de8c0 100644 --- a/xlators/protocol/auth/addr/src/addr.c +++ b/xlators/protocol/auth/addr/src/addr.c @@ -226,14 +226,14 @@ out:  struct volume_options options[] = {          { .key   = {"auth.addr.*.allow"}, -          .type  = GF_OPTION_TYPE_ANY +          .type  = GF_OPTION_TYPE_INTERNET_ADDRESS_LIST          },          { .key   = {"auth.addr.*.reject"}, -          .type  = GF_OPTION_TYPE_ANY +          .type  = GF_OPTION_TYPE_INTERNET_ADDRESS_LIST          },          /* Backword compatibility */          { .key   = {"auth.ip.*.allow"}, -          .type  = GF_OPTION_TYPE_ANY +          .type  = GF_OPTION_TYPE_INTERNET_ADDRESS_LIST          },          { .key = {NULL} }  }; diff --git a/xlators/protocol/server/src/server.c b/xlators/protocol/server/src/server.c index f87e371f1bb..33889fd9b15 100644 --- a/xlators/protocol/server/src/server.c +++ b/xlators/protocol/server/src/server.c @@ -558,9 +558,8 @@ validate_auth_options (xlator_t *this, dict_t *dict)                                  while (addr) { -                                        if (valid_internet_address (addr) || -                                        valid_wildcard_internet_address (addr)) -                                        { +                                        if (valid_internet_address +                                                        (addr, _gf_true)) {                                                  error = 0;                                          } else {                                                  error = -1; @@ -1140,5 +1139,16 @@ struct volume_options options[] = {           .min  = GF_MIN_SOCKET_WINDOW_SIZE,           .max  = GF_MAX_SOCKET_WINDOW_SIZE          }, + +        /*  The following two options are defined in addr.c, redifined here * +         * for the sake of validation during volume set from cli            */ + +        { .key   = {"auth.addr.*.allow"}, +          .type  = GF_OPTION_TYPE_INTERNET_ADDRESS_LIST +        }, +        { .key   = {"auth.addr.*.reject"}, +          .type  = GF_OPTION_TYPE_INTERNET_ADDRESS_LIST +        }, +          { .key   = {NULL} },  };  | 
