[PATCH] ipvsadm: check if a virtual service exists before attempting removal

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Removing a non-existing service results in a confusing "Memory
allocation problem" error message:

        # ipvsadm -D -t example.org:80
        Memory allocation problem

Check if the given service exists before attempting removal. Inform the
user if the service is not defined.

Signed-off-by: Emanuele Rocca <ema@xxxxxxxxxxxxx>
---
 ipvsadm.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/ipvsadm.c b/ipvsadm.c
index 1a28d72..f958b11 100644
--- a/ipvsadm.c
+++ b/ipvsadm.c
@@ -942,6 +942,11 @@ static int process_options(int argc, char **argv, int reading_stdin)
 		break;
 
 	case CMD_DEL:
+		if (!(ipvs_get_service(ce.svc.fwmark, ce.svc.af, ce.svc.protocol,
+						   ce.svc.addr, ce.svc.port))) {
+			fprintf(stderr, "No such service\n");
+			exit(1);
+		}
 		result = ipvs_del_service(&ce.svc);
 		break;
 
-- 
2.13.3

--
To unsubscribe from this list: send the line "unsubscribe lvs-devel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Filesystem Devel]     [Linux NFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux SCSI]     [X.Org]

  Powered by Linux