Explorar el Código

fixed bug #35945: SYN packet should provide the recv MSS not the send MSS

goldsimon hace 13 años
padre
commit
2b9933eb1e
Se han modificado 2 ficheros con 5 adiciones y 1 borrados
  1. 4 0
      CHANGELOG
  2. 1 1
      src/core/tcp_out.c

+ 4 - 0
CHANGELOG

@@ -66,6 +66,10 @@ HISTORY
 
  ++ Bugfixes:
 
+  2012-03-27: Simon Goldschmidt (patch by Mason)
+  * tcp_out.c: fixed bug #35945: SYN packet should provide the recv MSS not the
+    send MSS
+
   2012-03-22: Simon Goldschmidt
   * ip4.c: fixed bug #35927: missing refragmentaion in ip_forward
  

+ 1 - 1
src/core/tcp_out.c

@@ -1066,7 +1066,7 @@ tcp_output_segment(struct tcp_seg *seg, struct tcp_pcb *pcb)
      packets, so ignore it here */
   opts = (u32_t *)(void *)(seg->tcphdr + 1);
   if (seg->flags & TF_SEG_OPTS_MSS) {
-    *opts = TCP_BUILD_MSS_OPTION(pcb->mss);
+    *opts = TCP_BUILD_MSS_OPTION(tcp_eff_send_mss(TCP_MSS, &pcb->remote_ip));
     opts += 1;
   }
 #if LWIP_TCP_TIMESTAMPS