
/*
 * This routine converts an acl string specification, e.g., rliwdka, rl,
 * write, etc., into a long with the bits set as defined in
 * <afs/prs_fs.h>.  If the string is not recognized, it returns -1
 * and sets error to Q_INVALID_ACL_LETTER.
 */
long
Q_acl_string_to_long (string, error)
     char *string;
     long *error;
{
}
/*
 * This routine converts a long to a `rlidwka' string.
 */
char *
Q_long_to_acl_string (num)
     long num;
{
}
/* This function is intuitively obvious. */
AFS_acl *
Q_parse_afs_acl (s)
     char *s;
{
}
/*
 * Q_get_afs_acl() will return the access control list to an AFS
 * directory, or NULL is there is an error.  It assumes you are giving it
 * a valid directory for an argument.
 */
AFS_acl *
Q_get_afs_acl (dir, error)
     char *dir;
     long *error;
{
}
/*
 * Q_set_afs_acl() attempts to set the AFS acl on the directory `dir'.
 * If the third argument `negative' is set, `acl_ent' is interpreted
 * as a negative acl.  Returns -1 on error, 0 on success.
 */
int
Q_set_afs_acl (dir, acl_ent, negative, error)
     char *dir;
     AFS_acl_entry *acl_ent;
     int negative;
     long *error;
{
}
/* Frees acl */
void
Q_free_acl (acl)
     AFS_acl *acl;
{
}
/*
 * This routine expands the members of an AFS group, like `pts membership
 * groupname.'  It returns a pointer to a group structure.
 * On failure, it returns NULL and sets err_code.
 */
Group *
Q_afs_get_membership (groupname, cellname, err_code)
     char *groupname;
     char *cellname;
     long *err_code;
{
}
/* Q_expand_file_name() returns the full path to the partial
 * or relative filename path, or NULL on error.
 *
 * Note: this routine will return NULL if any of the directories
 * leading up to the file don't exist or can't be read.  However,
 * the trailing component does not have to exist.  For example,
 * it will expand /mit/ckclark/foo to
 *
 *        /afs/athena.mit.edu/user/c/k/ckclark/foo
 *
 * even if there is no file 'foo' in my homedir.  (There usually is,
 * but that's beside the point.)
 *
 * However, it will return NULL and errno 2 in err_code (No such file or
 * directory) on /mit/ckclark/foo/bar, if foo doesn't exist.
 *
 */
char *
Q_expand_file_name (path, err_code)
     char *path;
     long *err_code;
{
}
/*
 * Returns one of ON_AFS, ON_NFS, or ON_UFS (defined in q.h), indicating
 * the type the type of file system the file `path' is on.  Symbolic
 * links are followed.  Returns -1 on error.
 */
int
Q_file_system_type (path, err_code)
     char *path;
     long *err_code;
{
}
/*
 * libq_et.c:
 * This file is automatically generated; please do not edit it.
 */
static const char * const text[] = {};
struct error_table {};
struct et_list {};
extern struct et_list *_et_list;
static const struct error_table et = {};
static struct et_list link = {};
void initialize_q_error_table (NOARGS) {
}
void * malloc ();
void free ();
void * realloc ();
char    whoami[] = "Q";
int     q_initialized = 0;
/* Initializes com_err table */
void
Q_init () {
}
/* Causes program to die when malloc fails, printing in error. */
void *
Q_malloc (size)
int     size;
{
}
/* Causes program to die when realloc fails, and prints on error. */
void *
Q_realloc (ptr, size)
void * ptr;
int     size;
{
}
/* Frees a pointer.  If NULL, don't do anything. */
void
Q_free (ptr)
void * ptr;
{
}
