Files
ubports_kernel_google_msm/include/linux
Gerrit Renker b4d4f7c70f [DCCP]: Handle timestamps on Request/Response exchange separately
In DCCP, timestamps can occur on packets anytime, CCID3 uses a timestamp(/echo) on the Request/Response
exchange. This patch addresses the following situation:
	* timestamps are recorded on the listening socket;
	* Responses are sent from dccp_request_sockets;
	* suppose two connections reach the listening socket with very small time in between:
	* the first timestamp value gets overwritten by the second connection request.

This is not really good, so this patch separates timestamps into
 * those which are received by the server during the initial handshake (on dccp_request_sock);
 * those which are received by the client or the client after connection establishment.

As before, a timestamp of 0 is regarded as indicating that no (meaningful) timestamp has been
received (in addition, a warning message is printed if hosts send 0-valued timestamps).

The timestamp-echoing now works as follows:
 * when a timestamp is present on the initial Request, it is placed into dreq, due to the
   call to dccp_parse_options in dccp_v{4,6}_conn_request;
 * when a timestamp is present on the Ack leading from RESPOND => OPEN, it is copied over
   from the request_sock into the child cocket in dccp_create_openreq_child;
 * timestamps received on an (established) dccp_sock are treated as before.

Since Elapsed Time is measured in hundredths of milliseconds (13.2), the new dccp_timestamp()
function is used, as it is expected that the time between receiving the timestamp and
sending the timestamp echo will be very small against the wrap-around time. As a byproduct,
this allows smaller timestamping-time fields.

Furthermore, inserting the Timestamp Echo option has been taken out of the block starting with
'!dccp_packet_without_ack()', since Timestamp Echo can be carried on any packet (5.8 and 13.3).

Signed-off-by: Gerrit Renker <gerrit@erg.abdn.ac.uk>
Acked-by: Ian McDonald <ian.mcdonald@jandi.co.nz>
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2008-01-28 14:57:51 -08:00
..
2008-01-28 14:54:13 -08:00
2007-10-17 08:43:03 -07:00
2007-12-26 19:36:35 -08:00
2007-10-15 17:56:36 -07:00
2007-10-18 14:37:20 -07:00
2008-01-23 05:24:15 -05:00
2007-10-21 02:37:45 -04:00
2007-10-17 08:42:45 -07:00
2007-10-17 08:43:07 -07:00
2007-10-18 14:37:29 -07:00
2007-10-19 11:53:42 -07:00
2007-10-19 11:53:42 -07:00
2007-10-16 09:42:58 -07:00
2008-01-28 14:54:10 -08:00
2008-01-23 05:24:14 -05:00
2007-10-19 11:53:36 -07:00
2007-10-19 11:53:36 -07:00
2007-10-16 09:43:13 -07:00
2007-10-17 08:42:52 -07:00
2008-01-25 21:08:02 +01:00
2007-11-19 21:43:22 -05:00
2007-10-16 09:43:09 -07:00
2007-10-21 02:37:45 -04:00
2007-10-19 11:53:36 -07:00
2007-12-20 17:32:12 +00:00
2007-10-20 02:00:58 +01:00
2007-10-18 14:37:21 -07:00
2008-01-23 21:23:13 -05:00
2007-10-22 08:13:19 -07:00
2007-10-22 08:13:20 -07:00
2007-10-17 08:42:51 -07:00
2007-10-29 07:41:32 -07:00
2007-10-22 08:13:21 -07:00
2007-10-17 08:43:02 -07:00
2007-10-17 08:42:48 -07:00
2007-10-17 08:43:01 -07:00
2007-11-29 09:24:54 -08:00
2008-01-25 21:08:33 +01:00
2008-01-28 14:51:22 +01:00
2008-01-27 18:14:50 +01:00
2008-01-27 18:14:52 +01:00
2007-10-16 11:21:00 +02:00
2007-10-22 00:56:52 -04:00
2007-10-17 08:42:52 -07:00
2008-01-28 14:55:09 -08:00
2008-01-28 14:55:09 -08:00
2008-01-28 14:55:09 -08:00
2007-12-05 05:37:32 -08:00
2007-10-16 09:43:01 -07:00
2007-10-18 14:37:32 -07:00
2007-11-05 15:12:32 -08:00
2007-10-17 08:42:52 -07:00
2008-01-28 14:54:13 -08:00
2007-11-29 09:24:52 -08:00
2007-10-19 11:53:49 -07:00
2008-01-08 16:10:35 -08:00
2007-10-16 09:43:10 -07:00
2008-01-24 20:40:05 -08:00
2008-01-25 21:08:34 +01:00
2007-12-07 09:06:53 +00:00
2007-10-25 15:02:50 +10:00
2007-10-25 15:02:50 +10:00
2007-10-19 11:53:55 -07:00
2007-10-23 15:49:54 +10:00
2007-10-19 11:53:44 -07:00
2008-01-28 14:56:29 -08:00
2008-01-08 23:30:07 -08:00
2008-01-28 14:54:18 -08:00
2007-10-17 08:42:58 -07:00
2007-10-19 11:53:41 -07:00
2007-10-16 09:43:02 -07:00
2008-01-23 05:24:17 -05:00
2007-10-17 08:42:44 -07:00
2007-10-19 11:53:41 -07:00
2007-10-19 11:53:41 -07:00
2007-12-27 23:55:13 -05:00
2007-10-19 11:53:41 -07:00
2007-12-05 09:21:20 -08:00
2007-10-17 08:42:45 -07:00
2007-10-17 08:42:56 -07:00
2007-10-16 09:42:53 -07:00
2008-01-25 21:08:24 +01:00
2008-01-25 21:08:24 +01:00
2008-01-25 21:08:24 +01:00
2008-01-25 21:08:24 +01:00
2007-10-22 08:13:20 -07:00
2007-11-29 09:24:54 -08:00
2007-10-16 09:43:17 -07:00
2007-10-19 11:53:44 -07:00
2007-11-29 09:24:53 -08:00
2007-10-19 11:53:44 -07:00
2007-10-17 08:43:01 -07:00
2008-01-02 13:04:48 -08:00
2008-01-02 13:04:48 -08:00
2008-01-02 13:04:48 -08:00
2008-01-25 21:08:33 +01:00
2007-11-09 22:39:38 +01:00
2008-01-25 21:08:34 +01:00
2007-10-17 08:42:53 -07:00
2007-11-26 20:42:19 +01:00
2007-10-29 07:41:33 -07:00
2008-01-24 20:40:26 -08:00
2007-12-17 10:47:15 -08:00
2007-12-26 19:36:35 -08:00
2007-10-23 13:47:31 -05:00
2007-10-23 15:49:54 +10:00
2007-10-23 15:49:54 +10:00
2007-10-23 15:49:55 +10:00
2007-10-23 15:49:54 +10:00
2007-10-23 15:49:54 +10:00
2007-10-17 08:42:56 -07:00
2007-10-19 11:53:34 -07:00
2008-01-28 14:57:23 -08:00