Skip to content

Commit

Permalink
Issue 4742 - UI - should always use LDAPI path when calling CLI
Browse files Browse the repository at this point in the history
Bug Description:

In some places in the UI code we call dsconf like:

dsconf -j slapd-instance ...

Instead of:

dsconf -j "ldapi://%2fvar%2frun%2fslapd-" + this.props.serverId + ".socket"

The problem is that if you setup the ".dsrc" file to use something other than LDAPI then the UI hangs.

Fix Description:

We need to always call the CLI using the LDAP socket.

Relates: #4742

Reviewed by: spichugi(Thanks!)
  • Loading branch information
mreynolds389 committed Apr 30, 2021
1 parent 6446fe2 commit 4ba0f07
Show file tree
Hide file tree
Showing 13 changed files with 67 additions and 37 deletions.
2 changes: 1 addition & 1 deletion src/cockpit/389-console/src/ds.jsx
Expand Up @@ -289,7 +289,7 @@ export class DSInstance extends React.Component {
rows.push({ name: row[0], date: [row[1]], size: [row[2]] });
}
// Get the server version from the monitor
cmd = ["dsconf", "-j", this.state.serverId, "monitor", "server"];
cmd = ["dsconf", "-j", "ldapi://%2fvar%2frun%2fslapd-" + this.state.serverId + ".socket", "monitor", "server"];
log_cmd("loadBackups", "Get the server version", cmd);
cockpit.spawn(cmd, { superuser: true, err: "message" }).done(content => {
let monitor = JSON.parse(content);
Expand Down
4 changes: 2 additions & 2 deletions src/cockpit/389-console/src/dsModals.jsx
Expand Up @@ -1031,7 +1031,7 @@ export class ManageBackupsModal extends React.Component {
let cmd = [
"dsconf",
"-j",
"ldapi://%2fvar%2frun%2fslapd-" + this.props.serverId + ".socket",
"ldapi://%2fvar%2frun%2fslapd-" + "ldapi://%2fvar%2frun%2fslapd-" + this.props.serverId + ".socket" + ".socket",
"backup",
"create"
];
Expand Down Expand Up @@ -1111,7 +1111,7 @@ export class ManageBackupsModal extends React.Component {
const cmd = [
"dsconf",
"-j",
"ldapi://%2fvar%2frun%2fslapd-" + this.props.serverId + ".socket",
"ldapi://%2fvar%2frun%2fslapd-" + "ldapi://%2fvar%2frun%2fslapd-" + this.props.serverId + ".socket" + ".socket",
"backup",
"restore",
this.state.backupName
Expand Down
3 changes: 2 additions & 1 deletion src/cockpit/389-console/src/lib/database/backups.jsx
Expand Up @@ -288,7 +288,8 @@ export class Backups extends React.Component {
this.showLDIFDeleteSpinningModal();

let cmd = [
"dsctl", this.props.serverId, "ldifs", "--delete", this.state.ldifName
"dsctl", this.props.serverId,
"ldifs", "--delete", this.state.ldifName
];
log_cmd("deleteLDIF", "Deleting LDIF", cmd);
cockpit
Expand Down
15 changes: 10 additions & 5 deletions src/cockpit/389-console/src/lib/database/globalPwp.jsx
Expand Up @@ -148,7 +148,8 @@ export class GlobalPwPolicy extends React.Component {
});

let cmd = [
'dsconf', '-j', this.props.serverId, 'config', 'replace'
'dsconf', '-j', "ldapi://%2fvar%2frun%2fslapd-" + this.props.serverId + ".socket",
'config', 'replace'
];

for (let attr of general_attrs) {
Expand Down Expand Up @@ -251,7 +252,8 @@ export class GlobalPwPolicy extends React.Component {
});

let cmd = [
'dsconf', '-j', this.props.serverId, 'config', 'replace'
'dsconf', '-j', "ldapi://%2fvar%2frun%2fslapd-" + this.props.serverId + ".socket",
'config', 'replace'
];

for (let attr of exp_attrs) {
Expand Down Expand Up @@ -327,7 +329,8 @@ export class GlobalPwPolicy extends React.Component {
});

let cmd = [
'dsconf', '-j', this.props.serverId, 'config', 'replace'
'dsconf', '-j', "ldapi://%2fvar%2frun%2fslapd-" + this.props.serverId + ".socket",
'config', 'replace'
];

for (let attr of lockout_attrs) {
Expand Down Expand Up @@ -428,7 +431,8 @@ export class GlobalPwPolicy extends React.Component {
});

let cmd = [
'dsconf', '-j', this.props.serverId, 'config', 'replace'
'dsconf', '-j', "ldapi://%2fvar%2frun%2fslapd-" + this.props.serverId + ".socket",
'config', 'replace'
];

for (let attr of syntax_attrs) {
Expand Down Expand Up @@ -473,7 +477,8 @@ export class GlobalPwPolicy extends React.Component {

loadGlobal() {
let cmd = [
"dsconf", "-j", this.props.serverId, "config", "get"
"dsconf", "-j", "ldapi://%2fvar%2frun%2fslapd-" + this.props.serverId + ".socket",
"config", "get"
];
log_cmd("loadGlobal", "Load global password policy", cmd);
cockpit
Expand Down
24 changes: 16 additions & 8 deletions src/cockpit/389-console/src/lib/database/localPwp.jsx
Expand Up @@ -824,7 +824,8 @@ export class LocalPwPolicy extends React.Component {
action = "addsubtree";
}
let cmd = [
'dsconf', '-j', this.props.serverId, 'localpwp', action, this.state.policyDN
'dsconf', '-j', "ldapi://%2fvar%2frun%2fslapd-" + this.props.serverId + ".socket",
'localpwp', action, this.state.policyDN
];

for (let attr of all_attrs) {
Expand Down Expand Up @@ -905,7 +906,8 @@ export class LocalPwPolicy extends React.Component {
});

let cmd = [
'dsconf', '-j', this.props.serverId, 'localpwp', 'set', this.state.policyName
'dsconf', '-j', "ldapi://%2fvar%2frun%2fslapd-" + this.props.serverId + ".socket",
'localpwp', 'set', this.state.policyName
];

for (let attr of general_attrs) {
Expand Down Expand Up @@ -981,7 +983,8 @@ export class LocalPwPolicy extends React.Component {
});

let cmd = [
'dsconf', '-j', this.props.serverId, 'localpwp', 'set', this.state.policyName
'dsconf', '-j', "ldapi://%2fvar%2frun%2fslapd-" + this.props.serverId + ".socket",
'localpwp', 'set', this.state.policyName
];

for (let attr of exp_attrs) {
Expand Down Expand Up @@ -1057,7 +1060,8 @@ export class LocalPwPolicy extends React.Component {
});

let cmd = [
'dsconf', '-j', this.props.serverId, 'localpwp', 'set', this.state.policyName
'dsconf', '-j', "ldapi://%2fvar%2frun%2fslapd-" + this.props.serverId + ".socket",
'localpwp', 'set', this.state.policyName
];

for (let attr of lockout_attrs) {
Expand Down Expand Up @@ -1158,7 +1162,8 @@ export class LocalPwPolicy extends React.Component {
});

let cmd = [
'dsconf', '-j', this.props.serverId, 'localpwp', 'set', this.state.policyName
'dsconf', '-j', "ldapi://%2fvar%2frun%2fslapd-" + this.props.serverId + ".socket",
'localpwp', 'set', this.state.policyName
];

for (let attr of syntax_attrs) {
Expand Down Expand Up @@ -1217,7 +1222,8 @@ export class LocalPwPolicy extends React.Component {
});

let cmd = [
"dsconf", "-j", this.props.serverId, "localpwp", "remove", this.state.deleteName
"dsconf", "-j", "ldapi://%2fvar%2frun%2fslapd-" + this.props.serverId + ".socket",
"localpwp", "remove", this.state.deleteName
];
log_cmd("deletePolicy", "delete policy", cmd);
cockpit
Expand All @@ -1237,7 +1243,8 @@ export class LocalPwPolicy extends React.Component {

loadPolicies() {
let cmd = [
"dsconf", "-j", this.props.serverId, "localpwp", "list"
"dsconf", "-j", "ldapi://%2fvar%2frun%2fslapd-" + this.props.serverId + ".socket",
"localpwp", "list"
];
log_cmd("loadPolicies", "Load all the local password policies for the table", cmd);
cockpit
Expand Down Expand Up @@ -1421,7 +1428,8 @@ export class LocalPwPolicy extends React.Component {

loadLocal(name) {
let cmd = [
"dsconf", "-j", this.props.serverId, "localpwp", "get", name
"dsconf", "-j", "ldapi://%2fvar%2frun%2fslapd-" + this.props.serverId + ".socket",
"localpwp", "get", name
];
log_cmd("loadLocal", "Load a local password policy", cmd);
cockpit
Expand Down
6 changes: 4 additions & 2 deletions src/cockpit/389-console/src/lib/server/accessLog.jsx
Expand Up @@ -142,7 +142,8 @@ export class ServerAccessLog extends React.Component {
}

let cmd = [
'dsconf', '-j', this.props.serverId, 'config', 'replace'
'dsconf', '-j', "ldapi://%2fvar%2frun%2fslapd-" + this.props.serverId + ".socket",
'config', 'replace'
];

for (let attr of config_attrs) {
Expand Down Expand Up @@ -203,7 +204,8 @@ export class ServerAccessLog extends React.Component {
loading: true
});
let cmd = [
"dsconf", "-j", this.props.serverId, "config", "get"
"dsconf", "-j", "ldapi://%2fvar%2frun%2fslapd-" + this.props.serverId + ".socket",
"config", "get"
];
log_cmd("reloadConfig", "load Access Log configuration", cmd);
cockpit
Expand Down
6 changes: 4 additions & 2 deletions src/cockpit/389-console/src/lib/server/auditLog.jsx
Expand Up @@ -129,7 +129,8 @@ export class ServerAuditLog extends React.Component {
}

let cmd = [
'dsconf', '-j', this.props.serverId, 'config', 'replace'
'dsconf', '-j', "ldapi://%2fvar%2frun%2fslapd-" + this.props.serverId + ".socket",
'config', 'replace'
];

for (let attr of config_attrs) {
Expand Down Expand Up @@ -221,7 +222,8 @@ export class ServerAuditLog extends React.Component {
loading: true,
});
let cmd = [
"dsconf", "-j", this.props.serverId, "config", "get"
"dsconf", "-j", "ldapi://%2fvar%2frun%2fslapd-" + this.props.serverId + ".socket",
"config", "get"
];
log_cmd("reloadConfig", "load Audit Log configuration", cmd);
cockpit
Expand Down
6 changes: 4 additions & 2 deletions src/cockpit/389-console/src/lib/server/auditfailLog.jsx
Expand Up @@ -129,7 +129,8 @@ export class ServerAuditFailLog extends React.Component {
}

let cmd = [
'dsconf', '-j', this.props.serverId, 'config', 'replace'
'dsconf', '-j', "ldapi://%2fvar%2frun%2fslapd-" + this.props.serverId + ".socket",
'config', 'replace'
];

for (let attr of config_attrs) {
Expand Down Expand Up @@ -177,7 +178,8 @@ export class ServerAuditFailLog extends React.Component {
loading: true,
});
let cmd = [
"dsconf", "-j", this.props.serverId, "config", "get"
"dsconf", "-j", "ldapi://%2fvar%2frun%2fslapd-" + this.props.serverId + ".socket",
"config", "get"
];
log_cmd("loadConfig", "load Audit Failure Log configuration", cmd);
cockpit
Expand Down
6 changes: 4 additions & 2 deletions src/cockpit/389-console/src/lib/server/errorLog.jsx
Expand Up @@ -151,7 +151,8 @@ export class ServerErrorLog extends React.Component {
}

let cmd = [
'dsconf', '-j', this.props.serverId, 'config', 'replace'
'dsconf', '-j', "ldapi://%2fvar%2frun%2fslapd-" + this.props.serverId + ".socket",
'config', 'replace'
];

for (let attr of config_attrs) {
Expand Down Expand Up @@ -295,7 +296,8 @@ export class ServerErrorLog extends React.Component {
loading: true,
});
let cmd = [
"dsconf", "-j", this.props.serverId, "config", "get"
"dsconf", "-j", "ldapi://%2fvar%2frun%2fslapd-" + this.props.serverId + ".socket",
"config", "get"
];
log_cmd("reloadConfig", "load Error Log configuration", cmd);
cockpit
Expand Down
3 changes: 2 additions & 1 deletion src/cockpit/389-console/src/lib/server/ldapi.jsx
Expand Up @@ -112,7 +112,8 @@ export class ServerLDAPI extends React.Component {
});

let cmd = [
'dsconf', '-j', this.props.serverId, 'config', 'replace'
'dsconf', '-j', "ldapi://%2fvar%2frun%2fslapd-" + this.props.serverId + ".socket",
'config', 'replace'
];

for (let attr of ldapi_attrs) {
Expand Down
17 changes: 9 additions & 8 deletions src/cockpit/389-console/src/lib/server/sasl.jsx
Expand Up @@ -270,7 +270,8 @@ export class ServerSASL extends React.Component {

loadConfig() {
let cmd = [
"dsconf", "-j", this.props.serverId, "config", 'get'
"dsconf", "-j", "ldapi://%2fvar%2frun%2fslapd-" + this.props.serverId + ".socket",
"config", 'get'
];
log_cmd("loadConfig", "Get SASL settings", cmd);
cockpit
Expand Down Expand Up @@ -310,7 +311,7 @@ export class ServerSASL extends React.Component {

loadMechs() {
let cmd = [
"dsconf", "-j", this.props.serverId, "sasl", 'get-mechs'
"dsconf", "-j", "ldapi://%2fvar%2frun%2fslapd-" + this.props.serverId + ".socket", "sasl", 'get-mechs'
];
log_cmd("loadMechs", "Get supported SASL mechanisms", cmd);
cockpit
Expand All @@ -324,7 +325,7 @@ export class ServerSASL extends React.Component {
}

loadSASLMappings() {
let cmd = ["dsconf", '-j', this.props.serverId, 'sasl', 'list', '--details'];
let cmd = ["dsconf", '-j', "ldapi://%2fvar%2frun%2fslapd-" + this.props.serverId + ".socket", 'sasl', 'list', '--details'];
log_cmd('get_and_set_sasl', 'Get SASL mappings', cmd);
cockpit
.spawn(cmd, { superuser: true, err: "message" })
Expand Down Expand Up @@ -411,7 +412,7 @@ export class ServerSASL extends React.Component {
tableLoading: true,
});
let cmd = [
'dsconf', '-j', this.props.serverId,
'dsconf', '-j', "ldapi://%2fvar%2frun%2fslapd-" + this.props.serverId + ".socket",
'sasl', 'create',
'--cn=' + this.state.saslMapName,
'--nsSaslMapFilterTemplate=' + this.state.saslFilter,
Expand Down Expand Up @@ -459,11 +460,11 @@ export class ServerSASL extends React.Component {

// Delete and create
let delete_cmd = [
'dsconf', '-j', this.props.serverId,
'dsconf', '-j', "ldapi://%2fvar%2frun%2fslapd-" + this.props.serverId + ".socket",
'sasl', 'delete', this.state._saslMapName
];
let create_cmd = [
'dsconf', '-j', this.props.serverId,
'dsconf', '-j', "ldapi://%2fvar%2frun%2fslapd-" + this.props.serverId + ".socket",
'sasl', 'create',
'--cn=' + this.state.saslMapName,
'--nsSaslMapFilterTemplate=' + this.state.saslFilter,
Expand Down Expand Up @@ -524,7 +525,7 @@ export class ServerSASL extends React.Component {
});

let cmd = [
'dsconf', '-j', this.props.serverId,
'dsconf', '-j', "ldapi://%2fvar%2frun%2fslapd-" + this.props.serverId + ".socket",
'sasl', 'delete', this.state.saslMapName
];
log_cmd("deleteMapping", "Delete sasl mapping", cmd);
Expand Down Expand Up @@ -557,7 +558,7 @@ export class ServerSASL extends React.Component {

// Build up the command list
let cmd = [
'dsconf', '-j', this.props.serverId, 'config', 'replace'
'dsconf', '-j', "ldapi://%2fvar%2frun%2fslapd-" + this.props.serverId + ".socket", 'config', 'replace'
];

let mech_str_new = this.state.allowedMechs.join(' ');
Expand Down
7 changes: 5 additions & 2 deletions src/cockpit/389-console/src/lib/server/tuning.jsx
Expand Up @@ -103,8 +103,11 @@ export class ServerTuning extends React.Component {
});
}

let cmd = ["dsconf", "-j", this.props.serverId, "config", "get"];
log_cmd("loadConfig", "Load server tuning configuration", cmd);
let cmd = [
"dsconf", "-j", "ldapi://%2fvar%2frun%2fslapd-" + this.props.serverId + ".socket",
"config", "get"
];
log_cmd("loadConfig", "Load server configuration", cmd);
cockpit
.spawn(cmd, { superuser: true, err: "message" })
.done(content => {
Expand Down
5 changes: 4 additions & 1 deletion src/cockpit/389-console/src/server.jsx
Expand Up @@ -54,7 +54,10 @@ export class Server extends React.Component {
loaded: false,
firstLoad: false
});
let cmd = ["dsconf", "-j", this.props.serverId, "config", "get"];
let cmd = [
"dsconf", "-j", "ldapi://%2fvar%2frun%2fslapd-" + this.props.serverId + ".socket",
"config", "get"
];
log_cmd("loadConfig", "Load server configuration", cmd);
cockpit
.spawn(cmd, { superuser: true, err: "message" })
Expand Down

0 comments on commit 4ba0f07

Please sign in to comment.