As someone ask me (Frederico B.) to do it, there is a new structured
protocol for user management :
All request must have an answer with something to say if it is good or not.
Thus all answer must begin with
+OK if the request is correct and the answer too
-ERR if the request is incorrect or if the remote manager cna't answer
the request
There are the function of the remote manager :
- Add a new user :
ADDUSER username password
possible results:
-ERR usage : ADDUSER [username] [password]
-ERR User already exists
+OK User {username} added
- Delete an existing user :
DELUSER username
possible results:
-ERR usage : DELUSER [username]
+OK User [username] deleted
+OK User [username] doesn't exist
comment :
I don't know how to distinguish the response when a user does
not exist,
because if it doesn't exist it isn't in the list of user and a
delete action is to remove it from this list.
Tell me what you think.
- List all existing user :
LISTUSERS
possible results:
-OK {nbusers} existing accounts
user: {username}
...(repeat the same structure fo all user)
- Count the existing user :
COUNTUSERS
possible results:
+OK {nbusers} existing accounts
- Verify if a user exists or not :
VERIFYUSER [username]
posible results:
-ERR usage : VERIFYUSER [username]
-ERR User {username} does not exists
+OK User {username} exists
comment :
I change the name of the command to be close of the other
command.
I think in a near future the remote manager will do a lot of
other stuff (like configuration of the server) not related to the user
management so it may exist another command VERIFY related to this other
stuff.
- Change the password of an existing user :
CHGUSERPASS [username] [newpassword]
possible results:
-ERR usage : CHGUSERPASS [username] [newpassword]
-ERR User does not exist
+OK Password changed for {username}
- Quit the remote manager :
QUIT
possible result:
+OK Bye
- Help :
HELP
possible results:
+OK Currently implemented commands :
HELP
Display this help
ADDUSER [username] [password] Add a new user
DELUSER [username] delete
existing user
LISTUSERS
display existing accounts
COUNTUSERS
display the number of existing accounts
VERIFYUSER [username] verify if
specified user exist
CHGUSERPASS [username] [newpassword] change password of an
existing user
QUIT
close connection
If the request is none of this, the result is :
-ERR Unknown command
As you see there isn't a lot of change to do :
- Change the message response of all command
- Change the VERIFY command
- Add the CHGUSERPASS command
I hope someone can quickly make change because I'm not already familiar with
CVS and I have not already successful compile the James source, so it's not
easy for the test.
Christophe Marchal
------------------------------------------------------------
To subscribe: [EMAIL PROTECTED]
To unsubscribe: [EMAIL PROTECTED]
Archives and Other: <http://java.apache.org/>
Problems?: [EMAIL PROTECTED]