system: fix localtime value in ubus info method output
Function mktime respects current time zone and calling it results in
converting time back to the UTC. It means we were never returning a
time for local zone but GMT one.
The easiest solution is to use tm_gmtoff from struct tm. Unfortunately
this isn't part of POSIX but it seems to be the best idea anyway.
Alternative (worse?) solutions:
1) Use timegm that is nonstandard GNU extension
2) Work with TZ env (getenv & (un)setenv) that is not thread-safe
3) Use timegm (next to localtime) and implement function comparing two
struct tm. This is what glibc does internally (tm_diff) when compiled
without HAVE_TM_GMTOFF.
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>