X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;f=src%2Fsession.h;h=0862b37b1f3a85925c5e54316b66ac951618d020;hb=1205c90cccd3144bab24b4b5fd8dcbf0d0e6b570;hp=6c0b1d8970d4f92bf5c3c1f8a8c7933ab3d3a4af;hpb=cc4b56b6710624c069642d1a510d0060949fe5b9;p=src%2Fapp-framework-binder.git diff --git a/src/session.h b/src/session.h index 6c0b1d89..0862b37b 100644 --- a/src/session.h +++ b/src/session.h @@ -14,11 +14,31 @@ * See the License for the specific language governing permissions and * limitations under the License. */ +// User Client Session Context +struct AFB_clientCtx +{ + time_t timeStamp; // last time token was refresh + int restfull; // client does not use cookie + void **contexts; // application specific context [one per plugin]] + char uuid[37]; // long term authentication of remote client + char token[37]; // short term authentication of remote client +}; +typedef struct AFB_clientCtx AFB_clientCtx; + +/* extern AFB_error ctxTokenRefresh (AFB_clientCtx *clientCtx, AFB_request *request); extern AFB_error ctxTokenCreate (AFB_clientCtx *clientCtx, AFB_request *request); extern AFB_error ctxTokenCheck (AFB_clientCtx *clientCtx, AFB_request *request); extern AFB_error ctxTokenReset (AFB_clientCtx *clientCtx, AFB_request *request); extern AFB_clientCtx *ctxClientGet (AFB_request *request); -extern void ctxStoreInit (int nbSession, int timeout, int apicount); +*/ +extern void ctxStoreGarbage (); + +extern void ctxStoreInit (int nbSession, int timeout, int apicount, const char *initok); + +extern AFB_clientCtx *_ctxClientGet (const char *uuid); +extern AFB_error _ctxClientDel (AFB_clientCtx *clientCtx); +extern AFB_error _ctxTokenCheck (AFB_clientCtx *clientCtx, const char *token); +extern AFB_error _ctxTokenNew (AFB_clientCtx *clientCtx);