Add REQUEST_FIXED_SIZE testcases to test/misc.c
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
This commit is contained in:
		
							parent
							
								
									2df83bb122
								
							
						
					
					
						commit
						f4afd53f2a
					
				
							
								
								
									
										37
									
								
								test/misc.c
								
								
								
								
							
							
						
						
									
										37
									
								
								test/misc.c
								
								
								
								
							|  | @ -28,6 +28,8 @@ | |||
| #include <stdint.h> | ||||
| #include "misc.h" | ||||
| #include "scrnintstr.h" | ||||
| #include "dix.h" | ||||
| #include "dixstruct.h" | ||||
| 
 | ||||
| ScreenInfo screenInfo; | ||||
| 
 | ||||
|  | @ -155,11 +157,46 @@ dix_update_desktop_dimensions(void) | |||
|     assert_dimensions(-w2, -h2, w2, h2); | ||||
| } | ||||
| 
 | ||||
| static int | ||||
| dix_request_fixed_size_overflow(ClientRec *client) | ||||
| { | ||||
|     xReq req = { 0 }; | ||||
| 
 | ||||
|     client->req_len = req.length = 1; | ||||
|     REQUEST_FIXED_SIZE(req, SIZE_MAX); | ||||
|     return Success; | ||||
| } | ||||
| 
 | ||||
| static int | ||||
| dix_request_fixed_size_match(ClientRec *client) | ||||
| { | ||||
|     xReq req = { 0 }; | ||||
| 
 | ||||
|     client->req_len = req.length = 9; | ||||
|     REQUEST_FIXED_SIZE(req, 30); | ||||
|     return Success; | ||||
| } | ||||
| 
 | ||||
| static void | ||||
| dix_request_size_checks(void) | ||||
| { | ||||
|     ClientRec client = { 0 }; | ||||
|     int rc; | ||||
| 
 | ||||
|     rc = dix_request_fixed_size_overflow(&client); | ||||
|     assert(rc == BadLength); | ||||
| 
 | ||||
|     rc = dix_request_fixed_size_match(&client); | ||||
|     assert(rc == Success); | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| int | ||||
| main(int argc, char **argv) | ||||
| { | ||||
|     dix_version_compare(); | ||||
|     dix_update_desktop_dimensions(); | ||||
|     dix_request_size_checks(); | ||||
| 
 | ||||
|     return 0; | ||||
| } | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue