[pso] [Tema1] Ordine verificari

Marius Nicolae mariusn007 at gmail.com
Sat Mar 29 01:02:24 EET 2008


2008/3/28 Alexandru-Mihai Carp <carpalex at gmail.com>:
> Salut,
>
>  Exista vreo ordine care se impune pentru efectuarea verificarilor?
>  Eu am intalnit urmatoarele 2 situatii discutabile:
>
>  1. In testul "do_as_guest":
>  - User-ul "nobody" incearca sa monitorizeze un apel de sistem pentru
>  PID1, si evident, nu va reusi, eroarea fiind EPERM.
>  - User-ul "nobody" incearca sa opreasca monitorizarea apelului de sistem
>  pentru PID1 si nici acum nu va mai reusi.
>
>  In test, se asteapta o eroare de tip EPERM.
>  In implementarea mea, eu verific mai intai daca procesul respectiv este
>  monitorizat, si daca nu, nu trec mai departe. Deci eu voi intoarce EINVAL.

Aici eu sunt de acord cu varianta sa intorci EPERM, pentru ca daca nu
are voie sa faca o anumita operatie
nu e nevoie sa ii oferi informatia suplimentara cum ca procesul nu
este monitorizat. Adica asa cum ai implementat
tu, eu chiar daca nu am dreptul sa pornesc/opresc monitorizarea, pot
totusi sa vad care procese sunt monitorizate,
pentru ca la ele primesc EINVAL si EPERM la cele nemonitorizate.


nu am drepturi
>
>
>  2. In testul cu "last_child":
>  Mie imi trece testul chiar daca nu am implementat inca demonitorizarea
>  automata a proceselor ce se termina, pentru ca:
>  - La REQUEST_STOP_MONITOR, eu verific mai intai daca pid-ul este valid,
>  cu get_task_by_pid()
>  - Astfel, imi va intoarce un task_struct NULL, deci nu trec mai departe
>  si intorc EINVAL.
>
>  Sa inteleg ca nu ar trebui sa verific daca este un pid valid, ci doar sa
>  caut daca exista in lista si sa-l scot daca da?
>  In acest caz, nu mai respect enuntul, pentru ca nu implementez
>  verificarea. In caz contrar, testul de last_child nu mai are nici o
>  relevanta.
>
>  Mersi,
>
>  Alex Carp
>  _______________________________________________
>  pso mailing list
>  pso at cursuri.cs.pub.ro
>  http://cursuri.cs.pub.ro/cgi-bin/mailman/listinfo/pso
>


More information about the pso mailing list