A callback_func that's passed as a parameter to auth_getuserinfo_meta(3)[1] can invoke this function to
automatically create a new account's home directory, if the authlib client is running as root, forwarding
the authinfo pointer from the callback.
auth_mkhomedir() checks if the AUTH_MKHOMEDIR_SKEL environment variable is set, and if the authenticated
account's home directory does not exist. If the environment variable is set it must point to a directory
like /etc/skel that contains a template for the contents of a new account's home directory.
If AUTH_MKHOMEDIR_SKEL is not set, or if the home directory exists, auth_mkhomedir() does nothing and
returns 0. Otherwise the account's home directory gets created, and the contents of the
AUTH_MKHOMEDIR_SKEL directory get recursively copied into the new home directory. The permissions of
AUTH_MKHOMEDIR_SKEL and its contents are preserved, and the owner userid and groupid is set to the
authenticated account's userid and groupid.