Adjusting request schema value according to connection tls state.

This closes #223 issue on GitHub.
This commit is contained in:
Max Romanov
2019-03-21 13:55:57 +03:00
parent 39e147a858
commit 452ce0789e
14 changed files with 103 additions and 31 deletions

View File

@@ -980,11 +980,13 @@ public class Request implements HttpServletRequest, DynamicPathRequest
@Override
public boolean isSecure()
{
log("isSecure");
trace("isSecure");
return false;
return isSecure(req_ptr);
}
private static native boolean isSecure(long req_ptr);
@Override
public void removeAttribute(String name)
{

View File

@@ -56,6 +56,8 @@ static jstring JNICALL nxt_java_Request_getServerName(JNIEnv *env, jclass cls,
jlong req_ptr);
static jint JNICALL nxt_java_Request_getServerPort(JNIEnv *env, jclass cls,
jlong req_ptr);
static jboolean JNICALL nxt_java_Request_isSecure(JNIEnv *env, jclass cls,
jlong req_ptr);
static void JNICALL nxt_java_Request_log(JNIEnv *env, jclass cls,
jlong req_info_ptr, jstring msg, jint msg_len);
static void JNICALL nxt_java_Request_trace(JNIEnv *env, jclass cls,
@@ -166,6 +168,10 @@ nxt_java_initRequest(JNIEnv *env, jobject cl)
(char *) "(J)I",
nxt_java_Request_getServerPort },
{ (char *) "isSecure",
(char *) "(J)Z",
nxt_java_Request_isSecure },
{ (char *) "log",
(char *) "(JLjava/lang/String;I)V",
nxt_java_Request_log },
@@ -603,6 +609,17 @@ nxt_java_Request_getServerPort(JNIEnv *env, jclass cls, jlong req_ptr)
}
static jboolean JNICALL
nxt_java_Request_isSecure(JNIEnv *env, jclass cls, jlong req_ptr)
{
nxt_unit_request_t *r;
r = nxt_jlong2ptr(req_ptr);
return r->tls != 0;
}
static void JNICALL
nxt_java_Request_log(JNIEnv *env, jclass cls, jlong req_info_ptr, jstring msg,
jint msg_len)