break;
                }
 
-               command_print(cmd_ctx, "%d", len - pos);
+               command_print(cmd_ctx, "%zu", len - pos);
 
                pos += chunk;
 
        int fd1, fd2;
        ssize_t done, wrote;
 
-       fd1 = open(name1, O_WRONLY | O_CREAT);
+       fd1 = open(name1, O_WRONLY | O_CREAT, 0664);
        if (fd1 < 0)
                SHOW_RESULT( open, fd1 );
 
 
                        return ret;
                }
 
-               LOG_DEBUG("Serving %s length=%u", url, len);
+               LOG_DEBUG("Serving %s length=%zu", url, len);
                /* serve file directly */
                response = MHD_create_response_from_data(len, data, MHD_YES, MHD_NO);
                MHD_add_response_header(response, "Content-Type", "image/png");