Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
ruanhaishen
redis
Commits
1d4ea00d
Commit
1d4ea00d
authored
Jan 14, 2020
by
Ponnuvel Palaniyappan
Browse files
Fix a potential overflow with strncpy
parent
2d7dc71b
Changes
1
Hide whitespace changes
Inline
Side-by-side
src/config.c
View file @
1d4ea00d
...
...
@@ -108,12 +108,12 @@ clientBufferLimitsConfig clientBufferLimitsDefaults[CLIENT_TYPE_OBUF_COUNT] = {
/* Generic config infrastructure function pointers
* int is_valid_fn(val, err)
* Return 1 when val is valid, and 0 when invalid.
* Option
s
lly set err to a static error string.
* Option
a
lly set err to a static error string.
* int update_fn(val, prev, err)
* This function is called only for CONFIG SET command (not at config file parsing)
* It is called after the actual config is applied,
* Return 1 for success, and 0 for failure.
* Option
s
lly set err to a static error string.
* Option
a
lly set err to a static error string.
* On failure the config change will be reverted.
*/
...
...
@@ -720,7 +720,7 @@ void configSetCommand(client *c) {
* config_set_memory_field(name,var) */
}
config_set_memory_field
(
"client-query-buffer-limit"
,
server
.
client_max_querybuf_len
)
{
/* Everyhing else is an error... */
/* Every
t
hing else is an error... */
}
config_set_else
{
addReplyErrorFormat
(
c
,
"Unsupported CONFIG parameter: %s"
,
(
char
*
)
c
->
argv
[
2
]
->
ptr
);
...
...
@@ -1699,9 +1699,9 @@ static int configEnumLoad(typeData data, sds *argv, int argc, char **err) {
enumerr
[
sdslen
(
enumerr
)
-
2
]
=
'\0'
;
/* Make sure we don't overrun the fixed buffer */
enumerr
[
LOADBUF_SIZE
-
1
]
=
'\0'
;
strncpy
(
loadbuf
,
enumerr
,
LOADBUF_SIZE
);
/* strncpy does not if null terminate if source string length is >= destination buffer. */
loadbuf
[
LOADBUF_SIZE
-
1
]
=
'\0'
;
sdsfree
(
enumerr
);
*
err
=
loadbuf
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment