path: root/src/allowedips.c (unfollow)
Commit message (Collapse)AuthorFilesLines
2018-01-03global: year bumpJason A. Donenfeld1-1/+1
2017-12-09global: add SPDX tags to all filesGreg Kroah-Hartman1-1/+4
It's good to have SPDX identifiers in all files as the Linux kernel developers are working to add these identifiers to all files. Update all files with the correct SPDX license identifier based on the license text of the project or based on the license in the file itself. The SPDX identifier is a legally binding shorthand, which can be used instead of the full boiler plate text. Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Modified-by: Jason A. Donenfeld <Jason@zx2c4.com>
2017-11-25allowedips: simplifyJason A. Donenfeld1-35/+12
2017-11-25allowedips: optimizeJason A. Donenfeld1-14/+52
2017-11-13allowedips: do not write out of boundsJason A. Donenfeld1-2/+4
2017-11-10allowedips: rename from routingtableJason A. Donenfeld1-30/+30
Makes it more clear that this _not_ a routing table replacement.
2017-10-09routingtable: iterate progressivelyJason A. Donenfeld1-30/+46
2017-10-09routingtable: only use device's mutex, not a special rt oneJason A. Donenfeld1-80/+16
2017-10-03global: add space around variable declarationsJason A. Donenfeld1-0/+9
2017-10-03global: satisfy bitshift pedantryJason A. Donenfeld1-1/+1
Suggested-by: Sultan Alsawaf <sultanxda@gmail.com>
2017-09-15routingtable: satisfy sparseJason A. Donenfeld1-1/+2
2017-08-02routingtable: unbloat BUG()Jason A. Donenfeld1-3/+2
Really isn't necessary.
2017-06-26global: cleanup IP header checkingJason A. Donenfeld1-19/+4
This way is more correct and ensures we're within the skb head.
2017-05-31routingtable: Remove unnecessary check in node_placement()Sultan Alsawaf1-2/+1
node_placement() is always given the address of a stack variable for rnode, so there's no need to check if rnode is null. Signed-off-by: Sultan Alsawaf <sultanxda@gmail.com>
2017-04-21routingtable: rewrite core functionsJason A. Donenfeld1-285/+126
When removing by peer, prev needs to be set to *nptr in order to traverse that part of the trie. The other remove by IP function can simply be removed, as it's not in use. The root freeing function can use pre-order traversal instead of post-order. The pre-order traversal code in general is now a nice iterator macro. The common bits function can use the fast fls instructions and the match function can be rewritten to simply compare common bits. While we're at it, let's add tons of new tests, randomized checking against a dumb implementation, and graphviz output. And in general, it's nice to clean things up.
2017-04-04locking: always use _bhJason A. Donenfeld1-22/+26
All locks are potentially between user context and softirq, which means we need to take the _bh variant.
2017-01-10Update copyrightJason A. Donenfeld1-1/+1
2016-12-23routing-table: simplify and mask reparented rootJason A. Donenfeld1-16/+9
2016-12-11global: move to consistent use of uN instead of uintN_t for kernel codeJason A. Donenfeld1-34/+34
2016-11-21headers: cleanup noticesJason A. Donenfeld1-1/+1
2016-11-07routing-table: mask self for better IP displayJason A. Donenfeld1-2/+6
2016-09-29Rework headers and includesJason A. Donenfeld1-1/+1
2016-08-22routingtable: hyphen was uglyJason A. Donenfeld1-1/+1
2016-08-02selftest: move to subfolderJason A. Donenfeld1-118/+1
2016-06-25tests: make fatalJason A. Donenfeld1-2/+5