diff options
author | Christian Heim <phreak@gentoo.org> | 2006-08-27 09:35:17 +0000 |
---|---|---|
committer | Christian Heim <phreak@gentoo.org> | 2006-08-27 09:35:17 +0000 |
commit | 166e3aee9238ace11e1d2be01785d5743d9c1324 (patch) | |
tree | 742404544ce4476e00dcf1202be2c5d1ee608cfb | |
parent | Moving the flag-o-matic magic to src_compile (diff) | |
download | overlay-166e3aee9238ace11e1d2be01785d5743d9c1324.tar.gz overlay-166e3aee9238ace11e1d2be01785d5743d9c1324.tar.bz2 overlay-166e3aee9238ace11e1d2be01785d5743d9c1324.zip |
Adding vzctl-3.0.11 for testing!
svn path=/; revision=33
18 files changed, 1219 insertions, 0 deletions
diff --git a/sys-cluster/vzctl/Manifest b/sys-cluster/vzctl/Manifest new file mode 100644 index 0000000..c7976ef --- /dev/null +++ b/sys-cluster/vzctl/Manifest @@ -0,0 +1,68 @@ +AUX patches/005_all_library-rework.patch 8365 RMD160 4618dc3144a53a46844b921ebac61916f291d7be SHA1 d86ac27a5a6badfbb18d88fb963ec72e855ec587 SHA256 ab4450a8da48223e4cd4a2b519746ff3656a228159a83c0000c2535995dd9dbd +MD5 da6a5b76439801fdb4b13de6df4e1ff3 files/patches/005_all_library-rework.patch 8365 +RMD160 4618dc3144a53a46844b921ebac61916f291d7be files/patches/005_all_library-rework.patch 8365 +SHA256 ab4450a8da48223e4cd4a2b519746ff3656a228159a83c0000c2535995dd9dbd files/patches/005_all_library-rework.patch 8365 +AUX patches/010_all_dev-nul.patch 758 RMD160 d064a4ac075fedae7163f339d5297809f27f4449 SHA1 c8ca91cb26242b85189c0ab7b31dc8200763aa57 SHA256 beb3b1c51b7bc6a8b93011b3182df8d29ac9a61abe007549da137c6fe95bffb9 +MD5 2e89a54c35302b072719c247bcf209e0 files/patches/010_all_dev-nul.patch 758 +RMD160 d064a4ac075fedae7163f339d5297809f27f4449 files/patches/010_all_dev-nul.patch 758 +SHA256 beb3b1c51b7bc6a8b93011b3182df8d29ac9a61abe007549da137c6fe95bffb9 files/patches/010_all_dev-nul.patch 758 +AUX patches/015_all_fix-cast-pointers.patch 1221 RMD160 0ec71811e69d72446871b2d0286aa38b66ebdb07 SHA1 78fd010e568cf379e0fd9bdc8787b29cc679fdd3 SHA256 944d7f6cb5cc494bfe3d2c67ee541ba09638fd198ddd8d07b4f8410f19f7956b +MD5 d25cba37c41ffa5631ba1f59b7f6ccea files/patches/015_all_fix-cast-pointers.patch 1221 +RMD160 0ec71811e69d72446871b2d0286aa38b66ebdb07 files/patches/015_all_fix-cast-pointers.patch 1221 +SHA256 944d7f6cb5cc494bfe3d2c67ee541ba09638fd198ddd8d07b4f8410f19f7956b files/patches/015_all_fix-cast-pointers.patch 1221 +AUX patches/020_all_memleak-realloc.patch 3173 RMD160 650fbaf1a744d29efa424c7e12f03b55ede5951e SHA1 5849c0272d1ce27505fc0aabe240f35985ed706b SHA256 f10c31e30bcf58fc9dde7cbd8a0b6072f4c90606a27ff8ab0f66db6953d9418d +MD5 61d8a3b7b6991a44a13f358adcf17f29 files/patches/020_all_memleak-realloc.patch 3173 +RMD160 650fbaf1a744d29efa424c7e12f03b55ede5951e files/patches/020_all_memleak-realloc.patch 3173 +SHA256 f10c31e30bcf58fc9dde7cbd8a0b6072f4c90606a27ff8ab0f66db6953d9418d files/patches/020_all_memleak-realloc.patch 3173 +AUX patches/025_all_off-by-one.patch 842 RMD160 416cf6a37c6538f59f64a6a9cca95dd506b5f7a7 SHA1 96ae5d6f92bb7ff78f8e6d5cbd274fcd2b4e0b46 SHA256 25c9344ff01e0dc6bdd7e7e297f650907351f23d3e3f69361fc59f84dee4d036 +MD5 541518b245bcb60d689e412bd0af2c73 files/patches/025_all_off-by-one.patch 842 +RMD160 416cf6a37c6538f59f64a6a9cca95dd506b5f7a7 files/patches/025_all_off-by-one.patch 842 +SHA256 25c9344ff01e0dc6bdd7e7e297f650907351f23d3e3f69361fc59f84dee4d036 files/patches/025_all_off-by-one.patch 842 +AUX patches/035_all_remove-vename-on-destroy.patch 1079 RMD160 f4c17841b1147e46dafda1065be3a943de1d6fb9 SHA1 1211545d417cf9a169519388a7da753d6c2db14f SHA256 ee7057c7b80e81b0a6011a60ebb321d07bd4333b3572874186042acac22976d6 +MD5 c8d9dc663d72635cb424c6f52ee273cb files/patches/035_all_remove-vename-on-destroy.patch 1079 +RMD160 f4c17841b1147e46dafda1065be3a943de1d6fb9 files/patches/035_all_remove-vename-on-destroy.patch 1079 +SHA256 ee7057c7b80e81b0a6011a60ebb321d07bd4333b3572874186042acac22976d6 files/patches/035_all_remove-vename-on-destroy.patch 1079 +AUX patches/040_all_segfault-long-opts.patch 886 RMD160 d3b72a38e25f4d7e539ec3c82da08323654fa9c7 SHA1 bead2b85fa3ab52c3bded469d09284466f25c76a SHA256 2fb5745146a2f4819da58bcd350ae261388e066c7b6356b3c53699a5ef256740 +MD5 d3db59719e8b4aa7a76b18e2d0c8559a files/patches/040_all_segfault-long-opts.patch 886 +RMD160 d3b72a38e25f4d7e539ec3c82da08323654fa9c7 files/patches/040_all_segfault-long-opts.patch 886 +SHA256 2fb5745146a2f4819da58bcd350ae261388e066c7b6356b3c53699a5ef256740 files/patches/040_all_segfault-long-opts.patch 886 +AUX patches/045_all_vzctl-enter-exit-msg.patch 827 RMD160 7cc105351107def7667b648eec7ff50d217262e3 SHA1 eecb1605f44cf466b357fb6e64b323107d1d71ec SHA256 e5a537af6a4e438df4b37b5028541336aded1c58a1102c170d88ab9237f54ed6 +MD5 2fbaaa425ff5e619c59ad9f812caed27 files/patches/045_all_vzctl-enter-exit-msg.patch 827 +RMD160 7cc105351107def7667b648eec7ff50d217262e3 files/patches/045_all_vzctl-enter-exit-msg.patch 827 +SHA256 e5a537af6a4e438df4b37b5028541336aded1c58a1102c170d88ab9237f54ed6 files/patches/045_all_vzctl-enter-exit-msg.patch 827 +AUX patches/050_all_vzctl-enter-forward-msg-from-child.patch 1347 RMD160 c9eff0f85710999e74a4bbdb17a08b5f28832c31 SHA1 12ce1ee914f5377c322532196daca3e3cc03ce44 SHA256 c7556e5a4c5db3eed57ec12379b48f087d796e0a12cb746bbedf0a78e0882dea +MD5 3e6306d083383cf5da3d0b644e1b5ea6 files/patches/050_all_vzctl-enter-forward-msg-from-child.patch 1347 +RMD160 c9eff0f85710999e74a4bbdb17a08b5f28832c31 files/patches/050_all_vzctl-enter-forward-msg-from-child.patch 1347 +SHA256 c7556e5a4c5db3eed57ec12379b48f087d796e0a12cb746bbedf0a78e0882dea files/patches/050_all_vzctl-enter-forward-msg-from-child.patch 1347 +AUX patches/055_all_vzctl-sprintf-snprintf.patch 3936 RMD160 30f930dd69369e7c0c2e418fff8ef52eb7188c85 SHA1 1b0f2edcc9217d6953108d70a8a59bc034b6f3eb SHA256 8cdc2a0e22acdc5ae8636dc88b6b4e4ce1c0b74704be6a67297fa529a04d2999 +MD5 c24a76ba522c376a73e2a5a6fca5680b files/patches/055_all_vzctl-sprintf-snprintf.patch 3936 +RMD160 30f930dd69369e7c0c2e418fff8ef52eb7188c85 files/patches/055_all_vzctl-sprintf-snprintf.patch 3936 +SHA256 8cdc2a0e22acdc5ae8636dc88b6b4e4ce1c0b74704be6a67297fa529a04d2999 files/patches/055_all_vzctl-sprintf-snprintf.patch 3936 +AUX patches/200_all_incorrect-spelling.patch 3036 RMD160 46e3e218469c0e82caee39862ab5764af307af4d SHA1 9135f493430b71225d1e38e8c8feaabfbdf5746d SHA256 0c9722a9ed1fc431ff450df21a644f78b4f6b06abc24d48371792a7ae938aac4 +MD5 3b15ae8f8754d810cf0f2812c78410a3 files/patches/200_all_incorrect-spelling.patch 3036 +RMD160 46e3e218469c0e82caee39862ab5764af307af4d files/patches/200_all_incorrect-spelling.patch 3036 +SHA256 0c9722a9ed1fc431ff450df21a644f78b4f6b06abc24d48371792a7ae938aac4 files/patches/200_all_incorrect-spelling.patch 3036 +AUX patches/205_all_ve-light.conf-sample.patch 986 RMD160 ec09ffb9b10e89c1adb397b034d7409f0fbd040d SHA1 b5a44fd291b9c522ebaa635877ff077438fc2b40 SHA256 ed592754a9424f830956420663e5fc683a8f8b36ae58e07a88bdab887774e8e7 +MD5 5777298f8dc53539797b2a763b98b85c files/patches/205_all_ve-light.conf-sample.patch 986 +RMD160 ec09ffb9b10e89c1adb397b034d7409f0fbd040d files/patches/205_all_ve-light.conf-sample.patch 986 +SHA256 ed592754a9424f830956420663e5fc683a8f8b36ae58e07a88bdab887774e8e7 files/patches/205_all_ve-light.conf-sample.patch 986 +AUX patches/210_all_vzctl-3.0.11-vzctl.8.patch 793 RMD160 488b014d52790d0186e1572ad46cde42ab8250e9 SHA1 dfd6a63c95a3017e269517b50d863ba73c17d1a9 SHA256 224281a938b68c1957e2f6d6c08851381560302983f946fe53eaa04da83edc02 +MD5 05e8d598abb1041cca8a8c0b6e6e3791 files/patches/210_all_vzctl-3.0.11-vzctl.8.patch 793 +RMD160 488b014d52790d0186e1572ad46cde42ab8250e9 files/patches/210_all_vzctl-3.0.11-vzctl.8.patch 793 +SHA256 224281a938b68c1957e2f6d6c08851381560302983f946fe53eaa04da83edc02 files/patches/210_all_vzctl-3.0.11-vzctl.8.patch 793 +AUX patches/215_all_vzmigrate-mawk.patch 926 RMD160 45a983d6c8fc3bc4737feb4167fea17c93436af4 SHA1 28d5db70f1cb88528c70440dea7c1f2cc42ab160 SHA256 f673e4011fe0713908d77a5bf240b2722b0bb25e64983d64e86b2cae7fb9ddbb +MD5 256aeebc61c995b6bdc5544a3c67e95b files/patches/215_all_vzmigrate-mawk.patch 926 +RMD160 45a983d6c8fc3bc4737feb4167fea17c93436af4 files/patches/215_all_vzmigrate-mawk.patch 926 +SHA256 f673e4011fe0713908d77a5bf240b2722b0bb25e64983d64e86b2cae7fb9ddbb files/patches/215_all_vzmigrate-mawk.patch 926 +AUX vz.initd 5857 RMD160 20c18e403ee8d5c2fea72026f0c0d4f6d00a7381 SHA1 b6f6a00399cab7d8249d8a744ad86135e80be15f SHA256 ce3f721de30e3ae18286cdfccdac44c9b01f84838e336a9d1b9a5ff59e8a0480 +MD5 65ad1bf9fada9b4649e5e85cf5750b7b files/vz.initd 5857 +RMD160 20c18e403ee8d5c2fea72026f0c0d4f6d00a7381 files/vz.initd 5857 +SHA256 ce3f721de30e3ae18286cdfccdac44c9b01f84838e336a9d1b9a5ff59e8a0480 files/vz.initd 5857 +DIST vzctl-3.0.11.tar.bz2 125685 RMD160 af04926dc3971d4078e83333d015a9db49e63ff7 SHA1 77edcc11bc2013068f51706280ecc5010d0630c0 SHA256 03b255ba3cdc700178bb7d20af928ab3896ac799404866187f0293ed87a9aecb +EBUILD vzctl-3.0.11.ebuild 1448 RMD160 ed7ba09d3b968dcf93ca3c6a39084960c12e59d5 SHA1 f6baa3c5b2804970ad024330347d6b00d708a4cd SHA256 3f132251babcf59952c4741fa33584f0779e376ff28dce797488be0276cf8f59 +MD5 64b8f9a088c42fc1f0d995d599e3fd62 vzctl-3.0.11.ebuild 1448 +RMD160 ed7ba09d3b968dcf93ca3c6a39084960c12e59d5 vzctl-3.0.11.ebuild 1448 +SHA256 3f132251babcf59952c4741fa33584f0779e376ff28dce797488be0276cf8f59 vzctl-3.0.11.ebuild 1448 +MD5 6b1dd998c6fd6fdb9f11c59988aaf18f files/digest-vzctl-3.0.11 241 +RMD160 53b0a5585c0b2989baccf2e8c9e808fd563d3a64 files/digest-vzctl-3.0.11 241 +SHA256 00cc7268f4830a26a951fde3667d30dc30748ac2d4d604167355a73eb3ec58c3 files/digest-vzctl-3.0.11 241 diff --git a/sys-cluster/vzctl/files/digest-vzctl-3.0.11 b/sys-cluster/vzctl/files/digest-vzctl-3.0.11 new file mode 100644 index 0000000..850a6e2 --- /dev/null +++ b/sys-cluster/vzctl/files/digest-vzctl-3.0.11 @@ -0,0 +1,3 @@ +MD5 a2f7500961047b971dc7cde761e5ed3f vzctl-3.0.11.tar.bz2 125685 +RMD160 af04926dc3971d4078e83333d015a9db49e63ff7 vzctl-3.0.11.tar.bz2 125685 +SHA256 03b255ba3cdc700178bb7d20af928ab3896ac799404866187f0293ed87a9aecb vzctl-3.0.11.tar.bz2 125685 diff --git a/sys-cluster/vzctl/files/patches/005_all_library-rework.patch b/sys-cluster/vzctl/files/patches/005_all_library-rework.patch new file mode 100644 index 0000000..7ad678c --- /dev/null +++ b/sys-cluster/vzctl/files/patches/005_all_library-rework.patch @@ -0,0 +1,246 @@ +Index: vzctl-3.0.11/src/Makefile +=================================================================== +--- vzctl-3.0.11.orig/src/Makefile ++++ vzctl-3.0.11/src/Makefile +@@ -17,7 +17,7 @@ + INSTALL = install + PREFIX = /usr + SBINDIR = $(PREFIX)/sbin +- LIBDIR = $(PREFIX)/lib/vzctl/lib ++ LIBDIR = $(PREFIX)/lib + CONFDIR = /etc/vz + GLBCONFIG = $(CONFDIR)/vz.conf + VPSCONFDIR = $(CONFDIR)/conf +@@ -33,7 +33,7 @@ NETSCRIPTDIR = /etc/sysconfig/network-sc + VZDUMPDIR = $(VZDIR)/dump + VEIPDUMPDIR = /var/lib/vzctl/veip + LOGRDIR = /etc/logrotate.d +- LIB_VER = 0.0.2 ++ LIB_VER = 0.0.3 + + export LD_LIBRARY_PATH=. + CC = gcc +@@ -43,13 +43,14 @@ SHAREDLIB_CFLAGS = -fPIC + INC = -I ../include + ARCH ?= $(shell uname -m) + +-OBJ_libvzctl = lib/env.lo lib/ub.lo lib/net.lo lib/logger.lo lib/exec.lo \ ++OBJ_libvzctl = lib/env.lo lib/ub.lo lib/net.lo lib/exec.lo \ + lib/cap.lo lib/cpu.lo lib/res.lo lib/util.lo lib/dist.lo lib/list.lo \ + lib/script.lo lib/dev.lo lib/config.lo lib/lock.lo lib/quota.lo \ + lib/modules.lo lib/iptables.lo lib/fs.lo lib/create.lo lib/readelf.lo \ + lib/cpt.lo lib/destroy.lo lib/vps_configure.lo lib/meminfo.lo \ + lib/veth.lo + OBJ_simfs=lib/fs_simfs.lo ++OBJ_logger = lib/logger.lo + OBJ_vzctl = vzctl.o vzctl-actions.o modules.o enter.o + OBJ_vzlist = vzlist.o + OBJ_arp = arpsend.o +@@ -59,17 +60,17 @@ OBJ_cfgvalidate = vzcfgvalidate.o valida + OBJ_calc = vzcalc.o + OBJ = $(OBJ_vzctl) $(OBJ_vzlist) $(OBJ_arp) $(OBJ_split) $(OBJ_memcheck) \ + $(OBJ_cfgvalidate) $(OBJ_calc) +-LOBJ = $(OBJ_libvzctl) $(OBJ_simfs) ++LOBJ = $(OBJ_libvzctl) $(OBJ_simfs) $(OBJ_logger) + LIB_vzctl = libvzctl.so.$(LIB_VER) + LIB_simfs = libvzctl-simfs.so.$(LIB_VER) ++LIB_logger = libvzlogger.so.$(LIB_VER) + LIB_fs = $(LIB_simfs) + +-LDFLAGS += -Wl,-rpath=$(LIBDIR) + LIBSCRIPTS = vps-create vps-postcreate vps-net_add vps-net_del vps-stop \ + vps-functions + + PROGS = vzctl vzlist arpsend vzsplit vzcfgvalidate vzmemcheck vzcalc +-LIBS = $(LIB_vzctl) $(LIB_fs) ++LIBS = $(LIB_vzctl) $(LIB_fs) $(LIB_logger) + + INITSCRIPTS = vz + CRONSCRIPTS = vpsreboot vpsnetclean +@@ -102,23 +103,26 @@ check-version: + %.lo: %.c + $(CC) -c $(CFLAGS) $(SHAREDLIB_CFLAGS) $(INC) $< -o $@ + +-$(LIB_fs) : $(OBJ_simfs) lib/logger.lo +- $(CC) $(CFLAGS) $(INC) $(LDFLAGS) $^ -shared -o $@ ++$(LIB_logger) : $(OBJ_logger) ++ $(CC) $(CFLAGS) $(INC) $(LDFLAGS) $^ -shared -Wl,-soname,$@ -o $@ + +-libvzctl.a: $(OBJ_libvzctl) $(LIB_fs) ++$(LIB_fs) : $(OBJ_simfs) $(LIB_logger) ++ $(CC) $(CFLAGS) $(INC) $(LDFLAGS) $^ -shared -Wl,-soname,$@ -o $@ ++ ++$(LIB_vzctl) : $(OBJ_libvzctl) $(LIB_fs) $(LIB_logger) ++ $(CC) $(CFLAGS) $(INC) $(LDFLAGS) $^ $(LD_FLAGS) -shared -Wl,-soname,$@ -o $@ ++ ++libvzctl.a: $(OBJ_libvzctl) $(OBJ_simfs) $(OBJ_logger) + ar scq $@ $+ + ranlib $@ + +-$(LIB_vzctl) : $(LIB_fs) $(OBJ_libvzctl) +- $(CC) $(CFLAGS) $(INC) $(LDFLAGS) $^ $(LD_FLAGS) -shared -o $@ +- + vzctl-static: $(OBJ_vzctl) libvzctl.a + $(CC) $(CFLAGS) $(INC) $(LDFLAGS) $^ -rdynamic -ldl -lutil -o $@ + +-vzctl: check-version $(OBJ_vzctl) $(LIB_vzctl) $(LIB_fs) +- $(CC) $(CFLAGS) $(INC) $(LDFLAGS) $(OBJ_vzctl) $(LIB_vzctl) $(LIB_fs) -ldl -lutil -o $@ ++vzctl: check-version $(OBJ_vzctl) $(LIB_vzctl) $(LIB_fs) $(LIB_logger) ++ $(CC) $(CFLAGS) $(INC) $(LDFLAGS) $(OBJ_vzctl) $(LIB_vzctl) $(LIB_fs) $(LIB_logger) -ldl -lutil -o $@ + +-vzlist: $(OBJ_vzlist) $(LIB_vzctl) $(LIB_fs) ++vzlist: $(OBJ_vzlist) $(LIB_vzctl) $(LIB_logger) + $(CC) $(CFLAGS) $(INC) $(LDFLAGS) $^ -o $@ + + arpsend: $(OBJ_arp) +@@ -127,10 +131,10 @@ arpsend: $(OBJ_arp) + vzsplit: $(OBJ_split) + $(CC) $(CFLAGS) $(INC) $(LDFLAGS) $^ -o $@ + +-vzmemcheck: $(OBJ_memcheck) $(LIB_vzctl) ++vzmemcheck: $(OBJ_memcheck) $(LIB_vzctl) $(LIB_logger) + $(CC) $(CFLAGS) $(INC) $(LDFLAGS) $^ -o $@ + +-vzcfgvalidate: $(OBJ_cfgvalidate) $(LIB_vzctl) ++vzcfgvalidate: $(OBJ_cfgvalidate) $(LIB_vzctl) $(LIB_logger) + $(CC) $(CFLAGS) $(INC) $(LDFLAGS) $^ -o $@ + + vzcalc: $(OBJ_calc) $(LIB_vzctl) +@@ -145,6 +149,7 @@ install-lib: $(LIB_vzctl) $(LIB_fs) + $(INSTALL) -d $(DESTDIR)$(LIBSCRIPTSDIR) + $(INSTALL) $(LIB_vzctl) $(DESTDIR)$(LIBDIR)/$(LIB_vzctl) + $(INSTALL) $(LIB_fs) $(DESTDIR)$(LIBDIR)/$(LIB_fs) ++ $(INSTALL) $(LIB_logger) $(DESTDIR)$(LIBDIR)/$(LIB_logger) + for file in $(LIBSCRIPTS); do \ + $(INSTALL) -m 755 ../etc/$$file $(DESTDIR)$(LIBSCRIPTSDIR)/$$file; \ + done +@@ -208,7 +213,7 @@ inst-dirs: + install: $(PROGS) inst-dirs install-lib inst-sbin inst-scripts \ + inst-netscripts inst-configs inst-initd inst-cron + clean: +- rm -f *.o lib/*.lo $(PROGS) $(LIB_vzctl) $(LIB_fs) $(LIB_fs) .depend ++ rm -f *.o lib/*.lo $(PROGS) $(LIB_vzctl) $(LIB_fs) $(LIB_logger) .depend + + .depend:: $(OBJ:.o=.c) $(LOBJ:.lo=.c) + $(CC) -M $(FLAGS) $(DEPFLAGS) $(INC) $^ >.depend +Index: vzctl-3.0.11/src/lib/logger.c +=================================================================== +--- vzctl-3.0.11.orig/src/lib/logger.c ++++ vzctl-3.0.11/src/lib/logger.c +@@ -30,7 +30,7 @@ + #include "types.h" + #include "logger.h" + +-extern log_param g_log; ++LOG_DATA + + static inline void get_date(char *buf, int len) + { +Index: vzctl-3.0.11/src/vzcalc.c +=================================================================== +--- vzctl-3.0.11.orig/src/vzcalc.c ++++ vzctl-3.0.11/src/vzcalc.c +@@ -27,8 +27,6 @@ + #include "config.h" + #include "util.h" + +-LOG_DATA +- + void usage() + { + printf("Usage: vzcalc [-v] <veid>\n"); +Index: vzctl-3.0.11/src/vzcfgvalidate.c +=================================================================== +--- vzctl-3.0.11.orig/src/vzcfgvalidate.c ++++ vzctl-3.0.11/src/vzcfgvalidate.c +@@ -26,8 +26,6 @@ + #include "validate.h" + #include "logger.h" + +-log_param g_log; +- + void usage() + { + printf("Usage: vzcfgvalidate [-r|-i] <configfile>\n"); +Index: vzctl-3.0.11/src/vzctl.c +=================================================================== +--- vzctl-3.0.11.orig/src/vzctl.c ++++ vzctl-3.0.11/src/vzctl.c +@@ -32,8 +32,6 @@ + #include "util.h" + #include "modules.h" + +-LOG_DATA +- + struct mod_action g_action; + char *_proc_title; + int _proc_title_len; +Index: vzctl-3.0.11/src/vzlist.c +=================================================================== +--- vzctl-3.0.11.orig/src/vzlist.c ++++ vzctl-3.0.11/src/vzlist.c +@@ -42,7 +42,6 @@ + #include "util.h" + #include "types.h" + +-LOG_DATA + static struct Cveinfo *veinfo = NULL; + static int n_veinfo = 0; + +Index: vzctl-3.0.11/src/vzmemcheck.c +=================================================================== +--- vzctl-3.0.11.orig/src/vzmemcheck.c ++++ vzctl-3.0.11/src/vzmemcheck.c +@@ -29,8 +29,6 @@ + #include "util.h" + #include "logger.h" + +-LOG_DATA +- + void usage() + { + printf("Usage: vzmemcheck [-v] [-A]\n"); +Index: vzctl-3.0.11/vzctl.spec +=================================================================== +--- vzctl-3.0.11.orig/vzctl.spec ++++ vzctl-3.0.11/vzctl.spec +@@ -5,9 +5,10 @@ + %define _dumpdir %{_vzdir}/dump + %define _cachedir %{_vzdir}/template/cache + %define _veipdir /var/lib/vzctl/veip +-%define _libdir /usr/lib/vzctl ++%define _libvzdir /usr/lib/vzctl ++%define _libscriptdir %{_libvzdir}/scripts + %define _configdir /etc/vz +-%define _scriptdir /usr/share/vzctl//scripts ++%define _scriptdir /usr/share/vzctl/scripts + %define _vpsconfdir /etc/sysconfig/vz-scripts + %define _netdir /etc/sysconfig/network-scripts + %define _logrdir /etc/logrotate.d +@@ -156,13 +157,17 @@ Virtual Private Servers control API libr + + %files lib + %defattr(-,root,root) +-%dir %{_libdir}/lib +-%attr(755,root,root) %{_libdir}/lib/libvzctl.so.* +-%attr(755,root,root) %{_libdir}/lib/libvzctl-simfs.so.* +-%attr(755,root,root) %{_libdir}/scripts/vps-stop +-%attr(755,root,root) %{_libdir}/scripts/vps-functions +-%attr(755,root,root) %{_libdir}/scripts/vps-net_add +-%attr(755,root,root) %{_libdir}/scripts/vps-net_del +-%attr(755,root,root) %{_libdir}/scripts/vps-create +-%attr(755,root,root) %{_libdir}/scripts/vps-postcreate ++%attr(755,root,root) %{_libdir}/libvzlogger.so.* ++%attr(755,root,root) %{_libdir}/libvzctl.so.* ++%attr(755,root,root) %{_libdir}/libvzctl-simfs.so.* ++%dir %{_libvzdir} ++%dir %{_libscriptdir} ++%attr(755,root,root) %{_libscriptdir}/vps-stop ++%attr(755,root,root) %{_libscriptdir}/vps-functions ++%attr(755,root,root) %{_libscriptdir}/vps-net_add ++%attr(755,root,root) %{_libscriptdir}/vps-net_del ++%attr(755,root,root) %{_libscriptdir}/vps-create ++%attr(755,root,root) %{_libscriptdir}/vps-postcreate + ++%post lib -p /sbin/ldconfig ++%postun lib -p /sbin/ldconfig diff --git a/sys-cluster/vzctl/files/patches/010_all_dev-nul.patch b/sys-cluster/vzctl/files/patches/010_all_dev-nul.patch new file mode 100644 index 0000000..02145ef --- /dev/null +++ b/sys-cluster/vzctl/files/patches/010_all_dev-nul.patch @@ -0,0 +1,23 @@ +From: Kirill Korotaev <dev@openvz.org> +Date: Tue, 22 Aug 2006 10:29:52 +0000 (+0400) +Subject: Fix misprints in distro scripts +X-Git-Url: http://git.openvz.org/?p=vzctl;a=commitdiff;h=6b349c3d3adea85c73452d269a8278d86a35795f + +text misprints and /dev/nul fixes. + +http://bugzilla.openvz.org/show_bug.cgi?id=228 +--- + +Index: vzctl-3.0.11/etc/dists/scripts/debian-add_ip.sh +=================================================================== +--- vzctl-3.0.11.orig/etc/dists/scripts/debian-add_ip.sh ++++ vzctl-3.0.11/etc/dists/scripts/debian-add_ip.sh +@@ -82,7 +82,7 @@ d + wq" | ed ${CFGFILE}.bak >/dev/null 2>&1 + echo -e "/iface ${iface}\\> + .,+3d +-wq" | ed ${CFGFILE}.bak >/dev/nul 2>&1 ++wq" | ed ${CFGFILE}.bak >/dev/null 2>&1 + } + + function get_all_aliasid() diff --git a/sys-cluster/vzctl/files/patches/015_all_fix-cast-pointers.patch b/sys-cluster/vzctl/files/patches/015_all_fix-cast-pointers.patch new file mode 100644 index 0000000..86f6dd8 --- /dev/null +++ b/sys-cluster/vzctl/files/patches/015_all_fix-cast-pointers.patch @@ -0,0 +1,34 @@ +From: Dmitry V. Levin <ldv@altlinux.org> +Date: Fri, 25 Aug 2006 08:03:34 +0000 (+0400) +Subject: vzlist: Fix cast from pointer to integer of different size warnings +X-Git-Url: http://git.openvz.org/?p=vzctl;a=commitdiff;h=3a772bf0e3145a1c255d823bca4f4cea6e035f7f + +vzlist: Fix cast from pointer to integer of different size warnings +id_search_fn(): Take veid by reference like in veid_search_fn(). +find_ve(): Pass veid by reference like in check_veid_restr(). + +Signed-off-by: Dmitry V. Levin <ldv@altlinux.org> +--- + +Index: vzctl-3.0.11/src/vzlist.c +=================================================================== +--- vzctl-3.0.11.orig/src/vzlist.c ++++ vzctl-3.0.11/src/vzlist.c +@@ -607,7 +607,7 @@ void usage() + + int id_search_fn(const void* val1, const void* val2) + { +- return ((int)val1 - ((struct Cveinfo*)val2)->veid); ++ return (*(int *)val1 - ((struct Cveinfo*)val2)->veid); + } + + int veid_search_fn(const void* val1, const void* val2) +@@ -708,7 +708,7 @@ void add_elem(struct Cveinfo *ve) + + inline struct Cveinfo *find_ve(int veid) + { +- return (struct Cveinfo *) bsearch((void*)veid, veinfo, n_veinfo, ++ return (struct Cveinfo *) bsearch(&veid, veinfo, n_veinfo, + sizeof(struct Cveinfo), id_search_fn); + } + diff --git a/sys-cluster/vzctl/files/patches/020_all_memleak-realloc.patch b/sys-cluster/vzctl/files/patches/020_all_memleak-realloc.patch new file mode 100644 index 0000000..98ae0e5 --- /dev/null +++ b/sys-cluster/vzctl/files/patches/020_all_memleak-realloc.patch @@ -0,0 +1,121 @@ +From: Igor Sukhih <igor@openvz.org> +Date: Tue, 22 Aug 2006 13:39:35 +0000 (+0400) +Subject: Fixed memory leaks in realloc() +X-Git-Url: http://git.openvz.org/?p=vzctl;a=commitdiff;h=48bada8af358255c7b54f437ba0002eabf0df368 + +Fixed memory leaks in realloc() +--- + +Index: vzctl-3.0.11/src/lib/list.c +=================================================================== +--- vzctl-3.0.11.orig/src/lib/list.c ++++ vzctl-3.0.11/src/lib/list.c +@@ -24,7 +24,7 @@ + + char *list2str_c(char *name, char c, list_head_t *head) + { +- char *buf = NULL; ++ char *buf = NULL, *tmp; + int buf_len, len, r; + char *sp, *ep; + const int delta = 256; +@@ -61,9 +61,12 @@ char *list2str_c(char *name, char c, lis + int cur_len = sp - buf; + + buf_len += delta > len ? delta : len + 1; +- buf = realloc(buf, buf_len); +- if (buf == NULL) ++ tmp = realloc(buf, buf_len); ++ if (tmp == NULL) { ++ free(buf); + return NULL; ++ } ++ buf = tmp; + ep = buf + buf_len; + sp = buf + cur_len; + } +Index: vzctl-3.0.11/src/lib/net.c +=================================================================== +--- vzctl-3.0.11.orig/src/lib/net.c ++++ vzctl-3.0.11/src/lib/net.c +@@ -349,7 +349,7 @@ static inline int get_vps_ip_ioctl(vps_h + { + int ret = -1; + struct vzlist_veipv4ctl veip; +- uint32_t *addr; ++ uint32_t *addr, *tmp; + char buf[16]; + int i; + +@@ -366,9 +366,12 @@ static inline int get_vps_ip_ioctl(vps_h + else if (ret <= veip.num) + break; + veip.num = ret; +- addr = realloc(addr, veip.num * sizeof(*veip.ip)); +- if (addr == NULL) +- return -1; ++ tmp = realloc(addr, veip.num * sizeof(*veip.ip)); ++ if (tmp == NULL) { ++ ret = -1; ++ goto out; ++ } ++ addr = tmp; + } + if (ret > 0) { + for (i = ret - 1; i >= 0; i--) { +Index: vzctl-3.0.11/src/lib/script.c +=================================================================== +--- vzctl-3.0.11.orig/src/lib/script.c ++++ vzctl-3.0.11/src/lib/script.c +@@ -42,7 +42,7 @@ static char *envp_bash[] = {"HOME=/", "T + int read_script(const char *fname, char *include, char **buf) + { + struct stat st; +- char *p = NULL; ++ char *tmp, *p = NULL; + int fd, len = 0; + char *inc; + +@@ -74,9 +74,10 @@ int read_script(const char *fname, char + goto err; + } + if (*buf != NULL) { +- *buf = realloc(*buf, st.st_size + len + 2); +- if (*buf == NULL) ++ tmp = realloc(*buf, st.st_size + len + 2); ++ if (tmp == NULL) + goto err; ++ *buf = tmp; + p = *buf + len; + } else { + *buf = malloc(st.st_size + 2); +Index: vzctl-3.0.11/src/vzlist.c +=================================================================== +--- vzctl-3.0.11.orig/src/vzlist.c ++++ vzctl-3.0.11/src/vzlist.c +@@ -581,11 +581,13 @@ void *x_malloc(int size) + + void *x_realloc(void *ptr, int size) + { +- if ((ptr = realloc(ptr, size)) == NULL) { ++ void *tmp; ++ ++ if ((tmp = realloc(ptr, size)) == NULL) { + printf("Error: unable to allocate %d bytes\n", size); + exit(1); + } +- return ptr; ++ return tmp; + } + + void usage() +@@ -1637,5 +1639,9 @@ int main(int argc, char **argv) + return ret; + print_ve(); + free_veinfo(); ++ if (host_pattern != NULL) free(host_pattern); ++ if (name_pattern != NULL) free(name_pattern); ++ if (f_order != NULL) free(f_order); ++ + return 0; + } diff --git a/sys-cluster/vzctl/files/patches/025_all_off-by-one.patch b/sys-cluster/vzctl/files/patches/025_all_off-by-one.patch new file mode 100644 index 0000000..58e4de2 --- /dev/null +++ b/sys-cluster/vzctl/files/patches/025_all_off-by-one.patch @@ -0,0 +1,23 @@ +From: Dmitry V. Levin <ldv@altlinux.org> +Date: Fri, 25 Aug 2006 07:57:09 +0000 (+0400) +Subject: vzctl enter: Fix off-by-one error which resulted to uninitialized PATH. +X-Git-Url: http://git.openvz.org/?p=vzctl;a=commitdiff;h=24807ad04c47c4c799b9b7bb7188c07cdd9c31ca + +vzctl enter: Fix off-by-one error which resulted to uninitialized PATH. + +Signed-off-by: Dmitry V. Levin <ldv@altlinux.org> +--- + +Index: vzctl-3.0.11/src/enter.c +=================================================================== +--- vzctl-3.0.11.orig/src/enter.c ++++ vzctl-3.0.11/src/enter.c +@@ -265,7 +265,7 @@ int do_enter(vps_handler *h, envid_t vei + close(slave); + if ((term = getenv("TERM")) != NULL) { + snprintf(buf, sizeof(buf), "TERM=%s", term); +- env[2] = buf; ++ env[3] = buf; + } + execve("/bin/bash", arg, env); + execve("/bin/sh", arg, env); diff --git a/sys-cluster/vzctl/files/patches/035_all_remove-vename-on-destroy.patch b/sys-cluster/vzctl/files/patches/035_all_remove-vename-on-destroy.patch new file mode 100644 index 0000000..edb958b --- /dev/null +++ b/sys-cluster/vzctl/files/patches/035_all_remove-vename-on-destroy.patch @@ -0,0 +1,35 @@ +From: Igor Sukhih <igor@openvz.org> +Date: Tue, 22 Aug 2006 13:40:41 +0000 (+0400) +Subject: Remove VE name information on destroy +X-Git-Url: http://git.openvz.org/?p=vzctl;a=commitdiff;h=57f3c25ff637984a467936aec2cab1d849bfde49 + +Remove VE name information on destroy + +http://bugzilla.openvz.org/show_bug.cgi?id=236 +--- + +Index: vzctl-3.0.11/src/vzctl-actions.c +=================================================================== +--- vzctl-3.0.11.orig/src/vzctl-actions.c ++++ vzctl-3.0.11/src/vzctl-actions.c +@@ -222,7 +222,19 @@ static int create(vps_handler *h, envid_ + static int destroy(vps_handler *h, envid_t veid, vps_param *g_p, + vps_param *cmd_p) + { +- return vps_destroy(h, veid, &g_p->res.fs); ++ int ret, id; ++ char buf[STR_SIZE]; ++ char *name = g_p->res.name.name; ++ ++ ret = vps_destroy(h, veid, &g_p->res.fs); ++ if (!ret && name != NULL) { ++ id = get_veid_by_name(name); ++ if (id == veid) { ++ snprintf(buf, sizeof(buf), VENAME_DIR "/%s.conf", name); ++ unlink(buf); ++ } ++ } ++ return ret; + } + + static int parse_chkpnt_opt(int argc, char **argv, vps_param *vps_p) diff --git a/sys-cluster/vzctl/files/patches/040_all_segfault-long-opts.patch b/sys-cluster/vzctl/files/patches/040_all_segfault-long-opts.patch new file mode 100644 index 0000000..783396e --- /dev/null +++ b/sys-cluster/vzctl/files/patches/040_all_segfault-long-opts.patch @@ -0,0 +1,25 @@ +From: Dmitry V. Levin <ldv@altlinux.org> +Date: Fri, 25 Aug 2006 07:59:19 +0000 (+0400) +Subject: arpsend: Fix segfault when parsing long options +X-Git-Url: http://git.openvz.org/?p=vzctl;a=commitdiff;h=8ae927daa4a5c391e02bf15db02fde1ec92365f5 + +arpsend: Fix segfault when parsing long options +parse_options(): NULL-terminate long_options array. + +Signed-off-by: Dmitry V. Levin <ldv@altlinux.org> +--- + +Index: vzctl-3.0.11/src/arpsend.c +=================================================================== +--- vzctl-3.0.11.orig/src/arpsend.c ++++ vzctl-3.0.11/src/arpsend.c +@@ -165,7 +165,8 @@ void parse_options (int argc, char **arg + {"trg-arp", 1, NULL, 'T'}, + {"src-ip", 1, NULL, 'i'}, + {"trg-ip", 1, NULL, 'e'}, +- {"at-once", 0, NULL, 'o'} ++ {"at-once", 0, NULL, 'o'}, ++ {NULL, 0, NULL, 0} + }; + + while ((c = getopt_long(argc, argv, short_options, long_options, NULL)) != -1) diff --git a/sys-cluster/vzctl/files/patches/045_all_vzctl-enter-exit-msg.patch b/sys-cluster/vzctl/files/patches/045_all_vzctl-enter-exit-msg.patch new file mode 100644 index 0000000..4b8cf44 --- /dev/null +++ b/sys-cluster/vzctl/files/patches/045_all_vzctl-enter-exit-msg.patch @@ -0,0 +1,26 @@ +From: Igor Sukhih <igor@openvz.org> +Date: Fri, 25 Aug 2006 07:55:33 +0000 (+0400) +Subject: vzctl enter: fixed print exit message. +X-Git-Url: http://git.openvz.org/?p=vzctl;a=commitdiff;h=7b115e65ffce24039253b3cf14cf3021c18048cd + +vzctl enter: fixed print exit message. +Extra \n was printed. +--- + +Index: vzctl-3.0.11/src/enter.c +=================================================================== +--- vzctl-3.0.11.orig/src/enter.c ++++ vzctl-3.0.11/src/enter.c +@@ -303,10 +303,10 @@ err: + if (errno != EINTR) + break; + if (WIFSIGNALED(status)) +- logger(0, 0, "got signal %d", WTERMSIG(status)); ++ fprintf(stdout, "got signal %d\n", WTERMSIG(status)); + if (!ret) { + raw_off(); +- logger(0, 0, "exited from VPS %d\n", veid); ++ fprintf(stdout, "exited from VPS %d\n", veid); + } + close(in[1]); close(out[0]); + return 0; diff --git a/sys-cluster/vzctl/files/patches/050_all_vzctl-enter-forward-msg-from-child.patch b/sys-cluster/vzctl/files/patches/050_all_vzctl-enter-forward-msg-from-child.patch new file mode 100644 index 0000000..ee8bd6f --- /dev/null +++ b/sys-cluster/vzctl/files/patches/050_all_vzctl-enter-forward-msg-from-child.patch @@ -0,0 +1,38 @@ +From: Dmitry V. Levin <ldv@altlinux.org> +Date: Fri, 25 Aug 2006 07:42:05 +0000 (+0400) +Subject: vzctl enter: Forward error messages from child process +X-Git-Url: http://git.openvz.org/?p=vzctl;a=commitdiff;h=52b79699c9e5f7b9f3bebd6141395c374b80e22a + +vzctl enter: Forward error messages from child process +vzctl: do_enter(): + - In child, redirect stdout and stderr to pipe. + - In parent, read child's output from pipe even if enter failed. + +Signed-off-by: Dmitry V. Levin <ldv@altlinux.org> +--- + +Index: vzctl-3.0.11/src/enter.c +=================================================================== +--- vzctl-3.0.11.orig/src/enter.c ++++ vzctl-3.0.11/src/enter.c +@@ -231,6 +231,8 @@ int do_enter(vps_handler *h, envid_t vei + close(in[1]); close(out[0]); close(st[0]); + /* list of skipped fds -1 the end mark */ + close_fds(1, in[0], out[1], st[1], h->vzfd, -1); ++ dup2(out[1], 1); ++ dup2(out[1], 2); + if ((ret = vz_chroot(root))) + goto err; + ret = vz_env_create_ioctl(h, veid, VE_ENTER); +@@ -297,7 +299,10 @@ err: + raw_on(); + e_loop(fileno(stdin), in[1], out[0], fileno(stdout)); + } else { +- fprintf(stdout, "enter failed\n"); ++ fprintf(stdout, "enter into VPS %d failed\n", veid); ++ set_not_blk(out[0]); ++ while (stdredir(out[0], fileno(stdout)) == 0) ++ ; + } + while ((waitpid(pid, &status, 0)) == -1) + if (errno != EINTR) diff --git a/sys-cluster/vzctl/files/patches/055_all_vzctl-sprintf-snprintf.patch b/sys-cluster/vzctl/files/patches/055_all_vzctl-sprintf-snprintf.patch new file mode 100644 index 0000000..eeac84c --- /dev/null +++ b/sys-cluster/vzctl/files/patches/055_all_vzctl-sprintf-snprintf.patch @@ -0,0 +1,107 @@ +From: Igor Sukhih <igor@openvz.org> +Date: Tue, 22 Aug 2006 13:47:40 +0000 (+0400) +Subject: Replace sprintf() -> snprintf() to avoid possible buffer overflow. +X-Git-Url: http://git.openvz.org/?p=vzctl;a=commitdiff;h=134f49e8f03dd3f74a73d13cf32a612946c36505 + +Replace sprintf() -> snprintf() to avoid possible buffer overflow. +--- + +Index: vzctl-3.0.11/src/vzlist.c +=================================================================== +--- vzctl-3.0.11.orig/src/vzlist.c ++++ vzctl-3.0.11/src/vzlist.c +@@ -48,6 +48,7 @@ static int n_veinfo = 0; + + static char g_outbuffer[4096] = ""; + static char *p_outbuffer = g_outbuffer; ++static char *e_buf = g_outbuffer + sizeof(g_outbuffer) - 1; + static char *host_pattern = NULL; + static char *name_pattern = NULL; + static int vzctlfd; +@@ -90,29 +91,29 @@ static void print_ip(struct Cveinfo *p, + /* Print functions */ + static void print_veid(struct Cveinfo *p, int index) + { +- p_outbuffer += sprintf(p_outbuffer, "%10d", p->veid); ++ p_outbuffer += snprintf(p_outbuffer, e_buf - p_outbuffer, "%10d", p->veid); + } + + static void print_status(struct Cveinfo *p, int index) + { +- p_outbuffer += sprintf(p_outbuffer, "%-7s", ve_status[p->status]); ++ p_outbuffer += snprintf(p_outbuffer, e_buf - p_outbuffer, "%-7s", ve_status[p->status]); + } + + static void print_laverage(struct Cveinfo *p, int index) + { + if (p->la == NULL) +- p_outbuffer += sprintf(p_outbuffer, "%14s", "-"); ++ p_outbuffer += snprintf(p_outbuffer, e_buf - p_outbuffer, "%14s", "-"); + else +- p_outbuffer += sprintf(p_outbuffer, "%1.2f/%1.2f/%1.2f", ++ p_outbuffer += snprintf(p_outbuffer, e_buf - p_outbuffer, "%1.2f/%1.2f/%1.2f", + p->la->la[0], p->la->la[1], p->la->la[2]); + } + + static void print_cpulimit(struct Cveinfo *p, int index) + { + if (p->cpu == NULL) +- p_outbuffer += sprintf(p_outbuffer, "%7s", "-"); ++ p_outbuffer += snprintf(p_outbuffer, e_buf - p_outbuffer, "%7s", "-"); + else +- p_outbuffer += sprintf(p_outbuffer, "%7lu", ++ p_outbuffer += snprintf(p_outbuffer, e_buf - p_outbuffer, "%7lu", + p->cpu->limit[index]); + } + +@@ -122,9 +123,9 @@ static void fn(struct Cveinfo *p, int in + if (p->res == NULL || \ + (p->status != VE_RUNNING && \ + (index == 0 || index == 1 || index == 4))) \ +- p_outbuffer += sprintf(p_outbuffer, "%10s", "-"); \ ++ p_outbuffer += snprintf(p_outbuffer, e_buf - p_outbuffer, "%10s", "-"); \ + else \ +- p_outbuffer += sprintf(p_outbuffer, "%10lu", \ ++ p_outbuffer += snprintf(p_outbuffer, e_buf - p_outbuffer, "%10lu", \ + p->res->name[index]); \ + } \ + +@@ -154,9 +155,9 @@ static void fn(struct Cveinfo *p, int in + { \ + if (p->res == NULL || \ + (p->status != VE_RUNNING && (index == 0))) \ +- p_outbuffer += sprintf(p_outbuffer, "%10s", "-"); \ ++ p_outbuffer += snprintf(p_outbuffer, e_buf - p_outbuffer, "%10s", "-"); \ + else \ +- p_outbuffer += sprintf(p_outbuffer, "%10lu", \ ++ p_outbuffer += snprintf(p_outbuffer, e_buf - p_outbuffer, "%10lu", \ + p->res->name[index]); \ + } \ + +@@ -519,7 +520,7 @@ static void print_hostname(struct Cveinf + + if (p->hostname != NULL) + str = p->hostname; +- r = sprintf(p_outbuffer, "%-32s", str); ++ r = snprintf(p_outbuffer, e_buf - p_outbuffer, "%-32s", str); + if (last_field != NULL && + field_names[last_field->order].res_type != RES_HOSTNAME) + { +@@ -535,7 +536,7 @@ static void print_name(struct Cveinfo *p + + if (p->name != NULL) + str = p->name; +- r = sprintf(p_outbuffer, "%-32s", str); ++ r = snprintf(p_outbuffer, e_buf - p_outbuffer, "%-32s", str); + if (last_field != NULL && + field_names[last_field->order].res_type != RES_NAME) + { +@@ -559,7 +560,7 @@ static void print_ip(struct Cveinfo *p, + if ((ch = strchr(str, ' ')) != NULL) + *ch = 0; + } +- r = sprintf(p_outbuffer, "%-15s", str); ++ r = snprintf(p_outbuffer, e_buf - p_outbuffer, "%-15s", str); + if (last_field != NULL && + field_names[last_field->order].res_type != RES_IP) + { diff --git a/sys-cluster/vzctl/files/patches/200_all_incorrect-spelling.patch b/sys-cluster/vzctl/files/patches/200_all_incorrect-spelling.patch new file mode 100644 index 0000000..f6c6738 --- /dev/null +++ b/sys-cluster/vzctl/files/patches/200_all_incorrect-spelling.patch @@ -0,0 +1,76 @@ +From: Kirill Korotaev <dev@openvz.org> +Date: Tue, 22 Aug 2006 10:29:52 +0000 (+0400) +Subject: Fix misprints in distro scripts +X-Git-Url: http://git.openvz.org/?p=vzctl;a=commitdiff;h=6b349c3d3adea85c73452d269a8278d86a35795f + +Fix misprints in distro scripts +text misprints fixes. + +http://bugzilla.openvz.org/show_bug.cgi?id=228 +--- + +Index: vzctl-3.0.11/etc/dists/scripts/debian-add_ip.sh +=================================================================== +--- vzctl-3.0.11.orig/etc/dists/scripts/debian-add_ip.sh ++++ vzctl-3.0.11/etc/dists/scripts/debian-add_ip.sh +@@ -25,7 +25,7 @@ + # Optional parameters: + # VE_STATE - state of VE; could be one of: + # starting | stopping | running | stopped +-# IPDELALL - deleet all ip addresse ++# IPDELALL - delete all ip addresses + # + VENET_DEV=venet0 + LOOPBACK=lo +Index: vzctl-3.0.11/etc/dists/scripts/redhat-del_ip.sh +=================================================================== +--- vzctl-3.0.11.orig/etc/dists/scripts/redhat-del_ip.sh ++++ vzctl-3.0.11/etc/dists/scripts/redhat-del_ip.sh +@@ -22,7 +22,7 @@ + # Required parameters: + # IP_ADDR - IPs to delete, several addresses should be divided by space + # Optional parameters: +-# IPDELALL - deleet all ip addresses ++# IPDELALL - delete all ip addresses + VENET_DEV=venet0 + VENET_DEV_CFG=ifcfg-${VENET_DEV} + IFCFG_DIR=/etc/sysconfig/network-scripts/ +Index: vzctl-3.0.11/etc/dists/scripts/slackware-9.x_del_ip.sh +=================================================================== +--- vzctl-3.0.11.orig/etc/dists/scripts/slackware-9.x_del_ip.sh ++++ vzctl-3.0.11/etc/dists/scripts/slackware-9.x_del_ip.sh +@@ -22,7 +22,7 @@ + # Required parameters: + # IP_ADDR - IPs to delete, several addresses should be divided by space + # Optional parameters: +-# IPDELALL - deleet all ip addresses ++# IPDELALL - delete all ip addresses + IFCFG=/etc/rc.d/rc.inet1 + + function del_ip() +Index: vzctl-3.0.11/etc/dists/scripts/slackware-del_ip.sh +=================================================================== +--- vzctl-3.0.11.orig/etc/dists/scripts/slackware-del_ip.sh ++++ vzctl-3.0.11/etc/dists/scripts/slackware-del_ip.sh +@@ -22,7 +22,7 @@ + # Required parameters: + # IP_ADDR - IPs to delete, several addresses should be divided by space + # Optional parameters: +-# IPDELALL - deleet all ip addresses ++# IPDELALL - delete all ip addresses + IFCFG=/etc/rc.d/rc.inet1.conf + + function del_ip() +Index: vzctl-3.0.11/etc/dists/scripts/suse-8.x_del_ip.sh +=================================================================== +--- vzctl-3.0.11.orig/etc/dists/scripts/suse-8.x_del_ip.sh ++++ vzctl-3.0.11/etc/dists/scripts/suse-8.x_del_ip.sh +@@ -22,7 +22,7 @@ + # Required parameters: + # IP_ADDR - IPs to delete, several addresses should be divided by space + # Optional parameters: +-# IPDELALL - deleet all ip addresses ++# IPDELALL - delete all ip addresses + VENET_DEV=venet0 + VENET_DEV_CFG=ifcfg-${VENET_DEV} + IFCFG_DIR=/etc/sysconfig/network/ diff --git a/sys-cluster/vzctl/files/patches/205_all_ve-light.conf-sample.patch b/sys-cluster/vzctl/files/patches/205_all_ve-light.conf-sample.patch new file mode 100644 index 0000000..2358576 --- /dev/null +++ b/sys-cluster/vzctl/files/patches/205_all_ve-light.conf-sample.patch @@ -0,0 +1,27 @@ +From: Igor Sukhih <igor@openvz.org> +Date: Tue, 22 Aug 2006 13:34:37 +0000 (+0400) +Subject: Increase dgramrcvbuf and othersockbuf in ve-light.conf-sample +X-Git-Url: http://git.openvz.org/?p=vzctl;a=commitdiff;h=5478976ff1f979e52dec140df556d1df7f2790de + +Increase dgramrcvbuf and othersockbuf in ve-light.conf-sample +ve-light.conf-sample is too much light, +so that vzcfgvalidate recommends to increase the limits. + +http://bugzilla.openvz.org/show_bug.cgi?id=234 +--- + +Index: vzctl-3.0.11/etc/ve-light.conf-sample +=================================================================== +--- vzctl-3.0.11.orig/etc/ve-light.conf-sample ++++ vzctl-3.0.11/etc/ve-light.conf-sample +@@ -28,8 +28,8 @@ VMGUARPAGES="1725:2147483647" + KMEMSIZE="1740800:1847296" + TCPSNDBUF="159744:262144" + TCPRCVBUF="159744:262144" +-OTHERSOCKBUF="61440:163840" +-DGRAMRCVBUF="32768:32768" ++OTHERSOCKBUF="135168:196608" ++DGRAMRCVBUF="135168:196608" + OOMGUARPAGES="1725:2147483647" + # Auxiliary parameters + LOCKEDPAGES="4:4" diff --git a/sys-cluster/vzctl/files/patches/210_all_vzctl-3.0.11-vzctl.8.patch b/sys-cluster/vzctl/files/patches/210_all_vzctl-3.0.11-vzctl.8.patch new file mode 100644 index 0000000..12a2f79 --- /dev/null +++ b/sys-cluster/vzctl/files/patches/210_all_vzctl-3.0.11-vzctl.8.patch @@ -0,0 +1,22 @@ +From: Igor Sukhih <igor@openvz.org> +Date: Tue, 22 Aug 2006 13:41:19 +0000 (+0400) +Subject: Added --name description to vzctl.8 +X-Git-Url: http://git.openvz.org/?p=vzctl;a=commitdiff;h=0c4d2abe1f18993fc871e19af62f90651a56ac7e + +Added --name description to vzctl.8 +--- + +Index: vzctl-3.0.11/man/vzctl.8 +=================================================================== +--- vzctl-3.0.11.orig/man/vzctl.8 ++++ vzctl-3.0.11/man/vzctl.8 +@@ -66,6 +66,9 @@ Note that VPS area should be created bef + \fB--disabled\fR \fIyes\fR|\fIno\fR + Disable VPS start. For force start disabled VPS option \fI--force\fR can be used. + .TP ++\fB--name\fR \fIname\fR ++Bind VE with \fIname\fR that name can be used for VE actions insted of \fIveid\fR. ++.TP + \fBNetwork related parameters\fR + .TP + \fB--ipadd\fR \fIaddr\fR diff --git a/sys-cluster/vzctl/files/patches/215_all_vzmigrate-mawk.patch b/sys-cluster/vzctl/files/patches/215_all_vzmigrate-mawk.patch new file mode 100644 index 0000000..cdb0225 --- /dev/null +++ b/sys-cluster/vzctl/files/patches/215_all_vzmigrate-mawk.patch @@ -0,0 +1,25 @@ +From: Kirill Korotaev <dev@openvz.org> +Date: Tue, 22 Aug 2006 10:34:04 +0000 (+0400) +Subject: Fix vzmigrate to work with mawk (not gawk only) +X-Git-Url: http://git.openvz.org/?p=vzctl;a=commitdiff;h=ca21ee121297cd2e230895078fd3153230e37794 + +Fix vzmigrate to work with mawk (not gawk only) +http://bugzilla.openvz.org/show_bug.cgi?id=231 + +Signed-Off-By: Thorsten Schifferdecker <tsd@debian.systs.org> +Signed-Off-By: Kirill Korotaev <dev@openvz.org> +--- + +Index: vzctl-3.0.11/vzmigrate +=================================================================== +--- vzctl-3.0.11.orig/vzmigrate ++++ vzctl-3.0.11/vzmigrate +@@ -375,7 +375,7 @@ fi + + log 1 "Syncing private" + if ! rsync -aH --progress "$VE_PRIVATE" "root@$host:${VE_PRIVATE%/*}" | \ +- grep "% of" | awk --assign ORS="\r" '{print $10}'; then ++ grep "% of" | awk -v ORS="\r" '{print $10}'; then + log 1 "Failed to sync VPS private areas" + undo_quota_on + exit $MIG_ERR_COPY diff --git a/sys-cluster/vzctl/files/vz.initd b/sys-cluster/vzctl/files/vz.initd new file mode 100644 index 0000000..6a7149e --- /dev/null +++ b/sys-cluster/vzctl/files/vz.initd @@ -0,0 +1,263 @@ +#!/sbin/runscript +# Copyright 1999-2005 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sys-cluster/vzctl/files/vz-3.0.10.initd,v 1.2 2006/07/09 10:29:24 phreak Exp $ + +depend() { + need net + before iptables +} + +check_config() { + # if we don't want openvz running, say so + [ "${VIRTUOZZO}" = "yes" ] || return 1 + + # set default values + : ${VZCTL:=/usr/sbin/vzctl} + : ${VZQUOTA:=/usr/sbin/vzquota} + : ${VZVEINFO:=/proc/vz/veinfo} + : ${VPSCONFDIR:=/etc/vz} + : ${PRELOAD_MODULES:="af_packet"} + : ${MODULES:="vzmon vzdquota vzdev"} + : ${MIGRATE_MODULES:="vzcpt vzrst"} + : ${NET_MODULES="vznetdev vznet"} + : ${VZDEV:=venet0} + : ${PARALLEL:=4} + + # check if you should load vzwdog module + [ "${VZWDOG}" = "yes" ] && MODULES="${MODULES} vzwdog" + + # we need a working vzctl + if [ ! -x "${VZCTL}" ]; then + eerror "vzctl missing (${VZCTL})" + return 1 + fi + + # prevent dumb users from failure + if [ ! -e /dev/vzctl ]; then + eerror "Missing device node /dev/vzctl" + einfo + einfo "Please create the vzctl device node using the following command:" + einfo " /bin/mknod /dev/vzctl c 126 0" + einfo + return 1 + fi + + if [ -z "${VE0CPUUNITS}" ]; then + ewarn "VE0CPUUNITS is not set in /etc/conf.d/vz; using default value of 1000" + VE0CPUUNITS=1000 + fi + return 0 +} + +setup_ve0() { + local msg ve0conf="${VPSCONFDIR}/0.conf" + + msg=$(${VZCTL} set 0 --cpuunits ${VE0CPUUNITS} 2>&1) + [ $? -ne 0 ] && ewarn "vzctl set 0 --cpuunits ${VE0CPUUNITS} failed: ${msg}" + + test -f ${ve0conf} || return + egrep -q '^ONBOOT=yes\|^ONBOOT=\"yes\"' ${ve0conf} || return + + ebegin "Configuring hardware node UB resources: " + msg=$(${VZCTL} set 0 --reset_ub 2>&1) + eend $? ${msg} +} + +start_net() { + local mod + + # we don't operate on a running interface + if /sbin/ip addr ls | grep -q "venet0:.*UP" 2>/dev/null; then + return 0 + fi + + # load necessary modules + for mod in ${NET_MODULES}; do + /sbin/modprobe ${mod} 2>/dev/null + done + + # configure the device + ebegin "Bringing up interface ${VZDEV}" + /sbin/ip link set ${VZDEV} up + eend $? + + /sbin/ip addr add 0.0.0.0/0 dev ${VZDEV} + + ebegin "Configuring interface ${VZDEV}" + /sbin/sysctl -q -w net.ipv4.conf.${VZDEV}.send_redirects=0 + eend $? +} + +stop_net() { + local mod + + if /sbin/ip a l | grep -q "venet0:.*UP" 2>/dev/null; then + ebegin "Bringing down interface ${VZDEV}" + /sbin/ip link set ${VZDEV} down 2>/dev/null + eend $? + fi + + # remove all modules we probably loaded on start_net + for mod in ${NET_MODULES}; do + /sbin/modprobe -r ${mod} > /dev/null 2>&1 + done +} + +start_ve() { + local veid velist msg need_restart="" + + # get all VPSs we should start on boot + if ! cd ${VPSCONFDIR}; then + eerror $? "Unable to cd to ${VPSCONFDIR}" + return 1 + fi + velist=$(grep -l '^ONBOOT=yes\|^ONBOOT=\"yes\"' [0-9]*.conf 2>/dev/null | sed -e 's/.conf//g' | sort -n) + cd - >/dev/null + + /sbin/sysctl -q -w net.ipv4.route.src_check=0 + + for veid in ${velist}; do + ebegin "Starting VPS ${veid}" + if [ "${VZFASTBOOT}" = "yes" -a "${DISK_QUOTA}" = "yes" ]; then + ${VZQUOTA} stat ${veid} >/dev/null 2>&1 + if [ $? -eq 6 ]; then + if ${VZQUOTA} show ${veid} 2>&1 | grep "vzquota : (warning) Quota is running" >/dev/null 2>&1; then + ${VZQUOTA} on ${veid} --nocheck >/dev/null 2>&1 + need_restart="${need_restart} ${veid}" + fi + fi + fi + msg=$(${VZCTL} start ${veid} 2>&1) + eend $? "${msg}" + done + + for veid in ${need_restart}; do + ebegin "Stopping VPS ${veid}" + msg=$(${VZCTL} stop ${veid}) + eend $? "${msg}" + + ebegin "Starting VPS ${veid}" + msg=$($VZCTL start ${veid} 2>&1) + eend $? "${msg}" + done + + # we're ok even if some VPSs failed to start + return 0 +} + +stop_ve() { + local veid velist msg m mounts fail i iter pid pids quota + + if [ -f ${VZVEINFO} ]; then + for ((i = 0; i <= 2; i++)); do + iter=0 + pids= + velist=$(awk '{print $1;}' < ${VZVEINFO} | grep -v "^0$") + + for veid in ${velist}; do + ebegin "Shutting down VPS $veid" + # Set fairsched parameters to maximum so + # VPS will stop fast + ${VZCTL} set ${veid} --cpuunits 2000 --cpulimit 0 >/dev/null 2>&1 + ${VZCTL} --skiplock stop ${veid} >/dev/null 2>&1 & + pids="${pids} $!" + let iter++ + sleep 1 + if [ ${iter} -gt ${PARALLEL} ]; then + for pid in ${pids}; do + wait ${pid} + done + pids= + iter=0 + fi + done + + for pid in ${pids}; do + wait ${pid} + done + done + fi + + iter=0 + fail=1 + + while [ ${iter} -lt 5 -a ${fail} -ne 0 ]; do + fail=0 + mounts=$(awk '{if ($3=="simfs") print $2}' /proc/mounts) + + for m in ${mounts}; do + ebegin "Unmounting VPS area ${m}" + msg=$(umount ${m} 2>&1) + eend $? "${msg}" + if [ $? -ne 0 ]; then + let fail++ + fuser -k -m ${m} > /dev/null 2>&1 + fi + done + + let iter++ + done + + # turn quota off + quota=$(awk -F: '/^[0-9]+:/{print $1}' /proc/vz/vzquota 2>/dev/null) + + for m in ${quota}; do + ebegin "Turning quota off for VPS ${m}" + msg=$(vzquota off ${m} 2>&1) + eend $? "${msg}" + done +} + +start() { + check_config || return + + local mod rc + + ebegin "Loading OpenVZ modules" + for mod in ${PRELOAD_MODULES}; do + /sbin/modprobe -r ${mod} >/dev/null 2>&1 + /sbin/modprobe ${mod} >/dev/null 2>&1 + done + + for mod in ${MODULES}; do + /sbin/modprobe ${mod} >/dev/null 2>&1 + rc=$? + if [ ${rc} -ne 0 ]; then + eend ${rc} "failed to load module ${mod}" + return ${rc} + fi + done + + for mod in ${MIGRATE_MODULES}; do + /sbin/modprobe ${mod} >/dev/null 2>&1 + done + eend + + start_net + + setup_ve0 + + start_ve +} + +stop() { + check_config || return + + local mod + + stop_ve + stop_net + + for mod in ${MODULES}; do + /sbin/modprobe -r ${mod} > /dev/null 2>&1 + done + + for mod in ${PRELOAD_MODULES}; do + /sbin/modprobe -r ${mod} > /dev/null 2>&1 + done + + # Even if some modules failed to unload (say they were not loaded) + # we return 0 for the service to be marked as stopped. + return 0 +} diff --git a/sys-cluster/vzctl/vzctl-3.0.11.ebuild b/sys-cluster/vzctl/vzctl-3.0.11.ebuild new file mode 100644 index 0000000..86f1e2c --- /dev/null +++ b/sys-cluster/vzctl/vzctl-3.0.11.ebuild @@ -0,0 +1,57 @@ +# Copyright 1999-2006 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sys-cluster/vzctl/vzctl-3.0.10-r2.ebuild,v 1.1 2006/07/09 10:29:24 phreak Exp $ + +inherit eutils flag-o-matic + +DESCRIPTION="OpenVZ VPS control utility" +HOMEPAGE="http://openvz.org/" +SRC_URI="http://download.openvz.org/utils/${PN}/${PV}/src/${P}.tar.bz2" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="" + +RDEPEND="app-admin/logrotate + sys-apps/ed + net-firewall/iptables + sys-fs/vzquota + sys-apps/iproute2" + +DEPEND="${RDEPEND}" + +src_unpack() { + unpack ${A} + + epatch "${FILESDIR}"/patches/*.patch +} + +src_compile() { + append-flags -Wall -g2 + emake CFLAGS="${CFLAGS}" || die +} + +src_install() { +# make DESTDIR="${D}" "/usr/$(get_libdir)/vzctl" install || die "make install failed" + make DESTDIR="${D}" install || die "make install failed" + + # Provide a symlink for vz.conf (part 1 of fixing #138462) + dosym /etc/vz/vz.conf /etc/conf.d/vz + + # Install gentoo specific init script + newinitd "${FILESDIR}"/vz.initd vz +} + +pkg_postinst() { + if has_version "<3.0.10"; then + ewarn + ewarn "The location of some vzctl files have changed. Most notably," + ewarn "VE configuration files and samples directory has changed from" + ewarn "/etc/vz to /etc/vz/conf. In order to be able to work with" + ewarn "your VEs, please do the following:" + ewarn + ewarn "bash# mv /etc/vz/[0-9]*.conf /etc/vz/conf/" + ewarn + fi +} |