mirror of
				https://gitlab.labs.nic.cz/labs/bird.git
				synced 2024-05-11 16:54:54 +00:00 
			
		
		
		
	Netlink: Allow more than 256 routing tables.
Since 2.6.19, the netlink API defines RTA_TABLE routing attribute to allow 32-bit routing table IDs. Using this attribute to index routing tables at Linux, instead of 8-bit rtm_table field.
This commit is contained in:
		
				
					committed by
					
						
						Ondrej Zajicek (work)
					
				
			
			
				
	
			
			
			
						parent
						
							86b4e17001
						
					
				
				
					commit
					9ddbfbddf8
				
			@@ -77,6 +77,7 @@ krt_io_init(void)
 | 
			
		||||
  krt_pool = rp_new(&root_pool, "Kernel Syncer");
 | 
			
		||||
  krt_filter_lp = lp_new(krt_pool, 4080);
 | 
			
		||||
  init_list(&krt_proto_list);
 | 
			
		||||
  krt_sys_io_init();
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
@@ -1126,7 +1127,11 @@ krt_start(struct proto *P)
 | 
			
		||||
  krt_learn_init(p);
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
  krt_sys_start(p);
 | 
			
		||||
  if (!krt_sys_start(p))
 | 
			
		||||
  {
 | 
			
		||||
    rem_node(&p->krt_node);
 | 
			
		||||
    return PS_START;
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  krt_scan_timer_start(p);
 | 
			
		||||
 | 
			
		||||
@@ -1150,8 +1155,10 @@ krt_shutdown(struct proto *P)
 | 
			
		||||
  p->ready = 0;
 | 
			
		||||
  p->initialized = 0;
 | 
			
		||||
 | 
			
		||||
  krt_sys_shutdown(p);
 | 
			
		||||
  if (p->p.proto_state == PS_START)
 | 
			
		||||
    return PS_DOWN;
 | 
			
		||||
 | 
			
		||||
  krt_sys_shutdown(p);
 | 
			
		||||
  rem_node(&p->krt_node);
 | 
			
		||||
 | 
			
		||||
  return PS_DOWN;
 | 
			
		||||
 
 | 
			
		||||
@@ -119,8 +119,9 @@ struct proto_config * krt_init_config(int class);
 | 
			
		||||
 | 
			
		||||
/* krt sysdep */
 | 
			
		||||
 | 
			
		||||
void krt_sys_io_init(void);
 | 
			
		||||
void krt_sys_init(struct krt_proto *);
 | 
			
		||||
void krt_sys_start(struct krt_proto *);
 | 
			
		||||
int krt_sys_start(struct krt_proto *);
 | 
			
		||||
void krt_sys_shutdown(struct krt_proto *);
 | 
			
		||||
int krt_sys_reconfigure(struct krt_proto *p UNUSED, struct krt_config *n, struct krt_config *o);
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user