pier        01/07/18 21:23:07

  Modified:    webapp/lib pr_warp_packet.c
  Log:
  Fixed bug preventing to successfully load the last entry in a WARP packet.
  
  Revision  Changes    Path
  1.3       +7 -4      jakarta-tomcat-connectors/webapp/lib/pr_warp_packet.c
  
  Index: pr_warp_packet.c
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat-connectors/webapp/lib/pr_warp_packet.c,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- pr_warp_packet.c  2001/07/18 19:12:38     1.2
  +++ pr_warp_packet.c  2001/07/19 04:23:07     1.3
  @@ -54,7 +54,7 @@
    *                                                                           *
    * ========================================================================= */
   
  -/* @version $Id: pr_warp_packet.c,v 1.2 2001/07/18 19:12:38 pier Exp $ */
  +/* @version $Id: pr_warp_packet.c,v 1.3 2001/07/19 04:23:07 pier Exp $ */
   #include "pr_warp.h"
   
   void p_reset(warp_packet *pack) {
  @@ -78,7 +78,7 @@
   wa_boolean p_read_ushort(warp_packet *pack, int *x) {
       int k=0;
   
  -    if ((pack->curr+2)>=pack->size) return(wa_false);
  +    if ((pack->curr+2)>pack->size) return(wa_false);
       k=(pack->buff[pack->curr++]&0x0ff)<<8;
       k=k|(pack->buff[pack->curr++]&0x0ff);
       *x=k;
  @@ -88,7 +88,7 @@
   wa_boolean p_read_int(warp_packet *pack, int *x) {
       int k=0;
   
  -    if ((pack->curr+2)>=pack->size) return(wa_false);
  +    if ((pack->curr+2)>pack->size) return(wa_false);
       k=(pack->buff[pack->curr++]&0x0ff)<<24;
       k=k|((pack->buff[pack->curr++]&0x0ff)<<16);
       k=k|((pack->buff[pack->curr++]&0x0ff)<<8);
  @@ -102,10 +102,13 @@
   
       if (p_read_ushort(pack,&len)==wa_false) {
           *x=NULL;
  +        wa_debug(WA_MARK,"Cannot read string length");
           return(wa_false);
       }
  -    if ((pack->curr+len)>=pack->size) {
  +    if ((pack->curr+len)>pack->size) {
           *x=NULL;
  +        wa_debug(WA_MARK,"String too long (len=%d curr=%d size=%d)",
  +                 len,pack->curr,pack->size);
           return(wa_false);
       }
   
  
  
  

Reply via email to