Provided by: aolserver4-dev_4.5.1-16_amd64 bug

NAME

       Ns_HomePath,  Ns_LibPath,  Ns_MakePath,  Ns_ModulePath,  Ns_NormalizePath,  Ns_PathIsAbsolute  - Pathname
       procedures

SYNOPSIS

       #include "ns.h"

       char *
       Ns_HomePath(Ns_DString *dest, ...)

       char *
       Ns_LibPath(Ns_DString *dest, ...)

       char *
       Ns_MakePath(Ns_DString *dest, ...)

       char *
       Ns_ModulePath(Ns_DString *dest, char *server, char *module, ...)

       char *
       Ns_NormalizePath(Ns_DString *dsPtr, char *path)

       int
       Ns_PathIsAbsolute(char *path)
_________________________________________________________________

DESCRIPTION

       These functions operate on file pathnames. They work with Unix and Windows pathnames on their  respective
       hosts.

       Ns_HomePath(dest, ...)
              Construct  a path name relative to the home directory of the server.  The full path is constructed
              by appending the library directory followed by each of the  variable  number  of  string  elements
              after  the  dest  argument.   The  elements  will be separated by a / character.  The list must be
              terminated with a NULL string.

       Ns_LibPath(dest, ...)
              Construct a path name relative  to  the  library  directory  of  the  server,  normally  the  lib/
              subdirectory  of  the  home  directory.   The  full  path  is constructed by appending the library
              directory followed by each of the variable number of string elements after the dest argument.  The
              elements will be separated by a / character.  The list must be terminated with a NULL string.

       Ns_MakePath(dest, ...)
              Construct  a  path  name  from a list of path elements. The Ns_MakePath function constructs a path
              name by appending a list of path elements to the given Ns_DString. The path elements are separated
              by  single  slashes,  and  the  resulting  path name is appended to the given Ns_DString. The last
              argument needs to be NULL to indicate the end of the argument list.

       Ns_ModulePath(dest, char *server, char *module, ...)
              Construct a server and/or module specific pathname relative to the  server  home  directory.   The
              path in constructed by first appending the server home directory.  Next, if the server argument is
              not NULL, "server/servere appended to the destination and if the  module  argument  is  not  NULL,
              "module/module" will be appended.  Finally, all other string elements, if any, will be appended to
              the destination with separating / characters.  The list must be terminated with a NULL string.

       Ns_NormalizePath(dsPtr, path)
              Normalize a path name. This function removes any extraneous slashes from the path and resolves "."
              and  ".."   references. The result is appended to the given Ns_DString. The following code appends
              "/dog" to the Ns_DString:

              Ns_NormalizePath(&ds,
                  "/dog/cat/../../rat/../../dog//mouse/..");

       Ns_PathIsAbsolute(path)
              Check for an absolute path name. Return NS_TRUE if the path is absolute  and  NS_FALSE  otherwise.
              Under Unix, an absolute path starts with a "/". On Windows, it starts with a drive letter followed
              immediately by a ":".

SEE ALSO

       nsd(1), info(n)

KEYWORDS