[tarantool-patches] [PATCH 2/2] Added strdup fail checks in say
Olga Arkhangelskaia
arkholga at tarantool.org
Tue Jul 17 18:15:21 MSK 2018
Strdup may silently fail without any message from tarantool.
Patch adds this checks.
v2:
there is no v1 for this changes
---
src/say.c | 15 +++++++++++++--
1 file changed, 13 insertions(+), 2 deletions(-)
diff --git a/src/say.c b/src/say.c
index 501095b3e..d824e778b 100644
--- a/src/say.c
+++ b/src/say.c
@@ -498,10 +498,21 @@ log_syslog_init(struct log *log, const char *init_str)
if (say_parse_syslog_opts(init_str, &opts) < 0)
return -1;
- if (opts.identity == NULL)
+ if (opts.identity == NULL) {
log->syslog_ident = strdup("tarantool");
- else
+ if (log->syslog_ident == NULL) {
+ diag_set(OutOfMemory, strlen("tarantool"), "malloc",
+ "log->syslog_ident");
+ return -1;
+ }
+ } else {
log->syslog_ident = strdup(opts.identity);
+ if (log->syslog_ident == NULL) {
+ diag_set(OutOfMemory, strlen(opts.identity), "malloc",
+ "log->syslog_ident");
+ return -1;
+ }
+ }
if (opts.facility == syslog_facility_MAX)
log->syslog_facility = SYSLOG_LOCAL7;
--
2.14.3 (Apple Git-98)
More information about the Tarantool-patches
mailing list