SYNOPSIS

#include <publib.h>

size_t fnqualify(char *result, const char *path, size_t max);

DESCRIPTION

fname_qualify qualifies a filename. This means that if the input name is not an absolute name (i.e. starts from the root directory, e.g. is foo, not /tmp/foo), the current directory will be prepended to it. Also, tilde conversion is done: if the filename begins with a tilde (~), the tilde is replaced with the home directory of the user, and if it begins with a tilde and a username, both are replaced with the home directory of the given user.

Simplifications like replacing /./ with /, and /foo/../bar with /bar are not done because of problems with symbolic links.

RETURNS

The function returns -1 if there was some error, or the total size of the full name otherwise. The return value may be greater than the maximum size given by the last argument; only as much as allowed by that is actually written, though.

RELATED TO fnqualify…

publib(3), fname(3)

AUTHOR

Lars Wirzenius ([email protected])