]> git.ipfire.org Git - thirdparty/suricata.git/commitdiff
TLS: create certs directory during startup if it doesn't exist yet. Bug #710.
authorVictor Julien <victor@inliniac.net>
Tue, 9 Jul 2013 14:21:36 +0000 (16:21 +0200)
committerVictor Julien <victor@inliniac.net>
Tue, 9 Jul 2013 14:21:36 +0000 (16:21 +0200)
src/log-tlslog.c

index cbd3b2538b5b5286b93cb62a28136b40947b2a46..6565297549593411cf68e8fed88de5259eb922a5 100644 (file)
@@ -480,6 +480,25 @@ TmEcode LogTlsLogThreadInit(ThreadVars *t, void *initdata, void **data)
         return TM_ECODE_FAILED;
     }
 
+    struct stat stat_buf;
+    if (stat(tls_logfile_base_dir, &stat_buf) != 0) {
+        int ret;
+        ret = mkdir(tls_logfile_base_dir, S_IRWXU|S_IXGRP|S_IRGRP);
+        if (ret != 0) {
+            int err = errno;
+            if (err != EEXIST) {
+                SCLogError(SC_ERR_LOGDIR_CONFIG,
+                        "Cannot create certs drop directory %s: %s",
+                        tls_logfile_base_dir, strerror(err));
+                exit(EXIT_FAILURE);
+            }
+        } else {
+            SCLogInfo("Created certs drop directory %s",
+                    tls_logfile_base_dir);
+        }
+
+    }
+
     aft->buffer = MemBufferCreateNew(OUTPUT_BUFFER_SIZE);
     if (aft->buffer == NULL) {
         SCFree(aft);