From 45878c9461298c9da68a626d990dc4ef99e01baa Mon Sep 17 00:00:00 2001 From: Chris Leech Date: Tue, 13 Aug 2013 10:59:44 -0700 Subject: [PATCH] idmb_rec_write, check for tpgt first Factor out the check for a tpgt to a single place, before going crazy on the rec files. Makes flow of this function easier to follow, and preps for splitting it up. --- usr/idbm.c | 18 +++++------------- 1 file changed, 5 insertions(+), 13 deletions(-) --- a/usr/idbm.c +++ b/usr/idbm.c @@ -2200,6 +2200,10 @@ static int idbm_rec_write(node_rec_t *re goto free_portal; } + if (rec->tpgt == PORTAL_GROUP_TAG_UNKNOWN) + /* drop down to old style portal as config */ + goto open_conf; + rc = stat(portal, &statb); if (rc) { rc = 0; @@ -2208,23 +2212,11 @@ static int idbm_rec_write(node_rec_t *re * set the tgpt. In new versions you must pass all the info in * from the start */ - if (rec->tpgt == PORTAL_GROUP_TAG_UNKNOWN) - /* drop down to old style portal as config */ - goto open_conf; - else - goto mkdir_portal; + goto mkdir_portal; } if (!S_ISDIR(statb.st_mode)) { /* - * older iscsiadm versions had you create the config then set - * set the tgpt. In new versions you must pass all the info in - * from the start - */ - if (rec->tpgt == PORTAL_GROUP_TAG_UNKNOWN) - /* drop down to old style portal as config */ - goto open_conf; - /* * Old style portal as a file, but with tpgt. Let's update it. */ if (unlink(portal)) {