The IPVS kernel module accepts weight up to 2,147,483,647 (INT_MAX), but
ipvsadm limits it to 65,535. Raise the user space maximum to match the
kernel.
Link: https://bugs.debian.org/814348
Signed-off-by: Jeremy Sowden <azazel@xxxxxxxxxx>
---
ipvsadm.8 | 2 +-
ipvsadm.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/ipvsadm.8 b/ipvsadm.8
index b3bc822aaafc..3d7541a4bf62 100644
--- a/ipvsadm.8
+++ b/ipvsadm.8
@@ -386,7 +386,7 @@ servers are added or modified.
.B -w, --weight \fIweight\fP
\fIWeight\fP is an integer specifying the capacity of a server
relative to the others in the pool. The valid values of \fIweight\fP
-are 0 through to 65535. The default is 1. Quiescent servers are
+are 0 through to 2147483647. The default is 1. Quiescent servers are
specified with a weight of zero. A quiescent server will receive no
new jobs but still serve the existing jobs, for all scheduling
algorithms distributed with the Linux Virtual Server. Setting a
diff --git a/ipvsadm.c b/ipvsadm.c
index 663d47ab1138..42f31a20e596 100644
--- a/ipvsadm.c
+++ b/ipvsadm.c
@@ -762,7 +762,7 @@ parse_options(int argc, char **argv, struct
ipvs_command_entry *ce,
case 'w':
set_option(options, OPTC_WEIGHT);
if ((ce->dest.weight =
- string_to_number(optarg, 0, 65535)) == -1)
+ string_to_number(optarg, 0, INT_MAX)) == -1)
fail(2, "illegal weight specified");
break;
case 'x':
--
2.45.2
|