mirror of
https://git.proxmox.com/git/mirror_lxc
synced 2025-08-15 04:09:46 +00:00
log.c: always use dir when lxcpath is not default
Signed-off-by: Dwight Engen <dwight.engen@oracle.com> Signed-off-by: Serge Hallyn <serge.hallyn@ubuntu.com>
This commit is contained in:
parent
b338c81b9f
commit
ee25a44fd3
@ -187,31 +187,41 @@ static int log_open(const char *name)
|
|||||||
static char *build_log_path(const char *name, const char *lxcpath)
|
static char *build_log_path(const char *name, const char *lxcpath)
|
||||||
{
|
{
|
||||||
char *p;
|
char *p;
|
||||||
int len, ret;
|
int len, ret, use_dir;
|
||||||
|
|
||||||
|
#if USE_CONFIGPATH_LOGS
|
||||||
|
use_dir = 1;
|
||||||
|
#else
|
||||||
|
use_dir = 0;
|
||||||
|
#endif
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* If USE_CONFIGPATH_LOGS is true the resulting path will be:
|
* If USE_CONFIGPATH_LOGS is true or lxcpath is given, the resulting
|
||||||
|
* path will be:
|
||||||
* '$logpath' + '/' + '$name' + '/' + '$name' + '.log' + '\0'
|
* '$logpath' + '/' + '$name' + '/' + '$name' + '.log' + '\0'
|
||||||
*
|
*
|
||||||
* If USE_CONFIGPATH_LOGS is false the resulting path will be:
|
* If USE_CONFIGPATH_LOGS is false the resulting path will be:
|
||||||
* '$logpath' + '/' + '$name' + '.log' + '\0'
|
* '$logpath' + '/' + '$name' + '.log' + '\0'
|
||||||
*/
|
*/
|
||||||
len = strlen(name) + 6; /* 6 == '/' + '.log' + '\0' */
|
len = strlen(name) + 6; /* 6 == '/' + '.log' + '\0' */
|
||||||
if (!lxcpath)
|
if (lxcpath)
|
||||||
|
use_dir = 1;
|
||||||
|
else
|
||||||
lxcpath = LOGPATH;
|
lxcpath = LOGPATH;
|
||||||
#if USE_CONFIGPATH_LOGS
|
|
||||||
len += strlen(lxcpath) + 1 + strlen(name) + 1; /* add "/$container_name/" */
|
if (use_dir)
|
||||||
#else
|
len += strlen(lxcpath) + 1 + strlen(name) + 1; /* add "/$container_name/" */
|
||||||
len += strlen(lxcpath) + 1;
|
else
|
||||||
#endif
|
len += strlen(lxcpath) + 1;
|
||||||
p = malloc(len);
|
p = malloc(len);
|
||||||
if (!p)
|
if (!p)
|
||||||
return p;
|
return p;
|
||||||
#if USE_CONFIGPATH_LOGS
|
|
||||||
ret = snprintf(p, len, "%s/%s/%s.log", lxcpath, name, name);
|
if (use_dir)
|
||||||
#else
|
ret = snprintf(p, len, "%s/%s/%s.log", lxcpath, name, name);
|
||||||
ret = snprintf(p, len, "%s/%s.log", lxcpath, name);
|
else
|
||||||
#endif
|
ret = snprintf(p, len, "%s/%s.log", lxcpath, name);
|
||||||
|
|
||||||
if (ret < 0 || ret >= len) {
|
if (ret < 0 || ret >= len) {
|
||||||
free(p);
|
free(p);
|
||||||
return NULL;
|
return NULL;
|
||||||
|
Loading…
Reference in New Issue
Block a user