You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by hg...@apache.org on 2003/09/25 17:26:25 UTC
cvs commit: jakarta-tomcat/src/share/org/apache/tomcat/modules/server Ajp13.java
hgomez 2003/09/25 08:26:25
Modified: src/share/org/apache/tomcat/modules/server Ajp13.java
Log:
Update ajp13 support in TC 3.3.2 to handle PING/PONG.
Ok, this code will be deprecated but for now ....
Revision Changes Path
1.34 +32 -2 jakarta-tomcat/src/share/org/apache/tomcat/modules/server/Ajp13.java
Index: Ajp13.java
===================================================================
RCS file: /home/cvs/jakarta-tomcat/src/share/org/apache/tomcat/modules/server/Ajp13.java,v
retrieving revision 1.33
retrieving revision 1.34
diff -u -r1.33 -r1.34
--- Ajp13.java 22 Sep 2003 09:18:37 -0000 1.33
+++ Ajp13.java 25 Sep 2003 15:26:25 -0000 1.34
@@ -104,7 +104,8 @@
// Prefix codes for message types from server to container
public static final byte JK_AJP13_FORWARD_REQUEST = 2;
- public static final byte JK_AJP13_SHUTDOWN = 7;
+ public static final byte JK_AJP13_SHUTDOWN = 7;
+ public static final byte JK_AJP13_PING_REQUEST = 8;
// Error code for Ajp13
public static final int JK_AJP13_BAD_HEADER = -100;
@@ -118,7 +119,8 @@
public static final byte JK_AJP13_SEND_BODY_CHUNK = 3;
public static final byte JK_AJP13_SEND_HEADERS = 4;
public static final byte JK_AJP13_END_RESPONSE = 5;
- public static final byte JK_AJP13_GET_BODY_CHUNK = 6;
+ public static final byte JK_AJP13_GET_BODY_CHUNK = 6;
+ public static final byte JK_AJP13_PONG_REPLY = 9;
// Integer codes for common response header strings
public static final int SC_RESP_CONTENT_TYPE = 0xA001;
@@ -300,10 +302,38 @@
secret=hBuf.getString();
}
return -2;
+
+ case JK_AJP13_PING_REQUEST:
+ return sendPong();
}
+
return 200; // XXX This is actually an error condition
+
}
+ /**
+ * Send a PONG REPLY to web server to its PING request
+ *
+ * @param ch the Ajp13 channel
+ * @param outBuf the Ajp13Packet output packet to use
+ */
+ private int sendPong()
+ {
+ outBuf.reset();
+ outBuf.appendByte(JK_AJP13_PONG_REPLY);
+
+ try
+ {
+ send(outBuf);
+ }
+ catch (IOException ioe)
+ {
+ d("can't send pong reply");
+ }
+
+ return (999); // success but no need to process farther
+ }
+
/**
* Parse a FORWARD_REQUEST packet from the web server and store its
* properties in the passed-in request object.
---------------------------------------------------------------------
To unsubscribe, e-mail: tomcat-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tomcat-dev-help@jakarta.apache.org