|  | @@ -10653,6 +10653,12 @@ read_websocket(struct mg_connection *conn,
 | 
											
												
													
														|  |  				memcpy(&l2, &buf[6], 4);
 |  |  				memcpy(&l2, &buf[6], 4);
 | 
											
												
													
														|  |  				header_len = 10 + mask_len;
 |  |  				header_len = 10 + mask_len;
 | 
											
												
													
														|  |  				data_len = (((uint64_t)ntohl(l1)) << 32) + ntohl(l2);
 |  |  				data_len = (((uint64_t)ntohl(l1)) << 32) + ntohl(l2);
 | 
											
												
													
														|  | 
 |  | +
 | 
											
												
													
														|  | 
 |  | +				if (data_len > (uint64_t)0x7FFF0000ul) {
 | 
											
												
													
														|  | 
 |  | +					/* no can do */
 | 
											
												
													
														|  | 
 |  | +					mg_cry(conn, "websocket out of memory; closing connection");
 | 
											
												
													
														|  | 
 |  | +					break;
 | 
											
												
													
														|  | 
 |  | +				}
 | 
											
												
													
														|  |  			}
 |  |  			}
 | 
											
												
													
														|  |  		}
 |  |  		}
 | 
											
												
													
														|  |  
 |  |  
 |