Comme ça fait longtemps…
…que je n’ai rien posté (et autres histoires de dates)
Présentation d’un outil bien pratique : datefudge
datefudge est écrit et maintenu par Matthias Urlichs. Il permet de faire croire à un programme à une fausse date.
Exemple :
jeansch@apostrophe:~$ perl
$t = localtime; print "$t\n";
Mon Sep 4 15:17:09 2006
jeansch@apostrophe:~$ datefudge 2006-08-01 perl
$t = localtime; print “$t\n”;
Tue Aug 1 00:00:14 2006
Magique !
Cas concret :
…pas de chance, la version d’évaluation de ce logiciel est expirée, mais j’aimerai bien l’essayer encore un peu…
jeansch@apostrophe:/home/jeansch $ date
lundi 4 septembre 2006, 14:12:54 (UTC+0200)
Apparemment nous sommes le 4 septembre 2006 au moment du test, essayons de tromper néro pour lui faire croire que nous sommes le premier septembre :
jeansch@apostrophe:/home/jeansch $ datefudge 20060901 nero

Cela a suffit à néro, bien qu’il semble très tolérant : le 1er septembre est tout de meme après le 31 aout.
Comment ça marche ?
datefudge fonctionne comme un LD_PRELOAD et remplace les fonctions time() et gettimeofday().
Plus d’infos sur la page de manuel : ici
Ou dans les sources : ici
Un autre projet intéressant permetant de jouer sur d’autres appels système : subterfugue
Note : Je ne connais pas d’équivalant sous windows…
