lonely wolf wrote:

>Emil Sirbu wrote:
>  
>
>>Mihai Maties wrote:
>>
>>
>>    
>>
>>>On Sunday 24 April 2005 22:30, Emil Sirbu wrote:
>>>
>>>
>>>
>>>      
>>>
>>>>Eu testez :
>>>>case "$1" in
>>>>'')                    error 'Username is not set';;
>>>>_* | *_)           error 'Username cannot start/end with _';;
>>>>[0-9]*)             error 'Username cannot start with 0-9';;
>>>>...
>>>>insa nu stiu sa verific daca $1 contine si spatiu. Am testat si cu
>>>>*[:space:]* dar  nu merge.
>>>>(as putea cu grep dar ma gandesc ca trebuie sa fie o varianta si fara)
>>>>  
>>>>
>>>>        
>>>>
>>>*' '* ) ... ;;
>>>
>>>
>>>      
>>>
>>Nu vrea
>>./test.sh: line 4: ` *' '*) echo "username contain space";exit 1;'
>>Am incercat * *, *' '*, *[ ]*, *[:space:]*... nu vrea.
>>
>>
>>--- 
>>Detalii despre listele noastre de mail: http://www.lug.ro/
>>
>>
>>
>>
>>    
>>
>si daca $1 este:
>       vasile;IFS='';rm -fR /
>sau
>       vasile&&IFS=''&&rm -fR /
>sau alte variatiuni pe tema data, ce se intimpla ?
>
>
>  
>
Pai nu cred ca se intampla (sau asa mi se pare?) pentru ca user-ul ar 
trebui sa apeleze
sudo adauga.sh vasile;IFS='';rm -fR /
si banuiesc ca  IFS='';rm -fR / nu ajung in adauga.sh

Oricum, se pare ca solutia "corecta" este incadrarea $1 cu "
useradd -s /bin/false. "$1"  astfel, un adauga.sh "vasile -s /bin/bash -u 0"
are ca efect apelarea  useradd -s /bin/false "vasile -s /bin/bash -u 0" 
ceea ce conduce la o eroare.



--- 
Detalii despre listele noastre de mail: http://www.lug.ro/


Raspunde prin e-mail lui