I think the simplest answer is to change the phrase "creation time" in
the pax description (everywhere in the ctime description) to "status
change time". The description for ctime would then read:
ctime The file status change time for the following file(s), equivalent
to the value of the st_ctime member of the stat structure for a file, as
described by the stat( ) function. The status change time shall be
restored if the process has the appropriate privilege required to do so.
The format of the <value> shall be as described in pax Extended Header
File Times (on page 714).
On Wed, 2003-03-19 at 08:54, yyyyy@xxxxxxxxxx wrote:
> Defect report from : Mark Brown , IBM
>
> (Please direct followup comments direct to yyyyyyyyyyyyyy@xxxxxxxxxxxxx)
>
> @ page 712 line 27484 section pax objection {IBM-03190301}
>
> Problem:
>
> Defect code : 1. Error
>
> There is a contradiction in the definition of the ctime keyword for
> pax's extended header:
>
> Definition of ctime extended header keyword:
> The file creation for the following file(s), equivalent to
> the value of the st_ctime member of the stat structure for a file, as
> described by the stat() function. The creation time shall be restored
> if the process has the appropriate privilege to do so.
>
> The trouble is that the st_ctime member of the stat structure does not
> refer to a file creation time. No field in the standard stat
> structure from <sys/stat.h> includes a file creation time.
>
> Given the definition of st_ctime in <sys/stat.h> as the time of the last
> status change and the lack of a direct mechanism to set the st_ctime
> field via the utime() interface, it seems like an error in the pax
> definition to allow a ctime keyword.
>
> In any case, there is at least an error in the description of the ctime
> keyword, since st_ctime does not indicate a file creation time.
>
>
> Action:
>
> Best Answer: remove the ctime keyword.
> Second best: redefine to "file status" time and give a hint on how to set it.
|