mirror of
https://github.com/signalwire/freeswitch.git
synced 2025-03-15 13:14:03 +00:00
FS-7214: [mod_memchace] fix seg caused by bad command argument bounds checking for flush and deleete
This commit is contained in:
parent
b2c6d70cc8
commit
dc071a1345
@ -357,7 +357,7 @@ SWITCH_STANDARD_API(memcache_function)
|
|||||||
} else if (!strcasecmp(subcmd, "delete") && argc > 1) {
|
} else if (!strcasecmp(subcmd, "delete") && argc > 1) {
|
||||||
key = argv[1];
|
key = argv[1];
|
||||||
if (argc > 2) {
|
if (argc > 2) {
|
||||||
expires_str = argv[3];
|
expires_str = argv[2];
|
||||||
expires = (time_t) strtol(expires_str, NULL, 10);
|
expires = (time_t) strtol(expires_str, NULL, 10);
|
||||||
}
|
}
|
||||||
rc = memcached_delete(memcached, key, strlen(key), expires);
|
rc = memcached_delete(memcached, key, strlen(key), expires);
|
||||||
@ -368,7 +368,7 @@ SWITCH_STANDARD_API(memcache_function)
|
|||||||
}
|
}
|
||||||
} else if (!strcasecmp(subcmd, "flush")) {
|
} else if (!strcasecmp(subcmd, "flush")) {
|
||||||
if (argc > 1) {
|
if (argc > 1) {
|
||||||
expires_str = argv[3];
|
expires_str = argv[1];
|
||||||
expires = (time_t) strtol(expires_str, NULL, 10);
|
expires = (time_t) strtol(expires_str, NULL, 10);
|
||||||
}
|
}
|
||||||
rc = memcached_flush(memcached, expires);
|
rc = memcached_flush(memcached, expires);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user