"Fossies" - the Fresh Open Source Software Archive

Member "libzip-1.6.0/man/zip_file_set_mtime.html" (24 Jan 2020, 7251 Bytes) of package /linux/misc/libzip-1.6.0.tar.xz:


Caution: In this restricted "Fossies" environment the current HTML page may not be correctly presentated and may have some non-functional links. You can here alternatively try to browse the pure source code or just view or download the uninterpreted raw source code. If the rendering is insufficient you may try to find and view the page on the libzip-1.6.0.tar.xz project site itself.

ZIP_FILE_SET_MTIME(3) Library Functions Manual ZIP_FILE_SET_MTIME(3)

zip_file_set_dostime, zip_file_set_mtime
set last modification time (mtime) for file in zip

libzip (-lzip)

#include <zip.h>

int
zip_file_set_dostime(zip_t *archive, zip_uint64_t index, zip_uint16_t dostime, zip_uint16_t dosdate, zip_flags_t flags);

int
zip_file_set_mtime(zip_t *archive, zip_uint64_t index, time_t mtime, zip_flags_t flags);

The zip_file_set_mtime() function sets the last modification time (mtime) for the file at position index in the zip archive to mtime. Currently, no support for any flags is implemented.

In the zip archive, the time and date are saved as two 16-bit integers. To set the values directly, call the zip_file_set_dostime() function. The values of the time bytes are defined as follows:

0-4
day of the month (1-31)
5-8
month (January = 1, February = 2, ...)
9-15
year offset from 1980 (1980 = 0, 1981 = 1, ...)

The values of the date bytes are defined as follows:

0-4
seconds divided by two (1-2 = 1, 3-4 = 2, ...)
5-10
minute (0-59)
11-15
hour (0-23)

Upon successful completion 0 is returned. Otherwise, -1 is returned and the error information in archive is set to indicate the error.

zip_file_set_dostime() and zip_file_set_mtime() fail if:
[]
index is not a valid file index in archive.
[]
Required memory could not be allocated.
[]
The archive was opened in read-only mode.

libzip(3), zip_stat(3)

zip_file_set_mtime() was added in libzip 1.0. zip_file_set_dostime() was added in libzip 1.6.

Dieter Baron <dillo@nih.at> and Thomas Klausner <tk@giga.or.at>

Following historical practice, the zip_file_set_mtime() function translates the time from the zip archive into the local time zone. If you want to avoid this, use the zip_file_set_dostime() function instead.
January 7, 2020 NetBSD 9.99.41