utimes(3) (BSD Compatibility Package) utimes(3)
NAME
utimes - Zeiten für eine Datei setzen
SYNTAX
/usr/ucb/cc [flag ...] file ... -lucb
#include <sys/time.h>
int utimes(const char *path, const struct timeval times[2]);
BESCHREIBUNG
Die Funktion utimes() setzt die Zugriffs- und Änderungszeiten der
Datei, auf die das Argument path zeigt, auf den Wert des Arguments
times. Mit der Funktion utimes() können Zeitangaben bis auf Millise-
kunden genau gesetzt werden.
Für utimes() ist das Argument times eine Array aus timeval-Strukturen.
Die erste Komponente des Arrays stellt Datum und Uhrzeit des letzten
Zugriffs und die zweite Komponente stellt Datum und Uhrzeit des letz-
ten Änderung dar. Die Zeiten in der Struktur timeval werden in Sekun-
den und Millisekunden ab 00:00:00 GMT 1. Januar 1970 gemessen; aller-
dings können sie unter Umständen auf die nächstgelegene Sekunde gerun-
det werden.
Wenn das Argument times ein Nullzeiger ist, werden die Zugriffs- und
Änderungszeiten der Datei auf die aktuelle Uhrzeit gesetzt. Die effek-
tive Benutzer-ID des Prozesses muß der des Eigentümers der Datei ent-
sprechen, oder der Prozeß muß über Schreibzugriff auf die Datei bezie-
hungsweise über die erforderlichen Berechtigungen zur entsprechenden
Verwendung dieses Aufrufs verfügen. Nach der Ausführung markiert
utimes() die Zeit der letzten Änderung des Dateistatus, stctime, zur
Aktualisierung.
In beiden Fällen wird die geänderte Inode-Zeit der Datei auf die aktu-
elle Zeit gesetzt.
RÜCKGABEWERT
Bei erfolgreicher Ausführung wird der Wert 0 zurückgegeben. Andern-
falls wird -1 zurückgegeben, und errno gesetzt, um den Fehler anzuzei-
gen.
DIAGNOSE
utimes schlägt fehl, wenn mindestens eine der folgenden Bedingungen
vorliegt:
ENOTDIR Eine Komponente in der Pfadangabe für path ist kein Ver-
zeichnis.
ENAMETOOLONG Die Länge des Arguments path überschreitet PATHMAX,
oder die Länge einer path-Komponente überschreitet
NAMEMAX.
Seite 1 Reliant UNIX 5.44 Gedruckt 11/98
utimes(3) (BSD Compatibility Package) utimes(3)
ENOENT Die Datei, auf die path verweist, existiert nicht.
EACCES Für eine Komponente in der Pfadangabe für path wird die
Sucherlaubis verweigert.
EACCES Die effektive Benutzer-ID des Prozesses entspricht weder
dem berechtigten Benutzer noch dem Eigenümer der Datei,
die Schreiberlaubnis für die Datei wird verweigert, und
times ist NULL.
ELOOP Bei der Übersetzung von path wurden zu viele symbolische
Links gefunden.
EPERM Das Argument times ist kein Nullzeiger, und die effek-
tive Benutzer-ID des aufrufenden Prozesses verfügt zwar
über Schreibzugriff für die Datei, entspricht aber nicht
der des Eigentümers der Datei, und der aufrufende Prozeß
verfügt nicht über die entsprechenden Berechtigungen.
EIO Beim Lesen vom Dateisystem oder Schreiben auf dieses ist
ein E/A-Fehler aufgetreten.
EROFS Das Dateisystem, das die Datei enthält, ist nur für
Lesen angehängt.
EFAULT path oder times zeigt auf einen Bereich außerhalb des
dem Prozeß zugewiesenen Adreßbereichs.
Die Funktion utimes() kann bei folgender Bedingung fehlschlagen:
ENAMETOOLONG Die Auflösung des Pfadnamens eines symbolischen Links
hat ein Zwischenergebnis erzeugt, dessen Länge PATHMAX
überschreitet.
HINWEISE
utimes ist eine Bibliotheksroutine, die den Systemaufruf utime auf-
ruft.
SIEHE AUCH
stat(2), utime(2).
Seite 2 Reliant UNIX 5.44 Gedruckt 11/98