mirror of git://sourceware.org/git/glibc.git
				
				
				
			Avoid infinite loop in nss_dns getnetbyname [BZ #17630]
This commit is contained in:
		
							parent
							
								
									ae61fc7b33
								
							
						
					
					
						commit
						11e3417af6
					
				|  | @ -1,3 +1,9 @@ | ||||||
|  | 2014-12-16  Florian Weimer  <fweimer@redhat.com> | ||||||
|  | 
 | ||||||
|  | 	[BZ #17630] | ||||||
|  | 	* resolv/nss_dns/dns-network.c (getanswer_r): Iterate over alias | ||||||
|  | 	names. | ||||||
|  | 
 | ||||||
| 2014-12-16  Allan McRae  <allan@archlinux.org> | 2014-12-16  Allan McRae  <allan@archlinux.org> | ||||||
| 
 | 
 | ||||||
| 	* stdio-common/Makefile (tests): Re-add bug26. | 	* stdio-common/Makefile (tests): Re-add bug26. | ||||||
|  |  | ||||||
							
								
								
									
										7
									
								
								NEWS
								
								
								
								
							
							
						
						
									
										7
									
								
								NEWS
								
								
								
								
							|  | @ -13,8 +13,8 @@ Version 2.21 | ||||||
|   15884, 16469, 16617, 16619, 16657, 16740, 16857, 17192, 17266, 17344, |   15884, 16469, 16617, 16619, 16657, 16740, 16857, 17192, 17266, 17344, | ||||||
|   17363, 17370, 17371, 17411, 17460, 17475, 17485, 17501, 17506, 17508, |   17363, 17370, 17371, 17411, 17460, 17475, 17485, 17501, 17506, 17508, | ||||||
|   17522, 17555, 17570, 17571, 17572, 17573, 17574, 17581, 17582, 17583, |   17522, 17555, 17570, 17571, 17572, 17573, 17574, 17581, 17582, 17583, | ||||||
|   17584, 17585, 17589, 17594, 17601, 17608, 17616, 17625, 17633, 17634, |   17584, 17585, 17589, 17594, 17601, 17608, 17616, 17625, 17630, 17633, | ||||||
|   17647, 17653, 17657, 17664, 17665, 17668, 17682. |   17634, 17647, 17653, 17657, 17664, 17665, 17668, 17682. | ||||||
| 
 | 
 | ||||||
| * CVE-2104-7817 The wordexp function could ignore the WRDE_NOCMD flag | * CVE-2104-7817 The wordexp function could ignore the WRDE_NOCMD flag | ||||||
|   under certain input conditions resulting in the execution of a shell for |   under certain input conditions resulting in the execution of a shell for | ||||||
|  | @ -25,6 +25,9 @@ Version 2.21 | ||||||
| * CVE-2012-3406 printf-style functions could run into a stack overflow when | * CVE-2012-3406 printf-style functions could run into a stack overflow when | ||||||
|   processing format strings with a large number of format specifiers. |   processing format strings with a large number of format specifiers. | ||||||
| 
 | 
 | ||||||
|  | * The nss_dns implementation of getnetbyname could run into an infinite loop | ||||||
|  |   if the DNS response contained a PTR record of an unexpected format. | ||||||
|  | 
 | ||||||
| * The minimum GCC version that can be used to build this version of the GNU | * The minimum GCC version that can be used to build this version of the GNU | ||||||
|   C Library is GCC 4.6.  Older GCC versions, and non-GNU compilers, can |   C Library is GCC 4.6.  Older GCC versions, and non-GNU compilers, can | ||||||
|   still be used to compile programs using the GNU C Library. |   still be used to compile programs using the GNU C Library. | ||||||
|  |  | ||||||
|  | @ -398,8 +398,8 @@ getanswer_r (const querybuf *answer, int anslen, struct netent *result, | ||||||
| 
 | 
 | ||||||
| 	case BYNAME: | 	case BYNAME: | ||||||
| 	  { | 	  { | ||||||
| 	    char **ap = result->n_aliases++; | 	    char **ap; | ||||||
| 	    while (*ap != NULL) | 	    for (ap = result->n_aliases; *ap != NULL; ++ap) | ||||||
| 	      { | 	      { | ||||||
| 		/* Check each alias name for being of the forms:
 | 		/* Check each alias name for being of the forms:
 | ||||||
| 		   4.3.2.1.in-addr.arpa		= net 1.2.3.4 | 		   4.3.2.1.in-addr.arpa		= net 1.2.3.4 | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue