vsftpd-2.0.3在linux2.6.9下面的关于localtime的bug?



看了vsftpd的source,在sysutil.c的vsf_sysutil_statbuf_get_date方法里有这么一段:
  if (!use_localtime)
  {
    p_tm = gmtime(&p_stat->st_mtime);    
  }
  else
  {
    p_tm = localtime(&p_stat->st_mtime);
  }
这里无论走那条分支都是取得了UTC时间。没有再查下去。
方法:
在这下面加上一段手工调整时区:
p_tm->tm_hour += timezone;
if (p_tm->tm_hour >= 24) {
        p_tm->tm_hour -= 24;
        p_tm->tm_mday += 1;
}
凑合着用吧。

阅读更多
文章标签: linux timezone date
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭