mirror of
				https://gitea.invidious.io/iv-org/litespeed-quic.git
				synced 2024-08-15 00:53:43 +00:00 
			
		
		
		
	Release 3.2.0
This commit is contained in:
		
							parent
							
								
									a5347f2374
								
							
						
					
					
						commit
						0e32849de5
					
				
					 5 changed files with 17 additions and 8 deletions
				
			
		| 
						 | 
				
			
			@ -1,3 +1,10 @@
 | 
			
		|||
2022-10-20
 | 
			
		||||
    - 3.2.0
 | 
			
		||||
    - Update ls-qpack to 2.5.0 to address a decoder bug
 | 
			
		||||
    - Address a few corner cases that trigger assert failures.
 | 
			
		||||
    - Properly handle unexpected large packet for gQUIC.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
2022-08-16
 | 
			
		||||
    - 3.1.2
 | 
			
		||||
    - Update ls-qpack to 2.4.0 to address a use-after-free bug
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -24,9 +24,9 @@ copyright = u'2022, LiteSpeed Technologies'
 | 
			
		|||
author = u'LiteSpeed Technologies'
 | 
			
		||||
 | 
			
		||||
# The short X.Y version
 | 
			
		||||
version = u'3.1'
 | 
			
		||||
version = u'3.2'
 | 
			
		||||
# The full version, including alpha/beta/rc tags
 | 
			
		||||
release = u'3.1.2'
 | 
			
		||||
release = u'3.2.0'
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# -- General configuration ---------------------------------------------------
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -24,8 +24,8 @@ extern "C" {
 | 
			
		|||
#endif
 | 
			
		||||
 | 
			
		||||
#define LSQUIC_MAJOR_VERSION 3
 | 
			
		||||
#define LSQUIC_MINOR_VERSION 1
 | 
			
		||||
#define LSQUIC_PATCH_VERSION 2
 | 
			
		||||
#define LSQUIC_MINOR_VERSION 2
 | 
			
		||||
#define LSQUIC_PATCH_VERSION 0
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Engine flags:
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -63,7 +63,7 @@ rechist_free_elem (struct lsquic_rechist *rechist, unsigned idx)
 | 
			
		|||
static void
 | 
			
		||||
rechist_dump_elem(struct rechist_elem *el)
 | 
			
		||||
{
 | 
			
		||||
    fprintf(stderr,"[%"PRIu64"-%"PRIu64"]", RE_HIGH(el), el->re_low);
 | 
			
		||||
    fprintf(stderr, "[%" PRIu64 "-%" PRIu64 "]", RE_HIGH(el), el->re_low);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
#ifdef __GNUC__
 | 
			
		||||
| 
						 | 
				
			
			@ -73,7 +73,8 @@ static void
 | 
			
		|||
rechist_dump(struct lsquic_rechist *rechist)
 | 
			
		||||
{
 | 
			
		||||
    fprintf(stderr,
 | 
			
		||||
            "%p: cutoff %"PRIu64" l. acked %"PRIu64" masks %u alloced %u used %u max ranges %u head %u\n",
 | 
			
		||||
            "%p: cutoff %" PRIu64 " l. acked %" PRIu64
 | 
			
		||||
            " masks %u alloced %u used %u max ranges %u head %u\n",
 | 
			
		||||
            rechist,
 | 
			
		||||
            rechist->rh_cutoff, 
 | 
			
		||||
            rechist->rh_largest_acked_received,
 | 
			
		||||
| 
						 | 
				
			
			@ -219,7 +220,7 @@ rechist_alloc_elem (struct lsquic_rechist *rechist)
 | 
			
		|||
    idx = find_free_slot(*mask);
 | 
			
		||||
    *mask |= 1ull << idx;
 | 
			
		||||
    ++rechist->rh_n_used;
 | 
			
		||||
    /*Note that re_next is invalid at this point, caller must set it */
 | 
			
		||||
    /* Note that re_next is invalid at this point, caller must set it */
 | 
			
		||||
 | 
			
		||||
    return idx + i * BITS_PER_MASK;
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			@ -265,7 +266,7 @@ rechist_test_sanity (const struct lsquic_rechist *rechist)
 | 
			
		|||
    free(masks);
 | 
			
		||||
}
 | 
			
		||||
#define rechist_sanity_check(rechist_) do {                         \
 | 
			
		||||
    rechist_test_sanity(rechist_);                              \
 | 
			
		||||
        rechist_test_sanity(rechist_);                              \
 | 
			
		||||
} while (0)
 | 
			
		||||
#else
 | 
			
		||||
#define rechist_sanity_check(rechist)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -195,6 +195,7 @@ test5 (void)
 | 
			
		|||
    lsquic_rechist_cleanup(&rechist);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
/* Regression test for bug where rechist ends up empty (rh_used == 0)
 | 
			
		||||
 * with invalid head entry with a self-referential next, and
 | 
			
		||||
 * lsquic_rechist_received would follow it because it didn't check rh_used.
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue