#include time_t datetime2unix(datetime_t *datetime){ time_t result = 0; int schaltjahre = ((datetime->year - 1) - 1968)/4 - ((datetime->year - 1) - 1900)/100 + ((datetime->year - 1) - 1600)/400; int tage1970 = ((datetime->year - 1970) * 365) + schaltjahre + daysfromyearstart(datetime->month) + datetime->day; if ( (datetime->month>1) && ((datetime->year%4==0) && ((datetime->year%100!=0) || (datetime->year%400==0)))){ tage1970++; }; result = datetime->second + (60L * (datetime->minute + 60L * (datetime->hour + (24L * tage1970)))); return result; };