Евгений Степанищев

Я — эксперт в области разработки веб-приложений и безопасности в интернете. Каждый месяц мой блог посещают около 90 тысяч человек. Работаю техническим директором в «Системах документооборота», занимаюсь электронным правительством.

О блоггер, соловей старого времени! Как бы воспел ты битвы сии, скача соловьем по мысленну древу…

Началось то, о чём я говорил?
2 комментария
28 января 2009 20:01

Отпуск

fihalhohi (48.77КБ) Долгожданный отпуск. Если принять некоторые допущения, то отпуска у меня не было около 12 лет. Мы с женой в ночь с 13-го на 14-е февраля улетаем на Мальдивы на 15 дней, на небольшой остров Фихалхохи. Будем валяться на пляже, плавать в Индийском океане и отдыхать. Поэтому в интернете, скорее всего, с 13 февраля я буду появляться крайне редко, если вообще буду.

Не теряйте. Спасибо нашим друзьям из агентства «Киви-тур».
9 комментариев
28 января 2009 19:51

Магия libmapi

Можно я опять про libmapi?

В общем, из libmapi мне приходят два магических числа, они содержат диапазон — начало и конец периода, данные за который возвращает функция GetUserFreeBusyData. По внешнему виду видно, что это не unix timestamp (для несведующих, Unix timestamp - это число секунд с 1 января 1970 года).

По коду libmapi пытался выяснить что это. Код разбросан по файлам, но, в итоге, выглядит так:
// в t приходит <магическое число>

uint32_t t;
uint64_t time;
struct timespec ret;

time = t
time *= 60;
time *= 10000000;

ret.tv_nsec = (long) ((time % (1000 * 1000 * 10)) * 100);
d /= 1000*1000*10;

d -= 11644473600L;

// тут ещё парочка условий, которые не добавляют смысла

ret.tv_sec = (time_t)d;
В таком виде я так и не смог понять что это за число. Порыскав по поисковикам, наткнулся на пост, где упоминается, что это всего лишь число минут с 1 января 1601 года.

Так что мой итоговый код на Python выглядит (без системных вызовов) так:
publish_start, publish_end = map(
    lambda x: x * 60 - 11644473600, # 369 лет
     (publish_start, publish_end)
)
Комментировать
28 января 2009 19:50

О спорт, ты…?

Сегодня видел шоколад марки «Ritter. Sport» с алкоголем. Почему бы не выпускать сигареты «Лёгкая атлетика»? Водку «Вольная борьба»?
13 комментариев
28 января 2009 01:21