Alexander V. Chernikov 11cdad9873 Partially merge r274887,r275334,r275577,r275578,r275586 to minimize
differences between projects/routing and HEAD.

This commit tries to keep code logic the same while changing underlying
code to use unified callbacks.

* Add llt_foreach_entry method to traverse all entries in given llt
* Add llt_dump_entry method to export particular lle entry in sysctl/rtsock
  format (code is not indented properly to minimize diff). Will be fixed
  in the next commits.
* Add llt_link_entry/llt_unlink_entry methods to link/unlink particular lle.
* Add llt_fill_sa_entry method to export address in the lle to sockaddr
  format.
* Add llt_hash method to use in generic hash table support code.
* Add llt_free_entry method which is used in llt_prefix_free code.

* Prepare for fine-grained locking by separating lle unlink and deletion in
  lltable_free() and lltable_prefix_free().

* Provide lltable_get<ifp|af>() functions to reduce direct 'struct lltable'
 access by external callers.

* Remove @llt agrument from lle_free() lle callback since it was unused.
* Temporarily add L3_CADDR() macro for 'const' sockaddr typecasting.
* Switch to per-af hashing code.
* Rename LLE_FREE_LOCKED() callback from in[6]_lltable_free() to
  in_[6]lltable_destroy() to avoid clashing with llt_free_entry() method.
  Update description from these functions.
* Use unified lltable_free_entry() function instead of per-af one.

Reviewed by:	ae
2015-08-10 12:03:59 +00:00
..
2015-04-26 11:39:25 +00:00
2015-01-12 08:33:04 +00:00
2015-08-08 17:48:54 +00:00
2015-08-08 21:42:15 +00:00
2015-03-18 04:40:36 +00:00
2015-04-21 20:25:12 +00:00
2015-07-31 09:02:28 +00:00
2015-08-08 15:58:35 +00:00
2015-07-18 15:28:32 +00:00
2015-06-17 15:20:14 +00:00
2015-06-17 15:20:14 +00:00
2015-06-19 21:55:12 +00:00
2015-06-17 15:20:14 +00:00
2015-07-25 16:14:55 +00:00
2015-08-08 17:48:54 +00:00