Better error message const correctness. (#8348)
This commit is contained in:
parent
53cdf8a3d1
commit
3f3cb9d09b
10
src/acl.c
10
src/acl.c
@ -1024,8 +1024,8 @@ int ACLSetUser(user *u, const char *op, ssize_t oplen) {
|
|||||||
|
|
||||||
/* Return a description of the error that occurred in ACLSetUser() according to
|
/* Return a description of the error that occurred in ACLSetUser() according to
|
||||||
* the errno value set by the function on error. */
|
* the errno value set by the function on error. */
|
||||||
char *ACLSetUserStringError(void) {
|
const char *ACLSetUserStringError(void) {
|
||||||
char *errmsg = "Wrong format";
|
const char *errmsg = "Wrong format";
|
||||||
if (errno == ENOENT)
|
if (errno == ENOENT)
|
||||||
errmsg = "Unknown command or category name in ACL";
|
errmsg = "Unknown command or category name in ACL";
|
||||||
else if (errno == EINVAL)
|
else if (errno == EINVAL)
|
||||||
@ -1454,7 +1454,7 @@ int ACLLoadConfiguredUsers(void) {
|
|||||||
/* Load every rule defined for this user. */
|
/* Load every rule defined for this user. */
|
||||||
for (int j = 1; aclrules[j]; j++) {
|
for (int j = 1; aclrules[j]; j++) {
|
||||||
if (ACLSetUser(u,aclrules[j],sdslen(aclrules[j])) != C_OK) {
|
if (ACLSetUser(u,aclrules[j],sdslen(aclrules[j])) != C_OK) {
|
||||||
char *errmsg = ACLSetUserStringError();
|
const char *errmsg = ACLSetUserStringError();
|
||||||
serverLog(LL_WARNING,"Error loading ACL rule '%s' for "
|
serverLog(LL_WARNING,"Error loading ACL rule '%s' for "
|
||||||
"the user named '%s': %s",
|
"the user named '%s': %s",
|
||||||
aclrules[j],aclrules[0],errmsg);
|
aclrules[j],aclrules[0],errmsg);
|
||||||
@ -1587,7 +1587,7 @@ sds ACLLoadFromFile(const char *filename) {
|
|||||||
for (j = 2; j < argc; j++) {
|
for (j = 2; j < argc; j++) {
|
||||||
argv[j] = sdstrim(argv[j],"\t\r\n");
|
argv[j] = sdstrim(argv[j],"\t\r\n");
|
||||||
if (ACLSetUser(fakeuser,argv[j],sdslen(argv[j])) != C_OK) {
|
if (ACLSetUser(fakeuser,argv[j],sdslen(argv[j])) != C_OK) {
|
||||||
char *errmsg = ACLSetUserStringError();
|
const char *errmsg = ACLSetUserStringError();
|
||||||
errors = sdscatprintf(errors,
|
errors = sdscatprintf(errors,
|
||||||
"%s:%d: %s. ",
|
"%s:%d: %s. ",
|
||||||
server.acl_filename, linenum, errmsg);
|
server.acl_filename, linenum, errmsg);
|
||||||
@ -1908,7 +1908,7 @@ void aclCommand(client *c) {
|
|||||||
|
|
||||||
for (int j = 3; j < c->argc; j++) {
|
for (int j = 3; j < c->argc; j++) {
|
||||||
if (ACLSetUser(tempu,c->argv[j]->ptr,sdslen(c->argv[j]->ptr)) != C_OK) {
|
if (ACLSetUser(tempu,c->argv[j]->ptr,sdslen(c->argv[j]->ptr)) != C_OK) {
|
||||||
char *errmsg = ACLSetUserStringError();
|
const char *errmsg = ACLSetUserStringError();
|
||||||
addReplyErrorFormat(c,
|
addReplyErrorFormat(c,
|
||||||
"Error in ACL SETUSER modifier '%s': %s",
|
"Error in ACL SETUSER modifier '%s': %s",
|
||||||
(char*)c->argv[j]->ptr, errmsg);
|
(char*)c->argv[j]->ptr, errmsg);
|
||||||
|
74
src/config.c
74
src/config.c
@ -153,15 +153,15 @@ int configOOMScoreAdjValuesDefaults[CONFIG_OOM_COUNT] = { 0, 200, 800 };
|
|||||||
typedef struct boolConfigData {
|
typedef struct boolConfigData {
|
||||||
int *config; /* The pointer to the server config this value is stored in */
|
int *config; /* The pointer to the server config this value is stored in */
|
||||||
const int default_value; /* The default value of the config on rewrite */
|
const int default_value; /* The default value of the config on rewrite */
|
||||||
int (*is_valid_fn)(int val, char **err); /* Optional function to check validity of new value (generic doc above) */
|
int (*is_valid_fn)(int val, const char **err); /* Optional function to check validity of new value (generic doc above) */
|
||||||
int (*update_fn)(int val, int prev, char **err); /* Optional function to apply new value at runtime (generic doc above) */
|
int (*update_fn)(int val, int prev, const char **err); /* Optional function to apply new value at runtime (generic doc above) */
|
||||||
} boolConfigData;
|
} boolConfigData;
|
||||||
|
|
||||||
typedef struct stringConfigData {
|
typedef struct stringConfigData {
|
||||||
char **config; /* Pointer to the server config this value is stored in. */
|
char **config; /* Pointer to the server config this value is stored in. */
|
||||||
const char *default_value; /* Default value of the config on rewrite. */
|
const char *default_value; /* Default value of the config on rewrite. */
|
||||||
int (*is_valid_fn)(char* val, char **err); /* Optional function to check validity of new value (generic doc above) */
|
int (*is_valid_fn)(char* val, const char **err); /* Optional function to check validity of new value (generic doc above) */
|
||||||
int (*update_fn)(char* val, char* prev, char **err); /* Optional function to apply new value at runtime (generic doc above) */
|
int (*update_fn)(char* val, char* prev, const char **err); /* Optional function to apply new value at runtime (generic doc above) */
|
||||||
int convert_empty_to_null; /* Boolean indicating if empty strings should
|
int convert_empty_to_null; /* Boolean indicating if empty strings should
|
||||||
be stored as a NULL value. */
|
be stored as a NULL value. */
|
||||||
} stringConfigData;
|
} stringConfigData;
|
||||||
@ -169,8 +169,8 @@ typedef struct stringConfigData {
|
|||||||
typedef struct sdsConfigData {
|
typedef struct sdsConfigData {
|
||||||
sds *config; /* Pointer to the server config this value is stored in. */
|
sds *config; /* Pointer to the server config this value is stored in. */
|
||||||
const char *default_value; /* Default value of the config on rewrite. */
|
const char *default_value; /* Default value of the config on rewrite. */
|
||||||
int (*is_valid_fn)(sds val, char **err); /* Optional function to check validity of new value (generic doc above) */
|
int (*is_valid_fn)(sds val, const char **err); /* Optional function to check validity of new value (generic doc above) */
|
||||||
int (*update_fn)(sds val, sds prev, char **err); /* Optional function to apply new value at runtime (generic doc above) */
|
int (*update_fn)(sds val, sds prev, const char **err); /* Optional function to apply new value at runtime (generic doc above) */
|
||||||
int convert_empty_to_null; /* Boolean indicating if empty SDS strings should
|
int convert_empty_to_null; /* Boolean indicating if empty SDS strings should
|
||||||
be stored as a NULL value. */
|
be stored as a NULL value. */
|
||||||
} sdsConfigData;
|
} sdsConfigData;
|
||||||
@ -179,8 +179,8 @@ typedef struct enumConfigData {
|
|||||||
int *config; /* The pointer to the server config this value is stored in */
|
int *config; /* The pointer to the server config this value is stored in */
|
||||||
configEnum *enum_value; /* The underlying enum type this data represents */
|
configEnum *enum_value; /* The underlying enum type this data represents */
|
||||||
const int default_value; /* The default value of the config on rewrite */
|
const int default_value; /* The default value of the config on rewrite */
|
||||||
int (*is_valid_fn)(int val, char **err); /* Optional function to check validity of new value (generic doc above) */
|
int (*is_valid_fn)(int val, const char **err); /* Optional function to check validity of new value (generic doc above) */
|
||||||
int (*update_fn)(int val, int prev, char **err); /* Optional function to apply new value at runtime (generic doc above) */
|
int (*update_fn)(int val, int prev, const char **err); /* Optional function to apply new value at runtime (generic doc above) */
|
||||||
} enumConfigData;
|
} enumConfigData;
|
||||||
|
|
||||||
typedef enum numericType {
|
typedef enum numericType {
|
||||||
@ -214,8 +214,8 @@ typedef struct numericConfigData {
|
|||||||
long long lower_bound; /* The lower bound of this numeric value */
|
long long lower_bound; /* The lower bound of this numeric value */
|
||||||
long long upper_bound; /* The upper bound of this numeric value */
|
long long upper_bound; /* The upper bound of this numeric value */
|
||||||
const long long default_value; /* The default value of the config on rewrite */
|
const long long default_value; /* The default value of the config on rewrite */
|
||||||
int (*is_valid_fn)(long long val, char **err); /* Optional function to check validity of new value (generic doc above) */
|
int (*is_valid_fn)(long long val, const char **err); /* Optional function to check validity of new value (generic doc above) */
|
||||||
int (*update_fn)(long long val, long long prev, char **err); /* Optional function to apply new value at runtime (generic doc above) */
|
int (*update_fn)(long long val, long long prev, const char **err); /* Optional function to apply new value at runtime (generic doc above) */
|
||||||
} numericConfigData;
|
} numericConfigData;
|
||||||
|
|
||||||
typedef union typeData {
|
typedef union typeData {
|
||||||
@ -230,10 +230,10 @@ typedef struct typeInterface {
|
|||||||
/* Called on server start, to init the server with default value */
|
/* Called on server start, to init the server with default value */
|
||||||
void (*init)(typeData data);
|
void (*init)(typeData data);
|
||||||
/* Called on server start, should return 1 on success, 0 on error and should set err */
|
/* Called on server start, should return 1 on success, 0 on error and should set err */
|
||||||
int (*load)(typeData data, sds *argc, int argv, char **err);
|
int (*load)(typeData data, sds *argc, int argv, const char **err);
|
||||||
/* Called on server startup and CONFIG SET, returns 1 on success, 0 on error
|
/* Called on server startup and CONFIG SET, returns 1 on success, 0 on error
|
||||||
* and can set a verbose err string, update is true when called from CONFIG SET */
|
* and can set a verbose err string, update is true when called from CONFIG SET */
|
||||||
int (*set)(typeData data, sds value, int update, char **err);
|
int (*set)(typeData data, sds value, int update, const char **err);
|
||||||
/* Called on CONFIG GET, required to add output to the client */
|
/* Called on CONFIG GET, required to add output to the client */
|
||||||
void (*get)(client *c, typeData data);
|
void (*get)(client *c, typeData data);
|
||||||
/* Called on CONFIG REWRITE, required to rewrite the config state */
|
/* Called on CONFIG REWRITE, required to rewrite the config state */
|
||||||
@ -325,7 +325,7 @@ void queueLoadModule(sds path, sds *argv, int argc) {
|
|||||||
* server.oom_score_adj_values if valid.
|
* server.oom_score_adj_values if valid.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
static int updateOOMScoreAdjValues(sds *args, char **err, int apply) {
|
static int updateOOMScoreAdjValues(sds *args, const char **err, int apply) {
|
||||||
int i;
|
int i;
|
||||||
int values[CONFIG_OOM_COUNT];
|
int values[CONFIG_OOM_COUNT];
|
||||||
|
|
||||||
@ -385,7 +385,7 @@ void initConfigValues() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void loadServerConfigFromString(char *config) {
|
void loadServerConfigFromString(char *config) {
|
||||||
char *err = NULL;
|
const char *err = NULL;
|
||||||
int linenum = 0, totlines, i;
|
int linenum = 0, totlines, i;
|
||||||
int slaveof_linenum = 0;
|
int slaveof_linenum = 0;
|
||||||
sds *lines;
|
sds *lines;
|
||||||
@ -608,7 +608,7 @@ void loadServerConfigFromString(char *config) {
|
|||||||
int argc_err;
|
int argc_err;
|
||||||
if (ACLAppendUserForLoading(argv,argc,&argc_err) == C_ERR) {
|
if (ACLAppendUserForLoading(argv,argc,&argc_err) == C_ERR) {
|
||||||
char buf[1024];
|
char buf[1024];
|
||||||
char *errmsg = ACLSetUserStringError();
|
const char *errmsg = ACLSetUserStringError();
|
||||||
snprintf(buf,sizeof(buf),"Error in user declaration '%s': %s",
|
snprintf(buf,sizeof(buf),"Error in user declaration '%s': %s",
|
||||||
argv[argc_err],errmsg);
|
argv[argc_err],errmsg);
|
||||||
err = buf;
|
err = buf;
|
||||||
@ -730,7 +730,7 @@ void configSetCommand(client *c) {
|
|||||||
robj *o;
|
robj *o;
|
||||||
long long ll;
|
long long ll;
|
||||||
int err;
|
int err;
|
||||||
char *errstr = NULL;
|
const char *errstr = NULL;
|
||||||
serverAssertWithInfo(c,c->argv[2],sdsEncodedObject(c->argv[2]));
|
serverAssertWithInfo(c,c->argv[2],sdsEncodedObject(c->argv[2]));
|
||||||
serverAssertWithInfo(c,c->argv[3],sdsEncodedObject(c->argv[3]));
|
serverAssertWithInfo(c,c->argv[3],sdsEncodedObject(c->argv[3]));
|
||||||
o = c->argv[3];
|
o = c->argv[3];
|
||||||
@ -1795,7 +1795,7 @@ static void boolConfigInit(typeData data) {
|
|||||||
*data.yesno.config = data.yesno.default_value;
|
*data.yesno.config = data.yesno.default_value;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int boolConfigSet(typeData data, sds value, int update, char **err) {
|
static int boolConfigSet(typeData data, sds value, int update, const char **err) {
|
||||||
int yn = yesnotoi(value);
|
int yn = yesnotoi(value);
|
||||||
if (yn == -1) {
|
if (yn == -1) {
|
||||||
*err = "argument must be 'yes' or 'no'";
|
*err = "argument must be 'yes' or 'no'";
|
||||||
@ -1836,7 +1836,7 @@ static void stringConfigInit(typeData data) {
|
|||||||
*data.string.config = (data.string.convert_empty_to_null && !data.string.default_value) ? NULL : zstrdup(data.string.default_value);
|
*data.string.config = (data.string.convert_empty_to_null && !data.string.default_value) ? NULL : zstrdup(data.string.default_value);
|
||||||
}
|
}
|
||||||
|
|
||||||
static int stringConfigSet(typeData data, sds value, int update, char **err) {
|
static int stringConfigSet(typeData data, sds value, int update, const char **err) {
|
||||||
if (data.string.is_valid_fn && !data.string.is_valid_fn(value, err))
|
if (data.string.is_valid_fn && !data.string.is_valid_fn(value, err))
|
||||||
return 0;
|
return 0;
|
||||||
char *prev = *data.string.config;
|
char *prev = *data.string.config;
|
||||||
@ -1863,7 +1863,7 @@ static void sdsConfigInit(typeData data) {
|
|||||||
*data.sds.config = (data.sds.convert_empty_to_null && !data.sds.default_value) ? NULL: sdsnew(data.sds.default_value);
|
*data.sds.config = (data.sds.convert_empty_to_null && !data.sds.default_value) ? NULL: sdsnew(data.sds.default_value);
|
||||||
}
|
}
|
||||||
|
|
||||||
static int sdsConfigSet(typeData data, sds value, int update, char **err) {
|
static int sdsConfigSet(typeData data, sds value, int update, const char **err) {
|
||||||
if (data.sds.is_valid_fn && !data.sds.is_valid_fn(value, err))
|
if (data.sds.is_valid_fn && !data.sds.is_valid_fn(value, err))
|
||||||
return 0;
|
return 0;
|
||||||
sds prev = *data.sds.config;
|
sds prev = *data.sds.config;
|
||||||
@ -1922,7 +1922,7 @@ static void enumConfigInit(typeData data) {
|
|||||||
*data.enumd.config = data.enumd.default_value;
|
*data.enumd.config = data.enumd.default_value;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int enumConfigSet(typeData data, sds value, int update, char **err) {
|
static int enumConfigSet(typeData data, sds value, int update, const char **err) {
|
||||||
int enumval = configEnumGetValue(data.enumd.enum_value, value);
|
int enumval = configEnumGetValue(data.enumd.enum_value, value);
|
||||||
if (enumval == INT_MIN) {
|
if (enumval == INT_MIN) {
|
||||||
sds enumerr = sdsnew("argument must be one of the following: ");
|
sds enumerr = sdsnew("argument must be one of the following: ");
|
||||||
@ -2028,7 +2028,7 @@ static void numericConfigInit(typeData data) {
|
|||||||
SET_NUMERIC_TYPE(data.numeric.default_value)
|
SET_NUMERIC_TYPE(data.numeric.default_value)
|
||||||
}
|
}
|
||||||
|
|
||||||
static int numericBoundaryCheck(typeData data, long long ll, char **err) {
|
static int numericBoundaryCheck(typeData data, long long ll, const char **err) {
|
||||||
if (data.numeric.numeric_type == NUMERIC_TYPE_ULONG_LONG ||
|
if (data.numeric.numeric_type == NUMERIC_TYPE_ULONG_LONG ||
|
||||||
data.numeric.numeric_type == NUMERIC_TYPE_UINT ||
|
data.numeric.numeric_type == NUMERIC_TYPE_UINT ||
|
||||||
data.numeric.numeric_type == NUMERIC_TYPE_SIZE_T) {
|
data.numeric.numeric_type == NUMERIC_TYPE_SIZE_T) {
|
||||||
@ -2058,7 +2058,7 @@ static int numericBoundaryCheck(typeData data, long long ll, char **err) {
|
|||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int numericConfigSet(typeData data, sds value, int update, char **err) {
|
static int numericConfigSet(typeData data, sds value, int update, const char **err) {
|
||||||
long long ll, prev = 0;
|
long long ll, prev = 0;
|
||||||
if (data.numeric.is_memory) {
|
if (data.numeric.is_memory) {
|
||||||
int memerr;
|
int memerr;
|
||||||
@ -2196,7 +2196,7 @@ static void numericConfigRewrite(typeData data, const char *name, struct rewrite
|
|||||||
} \
|
} \
|
||||||
}
|
}
|
||||||
|
|
||||||
static int isValidActiveDefrag(int val, char **err) {
|
static int isValidActiveDefrag(int val, const char **err) {
|
||||||
#ifndef HAVE_DEFRAG
|
#ifndef HAVE_DEFRAG
|
||||||
if (val) {
|
if (val) {
|
||||||
*err = "Active defragmentation cannot be enabled: it "
|
*err = "Active defragmentation cannot be enabled: it "
|
||||||
@ -2212,7 +2212,7 @@ static int isValidActiveDefrag(int val, char **err) {
|
|||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int isValidDBfilename(char *val, char **err) {
|
static int isValidDBfilename(char *val, const char **err) {
|
||||||
if (!pathIsBaseName(val)) {
|
if (!pathIsBaseName(val)) {
|
||||||
*err = "dbfilename can't be a path, just a filename";
|
*err = "dbfilename can't be a path, just a filename";
|
||||||
return 0;
|
return 0;
|
||||||
@ -2220,7 +2220,7 @@ static int isValidDBfilename(char *val, char **err) {
|
|||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int isValidAOFfilename(char *val, char **err) {
|
static int isValidAOFfilename(char *val, const char **err) {
|
||||||
if (!pathIsBaseName(val)) {
|
if (!pathIsBaseName(val)) {
|
||||||
*err = "appendfilename can't be a path, just a filename";
|
*err = "appendfilename can't be a path, just a filename";
|
||||||
return 0;
|
return 0;
|
||||||
@ -2228,7 +2228,7 @@ static int isValidAOFfilename(char *val, char **err) {
|
|||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int updateHZ(long long val, long long prev, char **err) {
|
static int updateHZ(long long val, long long prev, const char **err) {
|
||||||
UNUSED(prev);
|
UNUSED(prev);
|
||||||
UNUSED(err);
|
UNUSED(err);
|
||||||
/* Hz is more a hint from the user, so we accept values out of range
|
/* Hz is more a hint from the user, so we accept values out of range
|
||||||
@ -2240,14 +2240,14 @@ static int updateHZ(long long val, long long prev, char **err) {
|
|||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int updateJemallocBgThread(int val, int prev, char **err) {
|
static int updateJemallocBgThread(int val, int prev, const char **err) {
|
||||||
UNUSED(prev);
|
UNUSED(prev);
|
||||||
UNUSED(err);
|
UNUSED(err);
|
||||||
set_jemalloc_bg_thread(val);
|
set_jemalloc_bg_thread(val);
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int updateReplBacklogSize(long long val, long long prev, char **err) {
|
static int updateReplBacklogSize(long long val, long long prev, const char **err) {
|
||||||
/* resizeReplicationBacklog sets server.repl_backlog_size, and relies on
|
/* resizeReplicationBacklog sets server.repl_backlog_size, and relies on
|
||||||
* being able to tell when the size changes, so restore prev before calling it. */
|
* being able to tell when the size changes, so restore prev before calling it. */
|
||||||
UNUSED(err);
|
UNUSED(err);
|
||||||
@ -2256,7 +2256,7 @@ static int updateReplBacklogSize(long long val, long long prev, char **err) {
|
|||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int updateMaxmemory(long long val, long long prev, char **err) {
|
static int updateMaxmemory(long long val, long long prev, const char **err) {
|
||||||
UNUSED(prev);
|
UNUSED(prev);
|
||||||
UNUSED(err);
|
UNUSED(err);
|
||||||
if (val) {
|
if (val) {
|
||||||
@ -2269,7 +2269,7 @@ static int updateMaxmemory(long long val, long long prev, char **err) {
|
|||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int updateGoodSlaves(long long val, long long prev, char **err) {
|
static int updateGoodSlaves(long long val, long long prev, const char **err) {
|
||||||
UNUSED(val);
|
UNUSED(val);
|
||||||
UNUSED(prev);
|
UNUSED(prev);
|
||||||
UNUSED(err);
|
UNUSED(err);
|
||||||
@ -2277,7 +2277,7 @@ static int updateGoodSlaves(long long val, long long prev, char **err) {
|
|||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int updateAppendonly(int val, int prev, char **err) {
|
static int updateAppendonly(int val, int prev, const char **err) {
|
||||||
UNUSED(prev);
|
UNUSED(prev);
|
||||||
if (val == 0 && server.aof_state != AOF_OFF) {
|
if (val == 0 && server.aof_state != AOF_OFF) {
|
||||||
stopAppendOnly();
|
stopAppendOnly();
|
||||||
@ -2290,7 +2290,7 @@ static int updateAppendonly(int val, int prev, char **err) {
|
|||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int updateSighandlerEnabled(int val, int prev, char **err) {
|
static int updateSighandlerEnabled(int val, int prev, const char **err) {
|
||||||
UNUSED(err);
|
UNUSED(err);
|
||||||
UNUSED(prev);
|
UNUSED(prev);
|
||||||
if (val)
|
if (val)
|
||||||
@ -2300,7 +2300,7 @@ static int updateSighandlerEnabled(int val, int prev, char **err) {
|
|||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int updateMaxclients(long long val, long long prev, char **err) {
|
static int updateMaxclients(long long val, long long prev, const char **err) {
|
||||||
/* Try to check if the OS is capable of supporting so many FDs. */
|
/* Try to check if the OS is capable of supporting so many FDs. */
|
||||||
if (val > prev) {
|
if (val > prev) {
|
||||||
adjustOpenFilesLimit();
|
adjustOpenFilesLimit();
|
||||||
@ -2328,7 +2328,7 @@ static int updateMaxclients(long long val, long long prev, char **err) {
|
|||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int updateOOMScoreAdj(int val, int prev, char **err) {
|
static int updateOOMScoreAdj(int val, int prev, const char **err) {
|
||||||
UNUSED(prev);
|
UNUSED(prev);
|
||||||
|
|
||||||
if (val) {
|
if (val) {
|
||||||
@ -2342,7 +2342,7 @@ static int updateOOMScoreAdj(int val, int prev, char **err) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
#ifdef USE_OPENSSL
|
#ifdef USE_OPENSSL
|
||||||
static int updateTlsCfg(char *val, char *prev, char **err) {
|
static int updateTlsCfg(char *val, char *prev, const char **err) {
|
||||||
UNUSED(val);
|
UNUSED(val);
|
||||||
UNUSED(prev);
|
UNUSED(prev);
|
||||||
UNUSED(err);
|
UNUSED(err);
|
||||||
@ -2355,13 +2355,13 @@ static int updateTlsCfg(char *val, char *prev, char **err) {
|
|||||||
}
|
}
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
static int updateTlsCfgBool(int val, int prev, char **err) {
|
static int updateTlsCfgBool(int val, int prev, const char **err) {
|
||||||
UNUSED(val);
|
UNUSED(val);
|
||||||
UNUSED(prev);
|
UNUSED(prev);
|
||||||
return updateTlsCfg(NULL, NULL, err);
|
return updateTlsCfg(NULL, NULL, err);
|
||||||
}
|
}
|
||||||
|
|
||||||
static int updateTlsCfgInt(long long val, long long prev, char **err) {
|
static int updateTlsCfgInt(long long val, long long prev, const char **err) {
|
||||||
UNUSED(val);
|
UNUSED(val);
|
||||||
UNUSED(prev);
|
UNUSED(prev);
|
||||||
return updateTlsCfg(NULL, NULL, err);
|
return updateTlsCfg(NULL, NULL, err);
|
||||||
|
@ -1645,7 +1645,7 @@ char *sentinelInstanceMapCommand(sentinelRedisInstance *ri, char *command) {
|
|||||||
|
|
||||||
/* Generalise handling create instance error. Use SRI_MASTER, SRI_SLAVE or
|
/* Generalise handling create instance error. Use SRI_MASTER, SRI_SLAVE or
|
||||||
* SRI_SENTINEL as a role value. */
|
* SRI_SENTINEL as a role value. */
|
||||||
char *sentinelCheckCreateInstanceErrors(int role) {
|
const char *sentinelCheckCreateInstanceErrors(int role) {
|
||||||
switch(errno) {
|
switch(errno) {
|
||||||
case EBUSY:
|
case EBUSY:
|
||||||
switch (role) {
|
switch (role) {
|
||||||
@ -1669,7 +1669,7 @@ char *sentinelCheckCreateInstanceErrors(int role) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
char *sentinelHandleConfiguration(char **argv, int argc) {
|
const char *sentinelHandleConfiguration(char **argv, int argc) {
|
||||||
sentinelRedisInstance *ri;
|
sentinelRedisInstance *ri;
|
||||||
|
|
||||||
if (!strcasecmp(argv[0],"monitor") && argc == 5) {
|
if (!strcasecmp(argv[0],"monitor") && argc == 5) {
|
||||||
|
@ -2044,7 +2044,7 @@ int ACLSetUser(user *u, const char *op, ssize_t oplen);
|
|||||||
sds ACLDefaultUserFirstPassword(void);
|
sds ACLDefaultUserFirstPassword(void);
|
||||||
uint64_t ACLGetCommandCategoryFlagByName(const char *name);
|
uint64_t ACLGetCommandCategoryFlagByName(const char *name);
|
||||||
int ACLAppendUserForLoading(sds *argv, int argc, int *argc_err);
|
int ACLAppendUserForLoading(sds *argv, int argc, int *argc_err);
|
||||||
char *ACLSetUserStringError(void);
|
const char *ACLSetUserStringError(void);
|
||||||
int ACLLoadConfiguredUsers(void);
|
int ACLLoadConfiguredUsers(void);
|
||||||
sds ACLDescribeUser(user *u);
|
sds ACLDescribeUser(user *u);
|
||||||
void ACLLoadUsersAtStartup(void);
|
void ACLLoadUsersAtStartup(void);
|
||||||
@ -2332,7 +2332,7 @@ int clusterSendModuleMessageToTarget(const char *target, uint64_t module_id, uin
|
|||||||
void initSentinelConfig(void);
|
void initSentinelConfig(void);
|
||||||
void initSentinel(void);
|
void initSentinel(void);
|
||||||
void sentinelTimer(void);
|
void sentinelTimer(void);
|
||||||
char *sentinelHandleConfiguration(char **argv, int argc);
|
const char *sentinelHandleConfiguration(char **argv, int argc);
|
||||||
void sentinelIsRunning(void);
|
void sentinelIsRunning(void);
|
||||||
|
|
||||||
/* redis-check-rdb & aof */
|
/* redis-check-rdb & aof */
|
||||||
|
Loading…
x
Reference in New Issue
Block a user