The MASM Forum

Projects => Rarely Used Projects => GoAsm => Topic started by: Yuri on June 04, 2013, 02:54:17 PM

Title: GoAsm, GoLink & PE headers
Post by: Yuri on June 04, 2013, 02:54:17 PM
GoAsm, GoRC and GoLink seem to write the time stamp in the file header in local time. Shouldn't it be UTC? As a result, when I use dumpbin on an .obj or .exe I have just created, it displays a time 6 hours ahead of my local time.

Also GoLink puts its version (0.28) in the optional header as 0 and 28h. But that is actually 0.40 in decimal. So I think it should be 1Ch.
Title: Re: GoAsm, GoLink & PE headers
Post by: Vortex on June 05, 2013, 03:36:02 AM
Hi Yuri,

Quote
time stamp in the file header in local time

a time 6 hours ahead of my local time.

Your statements seems to be conflicting. Is it exactly your local time or local time + 6 ? I analyzed an executable built with GoAsm and GoLink. The IMAGE_FILE_HEADER structure's time date stamp is displaying my local time.
Title: Re: GoAsm, GoLink & PE headers
Post by: Yuri on June 05, 2013, 06:51:25 AM
Hi Vortex,

Dumpbin converts the time stamp into local time according to the time zone. But the time in the header is already local, not UTC, so the result, in my case, is 6 hours ahead of what it is supposed to be.
Title: Re: GoAsm, GoLink & PE headers
Post by: wjr on June 05, 2013, 02:41:31 PM
While working on the next GoLink update I have already noticed/fixed the version number. As for the TimeDateStamp, it should be the number of seconds since 00:00:00, January 1, 1970, UTC. So yes, this would also be a UTC. That was relatively easy to fix and will be in the next GoLink update (I will look into the other tools too)... thanks!
Title: Re: GoAsm, GoLink & PE headers
Post by: Yuri on June 05, 2013, 05:06:15 PM
Thanks, Wayne!
Title: Re: GoAsm, GoLink & PE headers
Post by: Vortex on June 06, 2013, 03:22:30 AM
Hi Yuri,

Thanks for the information.