]> git.ipfire.org Git - thirdparty/suricata.git/commitdiff
logopenfile: errno style error handling
authorVictor Julien <vjulien@oisf.net>
Mon, 24 Oct 2022 11:05:47 +0000 (13:05 +0200)
committerVictor Julien <vjulien@oisf.net>
Tue, 20 Dec 2022 07:51:33 +0000 (08:51 +0100)
src/util-logopenfile.c

index 81da79b828330930c5c91ff68abb472814b41566..0b8f9b4e6e2c51a988c0affd53279cd392a17a55 100644 (file)
@@ -719,6 +719,8 @@ LogFileCtx *LogFileEnsureExists(LogFileCtx *parent_ctx, int thread_id)
 static bool LogFileThreadedName(
         const char *original_name, char *threaded_name, size_t len, uint32_t unique_id)
 {
+    sc_errno = SC_OK;
+
     if (strcmp("/dev/null", original_name) == 0) {
         strlcpy(threaded_name, original_name, len);
         return true;
@@ -737,6 +739,7 @@ static bool LogFileThreadedName(
     if (dot) {
         char *tname = SCStrdup(original_name);
         if (!tname) {
+            sc_errno = SC_ENOMEM;
             return false;
         }
 
@@ -780,7 +783,7 @@ static bool LogFileNewThreadedCtx(LogFileCtx *parent_ctx, const char *log_path,
     if (parent_ctx->type == LOGFILE_TYPE_FILE) {
         char fname[LOGFILE_NAME_MAX];
         if (!LogFileThreadedName(log_path, fname, sizeof(fname), SC_ATOMIC_ADD(eve_file_id, 1))) {
-            SCLogError(SC_ERR_MEM_ALLOC, "Unable to create threaded filename for log");
+            SCLogError(sc_errno, "Unable to create threaded filename for log");
             goto error;
         }
         SCLogDebug("Thread open -- using name %s [replaces %s]", fname, log_path);