ABSPATH(3)

πŸ“¦
version 2022.10.16 Β· 2 versions
, in opensuse-leap 16.0

πŸ’– NAME πŸ’–

okay so this is ABSPATH(3), straight outta SchilyΒ΄s LIBRARY FUNCTIONS, and it's giving absolute-path glow-up energy ✨. The trio abspath(), absnpath(), and absfpath() β€” they expand a relative pathname to a full (absolute) pathname. periodt.

πŸŽ€ SYNOPSIS πŸŽ€

       #include <schily/schily.h>

       char *
       abspath(relp, absp, asize)
                       const   char    *relp;
                               char    *absp;
                               size_t  asize;

       char *
       absnpath(relp, absp, asize)
                       const   char    *relp;
                               char    *absp;
                               size_t  asize;

       char *
       absfpath(relp, absp, asize, flags)
                       const   char    *relp;
                               char    *absp;
                               size_t  asize;
                               int     flags;

πŸ¦‹ DESCRIPTION πŸ¦‹

abspath() takes a relative path name and converts it into an absolute path name. So iconic. Here's the input/output tea:

  • relp β€” the relative path name used as the input.
  • absp β€” the buffer used for the result of the conversion.
  • asize β€” the size of the result buffer.

absnpath() behaves like abspath() except that the file does not need to exist. lowkey helpful.

absfpath() takes an additional flags parameter from the set of flags from resolvefpath() to control the behavior. iykyk.

🌈 RETURN VALUE 🌈

On successful completion, abspath(), absnpath(), and absfpath() return a pointer to the resolved name absp. Otherwise, a null pointer is returned and errno is set to indicate the error, and the contents of the buffer pointed to by absp is left in an indeterminate state. not the buffer being left indeterminate 😭.

πŸ’… ERRORS πŸ’…

  • ERANGE β€” the path does not fit into the suplied buffer.
  • EFAULT β€” a null pointer was suplied as the pathname.
  • EINVAL β€” an empty relative path was supplied.

πŸ‘‘ SEE ALSO πŸ‘‘

resolvepath(3), resolvenpath(3), resolvefpath(3)


made with πŸ’– by Joerg Schilling, 2022/09/09 β€” that’s the source/version and date footer sign-off, bestie 🫢

πŸ“¦ where this page comes from