[Samba-it] [OT?][C-ignorant] 'smbpasswd -s' e gestione STD*...

NdK ndk.clanbo at gmail.com
Mon Jun 15 12:27:19 MDT 2015


Il 15/06/2015 17:58, Marco Gaiarin ha scritto:

> Internamente, in azienda, abbiamo realizzato un accrocchio in C che, ad un
> certo punto, chiama 'smbpasswd -s' per cambiare la password.
E fin qui OK.

> Il programmatore è un collega, e mi dice che per passare la password a
> smbpasswd non ha aperto una semplice pipe, ma hadovuto fare un ''giro''
> (è dovuto risalire al pid del figlio, e quindi redirezionare i
> descrittori).
Uh? Mi sembra un giro inutilmente complesso.
È sufficiente, prima della exec, associare ai descrittori 0, 1 e 2 le
opportune pipe, senza bisogno di risalire al PID...

> Io ho bisogno di fare dei test, ma se eseguo lo stesso programma con al
> posto di 'smbpasswd' uno script che fa:
> 	cat - > /tmp/test
> l'accrocchio fa in ''stallo'', nel senso che palesemente aspetta
> qualcosa (anche se la password nel file ce la ritrovo).
Prova a fargli stampare qualcosa: probabilmente il programma del tuo
collega legge lo stdout di smbpasswd. Altro problema: probabilmente il
programma in C non chiude la pipe con cui ha inviato la password, quindi
cat rimane in attesa di ulteriore input...

> Come posso fare in modo che il mio script si comporti come 'smbpasswd
> -s'?
Magari prova con qualcosa tipo:
#!/bin/bash
echo "smbpasswd replacement placeholder"
read PWD
echo $PWD > /path/alla/password.txt

BYtE,
 Diego



More information about the samba-it mailing list