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/
