-#if WITH_LEGACY_BINDING_V1
-static int xreq_session_check_apply_v1(struct afb_xreq *xreq, int sessionflags)
-{
- int loa;
-
- if ((sessionflags & (AFB_SESSION_CLOSE_X1|AFB_SESSION_RENEW_X1|AFB_SESSION_CHECK_X1|AFB_SESSION_LOA_EQ_X1)) != 0) {
- if (!afb_context_check(&xreq->context)) {
- afb_context_close(&xreq->context);
- return afb_xreq_reply_invalid_token(xreq);
- }
- }
-
- if ((sessionflags & AFB_SESSION_LOA_GE_X1) != 0) {
- loa = (sessionflags >> AFB_SESSION_LOA_SHIFT_X1) & AFB_SESSION_LOA_MASK_X1;
- if (!afb_context_check_loa(&xreq->context, loa))
- return afb_xreq_reply_insufficient_scope(xreq, "invalid LOA");
- }
-
- if ((sessionflags & AFB_SESSION_LOA_LE_X1) != 0) {
- loa = (sessionflags >> AFB_SESSION_LOA_SHIFT_X1) & AFB_SESSION_LOA_MASK_X1;
- if (afb_context_check_loa(&xreq->context, loa + 1))
- return afb_xreq_reply_insufficient_scope(xreq, "invalid LOA");
- }
-
- if ((sessionflags & AFB_SESSION_CLOSE_X1) != 0) {
- afb_context_change_loa(&xreq->context, 0);
- afb_context_close(&xreq->context);
- }
-
- return 0;
-}
-#endif
-
-static int xreq_session_check_apply_v2(struct afb_xreq *xreq, uint32_t sessionflags, const struct afb_auth *auth)
-{
- int loa;
-
- if (sessionflags != 0) {
- if (!afb_context_check(&xreq->context)) {
- afb_context_close(&xreq->context);
- return afb_xreq_reply_invalid_token(xreq);
- }
- }
-
- loa = (int)(sessionflags & AFB_SESSION_LOA_MASK_X2);
- if (loa && !afb_context_check_loa(&xreq->context, loa))
- return afb_xreq_reply_insufficient_scope(xreq, "invalid LOA");
-
- if (auth && !afb_auth_check(xreq, auth))
- return afb_xreq_reply_insufficient_scope(xreq, NULL /* TODO */);
-
- if ((sessionflags & AFB_SESSION_CLOSE_X2) != 0)
- afb_context_close(&xreq->context);
-
- return 0;
-}
-