aboutsummaryrefslogtreecommitdiffstats
path: root/net/ipv6/ipv6_sockglue.c
diff options
context:
space:
mode:
Diffstat (limited to 'net/ipv6/ipv6_sockglue.c')
-rw-r--r--net/ipv6/ipv6_sockglue.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/net/ipv6/ipv6_sockglue.c b/net/ipv6/ipv6_sockglue.c
index 1160400e9db..92295ad3487 100644
--- a/net/ipv6/ipv6_sockglue.c
+++ b/net/ipv6/ipv6_sockglue.c
@@ -767,6 +767,14 @@ pref_skip_coa:
767 767
768 break; 768 break;
769 } 769 }
770 case IPV6_MINHOPCOUNT:
771 if (optlen < sizeof(int))
772 goto e_inval;
773 if (val < 0 || val > 255)
774 goto e_inval;
775 np->min_hopcount = val;
776 retv = 0;
777 break;
770 } 778 }
771 779
772 release_sock(sk); 780 release_sock(sk);
@@ -1116,6 +1124,10 @@ static int do_ipv6_getsockopt(struct sock *sk, int level, int optname,
1116 val |= IPV6_PREFER_SRC_HOME; 1124 val |= IPV6_PREFER_SRC_HOME;
1117 break; 1125 break;
1118 1126
1127 case IPV6_MINHOPCOUNT:
1128 val = np->min_hopcount;
1129 break;
1130
1119 default: 1131 default:
1120 return -ENOPROTOOPT; 1132 return -ENOPROTOOPT;
1121 } 1133 }