summaryrefslogtreecommitdiffstats
path: root/web/server
diff options
context:
space:
mode:
Diffstat (limited to 'web/server')
-rw-r--r--web/server/web_client.c8
-rw-r--r--web/server/web_client.h1
2 files changed, 9 insertions, 0 deletions
diff --git a/web/server/web_client.c b/web/server/web_client.c
index 982bbd0164..ec075ad7ff 100644
--- a/web/server/web_client.c
+++ b/web/server/web_client.c
@@ -18,6 +18,14 @@ inline int web_client_permission_denied(struct web_client *w) {
return HTTP_RESP_FORBIDDEN;
}
+inline int web_client_bearer_required(struct web_client *w) {
+ w->response.data->content_type = CT_TEXT_PLAIN;
+ buffer_flush(w->response.data);
+ buffer_strcat(w->response.data, "An authorization bearer is required to access the resource.");
+ w->response.code = HTTP_RESP_UNAUTHORIZED;
+ return HTTP_RESP_UNAUTHORIZED;
+}
+
static inline int bad_request_multiple_dashboard_versions(struct web_client *w) {
w->response.data->content_type = CT_TEXT_PLAIN;
buffer_flush(w->response.data);
diff --git a/web/server/web_client.h b/web/server/web_client.h
index 7a74bffe42..68fcbfa31d 100644
--- a/web/server/web_client.h
+++ b/web/server/web_client.h
@@ -199,6 +199,7 @@ struct web_client {
};
int web_client_permission_denied(struct web_client *w);
+int web_client_bearer_required(struct web_client *w);
ssize_t web_client_send(struct web_client *w);
ssize_t web_client_receive(struct web_client *w);