tt_file_netfile(library call) tt_file_netfile(library call)
NAMEtt_file_netfile — map between local and canonical pathnames on the
local host
SYNOPSIS
#include <Tt/tt_c.h>
char *tt_file_netfile(
const char *filename);
DESCRIPTION
The tt_file_netfile function converts a local pathname to a netfile‐
name, a form that can be passed to other hosts on the network and con‐
verted back to a local pathname for the same file with tt_net‐
file_file(3).
The filename argument is a pathname (absolute or relative) that is
valid on the local host. Every component of filename must exist,
except that the last component need not exist.
RETURN VALUE
Upon successful completion, the tt_file_netfile function returns a
freshly allocated null-terminated string of unspecified format, which
can be passed to tt_netfile_file(3) or tt_host_netfile_file(3); other‐
wise, it returns an error pointer. The application can use
tt_ptr_error(3) to extract one of the following Tt_status values from
the returned pointer:
TT_ERR_PATH
The filename argument is a path that is not valid on this
host.
APPLICATION USAGE
The tt_file_netfile(3), tt_netfile_file(3), tt_host_file_netfile(3) and
tt_host_netfile_file(3) functions allow an application to determine a
path valid on remote hosts, perhaps for purposes of constructing a com‐
mand string valid for remote execution on that host. By composing the
two calls, paths for files not accessible from the current host can be
constructed. For example, if path /sample/file is valid on host A, a
program running on host B can use
tt_host_netfile_file("C", tt_host_file_netfile("A", "/sample/file"))
to determine a path to the same file valid on host C, if such a path is
possible.
The netfile string returned by tt_file_netfile should be considered
opaque; the content and format of the strings are not a public inter‐
face. These strings can be safely copied (with strcpy3C or similar
methods), written to files, or transmitted to other processes, perhaps
on other hosts.
Allocated strings should be freed using either tt_free(3) or
tt_release(3).
The tt_open(3) function need not be called before tt_file_netfile.
SEE ALSO
Tt/tt_c.h - Tttt_c(5), tt_netfile_file(3), tt_host_file_netfile(3),
tt_host_netfile_file(3), tt_open(3), tt_free(3), tt_release(3).
tt_file_netfile(library call)