@@ -36,6 +36,7 @@ int isCompressPacket(char *payload, uint32 payload_len, int status)
36
36
37
37
if (payload_len < 5 ) {
38
38
dump (L_ERR , "what sql %u" , payload_len );
39
+ printLastPacketInfo (1 );
39
40
return BAD ;
40
41
}
41
42
uchar c = payload [3 ];
@@ -48,6 +49,11 @@ int isCompressPacket(char *payload, uint32 payload_len, int status)
48
49
}
49
50
50
51
uint32 packet_length = uint3korr (payload );
52
+ if (packet_length == 0 ) {
53
+ dump (L_ERR , "what sql %u" , payload_len );
54
+ printLastPacketInfo (1 );
55
+ return BAD ;
56
+ }
51
57
52
58
/*
53
59
normal
@@ -237,10 +243,10 @@ parse_result(char* payload, uint32 payload_len,
237
243
if (* lastPs == RESULT_STAGE ) {
238
244
ret = resultset_packet (newData , new_len , tempNum );
239
245
} else if (* lastPs == FIELD_STAGE ) {
240
- uchar c = newData [3 ];
246
+ uchar c = newData [3 ];
241
247
ret = field_packet (newData , new_len , tempNum );
242
248
} else {
243
- uchar c = newData [3 ];
249
+ uchar c = newData [3 ];
244
250
ASSERT (* lastPs == EOF_STAGE );
245
251
ret = eof_packet (newData , new_len );
246
252
}
@@ -279,7 +285,6 @@ parse_result(char* payload, uint32 payload_len,
279
285
if (header_packet_length > 0 && header_packet_length < 10 ) {
280
286
ulong field_lcb_length = lcb_length (payload + 4 );
281
287
ulong field_number = net_field_length (payload + 4 );
282
- ASSERT ((field_lcb_length == 1 ) || (field_lcb_length == 2 ) || (field_lcb_length == 3 ));
283
288
/*is def, seq must increment ?*/
284
289
if ((header_packet_length == field_lcb_length ) &&
285
290
(field_lcb_length < 4 ) && (field_number < 500 )) {
@@ -350,7 +355,7 @@ eof_packet(char* payload, uint32 payload_len)
350
355
}
351
356
}
352
357
/* eof packet span two packet */
353
- dump (L_ERR , "eof span two packet %u" , payload_len );
358
+ dump (L_DEBUG , "eof span two packet %u" , payload_len );
354
359
ASSERT (payload_len < 10 );
355
360
ASSERT (* lastData == NULL );
356
361
ASSERT (* lastDataSize == 0 );
@@ -709,16 +714,16 @@ parse_param(char *payload, uint32 payload_len, int param_count,
709
714
pos ++ ;
710
715
711
716
/* if =1 use below param_type, else use input param_type */
712
- ASSERT ((send_types_to_server == 1 ) || (send_types_to_server == 0 ));
717
+ ASSERT ((send_types_to_server == 1 ) || (send_types_to_server == 0 ));
713
718
if (send_types_to_server == 1 ) {
714
719
param_type = param_type_pos = payload + pos ;
715
720
pos = pos + 2 * param_count ; /* each type 2 bytes */
716
721
}
717
- if (!param_type ) {
718
- dump (L_ERR , "why here3" );
719
- printLastPacketInfo (10 );
720
- return NULL ;
721
- }
722
+ if (!param_type ) {
723
+ dump (L_ERR , "why here3" );
724
+ printLastPacketInfo (10 );
725
+ return NULL ;
726
+ }
722
727
int i = 0 ;
723
728
short type ;
724
729
int length ;
0 commit comments