.\" -*- coding: UTF-8 -*- '\" t .\" Copyright 2003 walter harms (walter.harms@informatik.uni-oldenburg.de) .\" .\" SPDX-License-Identifier: GPL-1.0-or-later .\" .\" Modified 2003-04-04 Walter Harms .\" .\" .\" Slightly polished, aeb, 2003-04-06 .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH rtime 3 "31 octombrie 2023" "Pagini de manual de Linux 6.06" .SH NUME rtime \- obține ora de la o mașină de la distanță .SH BIBLIOTECA Biblioteca C standard (\fIlibc\fP, \fI\-lc\fP) .SH REZUMAT .nf \fB#include \fP .P \fBint rtime(struct sockaddr_in *\fP\fIaddrp\fP\fB, struct rpc_timeval *\fP\fItimep\fP\fB,\fP \fB struct rpc_timeval *\fP\fItimeout\fP\fB);\fP .fi .SH DESCRIERE Această funcție utilizează protocolul Time Server Protocol (protocolul serverului de timp), așa cum este descris în RFC\ 868, pentru a obține ora de la o mașină la distanță. .P Protocolul serverului de timp oferă timpul în secunde de la 00:00:00 UTC, 1 ianuarie 1900, iar această funcție scade constanta corespunzătoare pentru a converti rezultatul în secunde de la Epocă, 1970\-01\-01 00:00:00:00 +0000 (UTC). .P Atunci când \fItimeout\fP este diferit de NULL, se utilizează soclul udp/time (portul 37). În caz contrar, se utilizează soclul tcp/time (portul 37). .SH "VALOAREA RETURNATĂ" În caz de succes, se returnează 0, iar valoarea de timp pe 32 de biți obținută este stocată în \fItimep\->tv_sec\fP. În caz de eroare, se returnează \-1, iar \fIerrno\fP este configurată pentru a indica eroarea. .SH ERORI\-IEȘIRE Pot apărea toate erorile pentru funcțiile de bază (\fBsendto\fP(2), \fBpoll\fP(2), \fBrecvfrom\fP(2), \fBconnect\fP(2), \fBread\fP(2)). În plus: .TP \fBEIO\fP Numărul de octeți returnat nu este 4. .TP \fBETIMEDOUT\fP Timpul de așteptare definit în „timeout” a expirat. .SH ATRIBUTE Pentru o explicație a termenilor folosiți în această secțiune, a se vedea \fBattributes\fP(7). .TS allbox; lbx lb lb l l l. Interfață Atribut Valoare T{ .na .nh \fBrtime\fP() T} Siguranța firelor MT\-Safe .TE .SH NOTE Doar protocolul IPv4 este acceptat. .P .\" .P .\" Libc5 uses the prototype .\" .P .\" .nf .\" int rtime(struct sockaddr_in *, struct timeval *, struct timeval *); .\" .fi .\" .P .\" and requires .\" .I .\" instead of .\" .IR . Unele versiuni \fIin.timed\fP acceptă numai TCP. Încercați programul de exemplu cu \fIuse_tcp\fP fixată la 1. .SH ERORI \fBrtime\fP() în glibc 2.2.5 și versiunile anterioare nu funcționează corect pe mașinile pe 64 de biți. .SH EXEMPLE Acest exemplu necesită ca portul 37 să fie activat și deschis. Puteți verifica dacă intrarea de timp din \fI/etc/inetd.conf\fP nu este comentată. .P Programul se conectează la un calculator numit „linux”. Utilizarea „localhost” nu funcționează. Rezultatul este ora locală a calculatorului „linux”. .P .\" SRC BEGIN (rtime.c) .EX #include #include #include #include #include #include \& #include \& static int use_tcp = 0; static const char servername[] = "linux"; \& int main(void) { int ret; time_t t; struct hostent *hent; struct rpc_timeval time1 = {0, 0}; struct rpc_timeval timeout = {1, 0}; struct sockaddr_in name; \& memset(&name, 0, sizeof(name)); sethostent(1); hent = gethostbyname(servername); memcpy(&name.sin_addr, hent\->h_addr, hent\->h_length); \& ret = rtime(&name, &time1, use_tcp ? NULL : &timeout); if (ret < 0) perror("eroare rtime"); else { t = time1.tv_sec; printf("%s\en", ctime(&t)); } \& exit(EXIT_SUCCESS); } .EE .\" SRC END .SH "CONSULTAȚI ȘI" .\" .BR netdate (1), .\" .BR rdate (1), \fBntpdate\fP(1), \fBinetd\fP(8) .PP .SH TRADUCERE Traducerea în limba română a acestui manual a fost făcută de Remus-Gabriel Chelu . .PP Această traducere este documentație gratuită; citiți .UR https://www.gnu.org/licenses/gpl-3.0.html Licența publică generală GNU Versiunea 3 .UE sau o versiune ulterioară cu privire la condiții privind drepturile de autor. NU se asumă NICIO RESPONSABILITATE. .PP Dacă găsiți erori în traducerea acestui manual, vă rugăm să trimiteți un e-mail la .MT translation-team-ro@lists.sourceforge.net .ME .