Dependencies: net lpc1768 crypto clock web log
http-derived/home/http-home-query.c
- Committer:
- andrewboyson
- Date:
- 2019-01-18
- Revision:
- 29:4fe0f237fd61
- Parent:
- 28:7fb6b4e9ab80
- Child:
- 43:bf39371b4576
File content as of revision 29:4fe0f237fd61:
#include <string.h> #include <stdlib.h> #include <stdio.h> #include "http.h" #include "clkgov.h" #include "clkutc.h" #include "led.h" #include "settings.h" void HttpHomeQuery(char* pQuery) { while (pQuery) { char* pName; char* pValue; pQuery = HttpQuerySplit(pQuery, &pName, &pValue); if (HttpSameStr(pName, "chg-clock-leap-enable" )) ClkUtcTglNextLeapEnable (); if (HttpSameStr(pName, "chg-clock-leap-forward")) ClkUtcTglNextLeapForward(); int months1970 = ClkUtcGetNextEpochMonth1970(); int months = months1970 % 12; int years = months1970 / 12; if (HttpSameStr(pName, "set-clock-leap-year" )) { years = strtol(pValue, NULL, 10) - 1970; if (years < 0) years = 0; ClkUtcSetNextEpochMonth1970(years * 12 + months); } if (HttpSameStr(pName, "set-clock-leap-month" )) { months = strtol(pValue, NULL, 10) - 1; if (months < 0) months = 0; ClkUtcSetNextEpochMonth1970(years * 12 + months); } if (HttpSameStr(pName, "set-clock-leap-count" )) { uint16_t leaps = strtol(pValue, NULL, 10); ClkUtcSetEpochOffset(leaps); } int value = (int)strtol(pValue, NULL, 10); if (HttpSameStr(pName, "ppb" )) ClkGovSetPpb (value ); if (HttpSameStr(pName, "slewdivisor" )) SetClockSlewDivisor (value ); if (HttpSameStr(pName, "slewmax" )) SetClockSlewMaxMs (value ); if (HttpSameStr(pName, "ppbdivisor" )) SetClockPpbDivisor (value ); if (HttpSameStr(pName, "ppbmaxchange" )) SetClockPpbChangeMax (value ); if (HttpSameStr(pName, "syncedlimitns" )) SetClockSyncedLimitNs (value * 1000000 ); if (HttpSameStr(pName, "syncedhysns" )) SetClockSyncedHysterisNs (value * 1000000 ); if (HttpSameStr(pName, "syncedlimitppb")) SetClockSyncedLimitPpb (value ); if (HttpSameStr(pName, "syncedhysppb" )) SetClockSyncedHysterisPpb (value ); if (HttpSameStr(pName, "maxoffsetsecs" )) SetClockMaxOffsetSecs (value ); if (HttpSameStr(pName, "clockgovtrace" )) ChgTraceSync(); } }