cmogstored 1.8.1 - use default system stack size
[cmogstored.git] / canonpath.c
blob77c056f1b59fd532827ca028704e325ebb9ae05f
1 /*
2 * Copyright (C) 2012-2020 all contributors <cmogstored-public@yhbt.net>
3 * License: GPL-3.0+ <https://www.gnu.org/licenses/gpl-3.0.txt>
4 */
5 #include "cmogstored.h"
7 char *mog_canonpath(const char *path, enum canonicalize_mode_t canon_mode)
9 char *p = canonicalize_filename_mode(path, canon_mode);
11 if (!p && errno == ENOMEM)
12 mog_oom();
14 return p; /* may be null if errors */
17 char *mog_canonpath_die(const char *path, enum canonicalize_mode_t canon_mode)
19 char *p = mog_canonpath(path, canon_mode);
21 if (p) return p;
23 if (errno)
24 die_errno("`%s' failed to resolve", path);
25 else
26 die("`%s' failed to resolve", path);