home *** CD-ROM | disk | FTP | other *** search
- From: guy@auspex.uucp (Guy Harris)
-
-
- >I am having some difficulty following the above. How can a portable
- >application do anything to vendor-defined fields?
-
- That's precisely the problem.
-
- >Isn't the application non-portable as soon as it does anything (read or write)
- >to a vendor-defined field?
-
- Yup. Unfortunately, the application is non-functional (at least not
- *correctly* functional) if it *doesn't* initialize the vendor-defined
- fields of a structure that's handed to the system, unless the system can
- somehow always figure out that they haven't been initialized - e.g., if
- there's some flag field in the structure that *is* specified by the
- standard, and you have to set some flag in that field *not* specified by
- the standard in order to get the system to look at the other fields not
- in the standard.
-
- Unfortunately, in the case of "utime()", there's no such flag, so a
- portable application can, at best, only avoid setting the microseconds
- values of a file's accessed or modified times to some random value by
- "memset"ting the entire "utimbuf" structure to zero before filling it in
- and using it (or otherwise ensuring that the structure is zero before
- using it, e.g. using a static structure).
-
-
- Volume-Number: Volume 21, Number 20
-
-