| 
														
															@@ -2656,7 +2656,7 @@ pathbias_count_first_hop(origin_circuit_t *circ) 
														 | 
													
												
											
												
													
														| 
														 | 
														
															     if (circ->has_opened && circ->path_state != PATH_STATE_DID_FIRST_HOP) { 
														 | 
														
														 | 
														
															     if (circ->has_opened && circ->path_state != PATH_STATE_DID_FIRST_HOP) { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															       if ((rate_msg = rate_limit_log(&first_hop_notice_limit, 
														 | 
														
														 | 
														
															       if ((rate_msg = rate_limit_log(&first_hop_notice_limit, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                                      approx_time()))) { 
														 | 
														
														 | 
														
															                                      approx_time()))) { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-        log_notice(LD_BUG, 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        log_info(LD_BUG, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                 "Opened circuit is in strange path state %s. " 
														 | 
														
														 | 
														
															                 "Opened circuit is in strange path state %s. " 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                 "Circuit is a %s currently %s. %s", 
														 | 
														
														 | 
														
															                 "Circuit is a %s currently %s. %s", 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                 pathbias_state_to_string(circ->path_state), 
														 | 
														
														 | 
														
															                 pathbias_state_to_string(circ->path_state), 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -2683,7 +2683,7 @@ pathbias_count_first_hop(origin_circuit_t *circ) 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         } else { 
														 | 
														
														 | 
														
															         } else { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															           if ((rate_msg = rate_limit_log(&first_hop_notice_limit, 
														 | 
														
														 | 
														
															           if ((rate_msg = rate_limit_log(&first_hop_notice_limit, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                   approx_time()))) { 
														 | 
														
														 | 
														
															                   approx_time()))) { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-            log_notice(LD_BUG, 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+            log_info(LD_BUG, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                    "Unopened circuit has strange path state %s. " 
														 | 
														
														 | 
														
															                    "Unopened circuit has strange path state %s. " 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                    "Circuit is a %s currently %s. %s", 
														 | 
														
														 | 
														
															                    "Circuit is a %s currently %s. %s", 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                    pathbias_state_to_string(circ->path_state), 
														 | 
														
														 | 
														
															                    pathbias_state_to_string(circ->path_state), 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -2695,7 +2695,7 @@ pathbias_count_first_hop(origin_circuit_t *circ) 
														 | 
													
												
											
												
													
														| 
														 | 
														
															       } else { 
														 | 
														
														 | 
														
															       } else { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         if ((rate_msg = rate_limit_log(&first_hop_notice_limit, 
														 | 
														
														 | 
														
															         if ((rate_msg = rate_limit_log(&first_hop_notice_limit, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                 approx_time()))) { 
														 | 
														
														 | 
														
															                 approx_time()))) { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-          log_notice(LD_BUG, 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+          log_info(LD_BUG, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															               "Unopened circuit has no known guard. " 
														 | 
														
														 | 
														
															               "Unopened circuit has no known guard. " 
														 | 
													
												
											
												
													
														| 
														 | 
														
															               "Circuit is a %s currently %s. %s", 
														 | 
														
														 | 
														
															               "Circuit is a %s currently %s. %s", 
														 | 
													
												
											
												
													
														| 
														 | 
														
															               circuit_purpose_to_string(circ->_base.purpose), 
														 | 
														
														 | 
														
															               circuit_purpose_to_string(circ->_base.purpose), 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -2709,7 +2709,7 @@ pathbias_count_first_hop(origin_circuit_t *circ) 
														 | 
													
												
											
												
													
														| 
														 | 
														
															     if (circ->path_state == PATH_STATE_NEW_CIRC) { 
														 | 
														
														 | 
														
															     if (circ->path_state == PATH_STATE_NEW_CIRC) { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															       if ((rate_msg = rate_limit_log(&first_hop_notice_limit, 
														 | 
														
														 | 
														
															       if ((rate_msg = rate_limit_log(&first_hop_notice_limit, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                 approx_time()))) { 
														 | 
														
														 | 
														
															                 approx_time()))) { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-        log_notice(LD_BUG, 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        log_info(LD_BUG, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															             "A %s circuit is in cpath state %d (opened: %d). " 
														 | 
														
														 | 
														
															             "A %s circuit is in cpath state %d (opened: %d). " 
														 | 
													
												
											
												
													
														| 
														 | 
														
															             "Circuit is a %s currently %s. %s", 
														 | 
														
														 | 
														
															             "Circuit is a %s currently %s. %s", 
														 | 
													
												
											
												
													
														| 
														 | 
														
															             pathbias_state_to_string(circ->path_state), 
														 | 
														
														 | 
														
															             pathbias_state_to_string(circ->path_state), 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -2761,7 +2761,7 @@ pathbias_count_success(origin_circuit_t *circ) 
														 | 
													
												
											
												
													
														| 
														 | 
														
															       } else { 
														 | 
														
														 | 
														
															       } else { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         if ((rate_msg = rate_limit_log(&success_notice_limit, 
														 | 
														
														 | 
														
															         if ((rate_msg = rate_limit_log(&success_notice_limit, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                 approx_time()))) { 
														 | 
														
														 | 
														
															                 approx_time()))) { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-          log_notice(LD_BUG, 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+          log_info(LD_BUG, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															               "Succeeded circuit is in strange path state %s. " 
														 | 
														
														 | 
														
															               "Succeeded circuit is in strange path state %s. " 
														 | 
													
												
											
												
													
														| 
														 | 
														
															               "Circuit is a %s currently %s. %s", 
														 | 
														
														 | 
														
															               "Circuit is a %s currently %s. %s", 
														 | 
													
												
											
												
													
														| 
														 | 
														
															               pathbias_state_to_string(circ->path_state), 
														 | 
														
														 | 
														
															               pathbias_state_to_string(circ->path_state), 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -2772,7 +2772,7 @@ pathbias_count_success(origin_circuit_t *circ) 
														 | 
													
												
											
												
													
														| 
														 | 
														
															       } 
														 | 
														
														 | 
														
															       } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															  
														 | 
														
														 | 
														
															  
														 | 
													
												
											
												
													
														| 
														 | 
														
															       if (guard->first_hops < guard->circuit_successes) { 
														 | 
														
														 | 
														
															       if (guard->first_hops < guard->circuit_successes) { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-        log_warn(LD_BUG, "Unexpectedly high circuit_successes (%u/%u) " 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        log_info(LD_BUG, "Unexpectedly high circuit_successes (%u/%u) " 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                  "for guard %s=%s", 
														 | 
														
														 | 
														
															                  "for guard %s=%s", 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                  guard->circuit_successes, guard->first_hops, 
														 | 
														
														 | 
														
															                  guard->circuit_successes, guard->first_hops, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                  guard->nickname, hex_str(guard->identity, DIGEST_LEN)); 
														 | 
														
														 | 
														
															                  guard->nickname, hex_str(guard->identity, DIGEST_LEN)); 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -2780,7 +2780,7 @@ pathbias_count_success(origin_circuit_t *circ) 
														 | 
													
												
											
												
													
														| 
														 | 
														
															     } else { 
														 | 
														
														 | 
														
															     } else { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															       if ((rate_msg = rate_limit_log(&success_notice_limit, 
														 | 
														
														 | 
														
															       if ((rate_msg = rate_limit_log(&success_notice_limit, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															               approx_time()))) { 
														 | 
														
														 | 
														
															               approx_time()))) { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-        log_notice(LD_BUG, 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        log_info(LD_BUG, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															             "Completed circuit has no known guard. " 
														 | 
														
														 | 
														
															             "Completed circuit has no known guard. " 
														 | 
													
												
											
												
													
														| 
														 | 
														
															             "Circuit is a %s currently %s. %s", 
														 | 
														
														 | 
														
															             "Circuit is a %s currently %s. %s", 
														 | 
													
												
											
												
													
														| 
														 | 
														
															             circuit_purpose_to_string(circ->_base.purpose), 
														 | 
														
														 | 
														
															             circuit_purpose_to_string(circ->_base.purpose), 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -2792,7 +2792,7 @@ pathbias_count_success(origin_circuit_t *circ) 
														 | 
													
												
											
												
													
														| 
														 | 
														
															     if (circ->path_state != PATH_STATE_SUCCEEDED) { 
														 | 
														
														 | 
														
															     if (circ->path_state != PATH_STATE_SUCCEEDED) { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															       if ((rate_msg = rate_limit_log(&success_notice_limit, 
														 | 
														
														 | 
														
															       if ((rate_msg = rate_limit_log(&success_notice_limit, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															               approx_time()))) { 
														 | 
														
														 | 
														
															               approx_time()))) { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-        log_notice(LD_BUG, 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        log_info(LD_BUG, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															             "Opened circuit is in strange path state %s. " 
														 | 
														
														 | 
														
															             "Opened circuit is in strange path state %s. " 
														 | 
													
												
											
												
													
														| 
														 | 
														
															             "Circuit is a %s currently %s. %s", 
														 | 
														
														 | 
														
															             "Circuit is a %s currently %s. %s", 
														 | 
													
												
											
												
													
														| 
														 | 
														
															             pathbias_state_to_string(circ->path_state), 
														 | 
														
														 | 
														
															             pathbias_state_to_string(circ->path_state), 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -2822,7 +2822,7 @@ entry_guard_inc_first_hop_count(entry_guard_t *guard) 
														 | 
													
												
											
												
													
														| 
														 | 
														
															     if (guard->circuit_successes/((double)guard->first_hops) 
														 | 
														
														 | 
														
															     if (guard->circuit_successes/((double)guard->first_hops) 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         < pathbias_get_disable_rate(options)) { 
														 | 
														
														 | 
														
															         < pathbias_get_disable_rate(options)) { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															  
														 | 
														
														 | 
														
															  
														 | 
													
												
											
												
													
														| 
														 | 
														
															-      log_warn(LD_PROTOCOL, 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+      log_info(LD_PROTOCOL, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                "Extremely low circuit success rate %u/%u for guard %s=%s. " 
														 | 
														
														 | 
														
															                "Extremely low circuit success rate %u/%u for guard %s=%s. " 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                "This might indicate an attack, or a bug.", 
														 | 
														
														 | 
														
															                "This might indicate an attack, or a bug.", 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                guard->circuit_successes, guard->first_hops, guard->nickname, 
														 | 
														
														 | 
														
															                guard->circuit_successes, guard->first_hops, guard->nickname, 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -2835,7 +2835,7 @@ entry_guard_inc_first_hop_count(entry_guard_t *guard) 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                < pathbias_get_notice_rate(options) 
														 | 
														
														 | 
														
															                < pathbias_get_notice_rate(options) 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                && !guard->path_bias_notice) { 
														 | 
														
														 | 
														
															                && !guard->path_bias_notice) { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															       guard->path_bias_notice = 1; 
														 | 
														
														 | 
														
															       guard->path_bias_notice = 1; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-      log_notice(LD_PROTOCOL, 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+      log_info(LD_PROTOCOL, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                  "Low circuit success rate %u/%u for guard %s=%s.", 
														 | 
														
														 | 
														
															                  "Low circuit success rate %u/%u for guard %s=%s.", 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                  guard->circuit_successes, guard->first_hops, guard->nickname, 
														 | 
														
														 | 
														
															                  guard->circuit_successes, guard->first_hops, guard->nickname, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                  hex_str(guard->identity, DIGEST_LEN)); 
														 | 
														
														 | 
														
															                  hex_str(guard->identity, DIGEST_LEN)); 
														 |