From 9d9011cf8516b1f87ab2ee1bc4288e659fba780d Mon Sep 17 00:00:00 2001
From: Danny Auble <da@schedmd.com>
Date: Mon, 24 Feb 2014 14:06:53 -0800
Subject: [PATCH] Modify sacctmgr sacctmgr_find_res_from_list to accept an id
 as well as name@server

---
 src/sacctmgr/common.c   | 10 ++++++----
 src/sacctmgr/sacctmgr.h |  2 +-
 2 files changed, 7 insertions(+), 5 deletions(-)

diff --git a/src/sacctmgr/common.c b/src/sacctmgr/common.c
index ea3df75ea3a..f18e731c32f 100644
--- a/src/sacctmgr/common.c
+++ b/src/sacctmgr/common.c
@@ -970,18 +970,20 @@ extern slurmdb_qos_rec_t *sacctmgr_find_qos_from_list(
 }
 
 extern slurmdb_res_rec_t *sacctmgr_find_res_from_list(
-	List res_list, char *name, char *server)
+	List res_list, uint32_t id, char *name, char *server)
 {
 	ListIterator itr = NULL;
 	slurmdb_res_rec_t *res = NULL;
 
-	if (!name || !res_list)
+	if ((id == NO_VAL) && (!name || !res_list))
 		return NULL;
 
 	itr = list_iterator_create(res_list);
 	while ((res = list_next(itr))) {
-		if (!strcasecmp(server, res->server)
-		    && !strcasecmp(name, res->name))
+		if ((id == res->id)
+		    || (name && server
+			&& !strcasecmp(server, res->server)
+			&& !strcasecmp(name, res->name)))
 			break;
 	}
 	list_iterator_destroy(itr);
diff --git a/src/sacctmgr/sacctmgr.h b/src/sacctmgr/sacctmgr.h
index bace8635ada..ebf2a6b9368 100644
--- a/src/sacctmgr/sacctmgr.h
+++ b/src/sacctmgr/sacctmgr.h
@@ -305,7 +305,7 @@ extern slurmdb_association_rec_t *sacctmgr_find_association_from_list(
 extern slurmdb_association_rec_t *sacctmgr_find_account_base_assoc_from_list(
 	List assoc_list, char *account, char *cluster);
 extern slurmdb_res_rec_t *sacctmgr_find_res_from_list(
-	List res_list, char *name, char *server);
+	List res_list, uint32_t id, char *name, char *server);
 extern slurmdb_qos_rec_t *sacctmgr_find_qos_from_list(
 	List qos_list, char *name);
 extern slurmdb_user_rec_t *sacctmgr_find_user_from_list(
-- 
GitLab