CLEANNAME(3)                                         CLEANNAME(3)

     NAME
          cleanname - clean a path name

     SYNOPSIS
          #include <u.h>
          #include <libc.h>

          char*     cleanname(char *filename)

     DESCRIPTION
          Cleanname takes a filename and by lexical processing only
          returns the shortest string that names the same (possibly
          hypothetical) file.  It eliminates multiple and trailing
          slashes, and it lexically interprets . and .. directory com-
          ponents in the name.  The string is overwritten in place.

          The shortest string cleanname can return is two bytes: the
          null-terminated string ".".  Therefore filename must contain
          room for at least two bytes.

     SOURCE
          /src/lib9/cleanname.c

     SEE ALSO
          cleanname(1)