| 
					
				 | 
			
			
				@@ -90,9 +90,15 @@ static void 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 test_util_parse_http_time(void *arg) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   struct tm a_time; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  char b[ISO_TIME_LEN+1]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   (void)arg; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#define T(s) do {                               \ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    format_iso_time(b, tor_timegm(&a_time));    \ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    tt_str_op(b, ==, (s));                      \ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    b[0]='\0';                                  \ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  } while (0) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   /* Test parse_http_time */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   test_eq(-1, parse_http_time("", &a_time)); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -105,26 +111,37 @@ test_util_parse_http_time(void *arg) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   test_eq(0, parse_http_time("Wednesday, 04 Aug 1994 00:48:22 GMT", &a_time)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   test_eq((time_t)775961302UL, tor_timegm(&a_time)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  T("1994-08-04 00:48:22"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   test_eq(0, parse_http_time("Wednesday, 4 Aug 1994 0:48:22 GMT", &a_time)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   test_eq((time_t)775961302UL, tor_timegm(&a_time)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  T("1994-08-04 00:48:22"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   test_eq(0, parse_http_time("Miercoles, 4 Aug 1994 0:48:22 GMT", &a_time)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   test_eq((time_t)775961302UL, tor_timegm(&a_time)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  T("1994-08-04 00:48:22"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   test_eq(0, parse_http_time("Wednesday, 04-Aug-94 00:48:22 GMT", &a_time)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   test_eq((time_t)775961302UL, tor_timegm(&a_time)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  T("1994-08-04 00:48:22"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   test_eq(0, parse_http_time("Wednesday, 4-Aug-94 0:48:22 GMT", &a_time)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   test_eq((time_t)775961302UL, tor_timegm(&a_time)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  T("1994-08-04 00:48:22"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   test_eq(0, parse_http_time("Miercoles, 4-Aug-94 0:48:22 GMT", &a_time)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   test_eq((time_t)775961302UL, tor_timegm(&a_time)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  T("1994-08-04 00:48:22"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   test_eq(0, parse_http_time("Wed Aug 04 00:48:22 1994", &a_time)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   test_eq((time_t)775961302UL, tor_timegm(&a_time)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  T("1994-08-04 00:48:22"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   test_eq(0, parse_http_time("Wed Aug 4 0:48:22 1994", &a_time)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   test_eq((time_t)775961302UL, tor_timegm(&a_time)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  T("1994-08-04 00:48:22"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   test_eq(0, parse_http_time("Mie Aug 4 0:48:22 1994", &a_time)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   test_eq((time_t)775961302UL, tor_timegm(&a_time)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  T("1994-08-04 00:48:22"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   test_eq(0, parse_http_time("Sun, 1 Jan 2012 00:00:00 GMT", &a_time)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   test_eq((time_t)1325376000UL, tor_timegm(&a_time)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  T("2012-01-01 00:00:00"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   test_eq(0, parse_http_time("Mon, 31 Dec 2012 00:00:00 GMT", &a_time)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   test_eq((time_t)1356912000UL, tor_timegm(&a_time)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  T("2012-12-31 00:00:00"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   test_eq(-1, parse_http_time("2004-08-zz 99-99x99 GMT", &a_time)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   test_eq(-1, parse_http_time("2011-03-32 00:00:00 GMT", &a_time)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   test_eq(-1, parse_http_time("2011-03-30 24:00:00 GMT", &a_time)); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -134,6 +151,7 @@ test_util_parse_http_time(void *arg) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   test_eq(-1, parse_http_time("2011-00-30 23:59:59 GMT", &a_time)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   test_eq(-1, parse_http_time("2011-03-30 23:59", &a_time)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#undef T 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  done: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   ; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 |