X-Git-Url: http://git.tuebingen.mpg.de/?p=paraslash.git;a=blobdiff_plain;f=user_list.h;h=948ed503093e53d1df0e29430619c22092489235;hp=f4e7661b5eb7900d43afa4ee4cd26c7771267a11;hb=1709cc8f8a54429441f8f83c38146e667133c727;hpb=9d8fdf8898418711558f70a9630b2444036d8285 diff --git a/user_list.h b/user_list.h index f4e7661b..948ed503 100644 --- a/user_list.h +++ b/user_list.h @@ -7,14 +7,20 @@ /** \file user_list.h exported functions from user_list.c */ /** - * permission flags that can be set individually for any server command + * Flags for server commands and user permissions. * - * - AFS_READ: read-only command of the audio file selector - * - AFS_WRITE: command changes state of the audio file selector - * - VSS_READ: command reads information about the current audio stream - * - VSS_WRITE: command changes the current audio stream + * For each command, zero or more of these flags are ored to define the command + * permissions. A user is allowed to run the command if and only if all command + * permission flags are set for the user in the server.users config file which + * is read at server startup. */ -enum {AFS_READ = 1, AFS_WRITE = 2, VSS_READ = 4, VSS_WRITE = 8}; +enum server_command_permissions { + NO_PERMISSION_REQUIRED = 0, /** None of the below. */ + AFS_READ = 1, /** Read-only operation on the AFS database. */ + AFS_WRITE = 2, /** Read-write operation on the AFS database. */ + VSS_READ = 4, /** Read-only operation on the virtual streaming system. */ + VSS_WRITE = 8 /** Read-write operation on the virtual streaming system. */ +}; /** * data needed to authenticate the user