int build_job (void) { struct ndm_job_param * job = &the_job; int i, rc, n_err; char errbuf[100]; NDMOS_MACRO_ZEROFILL(job); args_to_job (); ndma_job_auto_adjust (job); if (o_rules) apply_rules (job, o_rules); i = n_err = 0; do { rc = ndma_job_audit (job, errbuf, i); if (rc > n_err || rc < 0) { ndmjob_log (0, "error: %s", errbuf); } n_err = rc; } while (i++ < n_err); if (n_err) { error_byebye ("can't proceed"); /* no return */ } return 0; }
int ndma_client_session (struct ndm_session *sess) { struct ndm_job_param * job = &sess->control_acb.job; int rc; rc = ndma_job_audit (job, 0, 0); if (rc) return -1; rc = ndma_session_initialize (sess); if (rc) return rc; rc = ndma_session_commission (sess); if (rc) return rc; rc = ndmca_connect_control_agent (sess); if (rc) return rc; /* already tattled */ sess->conn_open = 1; sess->conn_authorized = 1; rc = ndmca_control_agent (sess); ndma_session_decommission (sess); return rc; }