bonjour,
Le vendredi 28 mai 2004, Minux a écrit... > voilà le script complet qui me permet d'updater mon ip vers dyndns via > ez-ipupdate : J'ai fabriqué ça, mais..._mais_, il y a beaucoup de mais: Je ne sais pas ce qu'il y a dans les fichiers ip, j'en ai déduit que c'était une ip toute bête Et j'ai également supposé que la chaîne pasv_address=x.x.x.x était en fin de fichier Tu mets ça où tu veux, mais ça suppose également que les deux fichiers old et new de ip existent Quand au relancement du démon, tu remplaces [i]netd par [v]fstpd , à condition qu'il n'y ait qu'une session..., pareil pour les chemins de fichier. Il n'y a aucune gestion d'erreur là-dedans, c'est très bourrin, mais mes simulations bidon ont fonctionné: #!/usr/bin/env python import os from signal import SIGHUP fichierIpNew = "./newip" fichierIpOld = "./oldip" fichierDeConf = "./fichier_de_conf" def getpspid (): fp = os.popen ("ps aux|awk '/[i]netd/ {print $2}'", "r") pid = fp.read() fp.close () return pid def getIp (fichier): fd = os.open (fichier, os.O_RDONLY) ip = os.read (fd, 16) os.close (fd) return (ip, len (ip)) def substitute (): told = getIp (fichierIpOld) tnew = getIp (fichierIpNew) fd = os.open (fichierDeConf, os.O_RDWR) os.lseek (fd, -1 * told[1], 2) os.write (fd, "") os.write (fd, tnew[0]) os.close (fd) def main (): substitute () os.kill (int (getpspid ()), SIGHUP) if __name__ == '__main__': main () -- jm