SYNOPSIS

#include <atfs.h>

#include <atfstk.h>

void atScanUser (char *userName; Af_user *resultUser);

char* atUserName (Af_user *user);

Uid_t atUserUid (Af_user *user);

int atUserValid (Af_user *user);

DESCRIPTION

atScanUser scans the given string userName and tries to derive an AtFS user identification (resultUser) from it. It does not verify the existence of a corresponding UNIX (/etc/passwd) user entry. Use atUserUid to test that. atScanUser understands the following formats:

user

When the string does not contain an at sign, it is considered to be a plain user name from the current host and domain.

user@host

In the case that the part after the at sign doe not contain a period, it is assumed to be a hostname. Domain is the current domain.

[email protected]

This format can only be recognized, when the given domain is equal to the current domain, and the hostname remains as rest between the at sign and domain name.

user@domain

An user identification string with a domain name different to the local domain is treated as user@domain, although this might be wrong.

atUserName returns a string of the form user@domain generated from the given user structure. If no domain name is given in the structure, it returns user@host instead. With no host and no domain name, just user is returned. The result string resides in static memory and will be overwritten on subsequent calls.

atUserUid tries to map the given user structure to a UNIX user identification. It returns the uid on success, -1 otherwise.

atUserValid checks the given user structure for plausibility. It returns FALSE on fauilure, a non null value on success.