Provided by: manpages-fr-dev_3.32d0.2p4-1_all bug

NOM

       gettimeofday, settimeofday - Lire/ecrire l'heure actuelle

SYNOPSIS

       #include <sys/time.h>

       int gettimeofday(struct timeval *tv, struct timezone *tz);
       int settimeofday(const struct timeval *tv, const struct timezone *tz);

   Exigences  de  macros  de  test de fonctionnalites pour la glibc (consultez
   feature_test_macros(7)) :

       settimeofday() : _BSD_SOURCE

DESCRIPTION

       Les fonctions  gettimeofday()  et  settimeofday()  servent  a  lire  ou
       programmer  l'heure  ainsi que le fuseau horaire (timezone). L'argument
       tv est une structure timeval decrite dans <sys/time.h> :

           struct timeval {
               time_t      tv_sec;     /* secondes */
               suseconds_t tv_usec;    /* microsecondes */
           };

       et donne  le  nombre  de  secondes  et  microsecondes  ecoulees  depuis
       l'epoque  (consultez time(2)). L'argument tz est une structure timezone
       composee ainsi :

           struct timezone {
               int tz_minuteswest; /* minutes a l'ouest de Greenwich  */
               int tz_dsttime;     /* type de changement horaire      */
           };

       Si tv ou tz est nulle, la structure correspondante n'est ni remplie  ni
       renvoyee.

       L'utilisation  de  la  structure  timezone est obsolete ; l'argument tz
       doit en general etre NULL. Le champ tz_dsttime n'a jamais  ete  utilise
       sous Linux, il n'a jamais ete gere, et ne le sera jamais par la libc ou
       glibc. Toute occurrence de ce champ dans les  sources  du  noyau  (sauf
       pour  les  declarations)  est un bogue. Ainsi le paragraphe suivant n'a
       qu'un interet historique.

       Le champ tz_dsttime contient une constante symbolique (dont les valeurs
       sont  fournies  ci-dessous)  qui  indique  quelle  partie du changement
       horaire annuel est en cours. (Remarque :  cette  valeur  est  constante
       tout  au  long  de  l'annee,  elle  n'indique  pas reellement la valeur
       horaire en cours, elle  selectionne  un  algorithme).  Les  changements
       horaires (Daylight Saving Time - DST) sont definis comme suit :

           DST_NONE     /* Aucun */
           DST_USA      /* USA */
           DST_AUST     /* Australie */
           DST_WET      /* Europe occidentale */
           DST_MET      /* Europe centrale */
           DST_EET      /* Europe Orientale */
           DST_CAN      /* Canada */
           DST_GB       /* Grande-Bretagne et Irlande */
           DST_RUM      /* Roumanie */
           DST_TUR      /* Turquie */
           DST_AUSTALT  /* Australie avec decalage en 1986 */

       Il  est  evident  que  le  decalage  horaire  en cours ne peut pas etre
       uniquement fourni par un algorithme par pays.  Ce  decalage  depend  de
       decisions  politiques  imprevisibles.  Ainsi, cette methode des fuseaux
       horaires a ete abandonnee. Sous Linux, durant un appel a settimeofday()
       le champ tz_dsttime doit etre nul.

       Sous  Linux,  il  existe une semantique particuliere associee a l'appel
       systeme settimeofday() si, durant  la  premiere  invocation  (apres  le
       boot),  il  a  un argument tz non NULL, un argument tv NULL et un champ
       tz_minuteswest different de zero. Dans ce cas, on suppose que l'horloge
       CMOS  de la machine est configuree sur le temps local, et que l'on doit
       l'augmenter de cette valeur pour obtenir le temps UTC. Bien entendu, il
       faut eviter autant que possible d'utiliser cette particularite.

       Les  macros  operant  sur  les  structures  timeval  sont decrites dans
       timeradd(3).

VALEUR RENVOY'EE

       gettimeofday et settimeofday renvoient 0 s'ils reussissent, ou -1 s'ils
       echouent, auquel cas errno contient le code d'erreur.

ERREURS

       EFAULT tv ou tz pointent en dehors de l'espace d'adressage autorise.

       EINVAL Le fuseau horaire (ou autre chose) est invalide.

       EPERM  Le  processus  appelant  n'a  pas  les privileges suffisant pour
              appeler settimeofday() ; sous Linux,  la  capacite  CAP_SYS_TIME
              est necessaire.

CONFORMIT'E

       SVr4,    BSD 4.3.   POSIX.1-2001   decrit   gettimeofday()   mais   pas
       settimeofday().  POSIX.1-2008   marque   gettimeofday()   comme   etant
       obsolete, en recommandant d'utiliser clock_gettime(2) a la place.

NOTES

       Traditionnellement,  les champs de la structure timeval etaient de type
       long.

VOIR AUSSI

       date(1), adjtimex(2),  time(2),  ctime(3),  ftime(3),  capabilities(7),
       time(7)

COLOPHON

       Cette  page  fait  partie  de  la  publication 3.32 du projet man-pages
       Linux. Une description du projet et des instructions pour signaler  des
       anomalies       peuvent       etre       trouvees      a      l'adresse
       <URL:http://www.kernel.org/doc/man-pages/>.

TRADUCTION

       Depuis 2010, cette traduction est maintenue a l'aide  de  l'outil  po4a
       <URL:http://po4a.alioth.debian.org/>   par   l'equipe   de   traduction
       francophone       au       sein        du        projet        perkamon
       <URL:http://perkamon.alioth.debian.org/>.

       Christophe  Blaess  <URL:http://www.blaess.fr/christophe/> (1996-2003),
       Alain  Portal  <URL:http://manpagesfr.free.fr/>  (2003-2006).    Julien
       Cristau et l'equipe francophone de traduction de Debian (2006-2009).

       Veuillez   signaler   toute   erreur   de   traduction  en  ecrivant  a
       <debian-l10n-french@lists.debian.org> ou par un rapport de bogue sur le
       paquet manpages-fr.

       Vous  pouvez  toujours avoir acces a la version anglaise de ce document
       en utilisant la commande << man -L C <section> <page_de_man> >>.