Dependencies: net lpc1768 crypto clock web log
http-derived/home/http-home-query.c
- Committer:
- andrewboyson
- Date:
- 2019-01-17
- Revision:
- 27:eb5728b9052b
- Child:
- 28:7fb6b4e9ab80
File content as of revision 27:eb5728b9052b:
#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 = HttpSplitQuery(pQuery, &pName, &pValue); if (strcmp(pName, "chg-clock-leap-enable" ) == 0) ClkUtcTglNextLeapEnable (); if (strcmp(pName, "chg-clock-leap-forward") == 0) ClkUtcTglNextLeapForward(); int months1970 = ClkUtcGetNextEpochMonth1970(); int months = months1970 % 12; int years = months1970 / 12; if (strcmp(pName, "set-clock-leap-year" ) == 0) { years = strtol(pValue, NULL, 10) - 1970; if (years < 0) years = 0; ClkUtcSetNextEpochMonth1970(years * 12 + months); } if (strcmp(pName, "set-clock-leap-month" ) == 0) { months = strtol(pValue, NULL, 10) - 1; if (months < 0) months = 0; ClkUtcSetNextEpochMonth1970(years * 12 + months); } if (strcmp(pName, "set-clock-leap-count" ) == 0) { uint16_t leaps = strtol(pValue, NULL, 10); ClkUtcSetEpochOffset(leaps); } int value = (int)strtol(pValue, NULL, 10); if (strcmp(pName, "ppb" ) == 0) ClkGovSetPpb (value ); if (strcmp(pName, "slewdivisor" ) == 0) SetClockSlewDivisor (value ); if (strcmp(pName, "slewmax" ) == 0) SetClockSlewMaxMs (value ); if (strcmp(pName, "ppbdivisor" ) == 0) SetClockPpbDivisor (value ); if (strcmp(pName, "ppbmaxchange" ) == 0) SetClockPpbChangeMax (value ); if (strcmp(pName, "syncedlimitns" ) == 0) SetClockSyncedLimitNs (value * 1000000 ); if (strcmp(pName, "syncedhysns" ) == 0) SetClockSyncedHysterisNs (value * 1000000 ); if (strcmp(pName, "syncedlimitppb") == 0) SetClockSyncedLimitPpb (value ); if (strcmp(pName, "syncedhysppb" ) == 0) SetClockSyncedHysterisPpb (value ); if (strcmp(pName, "maxoffsetsecs" ) == 0) SetClockMaxOffsetSecs (value ); if (strcmp(pName, "clockgovtrace" ) == 0) ChgTraceSync(); } }