afb-daemon: Add /tmp has fallback for uploads 76/21376/2 7.99.1 halibut/7.99.1 halibut_7.99.1
authorJosé Bollo <jose.bollo@iot.bzh>
Thu, 23 May 2019 08:21:43 +0000 (10:21 +0200)
committerJosé Bollo <jose.bollo@iot.bzh>
Wed, 29 May 2019 08:59:58 +0000 (08:59 +0000)
During its start, when implementing HTTP server,
afb-daemon checked that the upload directory was
accessible and writable and afb-daemon refused to
start when it was not the case.

When trying to use systemd's DynamicUser for platform
services, it had the effect to forbid service to run.

That commit add the directory /tmp as a fallback
upload directory.

Bug-AGL: SPEC-2446

Signed-off-by: José Bollo <jose.bollo@iot.bzh>
Change-Id: Ib4ee456d71cb1aefa19e8eed6774ef5f77919366

src/main-afb-daemon.c

index d825d80..cc07e86 100644 (file)
@@ -358,8 +358,12 @@ static struct afb_hsrv *start_http_server()
        }
 
        if (afb_hreq_init_download_path(uploaddir)) {
-               ERROR("unable to set the upload directory %s", uploaddir);
-               return NULL;
+               static const char fallback_uploaddir[] = "/tmp";
+               WARNING("unable to set the upload directory %s", uploaddir);
+               if (afb_hreq_init_download_path(fallback_uploaddir)) {
+                       ERROR("unable to fallback to upload directory %s", fallback_uploaddir);
+                       return NULL;
+               }
        }
 
        hsrv = afb_hsrv_create();