Skip to content

Commit aace930

Browse files
committed
Implement xccdf_session_get_rule_results function in XCCDF session API
This change adds a new public xccdf_session_get_rule_results function to the session API. This function returns rule results. Results could be iterated using the xccdf_rule_result_iterator_has_more function from the XCCDF benchmark API.
1 parent ed91feb commit aace930

File tree

2 files changed

+17
-0
lines changed

2 files changed

+17
-0
lines changed

src/XCCDF/public/xccdf_session.h

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -574,6 +574,18 @@ OSCAP_API unsigned int xccdf_session_get_cpe_oval_agents_count(const struct xccd
574574
*/
575575
OSCAP_API bool xccdf_session_contains_fail_result(const struct xccdf_session *session);
576576

577+
/**
578+
* @struct xccdf_rule_result_iterator
579+
*/
580+
struct xccdf_rule_result_iterator;
581+
582+
/**
583+
* Get rule results.
584+
* @memberof xccdf_session
585+
* @param session XCCDF Session
586+
*/
587+
OSCAP_API struct xccdf_rule_result_iterator *xccdf_session_get_rule_results(const struct xccdf_session *session);
588+
577589
/**
578590
* Run XCCDF Remediation. It uses XCCDF Policy and XCCDF TestResult from the session
579591
* and modifies the TestResult. This also drops and recreate OVAL Agent Session, thus

src/XCCDF/xccdf_session.c

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1863,6 +1863,11 @@ bool xccdf_session_contains_fail_result(const struct xccdf_session *session)
18631863
return false;
18641864
}
18651865

1866+
struct xccdf_rule_result_iterator *xccdf_session_get_rule_results(const struct xccdf_session *session)
1867+
{
1868+
return xccdf_result_get_rule_results(session->xccdf.result);
1869+
}
1870+
18661871
int xccdf_session_remediate(struct xccdf_session *session)
18671872
{
18681873
int res = 0;

0 commit comments

Comments
 (0)