Hey guys, I know I said I'd try to dig into this to understand the similarities and differences between the sysconfig agent and the Audrey Config Server and guest tooling.
Unfortunately, I've been bogged down the last several days trying to scope out some work between Conductor and Audrey. I still promise to take a look at this, but it might not be really soon.
---- Greg
On 07/20/2011 05:39 PM, Zane Bitter wrote:
Thanks Adam, this is looking great. (One probably inconsequential note below.) Note that since I pushed the patch to export all of the headers just now, there is are a couple of new places to change postboot.h -> sysconfig.h when you merge/rebase: in src/CMakeLists.txt and in matahari.spec.
cheers, Zane.
On 20/07/11 21:33, Adam Stokes wrote:
diff --git a/src/sysconfig/sysconfig-qmf.cpp b/src/sysconfig/sysconfig-qmf.cpp new file mode 100644 index 0000000..1cacd87 --- /dev/null +++ b/src/sysconfig/sysconfig-qmf.cpp @@ -0,0 +1,163 @@
<snip>
+gboolean +ConfigAgent::invoke(qmf::AgentSession session, qmf::AgentEvent event, gpointer user_data) +{
- int rc = 0;
- uint32_t flags;
- if (event.getType() != qmf::AGENT_METHOD) {
return TRUE;
- }
- const std::string& methodName(event.getMethodName());
- if (methodName == "run_uri") {
flags = event.getArguments()["flags"].asInt32();
I guess this should now be asUInt32().
if((is_configured(flags)) == 0) {
rc = mh_sysconfig_run_uri(event.getArguments()["uri"].asString().c_str(),
flags,
event.getArguments()["scheme"].asString().c_str());
if (rc == 0) {
set_configured();
}
}
event.addReturnArgument("configured", rc);
- } else if (methodName == "run_string") {
flags = event.getArguments()["flags"].asInt32();
if((is_configured(flags)) == 0) {
rc = mh_sysconfig_run_string(event.getArguments()["data"].asString().c_str(),
flags,
event.getArguments()["scheme"].asString().c_str());
if (rc == 0) {
set_configured();
}
}
event.addReturnArgument("configured", rc);
- } else if (methodName == "query") {
flags = event.getArguments()["flags"].asInt32();
Ditto.
if((is_configured(flags)) == 0) {
rc = mh_sysconfig_query(event.getArguments()["query"].asString().c_str(),
event.getArguments()["data"].asString().c_str(),
flags,
event.getArguments()["scheme"].asString().c_str());
}
event.addReturnArgument("configured", rc);
- } else if (methodName == "is_configured") {
rc = is_configured(0);
_instance.setProperty("is_postboot_configured", rc);
event.addReturnArgument("configured", rc);
- } else {
session.raiseException(event, MH_NOT_IMPLEMENTED);
goto bail;
- }
- session.methodSuccess(event);
+bail:
- return TRUE;
+}
Matahari mailing list Matahari@lists.fedorahosted.org https://fedorahosted.org/mailman/listinfo/matahari