[IRC-DEV] Bug en comando del IRCd y propuesta de futuro

Jesus Cea Avion jcea at argo.es
Tue Sep 30 12:47:18 CEST 2003


>   En líneas generales, sería comprobar, al ir a ejecutar cualquier
> comando, y en el caso de que quien lo ejecuta es un cliente, que dicho
> cliente tiene permiso para ello.

La idea me parece bien, pero hace falta concretar bastante más los
detalles.

Mi idea sería la siguiente:

1. Las restricciones *SOLO* afectan a los comandos ejecutados de forma
local en el nodo del usuario.

2. Dado que hay pocos comandos, nos podemos permitir el lujo de añadir
un "int", por ejemplo, con una máscara de bits exigidos al usuario. Ese
"int" se actualiza ante cambios en la BDD, y nos permite ahorrarnos
accesos a la BDD en cada comando (local) ejecutado.

3. Cuando el "int" de un comando es CERO, el comando esté permitido a
todo el mundo.

4. Cuando no es cero, se comprueba que el usuario sea +h. Si es +h, se
hace un "and" entre su nivel en la BDD y el "int", para decidir si tiene
acceso o no. Lo del "and" enlaza con la migración de niveles a flags,
inminente.

5. En algunos comandos sería conveniente ser más preciso, aunque esto
puede ser "overkill" para una primera implementación. Por ejemplo, los
diferentes "/stats" pueden tener niveles de acceso diferentes. O en
"whois", se puede permitir consultas locales pero no enviar peticiones a
otros nodos, etc. Ahora mismo esto no me preocupa demasiado, pero sería
interesante dejar una infraestructura que permita crecer en ese sentido.

¿Opiniones?.

Además, hay que concretar qué mensaje de error/numeric recibirían los
usuarios.

-- 
Jesus Cea Avion                         _/_/      _/_/_/        _/_/_/
jcea at argo.es http://www.argo.es/~jcea/ _/_/    _/_/  _/_/    _/_/  _/_/
                                      _/_/    _/_/          _/_/_/_/_/
PGP Key Available at KeyServ   _/_/  _/_/    _/_/          _/_/  _/_/
"Things are not so easy"      _/_/  _/_/    _/_/  _/_/    _/_/  _/_/
"My name is Dump, Core Dump"   _/_/_/        _/_/_/      _/_/  _/_/
"El amor es poner tu felicidad en la felicidad de otro" - Leibniz




More information about the IRC-Dev mailing list