diff options
author | Sam James <sam@gentoo.org> | 2022-03-07 03:28:54 +0000 |
---|---|---|
committer | Sam James <sam@gentoo.org> | 2022-03-07 03:28:54 +0000 |
commit | b438445baa9df2af43e0374efa49179b004b720d (patch) | |
tree | 845c87c644c52b4c080b488c45093de641c09134 /sys-cluster | |
parent | sys-cluster/torque: destabilize 4.1.7-r2 for ~ppc64, ~sparc, ~x86 (diff) | |
download | gentoo-b438445baa9df2af43e0374efa49179b004b720d.tar.gz gentoo-b438445baa9df2af43e0374efa49179b004b720d.tar.bz2 gentoo-b438445baa9df2af43e0374efa49179b004b720d.zip |
sys-cluster/torque: drop 4.1.7-r2, 4.2.10-r2
Closes: https://bugs.gentoo.org/689876
Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'sys-cluster')
-rw-r--r-- | sys-cluster/torque/Manifest | 2 | ||||
-rw-r--r-- | sys-cluster/torque/files/CVE-2013-4495.4.1.patch | 343 | ||||
-rw-r--r-- | sys-cluster/torque/files/torque-4.1.5.1-tcl8.6.patch | 93 | ||||
-rw-r--r-- | sys-cluster/torque/files/torque-4.2-dont-mess-with-cflags.patch | 27 | ||||
-rw-r--r-- | sys-cluster/torque/files/torque-4.2-use-NULL-instead-of-char0.patch | 140 | ||||
-rw-r--r-- | sys-cluster/torque/files/torque-4.2.9-tcl8.6.patch | 99 | ||||
-rw-r--r-- | sys-cluster/torque/torque-4.1.7-r2.ebuild | 232 | ||||
-rw-r--r-- | sys-cluster/torque/torque-4.2.10-r2.ebuild | 193 |
8 files changed, 0 insertions, 1129 deletions
diff --git a/sys-cluster/torque/Manifest b/sys-cluster/torque/Manifest index 8c324318e59e..7de947362c2a 100644 --- a/sys-cluster/torque/Manifest +++ b/sys-cluster/torque/Manifest @@ -1,5 +1,3 @@ -DIST torque-4.1.7.tar.gz 6218108 BLAKE2B 6c1ad0f1bb3f364603ad7f498999bd910491910fa5632b9f6b82e08b3afb8c54e8775c38bc8e5c959aa99d0647c54c7c348cd07bcbe11add8bfab5f3f06a4c80 SHA512 5a085c0a7b205fed075bff4599db90ca5c4bb5f22d87d76fd56539d5cc1935bb8eeffcd4d18ba84401bd4ca128718070b69c8b91ab6814a4638622ba351654e6 -DIST torque-4.2.10-gh-20150517.tar.gz 5836286 BLAKE2B 7108f1adcb6f674526b7db97df4ebcee04ae5c818d4f35ed1230a4e72e52ec0bc3b44e17334a143b21bcd3acccefc3927eca4f98d54d37745c8bb46a75e07045 SHA512 600bb5389b6a4161732b7aa82627f1ebeae238d7091aa2e223d9a14c44bf4668662f664b976f62ba3f1d8a366f90fb6058a8c904e20c26432dccd6abcd9c57fa DIST torque-6.0.4-gcc7.patch 50412 BLAKE2B 43748e9bfd3811abdfeb56f93dd517fcb07a6902194120e2c9e16bbe5bbe0f04afd3f898616d46e0310902a6376671be0c8f3865e8f7dd5381fca46e7ad62fc8 SHA512 430ae6a80ebbfb2066831326f8ce25a34cb6fc17c1fbe4a202c495baceb2b7011c9f6782da31b78c34287f26765c76c587611d689791523b8bd53d634e3681b6 DIST torque-6.0.4-gh-20170829.tar.gz 6182495 BLAKE2B f9156ae4ffe388a7f3fa0df142e5f2d48c16fd7b8c148a3a80cd1c977eb0c1ef4a455da275f993100867be043422526ed05c53734e707851083d6d23ee1a2cc4 SHA512 8f1101adb89e06617de501f7956e126633b78b495baeb7980d3c534d34537cc604a3cf0a7c23c48eb2554b26cc13672b0e00c75d0f722d63ac4d42d57388ed94 DIST torque-6.0.4-glibc-2.34-pthread.patch.bz2 6266 BLAKE2B b5175b8bfe2deabe86b067f1ec5269770bcf096c6e875b8fd3cb404a976c9cb550ddcbe6e4ebb1e59c96044f95c285519e70fb4acd5c9db86c3050093ff65b3b SHA512 dbe0bd6000c140e1fe9b36e55c1a844701406a563bd178b9c972793b83282f3434e2160da5280666dcc0934c2b88e36c0a2b9518ffe7695b23d73fce0a07388d diff --git a/sys-cluster/torque/files/CVE-2013-4495.4.1.patch b/sys-cluster/torque/files/CVE-2013-4495.4.1.patch deleted file mode 100644 index 810a4f0944a5..000000000000 --- a/sys-cluster/torque/files/CVE-2013-4495.4.1.patch +++ /dev/null @@ -1,343 +0,0 @@ -From 2aad72c3d2ac612ecbb66828ac6ed5ab51eff5f3 Mon Sep 17 00:00:00 2001 -From: David Beer <dbeer@adaptivecomputing.com> -Date: Mon, 11 Nov 2013 11:55:58 -0700 -Subject: [PATCH] Fix CVE 2013-4495. Note: this patch has been verified as - fixing this security hole but has not received other regression testing. - Could not cherry-pick as 2.5 and 4.1 are very different. - ---- - src/server/svr_mail.c | 265 ++++++++++++++++++++++++++++++++------------------ - 1 file changed, 170 insertions(+), 95 deletions(-) - -diff --git a/src/server/svr_mail.c b/src/server/svr_mail.c -index b269e82..52f2f1f 100644 ---- a/src/server/svr_mail.c -+++ b/src/server/svr_mail.c -@@ -89,6 +89,7 @@ - #include <stdio.h> - #include <stdlib.h> - #include <string.h> -+#include <unistd.h> - #include "list_link.h" - #include "attribute.h" - #include "server_limits.h" -@@ -136,6 +137,77 @@ void free_mail_info( - - - -+void add_body_info( -+ -+ char *bodyfmtbuf /* I */, -+ mail_info *mi /* I */) -+ -+ { -+ char *bodyfmt = NULL; -+ bodyfmt = strcpy(bodyfmtbuf, "PBS Job Id: %i\n" -+ "Job Name: %j\n"); -+ if (mi->exec_host != NULL) -+ { -+ strcat(bodyfmt, "Exec host: %h\n"); -+ } -+ -+ strcat(bodyfmt, "%m\n"); -+ -+ if (mi->text != NULL) -+ { -+ strcat(bodyfmt, "%d\n"); -+ } -+ } -+ -+ -+/* -+ * write_email() -+ * -+ * In emailing, the mail body is written to a pipe connected to -+ * standard input for sendmail. This function supplies the body -+ * of the message. -+ * -+ */ -+void write_email( -+ -+ FILE *outmail_input, -+ mail_info *mi) -+ -+ { -+ char *bodyfmt = NULL; -+ char *subjectfmt = NULL; -+ -+ /* Pipe in mail headers: To: and Subject: */ -+ fprintf(outmail_input, "To: %s\n", mi->mailto); -+ -+ /* mail subject line formating statement */ -+ get_svr_attr_str(SRV_ATR_MailSubjectFmt, (char **)&subjectfmt); -+ if (subjectfmt == NULL) -+ { -+ subjectfmt = "PBS JOB %i"; -+ } -+ -+ fprintf(outmail_input, "Subject: "); -+ svr_format_job(outmail_input, mi, subjectfmt); -+ fprintf(outmail_input, "\n"); -+ -+ /* Set "Precedence: bulk" to avoid vacation messages, etc */ -+ fprintf(outmail_input, "Precedence: bulk\n\n"); -+ -+ /* mail body formating statement */ -+ get_svr_attr_str(SRV_ATR_MailBodyFmt, &bodyfmt); -+ if (bodyfmt == NULL) -+ { -+ char bodyfmtbuf[MAXLINE]; -+ add_body_info(bodyfmtbuf, mi); -+ bodyfmt = bodyfmtbuf; -+ } -+ -+ /* Now pipe in the email body */ -+ svr_format_job(outmail_input, mi, bodyfmt); -+ -+ } /* write_email() */ -+ - - - void *send_the_mail( -@@ -143,15 +215,19 @@ void *send_the_mail( - void *vp) - - { -- mail_info *mi = (mail_info *)vp; -- -- int i; -- char *mailfrom = NULL; -- char *subjectfmt = NULL; -- char *bodyfmt = NULL; -- char *cmdbuf = NULL; -- char bodyfmtbuf[MAXLINE]; -- FILE *outmail; -+ mail_info *mi = (mail_info *)vp; -+ -+ int status = 0; -+ int numargs = 0; -+ int pipes[2]; -+ int counter; -+ pid_t pid; -+ char *mailptr; -+ char *mailfrom = NULL; -+ char tmpBuf[LOG_BUF_SIZE]; -+ // We call sendmail with cmd_name + 2 arguments + # of mailto addresses + 1 for null -+ char *sendmail_args[100]; -+ FILE *stream; - - /* Who is mail from, if SRV_ATR_mailfrom not set use default */ - get_svr_attr_str(SRV_ATR_mailfrom, &mailfrom); -@@ -173,124 +249,123 @@ void *send_the_mail( - mailfrom = PBS_DEFAULT_MAIL; - } - -- /* mail subject line formating statement */ -- get_svr_attr_str(SRV_ATR_MailSubjectFmt, &subjectfmt); -- if (subjectfmt == NULL) -- { -- subjectfmt = "PBS JOB %i"; -- } -+ sendmail_args[numargs++] = (char *)SENDMAIL_CMD; -+ sendmail_args[numargs++] = (char *)"-f"; -+ sendmail_args[numargs++] = (char *)mailfrom; - -- /* mail body formating statement */ -- get_svr_attr_str(SRV_ATR_MailBodyFmt, &bodyfmt); -- if (bodyfmt == NULL) -+ /* Add the e-mail addresses to the command line */ -+ mailptr = strdup(mi->mailto); -+ sendmail_args[numargs++] = mailptr; -+ for (counter=0; counter < (int)strlen(mailptr); counter++) - { -- bodyfmt = strcpy(bodyfmtbuf, "PBS Job Id: %i\n" -- "Job Name: %j\n"); -- if (mi->exec_host != NULL) -+ if (mailptr[counter] == ',') - { -- strcat(bodyfmt, "Exec host: %h\n"); -- } -- -- strcat(bodyfmt, "%m\n"); -- -- if (mi->text != NULL) -- { -- strcat(bodyfmt, "%d\n"); -+ mailptr[counter] = '\0'; -+ sendmail_args[numargs++] = mailptr + counter + 1; -+ if (numargs >= 99) -+ break; - } - } - -- /* setup sendmail command line with -f from_whom */ -- i = strlen(SENDMAIL_CMD) + strlen(mailfrom) + strlen(mi->mailto) + 6; -- -- if ((cmdbuf = calloc(1, i + 1)) == NULL) -+ sendmail_args[numargs] = NULL; -+ -+ /* Create a pipe to talk to the sendmail process we are about to fork */ -+ if (pipe(pipes) == -1) - { -- char tmpBuf[LOG_BUF_SIZE]; -- -- snprintf(tmpBuf,sizeof(tmpBuf), -- "Unable to popen() command '%s' for writing: '%s' (error %d)\n", -- SENDMAIL_CMD, -- strerror(errno), -- errno); -+ snprintf(tmpBuf, sizeof(tmpBuf), "Unable to pipes for sending e-mail\n"); - log_event(PBSEVENT_ERROR | PBSEVENT_ADMIN | PBSEVENT_JOB, - PBS_EVENTCLASS_JOB, - mi->jobid, - tmpBuf); -- -- free_mail_info(mi); - -+ free_mail_info(mi); -+ free(mailptr); - return(NULL); - } - -- sprintf(cmdbuf, "%s -f %s %s", -- SENDMAIL_CMD, -- mailfrom, -- mi->mailto); -- -- outmail = popen(cmdbuf, "w"); -- -- if (outmail == NULL) -+ if ((pid=fork()) == -1) - { -- char tmpBuf[LOG_BUF_SIZE]; -- -- snprintf(tmpBuf,sizeof(tmpBuf), -- "Unable to popen() command '%s' for writing: '%s' (error %d)\n", -- cmdbuf, -- strerror(errno), -- errno); -+ snprintf(tmpBuf, sizeof(tmpBuf), "Unable to fork for sending e-mail\n"); - log_event(PBSEVENT_ERROR | PBSEVENT_ADMIN | PBSEVENT_JOB, - PBS_EVENTCLASS_JOB, - mi->jobid, - tmpBuf); - - free_mail_info(mi); -- free(cmdbuf); -- -+ free(mailptr); -+ close(pipes[0]); -+ close(pipes[1]); - return(NULL); - } -+ else if (pid == 0) -+ { -+ /* CHILD */ - -- /* Pipe in mail headers: To: and Subject: */ -- fprintf(outmail, "To: %s\n", mi->mailto); -+ /* Make stdin the read end of the pipe */ -+ dup2(pipes[0], 0); - -- fprintf(outmail, "Subject: "); -- svr_format_job(outmail, mi, subjectfmt); -- fprintf(outmail, "\n"); -+ /* Close the rest of the open file descriptors */ -+ int numfds = sysconf(_SC_OPEN_MAX); -+ while (--numfds > 0) -+ close(numfds); - -- /* Set "Precedence: bulk" to avoid vacation messages, etc */ -- fprintf(outmail, "Precedence: bulk\n\n"); -+ execv(SENDMAIL_CMD, sendmail_args); -+ /* This never returns, but if the execv fails the child should exit */ -+ exit(1); -+ } -+ else -+ { -+ /* This is the parent */ - -- /* Now pipe in the email body */ -- svr_format_job(outmail, mi, bodyfmt); -+ /* Close the read end of the pipe */ -+ close(pipes[0]); - -- errno = 0; -- if ((i = pclose(outmail)) != 0) -- { -- char tmpBuf[LOG_BUF_SIZE]; -+ /* Write the body to the pipe */ -+ stream = fdopen(pipes[1], "w"); -+ write_email(stream, mi); - -- snprintf(tmpBuf,sizeof(tmpBuf), -- "Email '%c' to %s failed: Child process '%s' %s %d (errno %d:%s)\n", -- mi->mail_point, -- mi->mailto, -- cmdbuf, -- ((WIFEXITED(i)) ? ("returned") : ((WIFSIGNALED(i)) ? ("killed by signal") : ("croaked"))), -- ((WIFEXITED(i)) ? (WEXITSTATUS(i)) : ((WIFSIGNALED(i)) ? (WTERMSIG(i)) : (i))), -- errno, -- strerror(errno)); -- log_event(PBSEVENT_ERROR | PBSEVENT_ADMIN | PBSEVENT_JOB, -- PBS_EVENTCLASS_JOB, -- mi->jobid, -- tmpBuf); -- } -- else if (LOGLEVEL >= 4) -- { -- log_event(PBSEVENT_ERROR | PBSEVENT_ADMIN | PBSEVENT_JOB, -- PBS_EVENTCLASS_JOB, -- mi->jobid, -- "Email sent successfully\n"); -- } -+ fflush(stream); -+ -+ /* Close and wait for the command to finish */ -+ if (fclose(stream) != 0) -+ { -+ snprintf(tmpBuf,sizeof(tmpBuf), -+ "Piping mail body to sendmail closed: errno %d:%s\n", -+ errno, strerror(errno)); -+ -+ log_event(PBSEVENT_ERROR | PBSEVENT_ADMIN | PBSEVENT_JOB, -+ PBS_EVENTCLASS_JOB, -+ mi->jobid, -+ tmpBuf); -+ } -+ -+ // we aren't going to block in order to find out whether or not sendmail worked -+ if ((waitpid(pid, &status, WNOHANG) != 0) && -+ (status != 0)) -+ { -+ snprintf(tmpBuf,sizeof(tmpBuf), -+ "Sendmail command returned %d. Mail may not have been sent\n", -+ status); -+ -+ log_event(PBSEVENT_ERROR | PBSEVENT_ADMIN | PBSEVENT_JOB, -+ PBS_EVENTCLASS_JOB, -+ mi->jobid, -+ tmpBuf); -+ } - -- free_mail_info(mi); -- free(cmdbuf); -+ // don't leave zombies -+ while (waitpid(-1, &status, WNOHANG) != 0) -+ { -+ // zombie reaped, NO-OP -+ } -+ -+ free_mail_info(mi); -+ free(mailptr); -+ return(NULL); -+ } - -+ /* NOT REACHED */ -+ - return(NULL); - } /* END send_the_mail() */ - --- -1.8.3.2 - diff --git a/sys-cluster/torque/files/torque-4.1.5.1-tcl8.6.patch b/sys-cluster/torque/files/torque-4.1.5.1-tcl8.6.patch deleted file mode 100644 index 2e8a8ed8f359..000000000000 --- a/sys-cluster/torque/files/torque-4.1.5.1-tcl8.6.patch +++ /dev/null @@ -1,93 +0,0 @@ - src/cmds/qstat.c | 18 ++++++++++++++++++ - src/scheduler.tcl/pbs_tclWrap.c | 13 +++++++++++++ - 2 files changed, 31 insertions(+) - -diff --git a/src/cmds/qstat.c b/src/cmds/qstat.c -index 4e1c6b6..07ed448 100644 ---- a/src/cmds/qstat.c -+++ b/src/cmds/qstat.c -@@ -1795,8 +1795,13 @@ tcl_init(void) - - if (Tcl_Init(interp) == TCL_ERROR) - { -+#if TCL_MAJOR_VERSION <=8 && TCL_MINOR_VERSION < 6 - fprintf(stderr, "Tcl_Init error: %s", - interp->result); -+#else -+ fprintf(stderr, "Tcl_Init error: %s", -+ Tcl_GetStringResult(interp)); -+#endif - } - - #if TCLX -@@ -1808,8 +1813,14 @@ tcl_init(void) - if (Tclx_Init(interp) == TCL_ERROR) - { - #endif -+ -+#if TCL_MAJOR_VERSION <=8 && TCL_MINOR_VERSION < 6 - fprintf(stderr, "Tclx_Init error: %s", - interp->result); -+#else -+ fprintf(stderr, "Tclx_Init error: %s", -+ Tcl_GetStringResult(interp)); -+#endif - } - - #endif /* TCLX */ -@@ -1920,10 +1931,17 @@ void tcl_run( - trace = (char *)Tcl_GetVar(interp, "errorInfo", 0); - - if (trace == NULL) -+#if TCL_MAJOR_VERSION <=8 && TCL_MINOR_VERSION < 6 - trace = interp->result; - - fprintf(stderr, "%s: TCL error @ line %d: %s\n", - script, interp->errorLine, trace); -+#else -+ trace = Tcl_GetStringResult(interp); -+ -+ fprintf(stderr, "%s: TCL error @ line %d: %s\n", -+ script, Tcl_GetErrorLine(interp), trace); -+#endif - } - - Tcl_DeleteInterp(interp); -diff --git a/src/scheduler.tcl/pbs_tclWrap.c b/src/scheduler.tcl/pbs_tclWrap.c -index a85e8ff..46c1012 100644 ---- a/src/scheduler.tcl/pbs_tclWrap.c -+++ b/src/scheduler.tcl/pbs_tclWrap.c -@@ -900,8 +900,13 @@ char *argv[]; - - if (argc != 2) - { -+#if TCL_MAJOR_VERSION <=8 && TCL_MINOR_VERSION < 6 - sprintf(interp->result, - "%s: wrong # args: job_id", argv[0]); -+#else -+ sprintf(Tcl_GetStringResult(interp), -+ "%s: wrong # args: job_id", argv[0]); -+#endif - return TCL_ERROR; - } - -@@ -912,11 +917,19 @@ char *argv[]; - return TCL_OK; - } - -+#if TCL_MAJOR_VERSION <=8 && TCL_MINOR_VERSION < 6 - interp->result = "0"; -+#else -+ Tcl_SetResult(interp, "0", TCL_STATIC); -+#endif - - if (pbs_rerunjob_err(connector, argv[1], extend, &local_errno)) - { -+#if TCL_MAJOR_VERSION <=8 && TCL_MINOR_VERSION < 6 - interp->result = "-1"; -+#else -+ Tcl_SetResult(interp, "-1", TCL_STATIC); -+#endif - msg = pbs_geterrmsg(connector); - sprintf(log_buffer, "%s (%d)", msg ? msg : fail, local_errno); - log_err(-1, argv[0], log_buffer); diff --git a/sys-cluster/torque/files/torque-4.2-dont-mess-with-cflags.patch b/sys-cluster/torque/files/torque-4.2-dont-mess-with-cflags.patch deleted file mode 100644 index aec54aff030f..000000000000 --- a/sys-cluster/torque/files/torque-4.2-dont-mess-with-cflags.patch +++ /dev/null @@ -1,27 +0,0 @@ ---- a/configure.ac 2014-09-10 21:06:26.000000000 -0400 -+++ b/configure.ac 2017-05-23 10:43:59.051759539 -0400 -@@ -703,24 +703,6 @@ - AC_HELP_STRING([--with-debug], [compile with debugging symbols]), - DEBUG_SYMBOLS=$withval, DEBUG_SYMBOLS="yes") - AC_MSG_RESULT([DEBUG_SYMBOLS=$DEBUG_SYMBOLS]) --dnl remove -O* and add -g --if test "$DEBUG_SYMBOLS" = 'yes'; then -- AC_MSG_RESULT([before tweak CFLAGS=$CFLAGS]) -- CFLAGS=`echo $CFLAGS | sed 's/ \?-O[[^ ]]*//g'` -- AC_MSG_RESULT([mid tweak CFLAGS=$CFLAGS]) -- case $CFLAGS in -- *-g*) -- ;; -- *) -- if test "$CFLAGS" = ''; then -- CFLAGS="-g" -- else -- CFLAGS="-g $CFLAGS" -- fi -- ;; -- esac -- AC_MSG_RESULT([after tweak CFLAGS=$CFLAGS]) --fi - - dnl if using gcc, we can be very strict - AC_ARG_ENABLE(gcc_warnings, [ diff --git a/sys-cluster/torque/files/torque-4.2-use-NULL-instead-of-char0.patch b/sys-cluster/torque/files/torque-4.2-use-NULL-instead-of-char0.patch deleted file mode 100644 index a1cb85327d71..000000000000 --- a/sys-cluster/torque/files/torque-4.2-use-NULL-instead-of-char0.patch +++ /dev/null @@ -1,140 +0,0 @@ ---- a/src/cmds/pbsnodes.c 2015-03-17 16:43:36.000000000 -0400 -+++ b/src/cmds/pbsnodes.c 2019-02-25 12:33:37.824638386 -0500 -@@ -693,7 +693,7 @@ - /* -N n is the same as -N "" -- it clears the note */ - - if (!strcmp(note, "n")) -- *note = '\0'; -+ *note = NULL; - - if (strlen(note) > MAX_NOTE) - { -@@ -821,7 +821,7 @@ - { - nodeargs = (char **)calloc(2, sizeof(char **)); - nodeargs[0] = strdup(""); -- nodeargs[1] = '\0'; -+ nodeargs[1] = NULL; - } - } - } -@@ -901,7 +901,7 @@ - - MXMLCreateE(&DE, "Data"); - -- for (lindex = 0;nodeargs[lindex] != '\0';lindex++) -+ for (lindex = 0;nodeargs[lindex] != NULL;lindex++) - { - bstatus = statnode(con, nodeargs[lindex]); - -@@ -922,7 +922,7 @@ - } - else - { -- for (lindex = 0;nodeargs[lindex] != '\0';lindex++) -+ for (lindex = 0;nodeargs[lindex] != NULL;lindex++) - { - bstatus = statnode(con, nodeargs[lindex]); - -@@ -946,7 +946,7 @@ - - /* list any node that is DOWN, OFFLINE, or UNKNOWN */ - -- for (lindex = 0;nodeargs[lindex] != '\0';lindex++) -+ for (lindex = 0;nodeargs[lindex] != NULL;lindex++) - { - bstatus = statnode(con, nodeargs[lindex]); - ---- a/src/cmds/qsub_functions.c 2015-03-17 16:43:36.000000000 -0400 -+++ b/src/cmds/qsub_functions.c 2019-02-25 12:32:00.442982091 -0500 -@@ -542,7 +542,7 @@ - static char tmpLine[65536]; - - /* we've reached the end */ -- if ((start == NULL) && (*tok_ptr == '\0')) -+ if ((start == NULL) && (*tok_ptr == NULL)) - return(0); - - if (start != NULL) -@@ -554,7 +554,7 @@ - return(0); - - if ((*curr_ptr == '=') || -- (*curr_ptr == '\0')) -+ (*curr_ptr == NULL)) - { - /* no name, fail */ - return(-1); -@@ -574,18 +574,18 @@ - - /* strip blanks */ - while ((*equals) && (isspace((int)*equals))) -- *equals++ = '\0'; -+ *equals++ = NULL; - - if (*equals != '=') - return (-1); /* should have found a = as first non blank */ - -- *equals++ = '\0'; -+ *equals++ = NULL; - - /* skip leading white space */ - while (isspace((int)*equals) && *equals) - equals++; - -- if (*equals == '\0') -+ if (*equals == NULL) - return(-1); - - *value = equals; -@@ -872,7 +872,7 @@ - else - { - char *tmp_host = pbs_default(); -- if (tmp_host == '\0') -+ if (tmp_host == NULL) - hash_add_or_exit(mm, job_attr, ATTR_pbs_o_server, qsub_host, LOGIC_DATA); - else - hash_add_or_exit(mm, job_attr, ATTR_pbs_o_server, tmp_host, LOGIC_DATA); ---- a/src/include/attribute.h 2015-03-17 16:43:36.000000000 -0400 -+++ b/src/include/attribute.h 2019-02-22 16:47:40.507695453 -0500 -@@ -445,7 +445,7 @@ - extern int parse_equal_string(char *, char **, char **); - extern char *parse_comma_string(char *,char **); - --#define NULL_FUNC '\0' -+#define NULL_FUNC NULL - - /* other associated funtions */ - struct dynamic_string; ---- a/src/resmom/mom_main.c 2015-03-17 16:43:36.000000000 -0400 -+++ b/src/resmom/mom_main.c 2019-02-22 14:01:26.573890840 -0500 -@@ -4224,7 +4224,7 @@ - goto done; - } - -- name[i] = '\0'; -+ name[i] = NULL; - - for (d = ret_string, resline++;*resline;) - { ---- a/src/server/job_attr_def.c 2015-03-17 16:43:36.000000000 -0400 -+++ b/src/server/job_attr_def.c 2019-02-22 16:43:05.653007840 -0500 -@@ -1193,7 +1193,7 @@ - }, - - /* JOB_ATR_system_start_time */ -- {ATTR_system_start_time, /* start time as encoded in the proc/pid directory */ -+ { (char *)ATTR_system_start_time, /* start time as encoded in the proc/pid directory */ - decode_l, - encode_l, - set_l, -@@ -1205,7 +1205,7 @@ - PARENT_TYPE_JOB}, - - /* JOB_ATR_nppcu */ -- {ATTR_nppcu, /* how to handle compute units (on Cray system) */ -+ { (char *)ATTR_nppcu, /* how to handle compute units (on Cray system) */ - decode_l, - encode_l, - set_l, diff --git a/sys-cluster/torque/files/torque-4.2.9-tcl8.6.patch b/sys-cluster/torque/files/torque-4.2.9-tcl8.6.patch deleted file mode 100644 index 3a2a28ce4a2b..000000000000 --- a/sys-cluster/torque/files/torque-4.2.9-tcl8.6.patch +++ /dev/null @@ -1,99 +0,0 @@ - src/cmds/qstat.c | 20 +++++++++++++++++++- - src/scheduler.tcl/pbs_tclWrap.c | 13 +++++++++++++ - 2 files changed, 32 insertions(+), 1 deletion(-) - -diff --git a/src/cmds/qstat.c b/src/cmds/qstat.c -index f275cf8..23414b8 100644 ---- a/src/cmds/qstat.c -+++ b/src/cmds/qstat.c -@@ -2203,8 +2203,13 @@ tcl_init(void) - - if (Tcl_Init(interp) == TCL_ERROR) - { -+#if TCL_MAJOR_VERSION <=8 && TCL_MINOR_VERSION < 6 - fprintf(stderr, "Tcl_Init error: %s", - interp->result); -+#else -+ fprintf(stderr, "Tcl_Init error: %s", -+ Tcl_GetStringResult(interp)); -+#endif - } - - #if TCLX -@@ -2216,8 +2221,14 @@ tcl_init(void) - if (Tclx_Init(interp) == TCL_ERROR) - { - #endif -+ -+#if TCL_MAJOR_VERSION <=8 && TCL_MINOR_VERSION < 6 - fprintf(stderr, "Tclx_Init error: %s", - interp->result); -+#else -+ fprintf(stderr, "Tclx_Init error: %s", -+ Tcl_GetStringResult(interp)); -+#endif - } - - #endif /* TCLX */ -@@ -2328,15 +2339,22 @@ void tcl_run( - - if (f_opt && Tcl_EvalFile(interp, script) != TCL_OK) - { -- char *trace; -+ const char *trace; - - trace = (char *)Tcl_GetVar(interp, "errorInfo", 0); - - if (trace == NULL) -+#if TCL_MAJOR_VERSION <=8 && TCL_MINOR_VERSION < 6 - trace = interp->result; - - fprintf(stderr, "%s: TCL error @ line %d: %s\n", - script, interp->errorLine, trace); -+#else -+ trace = Tcl_GetStringResult(interp); -+ -+ fprintf(stderr, "%s: TCL error @ line %d: %s\n", -+ script, Tcl_GetErrorLine(interp), trace); -+#endif - } - - Tcl_DeleteInterp(interp); -diff --git a/src/scheduler.tcl/pbs_tclWrap.c b/src/scheduler.tcl/pbs_tclWrap.c -index 3eea0b0..7d0d610 100644 ---- a/src/scheduler.tcl/pbs_tclWrap.c -+++ b/src/scheduler.tcl/pbs_tclWrap.c -@@ -935,8 +935,13 @@ int PBS_ReRun( - - if (argc != 2) - { -+#if TCL_MAJOR_VERSION <=8 && TCL_MINOR_VERSION < 6 - sprintf(interp->result, - "%s: wrong # args: job_id", argv[0]); -+#else -+ Tcl_SetObjResult(interp, Tcl_ObjPrintf( -+ "%s: wrong # args: job_id", argv[0])); -+#endif - return TCL_ERROR; - } - -@@ -947,11 +952,19 @@ int PBS_ReRun( - return TCL_OK; - } - -+#if TCL_MAJOR_VERSION <=8 && TCL_MINOR_VERSION < 6 - interp->result = strdup("0"); -+#else -+ Tcl_SetResult(interp, "0", TCL_STATIC); -+#endif - - if (pbs_rerunjob_err(connector, strdup(argv[1]), extend, &local_errno)) - { -+#if TCL_MAJOR_VERSION <=8 && TCL_MINOR_VERSION < 6 - interp->result = strdup("-1"); -+#else -+ Tcl_SetResult(interp, "-1", TCL_STATIC); -+#endif - msg = pbs_geterrmsg(connector); - sprintf(log_buffer, "%s (%d)", msg ? msg : fail, local_errno); - log_err(-1, argv[0], log_buffer); diff --git a/sys-cluster/torque/torque-4.1.7-r2.ebuild b/sys-cluster/torque/torque-4.1.7-r2.ebuild deleted file mode 100644 index 42d73e4f5ab6..000000000000 --- a/sys-cluster/torque/torque-4.1.7-r2.ebuild +++ /dev/null @@ -1,232 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=5 - -inherit epatch linux-info - -DESCRIPTION="Resource manager and queuing system based on OpenPBS" -HOMEPAGE="http://www.adaptivecomputing.com/products/open-source/torque" -# TODO: hopefully moving to github tags soon -# http://www.supercluster.org/pipermail/torquedev/2013-May/004519.html -SRC_URI="http://www.adaptivecomputing.com/index.php?wpfb_dl=1690 -> ${P}.tar.gz" - -LICENSE="torque-2.5" -SLOT="0" -KEYWORDS="~alpha amd64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86" -IUSE="cpusets +crypt doc drmaa munge nvidia server +syslog tk" - -DEPEND_COMMON=" - sys-libs/zlib - sys-libs/readline:0= - dev-libs/openssl:0= - cpusets? ( sys-apps/hwloc:= ) - munge? ( sys-auth/munge ) - nvidia? ( >=x11-drivers/nvidia-drivers-275 ) - tk? ( - dev-lang/tk:0= - dev-lang/tcl:0= - ) - syslog? ( virtual/logger ) - !!games-util/qstat" - -# libncurses.so is only needed for the configure check on readline to pass -DEPEND="${DEPEND_COMMON} - sys-libs/ncurses:* - !!sys-cluster/slurm" - -RDEPEND="${DEPEND_COMMON} - crypt? ( net-misc/openssh ) - !crypt? ( net-misc/netkit-rsh ) - !dev-libs/uthash" - -# Torque should depend on dev-libs/uthash but that's pretty much impossible -# to patch in as they ship with a broken configure such that files referenced -# by the configure.ac and Makefile.am are missing. -# http://www.supercluster.org/pipermail/torquedev/2014-October/004773.html - -pkg_setup() { - PBS_SERVER_HOME="${PBS_SERVER_HOME:-/var/spool/${PN}}" - - # Find a Torque server to use. Check environment, then - # current setup (if any), and fall back on current hostname. - if [ -z "${PBS_SERVER_NAME}" ]; then - if [ -f "${ROOT}${PBS_SERVER_HOME}/server_name" ]; then - PBS_SERVER_NAME="$(<${ROOT}${PBS_SERVER_HOME}/server_name)" - else - PBS_SERVER_NAME=$(hostname -f) - fi - fi - - if use cpusets; then - if ! use kernel_linux; then - einfo - elog " Torque currently only has support for cpusets in linux." - elog "Assuming you didn't really want this USE flag, and ignoring its state." - einfo - else - linux-info_pkg_setup - if ! linux_config_exists || ! linux_chkconfig_present CPUSETS; then - einfo - elog " Torque support for cpusets will require that you recompile" - elog "your kernel with CONFIG_CPUSETS enabled." - einfo - fi - fi - fi -} - -src_prepare() { - # Unused and causes breakage when switching from glibc to tirpc. - # https://github.com/adaptivecomputing/torque/pull/148 - sed -i '/rpc\/rpc\.h/d' src/lib/Libnet/net_client.c || die - - # We install to a valid location, no need to muck with ld.so.conf - # --without-loadlibfile is supposed to do this for us... - sed -i '/mk_default_ld_lib_file || return 1/d' buildutils/pbs_mkdirs.in || die - - epatch "${FILESDIR}"/${PN}-4.1.5.1-tcl8.6.patch - - # 491270 - epatch "${FILESDIR}"/CVE-2013-4495.4.1.patch -} - -src_configure() { - local myconf="--with-rcp=mom_rcp" - - use crypt && myconf="--with-rcp=scp" - - econf \ - $(use_enable tk gui) \ - $(use_enable syslog) \ - $(use_enable server) \ - $(use_enable drmaa) \ - $(use_enable munge munge-auth) \ - $(use_enable nvidia nvidia-gpus) \ - $(usex kernel_linux $(use_enable cpusets cpuset) --disable-cpuset) \ - --with-server-home=${PBS_SERVER_HOME} \ - --with-environ=/etc/pbs_environment \ - --with-default-server=${PBS_SERVER_NAME} \ - --disable-gcc-warnings \ - --with-tcp-retry-limit=2 \ - --without-loadlibfile \ - ${myconf} -} - -src_install() { - local dir - - DOCS=( CHANGELOG README.* Release_Notes ) - use doc && DOCS+=( doc/admin_guide.ps doc/*.pdf ) - - default - - # The build script isn't alternative install location friendly, - # So we have to fix some hard-coded paths in tclIndex for xpbs* to work - for file in $(find "${ED}" -iname tclIndex); do - sed \ - -e "s/${ED//\// }/ /" \ - -i "${file}" || die - done - - for dir in $(find "${ED}/${PBS_SERVER_HOME}" -type d); do - keepdir "${dir#${ED}}" - done - - if use server; then - newinitd "${FILESDIR}"/pbs_server-init.d-munge pbs_server - newinitd "${FILESDIR}"/pbs_sched-init.d pbs_sched - fi - newinitd "${FILESDIR}"/pbs_mom-init.d-munge pbs_mom - newconfd "${FILESDIR}"/${PN}-conf.d-munge ${PN} - newinitd "${FILESDIR}"/trqauthd-init.d trqauthd - newenvd "${FILESDIR}"/${PN}-env.d 25${PN} -} - -pkg_preinst() { - if [[ -f "${ROOT}etc/pbs_environment" ]]; then - cp "${ROOT}etc/pbs_environment" "${ED}"/etc/pbs_environment || die - fi - - if use server && [[ -f "${ROOT}${PBS_SERVER_HOME}/server_priv/nodes" ]]; then - cp \ - "${EROOT}${PBS_SERVER_HOME}/server_priv/nodes" \ - "${ED}/${PBS_SERVER_HOME}/server_priv/nodes" || die - fi - - echo "${PBS_SERVER_NAME}" > "${ED}${PBS_SERVER_HOME}/server_name" || die - - # Fix up the env.d file to use our set server home. - sed \ - -e "s:/var/spool/${PN}:${PBS_SERVER_HOME}:g" \ - -i "${ED}"/etc/env.d/25${PN} || die - - if use munge; then - sed -i 's,\(PBS_USE_MUNGE=\).*,\11,' "${ED}"/etc/conf.d/${PN} || die - fi -} - -pkg_postinst() { - elog " If this is the first time torque has been installed, then you are not" - elog "ready to start the server. Please refer to the documentation located at:" - elog "http://www.clusterresources.com/wiki/doku.php?id=torque:torque_wiki" - echo "" - elog " For a basic setup, you may use emerge --config ${PN}" - echo "" - if [[ -z "${REPLACING_VERSIONS}" ]]; then - elog "Important 4.0+ updates" - elog " - The on-wire protocol version has been changed." - elog " Versions of Torque before 4.0.0 are no longer able to communicate." - elog " - pbs_iff has been replaced by trqauthd, you will now need to add" - elog " trqauthd to your default runlevel." - fi -} - -# root will be setup as the primary operator/manager, the local machine -# will be added as a node and we'll create a simple queue, batch. -pkg_config() { - local h="$(echo "${ROOT}/${PBS_SERVER_HOME}" | sed 's:///*:/:g')" - local rc=0 - - ebegin "Configuring Torque" - einfo "Using ${h} as the pbs homedir" - einfo "Using ${PBS_SERVER_NAME} as the pbs_server" - - # Check for previous configuration and bail if found. - if [ -e "${h}/server_priv/acl_svr/operators" ] \ - || [ -e "${h}/server_priv/nodes" ] \ - || [ -e "${h}/mom_priv/config" ]; then - ewarn "Previous Torque configuration detected. Press Enter to" - ewarn "continue or Control-C to abort now" - read - fi - - # pbs_mom configuration. - echo "\$pbsserver ${PBS_SERVER_NAME}" > "${h}/mom_priv/config" || die - echo "\$logevent 255" >> "${h}/mom_priv/config" || die - - if use server; then - local qmgr="${EROOT}/usr/bin/qmgr -c" - # pbs_server bails on repeated backslashes. - if ! "${EROOT}"/usr/sbin/pbs_server -f -d "${h}" -t create; then - eerror "Failed to start pbs_server" - rc=1 - else - ${qmgr} "set server operators = root@$(hostname -f)" ${PBS_SERVER_NAME} \ - && ${qmgr} "create queue batch" ${PBS_SERVER_NAME} \ - && ${qmgr} "set queue batch queue_type = Execution" ${PBS_SERVER_NAME} \ - && ${qmgr} "set queue batch started = True" ${PBS_SERVER_NAME} \ - && ${qmgr} "set queue batch enabled = True" ${PBS_SERVER_NAME} \ - && ${qmgr} "set server default_queue = batch" ${PBS_SERVER_NAME} \ - && ${qmgr} "set server resources_default.nodes = 1" ${PBS_SERVER_NAME} \ - && ${qmgr} "set server scheduling = True" ${PBS_SERVER_NAME} \ - || die - - "${EROOT}"/usr/bin/qterm -t quick ${PBS_SERVER_NAME} || rc=1 - - # Add the local machine as a node. - echo "$(hostname -f) np=1" > "${h}/server_priv/nodes" || die - fi - fi - eend ${rc} -} diff --git a/sys-cluster/torque/torque-4.2.10-r2.ebuild b/sys-cluster/torque/torque-4.2.10-r2.ebuild deleted file mode 100644 index 07f2642850af..000000000000 --- a/sys-cluster/torque/torque-4.2.10-r2.ebuild +++ /dev/null @@ -1,193 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -inherit autotools linux-info - -DESCRIPTION="Resource manager and queuing system based on OpenPBS" -HOMEPAGE="http://www.adaptivecomputing.com/products/open-source/torque" -# TODO: hopefully moving to github tags soon -# http://www.supercluster.org/pipermail/torquedev/2013-May/004519.html -#SRC_URI="http://www.adaptivecomputing.com/index.php?wpfb_dl=2849 -> ${P}.tar.gz" -SRC_URI="https://github.com/adaptivecomputing/torque/archive/ddf5c4f40091b6157164a8846e5b60f42a5ae7f6.tar.gz -> ${P}-gh-20150517.tar.gz" - -LICENSE="torque-2.5" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86" -IUSE="cpusets +crypt doc drmaa munge nvidia server +syslog tk" - -DEPEND_COMMON=" - sys-libs/zlib - sys-libs/readline:0= - dev-libs/libxml2 - dev-libs/openssl:0= - cpusets? ( sys-apps/hwloc:= ) - munge? ( sys-auth/munge ) - nvidia? ( >=x11-drivers/nvidia-drivers-275 ) - tk? ( - dev-lang/tk:0= - dev-lang/tcl:0= - ) - syslog? ( virtual/logger ) - !!games-util/qstat" - -# libncurses.so is only needed for configure check on readline -DEPEND="${DEPEND_COMMON} - sys-libs/ncurses:* - !!sys-cluster/slurm" - -RDEPEND="${DEPEND_COMMON} - crypt? ( net-misc/openssh ) - !crypt? ( net-misc/netkit-rsh ) - !dev-libs/uthash" - -S="${WORKDIR}"/${PN}-ddf5c4f40091b6157164a8846e5b60f42a5ae7f6 - -# Torque should depend on dev-libs/uthash but that's pretty much impossible -# to patch in as they ship with a broken configure such that files referenced -# by the configure.ac and Makefile.am are missing. -# http://www.supercluster.org/pipermail/torquedev/2014-October/004773.html - -pkg_setup() { - PBS_SERVER_HOME="${PBS_SERVER_HOME:-/var/spool/${PN}}" - - # Find a Torque server to use. Check environment, then - # current setup (if any), and fall back on current hostname. - if [ -z "${PBS_SERVER_NAME}" ]; then - if [ -f "${ROOT}${PBS_SERVER_HOME}/server_name" ]; then - PBS_SERVER_NAME="$(<${ROOT}${PBS_SERVER_HOME}/server_name)" - else - PBS_SERVER_NAME=$(hostname -f) - fi - fi - - if use cpusets; then - if ! use kernel_linux; then - einfo - elog " Torque currently only has support for cpusets in linux." - elog "Assuming you didn't really want this USE flag and ignoring its state." - einfo - else - linux-info_pkg_setup - if ! linux_config_exists || ! linux_chkconfig_present CPUSETS; then - einfo - elog " Torque support for cpusets will require that you recompile" - elog "your kernel with CONFIG_CPUSETS enabled." - einfo - fi - fi - fi -} - -src_prepare() { - # Unused and causes breakage when switching from glibc to tirpc. - # https://github.com/adaptivecomputing/torque/pull/148 - sed -i '/rpc\/rpc\.h/d' src/lib/Libnet/net_client.c || die - - # We install to a valid location, no need to muck with ld.so.conf - # --without-loadlibfile is supposed to do this for us... - sed -i '/mk_default_ld_lib_file || return 1/d' buildutils/pbs_mkdirs.in || die - - eapply "${FILESDIR}"/${PN}-4.2.9-tcl8.6.patch - eapply "${FILESDIR}"/${PN}-4.2-dont-mess-with-cflags.patch - eapply "${FILESDIR}"/${PN}-4.2-use-NULL-instead-of-char0.patch - eapply_user - mkdir -p "${S}"/m4 - eautoreconf -} - -src_configure() { - econf \ - $(use_enable tk gui) \ - $(use_enable syslog) \ - $(use_enable server) \ - $(use_enable drmaa) \ - $(use_enable munge munge-auth) \ - $(use_enable nvidia nvidia-gpus) \ - $(usex kernel_linux $(use_enable cpusets cpuset) --disable-cpuset) \ - $(usex crypt --with-rcp=scp --with-rcp=mom_rcp) \ - --with-server-home=${PBS_SERVER_HOME} \ - --with-environ=/etc/pbs_environment \ - --with-default-server=${PBS_SERVER_NAME} \ - --disable-gcc-warnings \ - --with-tcp-retry-limit=2 \ - --without-loadlibfile -} - -src_install() { - local dir - - DOCS=( CHANGELOG README.* Release_Notes ) - use doc && DOCS+=( doc/admin_guide.ps doc/*.pdf ) - - default - - # The build script isn't alternative install location friendly, - # So we have to fix some hard-coded paths in tclIndex for xpbs* to work - for file in $(find "${ED}" -iname tclIndex); do - sed \ - -e "s/${ED//\// }/ /" \ - -i "${file}" || die - done - - for dir in $(find "${ED}/${PBS_SERVER_HOME}" -type d); do - keepdir "${dir#${ED}}" - done - - if use server; then - newinitd "${FILESDIR}"/pbs_server-init.d-munge pbs_server - newinitd "${FILESDIR}"/pbs_sched-init.d pbs_sched - fi - newinitd "${FILESDIR}"/pbs_mom-init.d-munge pbs_mom - newconfd "${FILESDIR}"/${PN}-conf.d-munge ${PN} - newinitd "${FILESDIR}"/trqauthd-init.d trqauthd - newenvd "${FILESDIR}"/${PN}-env.d 25${PN} -} - -pkg_preinst() { - if [[ -f "${ROOT}etc/pbs_environment" ]]; then - cp "${ROOT}etc/pbs_environment" "${ED}"/etc/pbs_environment || die - fi - - if use server && [[ -f "${ROOT}${PBS_SERVER_HOME}/server_priv/nodes" ]]; then - cp \ - "${EROOT}${PBS_SERVER_HOME}/server_priv/nodes" \ - "${ED}/${PBS_SERVER_HOME}/server_priv/nodes" || die - fi - - echo "${PBS_SERVER_NAME}" > "${ED}${PBS_SERVER_HOME}/server_name" || die - - # Fix up the env.d file to use our set server home. - sed \ - -e "s:/var/spool/${PN}:${PBS_SERVER_HOME}:g" \ - -i "${ED}"/etc/env.d/25${PN} || die - - if use munge; then - sed -i 's,\(PBS_USE_MUNGE=\).*,\11,' "${ED}"/etc/conf.d/${PN} || die - fi -} - -pkg_postinst() { - local showmessage=1 - if [[ -z "${REPLACING_VERSIONS}" ]] ; then - showmessage=0; - elog "If this is the first time torque has been installed, then you are not" - elog "ready to start the server. Please refer to the documentation located at:" - elog "http://docs.adaptivecomputing.com/torque/${PN//./-}/help.htm#topics/1-installConfig/initializeConfigOnServer.htm" - elog - else - for i in ${REPLACING_VERSIONS} ; do - if [[ ${i} == 4* ]]; then - showmessage=0; break; - fi - done - fi - if [[ ${showmessage} -gt 0 ]]; then - elog "Important v4.x changes:" - elog " - The on-wire protocol version has been changed." - elog " Versions of Torque before 4.0.0 are no longer able to communicate." - elog " - pbs_iff has been replaced by trqauthd, you will now need to add" - elog " trqauthd to your default runlevel." - fi -} |