* /tmp/test1 does, the real path is returned. In normal time, realpath(3)
* fails if the end point directory does not exist.
*/
+__attribute__((visibility("hidden")))
char *utils_expand_path(const char *path)
{
const char *end_path = path;
/*
* Create a pipe in dst.
*/
+__attribute__((visibility("hidden")))
int utils_create_pipe(int *dst)
{
int ret;
* Make sure the pipe opened by this function are closed at some point. Use
* utils_close_pipe().
*/
+__attribute__((visibility("hidden")))
int utils_create_pipe_cloexec(int *dst)
{
int ret, i;
/*
* Close both read and write side of the pipe.
*/
+__attribute__((visibility("hidden")))
void utils_close_pipe(int *src)
{
int i, ret;
/*
* Create a new string using two strings range.
*/
+__attribute__((visibility("hidden")))
char *utils_strdupdelim(const char *begin, const char *end)
{
char *str;