diff --git a/README b/README
index 13b2171..94d81b6 100644
--- a/README
+++ b/README
@@ -19,7 +19,7 @@
 	If-Match, If-None-Match, Last-Modified, Content-Length,
 	Expires, Content-Language, Content-Encoding, Allow, Host,
 	Accept, Connection, Content-Range, User-Agent, Upgrade, Via,
-	From, Pragma, Content-Type, Content-MD5, Authorization
+	From, Pragma, Content-Type, Content-MD5, Authorization, Expect
 
 Report Bugs
 	Create a ticket on the issue tracking interface of GitHub:
diff --git a/ngx_http_header_inspect.c b/ngx_http_header_inspect.c
index 563b9a2..45be801 100644
--- a/ngx_http_header_inspect.c
+++ b/ngx_http_header_inspect.c
@@ -50,6 +50,7 @@
 static ngx_int_t ngx_header_inspect_date_header(ngx_header_inspect_loc_conf_t *conf, ngx_log_t *log, char *header, ngx_str_t value);
 static ngx_int_t ngx_header_inspect_contentmd5_header(ngx_header_inspect_loc_conf_t *conf, ngx_log_t *log, ngx_str_t value);
 static ngx_int_t ngx_header_inspect_authorization_header(ngx_header_inspect_loc_conf_t *conf, ngx_log_t *log, ngx_str_t value);
+static ngx_int_t ngx_header_inspect_expect_header(ngx_header_inspect_loc_conf_t *conf, ngx_log_t *log, ngx_str_t value);
 static ngx_int_t ngx_header_inspect_process_request(ngx_http_request_t *r);
 
 static void *ngx_header_inspect_create_conf(ngx_conf_t *cf);
@@ -1443,6 +1444,19 @@
 	return rc;
 }
 
+static ngx_int_t ngx_header_inspect_expect_header(ngx_header_inspect_loc_conf_t *conf, ngx_log_t *log, ngx_str_t value) {
+
+	/* currently only the 'known' "100-continue" value is allowed */
+	if ( (value.len == 12) && (ngx_strncasecmp((u_char *)"100-continue", value.data, 12) == 0) ) {
+		return NGX_OK;
+	} else {
+		if ( conf->log ) {
+			ngx_log_error(NGX_LOG_ALERT, log, 0, "header_inspect: unknown value in Expect header \"%s\"", value.data);
+		}
+		return NGX_ERROR;
+	}
+}
+
 static ngx_int_t ngx_header_inspect_authorization_header(ngx_header_inspect_loc_conf_t *conf, ngx_log_t *log, ngx_str_t value) {
 	ngx_uint_t i;
 	ngx_int_t rc = NGX_OK;
@@ -2707,6 +2721,11 @@
 					if ((rc != NGX_OK) && conf->block) {
 						return NGX_HTTP_BAD_REQUEST;
 					}
+				} else if ((h[i].key.len == 6) && (ngx_strcmp("Expect", h[i].key.data) == 0) ) {
+					rc = ngx_header_inspect_expect_header(conf, r->connection->log, h[i].value);
+					if ((rc != NGX_OK) && conf->block) {
+						return NGX_HTTP_BAD_REQUEST;
+					}
 				} else {
 					/* TODO: support for other headers */
 					if (conf->log_uninspected) {