@@ -100,7 +100,7 @@
< / tr >
< tr >
< td class = "danger" colspan = "4" > < a href = "#45 " > < abbr title = "create(int $code, Psr\Http\Message\ServerRequestInterface $request, ?Throwable $previous): self" > create< / abbr > < / a > < / td >
< td class = "danger" colspan = "4" > < a href = "#47 " > < abbr title = "create(int $code, Psr\Http\Message\ServerRequestInterface $request, ?Throwable $previous): self" > create< / abbr > < / a > < / td >
< td class = "danger big" > < div class = "progress" >
< div class = "progress-bar bg-danger" role = "progressbar" aria-valuenow = "0.00" aria-valuemin = "0" aria-valuemax = "100" style = "width: 0.00%" >
< span class = "sr-only" > 0.00% covered (danger)< / span >
@@ -121,7 +121,7 @@
< / tr >
< tr >
< td class = "success" colspan = "4" > < a href = "#56 " > < abbr title = "getStatusCode()" > getStatusCode< / abbr > < / a > < / td >
< td class = "success" colspan = "4" > < a href = "#58 " > < abbr title = "getStatusCode()" > getStatusCode< / abbr > < / a > < / td >
< td class = "success big" > < div class = "progress" >
< div class = "progress-bar bg-success" role = "progressbar" aria-valuenow = "100.00" aria-valuemin = "0" aria-valuemax = "100" style = "width: 100.00%" >
< span class = "sr-only" > 100.00% covered (success)< / span >
@@ -142,7 +142,7 @@
< / tr >
< tr >
< td class = "danger" colspan = "4" > < a href = "#60 " > < abbr title = "getExplanation()" > getExplanation< / abbr > < / a > < / td >
< td class = "danger" colspan = "4" > < a href = "#62 " > < abbr title = "getExplanation()" > getExplanation< / abbr > < / a > < / td >
< td class = "danger big" > < div class = "progress" >
< div class = "progress-bar bg-danger" role = "progressbar" aria-valuenow = "0.00" aria-valuemin = "0" aria-valuemax = "100" style = "width: 0.00%" >
< span class = "sr-only" > 0.00% covered (danger)< / span >
@@ -163,7 +163,7 @@
< / tr >
< tr >
< td class = "success" colspan = "4" > < a href = "#64 " > < abbr title = "getInfo()" > getInfo< / abbr > < / a > < / td >
< td class = "success" colspan = "4" > < a href = "#66 " > < abbr title = "getInfo()" > getInfo< / abbr > < / a > < / td >
< td class = "success big" > < div class = "progress" >
< div class = "progress-bar bg-success" role = "progressbar" aria-valuenow = "100.00" aria-valuemin = "0" aria-valuemax = "100" style = "width: 100.00%" >
< span class = "sr-only" > 100.00% covered (success)< / span >
@@ -184,7 +184,7 @@
< / tr >
< tr >
< td class = "danger" colspan = "4" > < a href = "#75 " > < abbr title = "trustQueryParams()" > trustQueryParams< / abbr > < / a > < / td >
< td class = "danger" colspan = "4" > < a href = "#77 " > < abbr title = "trustQueryParams()" > trustQueryParams< / abbr > < / a > < / td >
< td class = "danger big" > < div class = "progress" >
< div class = "progress-bar bg-danger" role = "progressbar" aria-valuenow = "0.00" aria-valuemin = "0" aria-valuemax = "100" style = "width: 0.00%" >
< span class = "sr-only" > 0.00% covered (danger)< / span >
@@ -205,7 +205,7 @@
< / tr >
< tr >
< td class = "success" colspan = "4" > < a href = "#80 " > < abbr title = "getRequest()" > getRequest< / abbr > < / a > < / td >
< td class = "success" colspan = "4" > < a href = "#82 " > < abbr title = "getRequest()" > getRequest< / abbr > < / a > < / td >
< td class = "success big" > < div class = "progress" >
< div class = "progress-bar bg-success" role = "progressbar" aria-valuenow = "100.00" aria-valuemin = "0" aria-valuemax = "100" style = "width: 100.00%" >
< span class = "sr-only" > 100.00% covered (success)< / span >
@@ -254,66 +254,68 @@
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "21" href = "#21" > 21< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "keyword" > const< / span > < span class = "default" > < / span > < span class = "default" > INVALID_SCOPE< / span > < span class = "default" > < / span > < span class = "keyword" > =< / span > < span class = "default" > < / span > < span class = "default" > 11< / span > < span class = "keyword" > ;< / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "22" href = "#22" > 22< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "keyword" > const< / span > < span class = "default" > < / span > < span class = "default" > INVALID_GRANT< / span > < span class = "default" > < / span > < span class = "keyword" > =< / span > < span class = "default" > < / span > < span class = "default" > 12< / span > < span class = "keyword" > ;< / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "23" href = "#23" > 23< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "keyword" > const< / span > < span class = "default" > < / span > < span class = "default" > INVALID_REQUEST< / span > < span class = "default" > < / span > < span class = "keyword" > =< / span > < span class = "default" > < / span > < span class = "default" > 13< / span > < span class = "keyword" > ;< / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "24" href = "#24" > 24< / a > < / td > < td class = "col-11 codeLine" > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "25" href = "#25" > 25< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "keyword" > const< / span > < span class = "default" > < / span > < span class = "default" > EXC_INFO< / span > < span class = "default" > < / span > < span class = "keyword" > =< / span > < span class = "default" > < / span > < span class = "keyword" > [< / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "26" href = "#26" > 26< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "default" > self< / span > < span class = "default" > ::< / span > < span class = "default" > INTERNAL_ERROR< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "keyword" > [< / span > < span class = "default" > 'statusCode'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 500< / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > 'name'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 'Internal Server Error'< / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > 'explanation'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 'An internal server error occurred.'< / span > < span class = "keyword" > ]< / span > < span class = "keyword" > ,< / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "27" href = "#27" > 27< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "default" > self< / span > < span class = "default" > ::< / span > < span class = "default" > INTERNAL_ERROR_REDIRECT < / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "keyword" > [< / span > < span class = "default" > 'statusCode'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 302 < / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > 'name'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 'Internal Server Error'< / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > 'error '< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 'internal_error '< / span > < span class = "keyword" > ]< / span > < span class = "keyword" > ,< / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "28" href = "#28" > 28< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "default" > self< / span > < span class = "default" > ::< / span > < span class = "default" > AUTHENTICATION_CALLBACK_MISSING_ME_PARAM < / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "keyword" > [< / span > < span class = "default" > 'statusCode'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 302< / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > 'name'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 'Internal Server Error'< / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > 'error'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 'internal_error'< / span > < span class = "keyword" > ]< / span > < span class = "keyword" > ,< / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "29" href = "#29" > 29< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "default" > self< / span > < span class = "default" > ::< / span > < span class = "default" > AUTHORIZ ATION_APPROVAL_REQUEST _MISSING_HASH < / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "keyword" > [< / span > < span class = "default" > 'statusCode'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 302< / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > 'name'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 'Request Missing Hash '< / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > 'error'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 'internal_error'< / span > < span class = "keyword" > ]< / span > < span class = "keyword" > ,< / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "30" href = "#30" > 30< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "default" > self< / span > < span class = "default" > ::< / span > < span class = "default" > AUTHORIZATION_APPROVAL_REQUEST_INVALID _HASH< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "keyword" > [< / span > < span class = "default" > 'statusCode'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 302< / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > 'name'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 'Request Hash Invalid '< / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > 'error'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 'internal_error'< / span > < span class = "keyword" > ]< / span > < span class = "keyword" > ,< / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "31" href = "#31" > 31< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "commen t" > // TODO: should this one be a 500 because it’ s an internal server error, or a 400 because the client_id was likely invalid? Is anyone ever going to notice, or care? < / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "32" href = "#32" > 32< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "defaul t" > self< / span > < span class = "default" > ::< / span > < span class = "default" > HTTP_EXCEPTION_FETCHING_CLIENT_ID< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "keyword" > [< / span > < span class = "default" > 'statusCode'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 500< / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > 'name'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 'E rror Fetching Client App URL'< / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > 'explanation'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 'Fetching the client app (client_id) failed.'< / span > < span class = "keyword" > ]< / span > < span class = "keyword" > , < / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "33" href = "#33" > 33< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "default" > self< / span > < span class = "default" > ::< / span > < span class = "default" > INTERNAL _EXCEPTION_FETCHING_CLIENT_ID< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "keyword" > [< / span > < span class = "default" > 'statusCode'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 500< / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > 'name'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 'Internal Error f etching c lient a pp URI '< / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > 'explanation'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 'Fetching the client app (client_id) failed due to an internal error .'< / span > < span class = "keyword" > ]< / span > < span class = "keyword" > ,< / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "34" href = "#34" > 34< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "default" > self< / span > < span class = "default" > ::< / span > < span class = "default" > INVALID_REDIRECT_URI < / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "keyword" > [< / span > < span class = "default" > 'statusCode'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 4 00< / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > 'name'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 'Invalid Client App Redirect URI'< / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > 'explanation'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 'The client app redirect URI (redirect_uri) either was not a valid URI, did not sufficiently match client_id, or did not exactly match any redirect URIs parsed from fetching the client_id .'< / span > < span class = "keyword" > ]< / span > < span class = "keyword" > ,< / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "35" href = "#35" > 35< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "default" > self< / span > < span class = "default" > ::< / span > < span class = "default" > INVALID_CLIENT_ID < / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "keyword" > [< / span > < span class = "default" > 'statusCode'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 400< / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > 'name'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 'Invalid Client Identifier URI'< / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > 'explanation'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 'The C lient Identifier was not val id.'< / span > < span class = "keyword" > ]< / span > < span class = "keyword" > ,< / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "36" href = "#36" > 36< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "default" > self< / span > < span class = "default" > ::< / span > < span class = "default" > INVALID_STATE < / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "keyword" > [< / span > < span class = "default" > 'statusCode'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 302 < / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > 'name'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 'Invalid state Parameter '< / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > 'error '< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 'invalid_request '< / span > < span class = "keyword" > ]< / span > < span class = "keyword" > ,< / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "37" href = "#37" > 37< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "default" > self< / span > < span class = "default" > ::< / span > < span class = "default" > INVALID_CODE_CHALLENG E< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "keyword" > [< / span > < span class = "default" > 'statusCode'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 302< / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > 'name'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 'Invalid code_challeng e Parameter'< / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > 'error'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 'invalid_request'< / span > < span class = "keyword" > ]< / span > < span class = "keyword" > ,< / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "38" href = "#38" > 38< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "default" > self< / span > < span class = "default" > ::< / span > < span class = "default" > INVALID_S COP E< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "keyword" > [< / span > < span class = "default" > 'statusCode'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 302< / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > 'name'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 'Invalid s cop e Parameter'< / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > 'error'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 'invalid_request'< / span > < span class = "keyword" > ]< / span > < span class = "keyword" > ,< / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "39" href = "#39" > 39< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "default" > self< / span > < span class = "default" > ::< / span > < span class = "default" > INVALID_GRANT < / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "keyword" > [< / span > < span class = "default" > 'statusCode'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 400 < / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > 'name'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 'The provided credentials were not valid. '< / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > 'error'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 'invalid_gran t'< / span > < span class = "keyword" > ]< / span > < span class = "keyword" > ,< / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "40" href = "#40" > 40< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "default" > self< / span > < span class = "default" > ::< / span > < span class = "default" > INVALID_REQUES T< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "keyword" > [< / span > < span class = "default" > 'statusCode'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 400< / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > 'name'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 'Invalid Request '< / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > 'error'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 'invalid_reques t'< / span > < span class = "keyword" > ]< / span > < span class = "keyword" > ,< / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "41" href = "#41" > 41< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "keyword" > ]< / span > < span class = "keyword" > ;< / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "42" href = "#42" > 42< / a > < / td > < td class = "col-11 codeLine" > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "43" href = "#43" > 43< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "keyword" > protected< / span > < span class = "default" > < / span > < span class = "default" > ServerRequestInterface< / span > < span class = "default" > < / span > < span class = "default" > $request < / span > < span class = "keyword" > ;< / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "24" href = "#24" > 24< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "keyword" > const< / span > < span class = "default" > < / span > < span class = "default" > INVALID_REQUEST_REDIRECT< / span > < span class = "default" > < / span > < span class = "keyword" > =< / span > < span class = "default" > < / span > < span class = "default" > 14< / span > < span class = "keyword" > ;< / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "25" href = "#25" > 25< / a > < / td > < td class = "col-11 codeLine" > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "26" href = "#26" > 26< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "keyword" > const< / span > < span class = "default" > < / span > < span class = "default" > EXC_INFO< / span > < span class = "default" > < / span > < span class = "keyword" > =< / span > < span class = "default" > < / span > < span class = "keyword" > [< / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "27" href = "#27" > 27< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "default" > self< / span > < span class = "default" > ::< / span > < span class = "default" > INTERNAL_ERROR< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "keyword" > [< / span > < span class = "default" > 'statusCode'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 500 < / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > 'name'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 'Internal Server Error'< / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > 'explanation '< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 'An internal server error occurred. '< / span > < span class = "keyword" > ]< / span > < span class = "keyword" > ,< / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "28" href = "#28" > 28< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "default" > self< / span > < span class = "default" > ::< / span > < span class = "default" > INTERNAL_ERROR_REDIRECT < / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "keyword" > [< / span > < span class = "default" > 'statusCode'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 302< / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > 'name'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 'Internal Server Error'< / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > 'error'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 'internal_error'< / span > < span class = "keyword" > ]< / span > < span class = "keyword" > ,< / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "29" href = "#29" > 29< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "default" > self< / span > < span class = "default" > ::< / span > < span class = "default" > AUTHENTIC ATION_CALLBACK _MISSING_ME_PARAM < / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "keyword" > [< / span > < span class = "default" > 'statusCode'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 302< / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > 'name'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 'Internal Server Error '< / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > 'error'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 'internal_error'< / span > < span class = "keyword" > ]< / span > < span class = "keyword" > ,< / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "30" href = "#30" > 30< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "default" > self< / span > < span class = "default" > ::< / span > < span class = "default" > AUTHORIZATION_APPROVAL_REQUEST_MISSING _HASH< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "keyword" > [< / span > < span class = "default" > 'statusCode'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 302< / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > 'name'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 'Request Missing Hash '< / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > 'error'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 'internal_error'< / span > < span class = "keyword" > ]< / span > < span class = "keyword" > ,< / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "31" href = "#31" > 31< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "defaul t" > self< / span > < span class = "default" > ::< / span > < span class = "default" > AUTHORIZATION_APPROVAL_REQUEST_INVALID_HASH< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "keyword" > [< / span > < span class = "default" > 'statusCode'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 302< / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > 'name'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 'Request Hash Invalid'< / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > 'error'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 'internal_error'< / span > < span class = "keyword" > ]< / span > < span class = "keyword" > , < / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "32" href = "#32" > 32< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "commen t" > // TODO: should this one be a 500 because it’ s an internal server e rror, or a 400 because the client_id was likely invalid? Is anyone ever going to notice, or care? < / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "33" href = "#33" > 33< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "default" > self< / span > < span class = "default" > ::< / span > < span class = "default" > HTTP _EXCEPTION_FETCHING_CLIENT_ID< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "keyword" > [< / span > < span class = "default" > 'statusCode'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 500< / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > 'name'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 'Error F etching C lient A pp URL '< / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > 'explanation'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 'Fetching the client app (client_id) failed.'< / span > < span class = "keyword" > ]< / span > < span class = "keyword" > ,< / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "34" href = "#34" > 34< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "default" > self< / span > < span class = "default" > ::< / span > < span class = "default" > INTERNAL_EXCEPTION_FETCHING_CLIENT_ID < / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "keyword" > [< / span > < span class = "default" > 'statusCode'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 5 00< / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > 'name'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 'Internal Error fetching client app URI'< / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > 'explanation'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 'Fetching the client app ( client_id) failed due to an internal error .'< / span > < span class = "keyword" > ]< / span > < span class = "keyword" > ,< / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "35" href = "#35" > 35< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "default" > self< / span > < span class = "default" > ::< / span > < span class = "default" > INVALID_REDIRECT_URI < / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "keyword" > [< / span > < span class = "default" > 'statusCode'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 400< / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > 'name'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 'Invalid Client App Redirect URI'< / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > 'explanation'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 'The c lient app redirect URI (redirect_uri) either was not a valid URI, did not sufficiently match client_id, or did not exactly match any redirect URIs parsed from fetching the client_ id.'< / span > < span class = "keyword" > ]< / span > < span class = "keyword" > ,< / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "36" href = "#36" > 36< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "default" > self< / span > < span class = "default" > ::< / span > < span class = "default" > INVALID_CLIENT_ID < / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "keyword" > [< / span > < span class = "default" > 'statusCode'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 400 < / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > 'name'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 'Invalid Client Identifier URI '< / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > 'explanation '< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 'The Client Identifier was not valid. '< / span > < span class = "keyword" > ]< / span > < span class = "keyword" > ,< / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "37" href = "#37" > 37< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "default" > self< / span > < span class = "default" > ::< / span > < span class = "default" > INVALID_STAT E< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "keyword" > [< / span > < span class = "default" > 'statusCode'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 302< / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > 'name'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 'Invalid stat e Parameter'< / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > 'error'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 'invalid_request'< / span > < span class = "keyword" > ]< / span > < span class = "keyword" > ,< / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "38" href = "#38" > 38< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "default" > self< / span > < span class = "default" > ::< / span > < span class = "default" > INVALID_CODE_CHALLENG E< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "keyword" > [< / span > < span class = "default" > 'statusCode'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 302< / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > 'name'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 'Invalid code_challeng e Parameter'< / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > 'error'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 'invalid_request'< / span > < span class = "keyword" > ]< / span > < span class = "keyword" > ,< / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "39" href = "#39" > 39< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "default" > self< / span > < span class = "default" > ::< / span > < span class = "default" > INVALID_SCOPE < / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "keyword" > [< / span > < span class = "default" > 'statusCode'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 302 < / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > 'name'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 'Invalid scope Parameter '< / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > 'error'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 'invalid_reques t'< / span > < span class = "keyword" > ]< / span > < span class = "keyword" > ,< / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "40" href = "#40" > 40< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "default" > self< / span > < span class = "default" > ::< / span > < span class = "default" > INVALID_GRAN T< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "keyword" > [< / span > < span class = "default" > 'statusCode'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 400< / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > 'name'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 'The provided credentials were not valid. '< / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > 'error'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 'invalid_gran t'< / span > < span class = "keyword" > ]< / span > < span class = "keyword" > ,< / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "41" href = "#41" > 41< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "default" > self< / span > < span class = "default" > ::< / span > < span class = "default" > INVALID_REQUEST< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "keyword" > [< / span > < span class = "default" > 'statusCode'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 400< / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > 'name'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 'Invalid Request'< / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > 'error'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 'invalid_request'< / span > < span class = "keyword" > ]< / span > < span class = "keyword" > ,< / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "42" href = "#42" > 42< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "default" > self< / span > < span class = "default" > ::< / span > < span class = "default" > INVALID_REQUEST_REDIRECT< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "keyword" > [< / span > < span class = "default" > 'statusCode'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 302< / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > 'name'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 'Invalid Request'< / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > 'error'< / span > < span class = "default" > < / span > < span class = "default" > => < / span > < span class = "default" > < / span > < span class = "default" > 'invalid_request'< / span > < span class = "keyword" > ]< / span > < span class = "keyword" > ,< / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "43" href = "#43" > 43< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "keyword" > ] < / span > < span class = "keyword" > ;< / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "44" href = "#44" > 44< / a > < / td > < td class = "col-11 codeLine" > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "45" href = "#45" > 45< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "keyword" > public< / span > < span class = "default" > < / span > < span class = "keyword" > static< / span > < span class = "default" > < / span > < span class = "keyword" > function< / span > < span class = "default" > < / span > < span class = "default" > create< / span > < span class = "keyword" > (< / span > < span class = "default" > int< / span > < span class = "default" > < / span > < span class = "default" > $code< / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > ServerRequestInterface< / span > < span class = "default" > < / span > < span class = "default" > $request< / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "keyword" > ?< / span > < span class = "default" > Throwable< / span > < span class = "default" > < / span > < span class = "default" > $previous< / span > < span class = "keyword" > =< / span > < span class = "default" > null< / span > < span class = "keyword" > )< / span > < span class = "keyword" > :< / span > < span class = "default" > < / span > < span class = "default" > self< / span > < span class = "default" > < / span > < span class = "keyword" > { < / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "46" href = "#46" > 46< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "comment" > // Only accept known codes. Default to 0 (generic internal error) on an unrecognised code.< / span > < / td > < / tr >
< tr class = "covered-by-large-tests popin d-flex" > < td data-title = "15 tests cover line 47" data-content = "<ul><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testAuthorizationEndpointReturnsErrorOnMissingParameter</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testAuthorizationRequestWithInvalidClientIdOrRedirectUriShowsErrorToUser</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testInvalidStateCodeChallengeOrScopeReturnErrorRedirects</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testHandlesValidAndInvalidMeUrlsCorrectly</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsServerErrorIfAuthenticationResultHasNoMeKey</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnErrorIfFetchingClientIdThrowsException</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsErrorIfRedirectUriDoesntMatchClientIdWithNoParsedRedirectUris</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsErrorIfRedirectUriDoesntMatchClientIdOrParsedRedirectUris</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsErrorIfApprovalRequestHasNoHash</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsErrorIfApprovalRequestHasInvalidHash</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsInternalServerErrorIfAuthCodeCannotBeStored</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testExchangeFlowsReturnErrorOnInvalidParameters</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testAuthEndpointTokenExchangeFailsForTokensWithInvalidScope</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testTokenEndpointReturnsErrorIfAccessCodeGrantsNoScopes</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testNonIndieAuthRequestWithDefaultHandlerReturnsError</li></ul>" data-placement = "top" data-html = "true" class = "col-1 text-right" > < a id = "47" href = "#47 " > 47 < / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "keyword" > if < / span > < span class = "default" > < / span > < span class = "keyword" > ( < / span > < span class = "keyword" > ! < / span > < span class = "default" > in_array < / span > < span class = "keyword" > ( < / span > < span class = "default" > $code < / span > < span class = "keyword" > , < / span > < span class = "default" > < / span > < span class = "default" > array_keys < / span > < span class = "keyword" > ( < / span > < span class = "default " > self < / span > < span class = "default" > :: < / span > < span class = "default" > EXC_INFO < / span > < span class = "keyword" > ) < / span > < span class = "keyword" > ) < / span > < span class = "keyword " > ) < / span > < span class = "default" > < / span > < span class = "keyword" > {< / span > < / td > < / tr >
< tr class = "danger d-flex" > < td class = "col-1 text-right" > < a id = "48" href = "#48" > 48< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "defaul t" > $code< / span > < span class = "default" > < / span > < span class = "keyword" > =< / span > < span class = "default" > < / span > < span class = "default" > 0< / span > < span class = "keyword" > ; < / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "49" href = "#49" > 49< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "keyword" > } < / span > < / td > < / tr >
< tr class = "covered-by-large-tests popin d-flex" > < td data-title = "15 tests cover line 50" data-content = "<ul><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testAuthorizationEndpointReturnsErrorOnMissingParameter</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testAuthorizationRequestWithInvalidClientIdOrRedirectUriShowsErrorToUser</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testInvalidStateCodeChallengeOrScopeReturnErrorRedirects</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testHandlesValidAndInvalidMeUrlsCorrectly</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsServerErrorIfAuthenticationResultHasNoMeKey</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnErrorIfFetchingClientIdThrowsException</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsErrorIfRedirectUriDoesntMatchClientIdWithNoParsedRedirectUris</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsErrorIfRedirectUriDoesntMatchClientIdOrParsedRedirectUris</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsErrorIfApprovalRequestHasNoHash</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsErrorIfApprovalRequestHasInvalidHash</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsInternalServerErrorIfAuthCodeCannotBeStored</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testExchangeFlowsReturnErrorOnInvalidParameters</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testAuthEndpointTokenExchangeFailsForTokensWithInvalidScope</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testTokenEndpointReturnsErrorIfAccessCodeGrantsNoScopes</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testNonIndieAuthRequestWithDefaultHandlerReturnsError</li></ul>" data-placement = "top" data-html = "true" class = "col-1 text-right" > < a id = "50" href = "#50" > 50< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "default" > $message< / span > < span class = "default" > < / span > < span class = "keyword" > =< / span > < span class = "default" > < / span > < span class = "default" > self < / span > < span class = "default" > ::< / span > < span class = "default" > EXC_INFO < / span > < span class = "keyword" > [ < / span > < span class = "default" > $code< / span > < span class = "keyword" > ]< / span > < span class = "keyword" > [< / span > < span class = "default" > 'name'< / span > < span class = "keyword" > ] < / span > < span class = "keyword" > ;< / span > < / td > < / tr >
< tr class = "covered-by-large-tests popin d-flex" > < td data-title = "15 tests cover line 51" data-content = "<ul><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testAuthorizationEndpointReturnsErrorOnMissingParameter</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testAuthorizationRequestWithInvalidClientIdOrRedirectUriShowsErrorToUser</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testInvalidStateCodeChallengeOrScopeReturnErrorRedirects</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testHandlesValidAndInvalidMeUrlsCorrectly</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsServerErrorIfAuthenticationResultHasNoMeKey</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnErrorIfFetchingClientIdThrowsException</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsErrorIfRedirectUriDoesntMatchClientIdWithNoParsedRedirectUris</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsErrorIfRedirectUriDoesntMatchClientIdOrParsedRedirectUris</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsErrorIfApprovalRequestHasNoHash</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsErrorIfApprovalRequestHasInvalidHash</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsInternalServerErrorIfAuthCodeCannotBeStored</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testExchangeFlowsReturnErrorOnInvalidParameters</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testAuthEndpointTokenExchangeFailsForTokensWithInvalidScope</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testTokenEndpointReturnsErrorIfAccessCodeGrantsNoScopes</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testNonIndieAuthRequestWithDefaultHandlerReturnsError</li></ul>" data-placement = "top" data-html = "true" class = "col-1 text-right" > < a id = "51" href = "#51" > 51< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "default" > $e< / span > < span class = "default" > < / span > < span class = "keyword" > =< / span > < span class = "default" > < / span > < span class = "keyword" > new< / span > < span class = "default" > < / span > < span class = "default" > self< / span > < span class = "keyword" > (< / span > < span class = "default" > $message< / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > $code< / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > $previous< / span > < span class = "keyword" > )< / span > < span class = "keyword" > ; < / span > < / td > < / tr >
< tr class = "covered-by-large-tests popin d-flex" > < td data-title = "15 tests cover line 52" data-content = "<ul><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testAuthorizationEndpointReturnsErrorOnMissingParameter</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testAuthorizationRequestWithInvalidClientIdOrRedirectUriShowsErrorToUser</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testInvalidStateCodeChallengeOrScopeReturnErrorRedirects</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testHandlesValidAndInvalidMeUrlsCorrectly</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsServerErrorIfAuthenticationResultHasNoMeKey</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnErrorIfFetchingClientIdThrowsException</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsErrorIfRedirectUriDoesntMatchClientIdWithNoParsedRedirectUris</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsErrorIfRedirectUriDoesntMatchClientIdOrParsedRedirectUris</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsErrorIfApprovalRequestHasNoHash</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsErrorIfApprovalRequestHasInvalidHash</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsInternalServerErrorIfAuthCodeCannotBeStored</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testExchangeFlowsReturnErrorOnInvalidParameters</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testAuthEndpointTokenExchangeFailsForTokensWithInvalidScope</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testTokenEndpointReturnsErrorIfAccessCodeGrantsNoScopes</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testNonIndieAuthRequestWithDefaultHandlerReturnsError</li></ul>" data-placement = "top" data-html = "true" class = "col-1 text-right" > < a id = "52" href = "#52" > 52< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "default" > $e< / span > < span class = "default" > - > ; < / span > < span class = "default" > request< / span > < span class = "default" > < / span > < span class = "keyword" > = < / span > < span class = "default" > < / span > < span class = "default" > $request< / span > < span class = "keyword" > ;< / span > < / td > < / tr >
< tr class = "covered-by-large-tests popin d-flex" > < td data-title = "15 tests cover line 53" data-content = "<ul><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testAuthorizationEndpointReturnsErrorOnMissingParameter</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testAuthorizationRequestWithInvalidClientIdOrRedirectUriShowsErrorToUser</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testInvalidStateCodeChallengeOrScopeReturnErrorRedirects</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testHandlesValidAndInvalidMeUrlsCorrectly</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsServerErrorIfAuthenticationResultHasNoMeKey</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnErrorIfFetchingClientIdThrowsException</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsErrorIfRedirectUriDoesntMatchClientIdWithNoParsedRedirectUris</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsErrorIfRedirectUriDoesntMatchClientIdOrParsedRedirectUris</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsErrorIfApprovalRequestHasNoHash</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsErrorIfApprovalRequestHasInvalidHash</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsInternalServerErrorIfAuthCodeCannotBeStored</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testExchangeFlowsReturnErrorOnInvalidParameters</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testAuthEndpointTokenExchangeFailsForTokensWithInvalidScope</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testTokenEndpointReturnsErrorIfAccessCodeGrantsNoScopes</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testNonIndieAuthRequestWithDefaultHandlerReturnsError</li></ul>" data-placement = "top" data-html = "true" class = "col-1 text-right" > < a id = "53" href = "#53" > 53< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "keyword" > return< / span > < span class = "default" > < / span > < span class = "default" > $e < / span > < span class = "keyword" > ;< / span > < / td > < / tr >
< tr class = "warn ing d-flex" > < td class = "col-1 text-right" > < a id = "54" href = "#54" > 54< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "keyword" > }< / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "55" href = "#55" > 55< / a > < / td > < td class = "col-11 codeLine" > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "56" href = "#56" > 56< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "keyword" > public< / span > < span class = "default" > < / span > < span class = "keyword" > function< / span > < span class = "default" > < / span > < span class = "default" > getStatusCode< / span > < span class = "keyword" > (< / span > < span class = "keyword" > )< / span > < span class = "default" > < / span > < span class = "keyword" > { < / span > < / td > < / tr >
< tr class = "covered-by-large-tests popin d-flex" > < td data-title = "6 tests cover line 57" data-content = "<ul><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testAuthorizationEndpointReturnsErrorOnMissingParameter</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testAuthorizationRequestWithInvalidClientIdOrRedirectUriShowsErrorToUser</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testHandlesValidAndInvalidMeUrlsCorrectly</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsErrorIfRedirectUriDoesntMatchClientIdWithNoParsedRedirectUris</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsErrorIfRedirectUriDoesntMatchClientIdOrParsedRedirectUris</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testNonIndieAuthRequestWithDefaultHandlerReturnsError</li></ul>" data-placement = "top" data-html = "true" class = "col-1 text-right" > < a id = "57" href = "#57" > 57< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "keyword" > return< / span > < span class = "default" > < / span > < span class = "default" > $this< / span > < span class = "default" > -> < / span > < span class = "default" > getInfo< / span > < span class = "keyword" > (< / span > < span class = "keyword" > )< / span > < span class = "keyword" > [< / span > < span class = "default" > 'statusCode'< / span > < span class = "keyword" > ]< / span > < span class = "default" > < / span > < span class = "default" > ??< / span > < span class = "default" > < / span > < span class = "default" > 500< / span > < span class = "keyword" > ;< / span > < / td > < / tr >
< tr class = "warning d-flex" > < td class = "col-1 text-right" > < a id = "58" href = "#58" > 58< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "keyword" > } < / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "59" href = "#59" > 59< / a > < / td > < td class = "col-11 codeLine" > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "60" href = "#60" > 60< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "keyword" > public< / span > < span class = "default" > < / span > < span class = "keyword" > function< / span > < span class = "default" > < / span > < span class = "default" > getExplanation< / span > < span class = "keyword" > (< / span > < span class = "keyword" > )< / span > < span class = "default" > < / span > < span class = "keyword" > { < / span > < / td > < / tr >
< tr class = "danger d-flex" > < td class = "col-1 text-right" > < a id = "61" href = "#61" > 61< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "keyword" > return< / span > < span class = "default" > < / span > < span class = "default" > $this< / span > < span class = "default" > -> < / span > < span class = "default" > getInfo< / span > < span class = "keyword" > (< / span > < span class = "keyword" > )< / span > < span class = "keyword" > [< / span > < span class = "default" > 'explanation'< / span > < span class = "keyword" > ]< / span > < span class = "default" > < / span > < span class = "default" > ??< / span > < span class = "default" > < / span > < span class = "default" > 'An unknown error occured.'< / span > < span class = "keyword" > ;< / span > < / td > < / tr >
< tr class = "warning d-flex" > < td class = "col-1 text-right" > < a id = "62" href = "#62" > 62< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "keyword" > } < / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "63" href = "#63" > 63< / a > < / td > < td class = "col-11 codeLine" > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "64" href = "#64" > 64< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "keyword" > public< / span > < span class = "default" > < / span > < span class = "keyword" > function< / span > < span class = "default" > < / span > < span class = "default" > getInfo< / span > < span class = "keyword" > (< / span > < span class = "keyword" > )< / span > < span class = "default" > < / span > < span class = "keyword" > { < / span > < / td > < / tr >
< tr class = "covered-by-large-tests popin d-flex" > < td data-title = "15 tests cover line 65" data-content = "<ul><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testAuthorizationEndpointReturnsErrorOnMissingParameter</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testAuthorizationRequestWithInvalidClientIdOrRedirectUriShowsErrorToUser</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testInvalidStateCodeChallengeOrScopeReturnErrorRedirects</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testHandlesValidAndInvalidMeUrlsCorrectly</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsServerErrorIfAuthenticationResultHasNoMeKey</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnErrorIfFetchingClientIdThrowsException</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsErrorIfRedirectUriDoesntMatchClientIdWithNoParsedRedirectUris</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsErrorIfRedirectUriDoesntMatchClientIdOrParsedRedirectUris</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsErrorIfApprovalRequestHasNoHash</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsErrorIfApprovalRequestHasInvalidHash</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsInternalServerErrorIfAuthCodeCannotBeStored</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testExchangeFlowsReturnErrorOnInvalidParameters</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testAuthEndpointTokenExchangeFailsForTokensWithInvalidScope</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testTokenEndpointReturnsErrorIfAccessCodeGrantsNoScopes</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testNonIndieAuthRequestWithDefaultHandlerReturnsError</li></ul>" data-placement = "top" data-html = "true" class = "col-1 text-right" > < a id = "65" href = "#65" > 65< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "keyword" > return< / span > < span class = "default" > < / span > < span class = "default" > self< / span > < span class = "default" > ::< / span > < span class = "default" > EXC_INFO< / span > < span class = "keyword" > [< / span > < span class = "default" > $this< / span > < span class = "default" > -> < / span > < span class = "default" > code< / span > < span class = "keyword" > ]< / span > < span class = "default" > < / span > < span class = "default" > ??< / span > < span class = "default" > < / span > < span class = "default" > self< / span > < span class = "default" > ::< / span > < span class = "default" > EXC_INFO< / span > < span class = "keyword" > [< / span > < span class = "default" > self< / span > < span class = "default" > ::< / span > < span class = "default" > INTERNAL_ERROR< / span > < span class = "keyword" > ]< / span > < span class = "keyword" > ;< / span > < / td > < / tr >
< tr class = "warning d-flex" > < td class = "col-1 text-right" > < a id = "66" href = "#66" > 66< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "keyword" > } < / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "67" href = "#67" > 67< / a > < / td > < td class = "col-11 codeLine" > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "68" href = "#68" > 68< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "comment " > /** < / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "69" href = "#69" > 69< / a > < / td > < td class = "col-11 codeLine" > < span class = "comment" > * Trust Query Params< / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "70" href = "#70" > 70< / a > < / td > < td class = "col-11 codeLine" > < span class = "commen t" > * < / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "71" href = "#71" > 71< / a > < / td > < td class = "col-11 codeLine" > < span class = "comment" > * Only useful on authorization form submission requests. If this returns false, < / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "72" href = "#72" > 72< / a > < / td > < td class = "col-11 codeLine" > < span class = "comment" > * the client_id and/or request_uri have likely been tampered with, and the error < / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "73" href = "#73" > 73< / a > < / td > < td class = "col-11 codeLine" > < span class = "comment" > * page SHOULD NOT offer the user a link to them. < / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "74" href = "#74" > 74< / a > < / td > < td class = "col-11 codeLine" > < span class = "comment" > */ < / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "75" href = "#75" > 75< / a > < / td > < td class = "col-11 codeLine" > < span class = "defaul t" > < / span > < span class = "keyword" > public< / span > < span class = "default" > < / span > < span class = "keyword" > function< / span > < span class = "default" > < / span > < span class = "default" > trustQueryParams< / span > < span class = "keyword" > (< / span > < span class = "keyword" > )< / span > < span class = "default" > < / span > < span class = "keyword" > {< / span > < / td > < / tr >
< tr class = "danger d-flex" > < td class = "col-1 text-right" > < a id = "76" href = "#76" > 76< / a > < / td > < td class = "col-11 codeLine" > < span class = "defaul t" > < / span > < span class = "keyword" > return< / span > < span class = "default" > < / span > < span class = "default" > $this< / span > < span class = "default" > -> < / span > < span class = "default" > code< / span > < span class = "default" > < / span > < span class = "default" > ==< / span > < span class = "default" > < / span > < span class = "default" > self< / span > < span class = "default" > ::< / span > < span class = "default" > AUTHORIZATION_APPROVAL_REQUEST_INVALID_HASH< / span > < / td > < / tr >
< tr class = "danger d-flex" > < td class = "col-1 text-right" > < a id = "77" href = "#77" > 77< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "default " > || < / span > < span class = "default" > < / span > < span class = "default" > $this< / span > < span class = "default" > -> < / span > < span class = "default" > code < / span > < span class = "default" > < / span > < span class = "default" > == < / span > < span class = "default" > < / span > < span class = "default " > self < / span > < span class = "default" > ::< / span > < span class = "default" > AUTHORIZATION_APPROVAL_REQUEST_MISSING_HASH < / span > < span class = "keyword" > ; < / span > < / td > < / tr >
< tr class = "warning d-flex" > < td class = "col-1 text-right" > < a id = "78" href = "#78" > 78< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "keyword" > } < / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "79" href = "#79" > 79< / a > < / td > < td class = "col-11 codeLine" > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "80" href = "#80" > 80< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "keyword" > public< / span > < span class = "default" > < / span > < span class = "keyword" > function< / span > < span class = "default" > < / span > < span class = "default" > getRequest< / span > < span class = "keyword" > (< / span > < span class = "keyword" > )< / span > < span class = "default" > < / span > < span class = "keyword" > { < / span > < / td > < / tr >
< tr class = "covered-by-large-tests popin d-flex" > < td data-title = "12 tests cover line 81" data-content = "<ul><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testAuthorizationEndpointReturnsErrorOnMissingParameter</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testAuthorizationRequestWithInvalidClientIdOrRedirectUriShowsErrorToUser</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testInvalidStateCodeChallengeOrScopeReturnErrorRedirects</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testHandlesValidAndInvalidMeUrlsCorrectly</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsServerErrorIfAuthenticationResultHasNoMeKey</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnErrorIfFetchingClientIdThrowsException</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsErrorIfRedirectUriDoesntMatchClientIdWithNoParsedRedirectUris</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsErrorIfRedirectUriDoesntMatchClientIdOrParsedRedirectUris</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsErrorIfApprovalRequestHasNoHash</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsErrorIfApprovalRequestHasInvalidHash</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsInternalServerErrorIfAuthCodeCannotBeStored</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testNonIndieAuthRequestWithDefaultHandlerReturnsError</li></ul>" data-placement = "top" data-html = "true" class = "col-1 text-right" > < a id = "81" href = "#81" > 81< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "keyword" > return< / span > < span class = "default" > < / span > < span class = "default" > $this< / span > < span class = "default" > -> < / span > < span class = "default" > request< / span > < span class = "keyword" > ;< / span > < / td > < / tr >
< tr class = "warning d-flex" > < td class = "col-1 text-right" > < a id = "82" href = "#82" > 82< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "keyword" > } < / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "83" href = "#83" > 83< / a > < / td > < td class = "col-11 codeLine" > < span class = "keyword" > } < / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "45" href = "#45" > 45< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "keyword" > protected< / span > < span class = "default" > < / span > < span class = "default" > ServerRequestInterface< / span > < span class = "default" > < / span > < span class = "default" > $request< / span > < span class = "keyword" > ; < / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "46" href = "#46" > 46< / a > < / td > < td class = "col-11 codeLine" > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "47" href = "#47" > 47< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "keyword" > public< / span > < span class = "default" > < / span > < span class = "keyword" > static< / span > < span class = "default" > < / span > < span class = "keyword" > function< / span > < span class = "default" > < / span > < span class = "default" > create< / span > < span class = "keyword " > ( < / span > < span class = "default" > int< / span > < span class = "default" > < / span > < span class = "default" > $code< / span > < span class = "keyword" > , < / span > < span class = "default" > < / span > < span class = "default" > ServerRequestInterface < / span > < span class = "default" > < / span > < span class = "default" > $request < / span > < span class = "keyword" > , < / span > < span class = "default" > < / span > < span class = "keyword" > ? < / span > < span class = "default" > Throwable < / span > < span class = "default" > < / span > < span class = "default" > $previous < / span > < span class = "keyword " > = < / span > < span class = "default" > null < / span > < span class = "keyword" > ) < / span > < span class = "keyword" > : < / span > < span class = "default" > < / span > < span class = "default " > self < / span > < span class = "default" > < / span > < span class = "keyword" > {< / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "48" href = "#48" > 48< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "commen t" > // Only accept known codes. Default to 0 (generic internal error) on an unrecognised code. < / span > < / td > < / tr >
< tr class = "covered-by-large-tests popin d-flex" > < td data-title = "19 tests cover line 49" data-content = "<ul><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testAuthorizationEndpointReturnsErrorOnMissingParameter</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testRequestsMissingBothPkceParametersReturnsError</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testAuthorizationRequestWithInvalidClientIdOrRedirectUriShowsErrorToUser</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testInvalidStateCodeChallengeOrScopeReturnErrorRedirects</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testHandlesValidAndInvalidMeUrlsCorrectly</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsServerErrorIfAuthenticationResultHasNoMeKey</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnErrorIfFetchingClientIdThrowsException</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsErrorIfRedirectUriDoesntMatchClientIdWithNoParsedRedirectUris</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsErrorIfRedirectUriDoesntMatchClientIdOrParsedRedirectUris</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsErrorIfApprovalRequestHasNoHash</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsErrorIfApprovalRequestHasInvalidHash</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsInternalServerErrorIfAuthCodeCannotBeStored</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testExchangeFlowsReturnErrorsIfParametersAreMissing</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testExchangeFlowsReturnErrorOnInvalidParameters</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testAuthEndpointTokenExchangeFailsForTokensWithInvalidScope</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testTokenEndpointReturnsErrorIfAccessCodeGrantsNoScopes</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testNonIndieAuthRequestWithDefaultHandlerReturnsError</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testBackCompatNonPkceRequestMustLackBothPkceParameters</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testBackCompatAuthCodeWithoutPkceCannotBeExchangedWithCodeVerifierBothExchangeEndpoints</li></ul>" data-placement = "top" data-html = "true" class = "col-1 text-right" > < a id = "49" href = "#49" > 49< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "keyword" > if< / span > < span class = "default" > < / span > < span class = "keyword" > (< / span > < span class = "keyword" > !< / span > < span class = "default" > in_array< / span > < span class = "keyword" > (< / span > < span class = "default" > $code< / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > array_keys< / span > < span class = "keyword" > (< / span > < span class = "default" > self< / span > < span class = "default" > ::< / span > < span class = "default" > EXC_INFO< / span > < span class = "keyword" > )< / span > < span class = "keyword" > )< / span > < span class = "keyword" > )< / span > < span class = "default" > < / span > < span class = "keyword" > { < / span > < / td > < / tr >
< tr class = "danger d-flex" > < td class = "col-1 text-right" > < a id = "50" href = "#50" > 50< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "default" > $code < / span > < span class = "default" > < / span > < span class = "keyword" > = < / span > < span class = "default" > < / span > < span class = "default" > 0< / span > < span class = "keyword" > ;< / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "51" href = "#51" > 51< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "keyword" > } < / span > < / td > < / tr >
< tr class = "covered-by-large-tests popin d-flex" > < td data-title = "19 tests cover line 52" data-content = "<ul><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testAuthorizationEndpointReturnsErrorOnMissingParameter</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testRequestsMissingBothPkceParametersReturnsError</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testAuthorizationRequestWithInvalidClientIdOrRedirectUriShowsErrorToUser</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testInvalidStateCodeChallengeOrScopeReturnErrorRedirects</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testHandlesValidAndInvalidMeUrlsCorrectly</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsServerErrorIfAuthenticationResultHasNoMeKey</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnErrorIfFetchingClientIdThrowsException</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsErrorIfRedirectUriDoesntMatchClientIdWithNoParsedRedirectUris</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsErrorIfRedirectUriDoesntMatchClientIdOrParsedRedirectUris</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsErrorIfApprovalRequestHasNoHash</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsErrorIfApprovalRequestHasInvalidHash</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsInternalServerErrorIfAuthCodeCannotBeStored</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testExchangeFlowsReturnErrorsIfParametersAreMissing</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testExchangeFlowsReturnErrorOnInvalidParameters</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testAuthEndpointTokenExchangeFailsForTokensWithInvalidScope</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testTokenEndpointReturnsErrorIfAccessCodeGrantsNoScopes</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testNonIndieAuthRequestWithDefaultHandlerReturnsError</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testBackCompatNonPkceRequestMustLackBothPkceParameters</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testBackCompatAuthCodeWithoutPkceCannotBeExchangedWithCodeVerifierBothExchangeEndpoints</li>< /ul>" data-placement = "top" data-html = "true" class = "col-1 text-right" > < a id = "52" href = "#52" > 52< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "default" > $messag e< / span > < span class = "default" >   ; < / span > < span class = "keyword" > =< / span > < span class = "default" > < / span > < span class = "default" > self< / span > < span class = "default" > ::< / span > < span class = "default" > EXC_INFO < / span > < span class = "keyword" > [ < / span > < span class = "default" > $code< / span > < span class = "keyword" > ]< / span > < span class = "keyword" > [< / span > < span class = "default" > 'name'< / span > < span class = "keyword" > ] < / span > < span class = "keyword" > ;< / span > < / td > < / tr >
< tr class = "covered-by-large-tests popin d-flex" > < td data-title = "19 tests cover line 53" data-content = "<ul><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testAuthorizationEndpointReturnsErrorOnMissingParameter</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testRequestsMissingBothPkceParametersReturnsError</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testAuthorizationRequestWithInvalidClientIdOrRedirectUriShowsErrorToUser</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testInvalidStateCodeChallengeOrScopeReturnErrorRedirects</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testHandlesValidAndInvalidMeUrlsCorrectly</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsServerErrorIfAuthenticationResultHasNoMeKey</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnErrorIfFetchingClientIdThrowsException</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsErrorIfRedirectUriDoesntMatchClientIdWithNoParsedRedirectUris</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsErrorIfRedirectUriDoesntMatchClientIdOrParsedRedirectUris</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsErrorIfApprovalRequestHasNoHash</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsErrorIfApprovalRequestHasInvalidHash</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsInternalServerErrorIfAuthCodeCannotBeStored</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testExchangeFlowsReturnErrorsIfParametersAreMissing</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testExchangeFlowsReturnErrorOnInvalidParameters</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testAuthEndpointTokenExchangeFailsForTokensWithInvalidScope</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testTokenEndpointReturnsErrorIfAccessCodeGrantsNoScopes</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testNonIndieAuthRequestWithDefaultHandlerReturnsError</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testBackCompatNonPkceRequestMustLackBothPkceParameters</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testBackCompatAuthCodeWithoutPkceCannotBeExchangedWithCodeVerifierBothExchangeEndpoints</li>< /ul>" data-placement = "top" data-html = "true" class = "col-1 text-right" > < a id = "53" href = "#53" > 53< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "default" > $e< / span > < span class = "default" > < / span > < span class = "keyword" > =< / span > < span class = "default" > < / span > < span class = "keyword" > new< / span > < span class = "default" > < / span > < span class = "default" > self< / span > < span class = "keyword" > (< / span > < span class = "default" > $message< / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > $code< / span > < span class = "keyword" > ,< / span > < span class = "default" > < / span > < span class = "default" > $previous< / span > < span class = "keyword" > ) < / span > < span class = "keyword" > ;< / span > < / td > < / tr >
< tr class = "covered-by-large-tests pop in d-flex" > < td data-title = "19 tests cover line 54" data-content = "<ul><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testAuthorizationEndpointReturnsErrorOnMissingParameter</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testRequestsMissingBothPkceParametersReturnsError</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testAuthorizationRequestWithInvalidClientIdOrRedirectUriShowsErrorToUser</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testInvalidStateCodeChallengeOrScopeReturnErrorRedirects</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testHandlesValidAndInvalidMeUrlsCorrectly</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsServerErrorIfAuthenticationResultHasNoMeKey</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnErrorIfFetchingClientIdThrowsException</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsErrorIfRedirectUriDoesntMatchClientIdWithNoParsedRedirectUris</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsErrorIfRedirectUriDoesntMatchClientIdOrParsedRedirectUris</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsErrorIfApprovalRequestHasNoHash</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsErrorIfApprovalRequestHasInvalidHash</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsInternalServerErrorIfAuthCodeCannotBeStored</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testExchangeFlowsReturnErrorsIfParametersAreMissing</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testExchangeFlowsReturnErrorOnInvalidParameters</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testAuthEndpointTokenExchangeFailsForTokensWithInvalidScope</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testTokenEndpointReturnsErrorIfAccessCodeGrantsNoScopes</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testNonIndieAuthRequestWithDefaultHandlerReturnsError</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testBackCompatNonPkceRequestMustLackBothPkceParameters</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testBackCompatAuthCodeWithoutPkceCannotBeExchangedWithCodeVerifierBothExchangeEndpoints</li></ul>" data-placement = "top" data-html = "true" class = "col-1 text-right" > < a id = "54" href = "#54" > 54< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "default" > $e< / span > < span class = "default" > -> < / span > < span class = "default" > request< / span > < span class = "default" > < / span > < span class = "keyword" > =< / span > < span class = "default" > < / span > < span class = "default" > $request< / span > < span class = "keyword" > ;< / span > < / td > < / tr >
< tr class = "covered-by-large-tests popin d-flex" > < td data-title = "19 tests cover line 55" data-content = "<ul><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testAuthorizationEndpointReturnsErrorOnMissingParameter</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testRequestsMissingBothPkceParametersReturnsError</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testAuthorizationRequestWithInvalidClientIdOrRedirectUriShowsErrorToUser</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testInvalidStateCodeChallengeOrScopeReturnErrorRedirects</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testHandlesValidAndInvalidMeUrlsCorrectly</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsServerErrorIfAuthenticationResultHasNoMeKey</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnErrorIfFetchingClientIdThrowsException</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsErrorIfRedirectUriDoesntMatchClientIdWithNoParsedRedirectUris</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsErrorIfRedirectUriDoesntMatchClientIdOrParsedRedirectUris</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsErrorIfApprovalRequestHasNoHash</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsErrorIfApprovalRequestHasInvalidHash</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsInternalServerErrorIfAuthCodeCannotBeStored</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testExchangeFlowsReturnErrorsIfParametersAreMissing</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testExchangeFlowsReturnErrorOnInvalidParameters</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testAuthEndpointTokenExchangeFailsForTokensWithInvalidScope</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testTokenEndpointReturnsErrorIfAccessCodeGrantsNoScopes</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testNonIndieAuthRequestWithDefaultHandlerReturnsError</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testBackCompatNonPkceRequestMustLackBothPkceParameters</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testBackCompatAuthCodeWithoutPkceCannotBeExchangedWithCodeVerifierBothExchangeEndpoints</li></ul>" data-placement = "top" data-html = "true" class = "col-1 text-right" > < a id = "55" href = "#55" > 55< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "keyword" > return< / span > < span class = "default" > < / span > < span class = "default" > $e< / span > < span class = "keyword" > ;< / span > < / td > < / tr >
< tr class = "warning d-flex" > < td class = "col-1 text-right" > < a id = "56" href = "#56" > 56< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "keyword" > } < / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "57" href = "#57" > 57< / a > < / td > < td class = "col-11 codeLine" > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "58" href = "#58" > 58< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "keyword" > public< / span > < span class = "default" > < / span > < span class = "keyword" > function< / span > < span class = "default" > < / span > < span class = "default" > getStatusCode< / span > < span class = "keyword" > (< / span > < span class = "keyword" > )< / span > < span class = "default" > < / span > < span class = "keyword" > { < / span > < / td > < / tr >
< tr class = "covered-by-large-tests popin d-flex" > < td data-title = "6 tests cover line 59" data-content = "<ul><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testAuthorizationEndpointReturnsErrorOnMissingParameter</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testAuthorizationRequestWithInvalidClientIdOrRedirectUriShowsErrorToUser</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testHandlesValidAndInvalidMeUrlsCorrectly</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsErrorIfRedirectUriDoesntMatchClientIdWithNoParsedRedirectUris</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsErrorIfRedirectUriDoesntMatchClientIdOrParsedRedirectUris</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testNonIndieAuthRequestWithDefaultHandlerReturnsError</li></ul>" data-placement = "top" data-html = "true" class = "col-1 text-right" > < a id = "59" href = "#59" > 59< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "keyword" > return< / span > < span class = "default" > < / span > < span class = "default" > $this< / span > < span class = "default" > -> < / span > < span class = "default" > getInfo< / span > < span class = "keyword" > (< / span > < span class = "keyword" > )< / span > < span class = "keyword" > [< / span > < span class = "default" > 'statusCode'< / span > < span class = "keyword" > ]< / span > < span class = "default" > < / span > < span class = "default" > ??< / span > < span class = "default" > < / span > < span class = "default" > 500< / span > < span class = "keyword" > ;< / span > < / td > < / tr >
< tr class = "warning d-flex" > < td class = "col-1 text-right" > < a id = "60" href = "#60" > 60< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "keyword" > } < / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "61" href = "#61" > 61< / a > < / td > < td class = "col-11 codeLine" > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "62" href = "#62" > 62< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "keyword" > public< / span > < span class = "default" > < / span > < span class = "keyword" > function< / span > < span class = "default" > < / span > < span class = "default" > getExplanation< / span > < span class = "keyword" > (< / span > < span class = "keyword" > )< / span > < span class = "default" > < / span > < span class = "keyword" > { < / span > < / td > < / tr >
< tr class = "danger d-flex" > < td class = "col-1 text-right" > < a id = "63" href = "#63" > 63< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "keyword" > return< / span > < span class = "default" > < / span > < span class = "default" > $this< / span > < span class = "default" > -> < / span > < span class = "default" > getInfo< / span > < span class = "keyword" > (< / span > < span class = "keyword" > )< / span > < span class = "keyword" > [< / span > < span class = "default" > 'explanation'< / span > < span class = "keyword" > ]< / span > < span class = "default" > < / span > < span class = "default" > ??< / span > < span class = "default" > < / span > < span class = "default" > 'An unknown error occured.'< / span > < span class = "keyword" > ;< / span > < / td > < / tr >
< tr class = "warning d-flex" > < td class = "col-1 text-right" > < a id = "64" href = "#64" > 64< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "keyword" > } < / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "65" href = "#65" > 65< / a > < / td > < td class = "col-11 codeLine" > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "66" href = "#66" > 66< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "keyword" > public< / span > < span class = "default" > < / span > < span class = "keyword" > function< / span > < span class = "default" > < / span > < span class = "default" > getInfo< / span > < span class = "keyword" > (< / span > < span class = "keyword" > )< / span > < span class = "default" > < / span > < span class = "keyword" > { < / span > < / td > < / tr >
< tr class = "covered-by-large-tests popin d-flex" > < td data-title = "19 tests cover line 67" data-content = "<ul><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testAuthorizationEndpointReturnsErrorOnMissingParameter</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testRequestsMissingBothPkceParametersReturnsError</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testAuthorizationRequestWithInvalidClientIdOrRedirectUriShowsErrorToUser</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testInvalidStateCodeChallengeOrScopeReturnErrorRedirects</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testHandlesValidAndInvalidMeUrlsCorrectly</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsServerErrorIfAuthenticationResultHasNoMeKey</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnErrorIfFetchingClientIdThrowsException</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsErrorIfRedirectUriDoesntMatchClientIdWithNoParsedRedirectUris</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsErrorIfRedirectUriDoesntMatchClientIdOrParsedRedirectUris</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsErrorIfApprovalRequestHasNoHash</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsErrorIfApprovalRequestHasInvalidHash</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsInternalServerErrorIfAuthCodeCannotBeStored</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testExchangeFlowsReturnErrorsIfParametersAreMissing</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testExchangeFlowsReturnErrorOnInvalidParameters</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testAuthEndpointTokenExchangeFailsForTokensWithInvalidScope</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testTokenEndpointReturnsErrorIfAccessCodeGrantsNoScopes</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testNonIndieAuthRequestWithDefaultHandlerReturnsError</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testBackCompatNonPkceRequestMustLackBothPkceParameters</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testBackCompatAuthCodeWithoutPkceCannotBeExchangedWithCodeVerifierBothExchangeEndpoints</li></ul>" data-placement = "top" data-html = "true" class = "col-1 text-right" > < a id = "67" href = "#67" > 67< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "keyword" > return< / span > < span class = "default" > < / span > < span class = "default" > self< / span > < span class = "default" > ::< / span > < span class = "default" > EXC_INFO< / span > < span class = "keyword" > [< / span > < span class = "default" > $this< / span > < span class = "default" > -> < / span > < span class = "default" > code< / span > < span class = "keyword" > ]< / span > < span class = "default" > < / span > < span class = "default" > ??< / span > < span class = "default" > < / span > < span class = "default" > self< / span > < span class = "default" > ::< / span > < span class = "default" > EXC_INFO< / span > < span class = "keyword" > [< / span > < span class = "default" > self< / span > < span class = "default" > ::< / span > < span class = "default" > INTERNAL_ERROR< / span > < span class = "keyword" > ]< / span > < span class = "keyword" > ;< / span > < / td > < / tr >
< tr class = "warning d-flex" > < td class = "col-1 text-right" > < a id = "68" href = "#68" > 68< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "keyword " > } < / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "69" href = "#69" > 69< / a > < / td > < td class = "col-11 codeLine" > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "70" href = "#70" > 70< / a > < / td > < td class = "col-11 codeLine" > < span class = "defaul t" > < / span > < span class = "comment" > /**< / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "71" href = "#71" > 71< / a > < / td > < td class = "col-11 codeLine" > < span class = "comment" > * Trust Query Params < / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "72" href = "#72" > 72< / a > < / td > < td class = "col-11 codeLine" > < span class = "comment" > * < / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "73" href = "#73" > 73< / a > < / td > < td class = "col-11 codeLine" > < span class = "comment" > * Only useful on authorization form submission requests. If this returns false, < / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "74" href = "#74" > 74< / a > < / td > < td class = "col-11 codeLine" > < span class = "comment" > * the client_id and/or request_uri have likely been tampered with, and the error< / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "75" href = "#75" > 75< / a > < / td > < td class = "col-11 codeLine" > < span class = "commen t" > * page SHOULD NOT offer the user a link to them.< / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "76" href = "#76" > 76< / a > < / td > < td class = "col-11 codeLine" > < span class = "commen t" > */ < / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "77" href = "#77" > 77< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "keyword " > public < / span > < span class = "default" > < / span > < span class = "keyword" > function < / span > < span class = "default" > < / span > < span class = "default" > trustQueryParams < / span > < span class = "keyword" > ( < / span > < span class = "keyword " > ) < / span > < span class = "default" > < / span > < span class = "keyword" > { < / span > < / td > < / tr >
< tr class = "danger d-flex" > < td class = "col-1 text-right" > < a id = "78" href = "#78" > 78< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "keyword" > return< / span > < span class = "default" > < / span > < span class = "default" > $this< / span > < span class = "default" > -> < / span > < span class = "default" > code< / span > < span class = "default" > < / span > < span class = "default" > ==< / span > < span class = "default" > < / span > < span class = "default" > self< / span > < span class = "default" > ::< / span > < span class = "default" > AUTHORIZATION_APPROVAL_REQUEST_INVALID_HASH < / span > < / td > < / tr >
< tr class = "danger d-flex" > < td class = "col-1 text-right" > < a id = "79" href = "#79" > 79< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "default" > ||< / span > < span class = "default" > < / span > < span class = "default" > $this< / span > < span class = "default" > -> < / span > < span class = "default" > code< / span > < span class = "default" > < / span > < span class = "default" > ==< / span > < span class = "default" > < / span > < span class = "default" > self< / span > < span class = "default" > ::< / span > < span class = "default" > AUTHORIZATION_APPROVAL_REQUEST_MISSING_HASH< / span > < span class = "keyword" > ;< / span > < / td > < / tr >
< tr class = "warning d-flex" > < td class = "col-1 text-right" > < a id = "80" href = "#80" > 80< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "keyword" > } < / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "81" href = "#81" > 81< / a > < / td > < td class = "col-11 codeLine" > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "82" href = "#82" > 82< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "keyword" > public< / span > < span class = "default" > < / span > < span class = "keyword" > function< / span > < span class = "default" > < / span > < span class = "default" > getRequest< / span > < span class = "keyword" > (< / span > < span class = "keyword" > )< / span > < span class = "default" > < / span > < span class = "keyword" > { < / span > < / td > < / tr >
< tr class = "covered-by-large-tests popin d-flex" > < td data-title = "14 tests cover line 83" data-content = "<ul><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testAuthorizationEndpointReturnsErrorOnMissingParameter</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testRequestsMissingBothPkceParametersReturnsError</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testAuthorizationRequestWithInvalidClientIdOrRedirectUriShowsErrorToUser</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testInvalidStateCodeChallengeOrScopeReturnErrorRedirects</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testHandlesValidAndInvalidMeUrlsCorrectly</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsServerErrorIfAuthenticationResultHasNoMeKey</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnErrorIfFetchingClientIdThrowsException</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsErrorIfRedirectUriDoesntMatchClientIdWithNoParsedRedirectUris</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsErrorIfRedirectUriDoesntMatchClientIdOrParsedRedirectUris</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsErrorIfApprovalRequestHasNoHash</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsErrorIfApprovalRequestHasInvalidHash</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testReturnsInternalServerErrorIfAuthCodeCannotBeStored</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testNonIndieAuthRequestWithDefaultHandlerReturnsError</li><li class="covered-by-large-tests">Taproot\IndieAuth\Test\ServerTest::testBackCompatNonPkceRequestMustLackBothPkceParameters</li></ul>" data-placement = "top" data-html = "true" class = "col-1 text-right" > < a id = "83" href = "#83" > 83< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "keyword" > return< / span > < span class = "default" > < / span > < span class = "default" > $this< / span > < span class = "default" > -> < / span > < span class = "default" > request< / span > < span class = "keyword" > ; < / span > < / td > < / tr >
< tr class = "warning d-flex" > < td class = "col-1 text-right" > < a id = "84" href = "#84" > 84< / a > < / td > < td class = "col-11 codeLine" > < span class = "default" > < / span > < span class = "keyword" > }< / span > < / td > < / tr >
< tr class = " d-flex" > < td class = "col-1 text-right" > < a id = "85" href = "#85" > 85< / a > < / td > < td class = "col-11 codeLine" > < span class = "keyword" > }< / span > < / td > < / tr >
< / tbody >
< / table >
@@ -324,7 +326,7 @@
< h4 > Legend< / h4 >
< p > < span class = "success" > < strong > Executed< / strong > < / span > < span class = "danger" > < strong > Not Executed< / strong > < / span > < span class = "warning" > < strong > Dead Code< / strong > < / span > < / p >
< p >
< small > Generated by < a href = "https://github.com/sebastianbergmann/php-code-coverage" target = "_top" > php-code-coverage 9.2.6< / a > using < a href = "https://secure.php.net/" target = "_top" > PHP 7.4.19< / a > with < a href = "https://xdebug.org/" > Xdebug 3.0.4< / a > and < a href = "https://phpunit.de/" > PHPUnit 9.5.5< / a > at Wed Jun 16 21:41 :10 UTC 2021.< / small >
< small > Generated by < a href = "https://github.com/sebastianbergmann/php-code-coverage" target = "_top" > php-code-coverage 9.2.6< / a > using < a href = "https://secure.php.net/" target = "_top" > PHP 7.4.19< / a > with < a href = "https://xdebug.org/" > Xdebug 3.0.4< / a > and < a href = "https://phpunit.de/" > PHPUnit 9.5.5< / a > at Thu Jun 17 22:38 :11 UTC 2021.< / small >
< / p >
< a title = "Back to the top" id = "toplink" href = "#" >
< svg xmlns = "http://www.w3.org/2000/svg" width = "12" height = "16" viewBox = "0 0 12 16" > < path fill-rule = "evenodd" d = "M12 11L6 5l-6 6h12z" / > < / svg >