ip6_flowlabel.c (53279f36dccffc26ff536003fd6bb97cc21c3b82) ip6_flowlabel.c (af31f412c7c7a3c0fda4bf4beaf0c85af1f263c8)
1/*
2 * ip6_flowlabel.c IPv6 flowlabel manager.
3 *
4 * This program is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU General Public License
6 * as published by the Free Software Foundation; either version
7 * 2 of the License, or (at your option) any later version.
8 *

--- 505 unchanged lines hidden (view full) ---

514 if (sfl->fl->label == freq.flr_label) {
515 err = fl6_renew(sfl->fl, freq.flr_linger, freq.flr_expires);
516 read_unlock_bh(&ip6_sk_fl_lock);
517 return err;
518 }
519 }
520 read_unlock_bh(&ip6_sk_fl_lock);
521
1/*
2 * ip6_flowlabel.c IPv6 flowlabel manager.
3 *
4 * This program is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU General Public License
6 * as published by the Free Software Foundation; either version
7 * 2 of the License, or (at your option) any later version.
8 *

--- 505 unchanged lines hidden (view full) ---

514 if (sfl->fl->label == freq.flr_label) {
515 err = fl6_renew(sfl->fl, freq.flr_linger, freq.flr_expires);
516 read_unlock_bh(&ip6_sk_fl_lock);
517 return err;
518 }
519 }
520 read_unlock_bh(&ip6_sk_fl_lock);
521
522 if (freq.flr_share == IPV6_FL_S_NONE && capable(CAP_NET_ADMIN)) {
522 if (freq.flr_share == IPV6_FL_S_NONE &&
523 ns_capable(net->user_ns, CAP_NET_ADMIN)) {
523 fl = fl_lookup(net, freq.flr_label);
524 if (fl) {
525 err = fl6_renew(fl, freq.flr_linger, freq.flr_expires);
526 fl_release(fl);
527 return err;
528 }
529 }
530 return -ESRCH;

--- 287 unchanged lines hidden ---
524 fl = fl_lookup(net, freq.flr_label);
525 if (fl) {
526 err = fl6_renew(fl, freq.flr_linger, freq.flr_expires);
527 fl_release(fl);
528 return err;
529 }
530 }
531 return -ESRCH;

--- 287 unchanged lines hidden ---