LVS
lvs-devel
Google
 
Web LinuxVirtualServer.org

[PATCH ipvsadm 1/5] ipvsadm: increase maximum weight value

To: LVS Devel <lvs-devel@xxxxxxxxxxxxxxx>
Subject: [PATCH ipvsadm 1/5] ipvsadm: increase maximum weight value
From: Jeremy Sowden <azazel@xxxxxxxxxx>
Date: Sun, 12 Jan 2025 20:03:29 +0000
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



<Prev in Thread] Current Thread [Next in Thread>