Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
openSUSE
pacemaker.8750
pacemaker-tools-check-sscanf-return-parsing-fai...
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File pacemaker-tools-check-sscanf-return-parsing-failed-op-list.patch of Package pacemaker.8750
commit 975b65f4e02c63e650bf10ff8fc3fea27667f3b5 Author: Ken Gaillot <kgaillot@redhat.com> Date: Mon Oct 9 16:06:20 2017 -0500 Low: tools: check sscanf return value when parsing failed op list diff --git a/tools/fake_transition.c b/tools/fake_transition.c index e0d923505..5af86c3e7 100644 --- a/tools/fake_transition.c +++ b/tools/fake_transition.c @@ -707,8 +707,16 @@ exec_rsc_action(crm_graph_t * graph, crm_action_t * action) snprintf(key, strlen(spec), "%s_%s_%d@%s=", resource, op->op_type, op->interval, node); if (strncasecmp(key, spec, strlen(key)) == 0) { - sscanf(spec, "%*[^=]=%d", (int *)&op->rc); - + rc = sscanf(spec, "%*[^=]=%d", (int *) &op->rc); + // ${resource}_${task}_${interval}@${node}=${rc} + + if (rc != 1) { + fprintf(stderr, + "Invalid failed operation spec: %s. Result code must be integer\n", + spec); + free(key); + continue; + } action->failed = TRUE; graph->abort_priority = INFINITY; printf("\tPretending action %d failed with rc=%d\n", action->id, op->rc);
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor